一个具体型号的免费模型下线,一条定时消息的生成直接失败,因为回退分支从来没被跑过。
降级链写好之后一直没被用过。直到那个免费模型下线,定时消息的生成直接失败,回退分支第一次真正跑起来就出了错。
现在我会定期演练:把主模型的地址改成一个不存在的位置,看请求能不能自己落到备选模型上。
相关阅读
用 inspect.signature 过滤关键字参数:接受 **kwargs 的函数被当成什么都不收,重试丢了 model_path2026-11-08inspect.signature(f).parameters 只列声明过的形参,**kwargs 在里面是一个叫 kwargs 的条目。按名字检查「对方收不收这个参数」,最宽松的函数反而什么都过不去。Autarkia 的空回复重试因此丢了 model_path,换成默认模型去请求,返回的 400 混在上游过载的 503 里,同一天的错误分诊把它判成了网关误报。#Python#LLM#调试生成器的异常在第一次 next() 时才抛:try 包住 create_chat_completion(stream=True) 接不到超窗口错误2026-11-08调用生成器函数只会造出生成器,函数体要等第一次 next() 才运行,里面的 raise 也一样。llama-cpp-python 的超窗口检查就在这样的函数体里,所以流式调用外面那层 try 和它的自动收缩重试在真实库下走不到;测试替身在调用时就抛错,测试全绿、覆盖率 100%。#Python#LLM#错误处理#测试#AutarkiaLLM 请求可观测性:日志只统计 messages,原生 tools schema 的开销不在任何日志里2026-11-07原生 function calling 的工具定义放在 tools 参数里,不在 messages 里;只统计消息长度的日志看不到它,流式请求默认也不返回 usage。Autarkia 每轮带了 82 个工具、47,898 字符的 schema,prompt 日志只有两千多字,API 记的是 21k 到 23k token。#LLM#Python#可观测性#Autarkia