当模型不支持图像输入时,图表分析会出现无用的"LLM_UNKNOWN_ERROR"错误
在模型不支持图像输入时, 图表透析失败, 无益的“ LLM UNKNOWN ERROR ”
□ 说明
在通过OpenCode Go生成关于非视觉的LLM(例如"DeepSeek-v4-flash")的图表透视时,UI显示一个通用的"模式请求失败"错误,而不是像*这样的有意义的消息"被选中的模型不支持图像输入. 请使用能见度的模型来进行图表透视。”
其根源有两个:
Chart Insight Agent无条件将图表作为基础64 PNG图像发送给了每个模型(`Agent chart insight.py:80-92'). 对文本模式来说,这是一个无效的请求 。
** 在`client utils.py'中,图像去序回落只识别出一组狭窄的提供者错误信息。 ** 它检查:
- 低等的“图像”和低等的“预期文本”
- 低调中
未知变体'-image url`'
给出不同错误形状的提供商——如OpenCode Go返回‘400:错误来自提供商(OpenCode Go):上游请求失败'——从未匹配过,因此图像-字符串-复刻逻辑永远不会起火. 错误泡出UI为"LLM UNKNOWN ERROR".
□ 步骤重现
- 仅使用文本模型(例如通过OpenCode Go或任何ZZTERM4兼容代用)发射数据格式化器
- 导入数据集并创建图表(如行图)
- 在图表上点击"Generate Insight"
- 观察:没有可采取行动的信息的通用 " 模式请求失败 " 错误
□ 预期行为
** 视同:**
- A) 在 * 发出请求之前探测到只使用文本的模型,并且:
- 将图像从瞬间剥去,仅从元数据中产生洞察力(严重退化),或
- 显示清晰的UI信息: "这个模型不支持图像分析. 切换到可视能模型(如:GPT-4o,Claude 3.5 Sonnet)或洞察力将只使用图表元数据".
-B) 在`client utils.py'中扩展 {is image deserialize error ()',以识别更广泛的一组提供者错误字符串(例如"不支持图像","上流请求"在与图像 url内容对齐时失败),所以现有的图像-strip-和-retrich倒置激活更多提供者.
□ 实际行为
UI 显示“ 模式请求失败 ” ( LLM UNKNOWN ERROR) , 用户无法理解为何更改或更改什么 。
□ 相关代码
---src/data formaters/agents/agent chart insight.py:80-92--总是发送图像 url内容块
py-src/data formaters/agents/client utils.py:85-88- 在` s image deerialize error'中的狭义错误模式匹配py-src/data formaters/agents/client utils.py:157-162-- 倒置会剥去图像和重试(从未触及到非匹配错误)
□ 建议修补
** Short term:** 扩展 QQis image deerialize error() 中的出错模式,以抓取更多的提供者. 起码:
def is image deerialize error (self, 错误 text: str) - > 布尔:
降低 = 出错 text.lower ()
返回( ưμ㼯A
("图像 url"在下和"预期")
. . . . . . .内容来源: microsoft/data-formulator