modify: 插件配置读取修改
This commit is contained in:
+19
-3
@@ -48,10 +48,26 @@ async def create_workers(session, config, count=1, worker_manager=None):
|
||||
raise
|
||||
|
||||
base_url = config.get("base_url", "https://ark.cn-beijing.volces.com/api/v3")
|
||||
os.environ["DOUBAO_BASE_URL"] = base_url
|
||||
logger.info("豆包 AICC base_url: %s", base_url)
|
||||
# ra_url 为远程证明(安全令牌)端点地址,可能与推理 base_url 不同
|
||||
# 若不单独配置则默认使用 base_url 的域名 + /v1/security/token
|
||||
ra_url = config.get("ra_url", base_url)
|
||||
ak = config.get("ak", "")
|
||||
sk = config.get("sk", "")
|
||||
ra_service_name = config.get("ra_service_name", "AICC.ConfidentialInference")
|
||||
ra_policy_id = config.get("ra_policy_id", "router_policy")
|
||||
|
||||
aicc_config = AICCConfig(ra_url=base_url, auth_token=api_key)
|
||||
os.environ["DOUBAO_BASE_URL"] = base_url
|
||||
logger.info("豆包 AICC base_url: %s, ra_url: %s, ra_service_name: %s, ra_policy_id: %s",
|
||||
base_url, ra_url, ra_service_name, ra_policy_id)
|
||||
|
||||
aicc_config = AICCConfig(
|
||||
ra_url=ra_url,
|
||||
auth_token=api_key,
|
||||
ak=ak,
|
||||
sk=sk,
|
||||
aicc_llm_service_name=ra_service_name,
|
||||
policy_id=ra_policy_id,
|
||||
)
|
||||
client = AsyncOpenAI(
|
||||
api_key=api_key,
|
||||
base_url=base_url,
|
||||
|
||||
@@ -56,5 +56,25 @@ async def analyze(request: AnalyzePostRequest) -> AnalyzePostResponse:
|
||||
logger.info("分析完成: 结果长度=%d", len(result) if result else 0)
|
||||
return AnalyzePostResponse(result=result) # type: ignore
|
||||
except Exception as e:
|
||||
error_msg = str(e)
|
||||
# 针对 AICC 安全通道密钥缺失,给出明确提示
|
||||
# KeyMissingError 可能被包装在 APIConnectionError 的 __cause__ 链中
|
||||
is_key_missing = (
|
||||
"KeyMissingError" in type(e).__name__
|
||||
or "Can not get key" in error_msg
|
||||
or any("KeyMissingError" in type(c).__name__ for c in [getattr(e, '__cause__', None), getattr(e, '__context__', None)] if c is not None)
|
||||
)
|
||||
if is_key_missing:
|
||||
logger.error(
|
||||
"AICC 安全通道密钥获取失败,请检查: "
|
||||
"1) api_key 是否有效 "
|
||||
"2) ra_url(安全令牌地址)是否正确 "
|
||||
"3) APIGateway /v1/security/token 端点是否可达"
|
||||
)
|
||||
return AnalyzePostResponse(
|
||||
result="",
|
||||
error="AICC 安全通道初始化失败:无法获取加密密钥。"
|
||||
"请检查 api_key 有效性及安全令牌服务 (/v1/security/token) 连通性。"
|
||||
)
|
||||
logger.error("调用豆包API失败: %s", e, exc_info=True)
|
||||
return AnalyzePostResponse(result="", error=f"调用豆包API失败: {str(e)}")
|
||||
return AnalyzePostResponse(result="", error=f"调用豆包API失败: {error_msg}")
|
||||
Reference in New Issue
Block a user