Invalid Token (request id: sha256:f24aa40ca8a1) 16:46:17+08:00 [diagnostic] lane...
错误信息
16:46:11+08:00 [model-fallback] model fallback decision: decision=candidate_failed requested=dmxapi/glm-5.1-free candidate=dmxapi/glm-5.1-free reason=auth next=dmxapi/Qwen3.5-2B-free detail=HTTP 401 rix_api_error: Invalid Token (request id: sha256:f24aa40ca8a1)
16:46:17+08:00 [diagnostic] lane task error: lane=main durationMs=5913 error="FailoverError: No available auth profile for dmxapi (all in cooldown or unavailable)."
16:46:17+08:00 [diagnostic] lane task error: lane=session:agent:main:main durationMs=5916 error="FailoverError: No available auth profile for dmxapi (all in cooldown or unavailable)."
16:46:17+08:00 [ws] ⇄ res ✓ node.list 1309ms conn=1627f21b…4d73 id=260f4cfd…9e2f
16:46:17+08:00 [model-fallback] model fallback decision: decision=candidate_failed requested=dmxapi/glm-5.1-free candidate=dmxapi/Qwen3.5-2B-free reason=auth next=dmxapi/MiniMax-M2.7-free detail=No available auth profile for dmxapi (all in cooldown or unavailable).
16:46:18+08:00 [diagnostic] lane task error: lane=main durationMs=727 error="FailoverError: No available auth profile for dmxapi (all in cooldown or unavailable)."
16:46:18+08:00 [diagnostic] lane task error: lane=session:agent:main:main durationMs=730 error="FailoverError: No available auth profile for dmxapi (all in cooldown or unavailable)."
16:46:18+08:00 [model-fallback] model fallback decision: decision=candidate_failed requested=dmxapi/glm-5.1-free candidate=dmxapi/MiniMax-M2.7-free reason=auth next=none detail=No available auth profile for dmxapi (all in cooldown or unavailable).
16:46:18+08:00 Embedded agent failed before reply: All models failed (3): dmxapi/glm-5.1-free: HTTP 401 rix_api_error: Invalid Token (request id: 20260413164609890791028xo6SCFKY) (auth) | dmxapi/Qwen3.5-2B-free: No available auth profile for dmxapi (all in cooldown or unavailable). (auth) | dmxapi/MiniMax-M2.7-free: No available auth profile for dmxapi (all in cooldown or unavailable). (auth) | No available auth profile for dmxapi (all in cooldown or unavailable).
AI 解决方案
报错分析报告
1.错误翻译
原文:HTTP 401 rix_api_error: Invalid Token
译文:HTTP 401 rix_api错误:无效令牌
原文:FailoverError: No available auth profile for dmxapi (all in cooldown or unavailable)
译文:故障转移错误:dmxapi没有可用的认证配置文件(全部处于冷却状态或不可用)
2.原因分析
dmxapi系列模型(glm-5.1-free/Qwen3.5-2B-free/MiniMax-M2.7-free)的认证环节。3.解决方案
import requests
import time
from dotenv import load_dotenv
import os
load_dotenv() # 加载.env文件中的密钥
API_KEY = os.getenv("DMXAPI_KEY") # 从环境变量取有效密钥
BASE_URL = "https://api.dmxapi.com/v1"
def call_dmx_model(model: str, prompt: str, max_retry=3):
headers = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}
payload = {"model": model, "prompt": prompt}
for attempt in range(max_retry):
try:
resp = requests.post(f"{BASE_URL}/invoke", json=payload, headers=headers, timeout=10)
resp.raise_for_status()
return resp.json()
except requests.exceptions.HTTPError as e:
if e.response.status_code == 401:
raise ValueError("❌ 无效令牌:请检查DMXAPI_KEY是否正确/过期") from e
elif "cooldown" in str(e):
wait = 2 ** attempt # 指数退避
print(f"⏳ 认证冷却中,{wait}秒后重试...")
time.sleep(wait)
continue
else:
raise RuntimeError(f"API错误:{e}") from e
raise RuntimeError("❌ 所有重试失败:认证配置仍不可用")
# 使用示例
try:
result = call_dmx_model("dmxapi/glm-5.1-free", "Hello")
print(result)
except Exception as e:
print(f"调用失败:{e}")
4. 预防措施
.env文件+dotenv库存储密钥,定期轮换(推荐工具:HashiCorp Vault);2^attempt秒),避免频繁请求;---
注:需先替换DMXAPI_KEY为有效令牌(从DMXAPI控制台获取),并确保模型名称正确。