mirror of
https://github.com/JefferyHcool/BiliNote.git
synced 2026-05-31 21:30:40 +08:00
- 新增自定义异常类 BizException、NoteError 和 ProviderError - 优化了模型管理相关的逻辑,包括加载、删除和测试连接等功能 - 改进了 Douyin 下载器的错误处理 - 调整了任务重试逻辑和笔记生成的异常处理- 更新了相关组件和页面以适应新的异常处理机制
31 lines
951 B
Python
31 lines
951 B
Python
from typing import Optional, Union
|
|
|
|
from openai import OpenAI
|
|
|
|
from app.utils.logger import get_logger
|
|
|
|
logging= get_logger(__name__)
|
|
class OpenAICompatibleProvider:
|
|
def __init__(self, api_key: str, base_url: str, model: Union[str, None]=None):
|
|
self.client = OpenAI(api_key=api_key, base_url=base_url)
|
|
self.model = model
|
|
|
|
@property
|
|
def get_client(self):
|
|
return self.client
|
|
|
|
@staticmethod
|
|
def test_connection(api_key: str, base_url: str) -> bool:
|
|
try:
|
|
client = OpenAI(api_key=api_key, base_url=base_url)
|
|
model = client.models.list()
|
|
# for segment in model:
|
|
# print(segment)
|
|
# print(model)
|
|
logging.info("连通性测试成功")
|
|
return True
|
|
except Exception as e:
|
|
logging.info(f"连通性测试失败:{e}")
|
|
|
|
# print(f"Error connecting to OpenAI API: {e}")
|
|
return False |