save code

This commit is contained in:
Ubuntu
2026-07-12 18:50:05 +08:00
parent 3fe5f6cf0d
commit 5d9d91bc82
+15 -6
View File
@@ -37,7 +37,8 @@ _PROMPT = (
"基因风格(戏剧型/睿智型/自然型/古典型/优雅型/浪漫型/前卫型/少女型/少年型)" "基因风格(戏剧型/睿智型/自然型/古典型/优雅型/浪漫型/前卫型/少女型/少年型)"
) )
_client = None _client = None # 缓存的 Ark clientapi_key 变更时自动重建)
_client_key: str | None = None # _client 构建时使用的 api_key,用于检测配置变更
def _load_api_key() -> str | None: def _load_api_key() -> str | None:
@@ -60,13 +61,21 @@ def _load_api_key() -> str | None:
def get_client(): def get_client():
global _client """返回 Ark client。
if _client is None:
client 全局缓存,但每次都会重新读取 api_key —— 一旦配置(环境变量 /
worker_config.json / gateway/config.json 的 ark_api_key)发生变化,
自动重建 client。这样换 key 后无需重启进程。
"""
global _client, _client_key
key = _load_api_key()
if not key:
raise RuntimeError("缺少火山方舟 API Key(设 ARK_API_KEY 或 worker_config.json.ark_api_key")
# client 未建、或 key 变了 → 重建
if _client is None or key != _client_key:
from volcenginesdkarkruntime import Ark from volcenginesdkarkruntime import Ark
key = _load_api_key()
if not key:
raise RuntimeError("缺少火山方舟 API Key(设 ARK_API_KEY 或 worker_config.json.ark_api_key")
_client = Ark(base_url=ARK_BASE_URL, api_key=key) _client = Ark(base_url=ARK_BASE_URL, api_key=key)
_client_key = key
return _client return _client