chore: vendor selva_core from jnwnlee/selva@d7d40a9
Pure PyTorch SelVA source for SelvaModelLoader/FeatureExtractor/Sampler nodes. Imports rewritten from selva.* to selva_core.*. mel_converter.py: replaced librosa.filters.mel with pure-numpy implementation to avoid librosa→numba→NumPy version incompatibility in some ComfyUI environments. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
import logging
|
||||
import os
|
||||
from datetime import datetime
|
||||
|
||||
import requests
|
||||
from dotenv import load_dotenv
|
||||
from pytz import timezone
|
||||
|
||||
from selva_core.utils.timezone import my_timezone
|
||||
|
||||
_source = 'USE YOURS'
|
||||
_target = 'USE YOURS'
|
||||
|
||||
log = logging.getLogger()
|
||||
|
||||
_fmt = "%Y-%m-%d %H:%M:%S %Z%z"
|
||||
|
||||
|
||||
class EmailSender:
|
||||
|
||||
def __init__(self, exp_id: str, enable: bool):
|
||||
self.exp_id = exp_id
|
||||
self.enable = enable
|
||||
if enable:
|
||||
load_dotenv()
|
||||
self.MAILGUN_API_KEY = os.getenv('MAILGUN_API_KEY')
|
||||
if self.MAILGUN_API_KEY is None:
|
||||
log.warning('MAILGUN_API_KEY is not set')
|
||||
self.enable = False
|
||||
|
||||
def send(self, subject, content):
|
||||
if self.enable:
|
||||
subject = str(subject)
|
||||
content = str(content)
|
||||
try:
|
||||
return requests.post(f'https://api.mailgun.net/v3/{_source}/messages',
|
||||
auth=('api', self.MAILGUN_API_KEY),
|
||||
data={
|
||||
'from':
|
||||
f'<agent name>🤖 <mailgun@{_source}>',
|
||||
'to': [f'{_target}'],
|
||||
'subject':
|
||||
f'[{self.exp_id}] {subject}',
|
||||
'text':
|
||||
('\n\n' + content + '\n\n<your sign off>\n' +
|
||||
datetime.now(timezone(my_timezone)).strftime(_fmt)),
|
||||
},
|
||||
timeout=20)
|
||||
except Exception as e:
|
||||
log.error(f'Failed to send email: {e}')
|
||||
Reference in New Issue
Block a user