OpenAI API 兼容 or 不兼容 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
niz
V2EX    程序员

OpenAI API 兼容 or 不兼容

  •  
  •   niz 104 天前 2743 次点击
    这是一个创建于 104 天前的主题,其中的信息可能已经有所发展或是发生改变。

    五月份使用 Spring AI 集成了 DeepSeek 和智谱 GLM-4 ,当时功能都是正常的。

    上周又重新跑了一下程序,发现 DeepSeek 只能回答 MCP 工具之内的问题。然后我又换成了智谱 GLM-4.5 ,当时正值阅兵,我随意输入了一个关于阅兵的问题,智谱 GLM-4.5 回答一半停住了。看日志说是返回值 FinishReason 是 sensitive,而 Spring AI 中的代码中没有添加这个属性,导致反序列化失败。看到这里自然就明白了,sensitive 表示因为某些敏感词触发机制,智谱把当前的流式响应切断了!这是一个新加的属性,想必 Open AI API 中不会有这个属性。(当然我没仔细比对)

    到这里情况就清楚了:

    • DeepSeek 的现状是每次升级都没有冻结版本,也就说 DeepSeek 并没有维护多个版本的基础设施。每次都在原基础设施上升级,对于用户则一直使用 deepseek-chat 和 deepseek-reasoner 的模型名称。但是不同版本的 deepseek-chat 和 deepseek-reasoner 能力不一样,可能会引入 bug 。
    • 智谱的现状是并未完全兼容 OpenAI API ,某些自定义返回值属性可能会导致程序 Bug 。

    然后我又浏览国内各大模型的 API 文档,也看了一些国外 AI Agent 框架文档。

    我发现各个厂商都在维持所谓的 OpenAI API 兼容性这个“最大公约数”,但是一旦你深入浏览各模型厂商的文档就会发现,同一个兼容接口的返回值可能是不一样的,甚至有些模型厂商会提供额外的模型能力 API 。

    那么在这样的情况下,基于所谓兼容的 OpenAI API 构建的 AI Agent 未必会充分利用各模型的能力,又因为各模型厂商返回值可能的不一致从而引入 bug 。

    另外,那些 AI Agent 框架默认你需要有一个 OPENAI_API_KEYANTHROPIC_API_KEY。如果你想用其他的模型,则需要自定义一些代码了...

    很矛盾!!要兼容吧,会有 bug 、会跳过某些特定能力 API ;不兼容吧,会被“供应商锁定”。在没有 OPENAI_API_KEYANTHROPIC_API_KEY 的情况下,AI Agent 框架貌似是不能直接使用的。

    挺纠结的。各位有何看法?

    7 条回复    2025-09-11 17:37:43 +08:00
    musi
        1
    musi  
       104 天前 via iPhone   1
    不可能存在完全兼容的这个情况,模型能力都不一样你能咋兼容
    bigtear
        2
    bigtear  
       104 天前
    Langchain 之类的框架就是解决这种问题的,一般是使用最大公约数的 OpenAI 兼容
    yulon
        3
    yulon  
       104 天前
    FinishReason 本来就会 sensitive
    iugo
        4
    iugo  
       104 天前
    针对这样的问题, 我们选择的是针对不同平台, 分别包裹一层后再用 OpenAI 的 SDK.

    写一个 SDK, 套壳 OpenAI SDK, 不过针对参数和返回值有套壳.
    looplj
        5
    looplj  
       104 天前
    首先,OpenAI 有 finish reason 是 content_filter
    cKnight
        6
    cKnight  
       104 天前
    可以看下我的开源项目,有解决提到的兼容问题。https://v2ex.com/t/1151396
    viking602
        7
    viking602  
       104 天前
    不完全兼容吧 厂商有的会有自己的参数 所以就需要用到一些框架额外转换一次
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3349 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 00:39 PVG 08:39 LAX 16:39 JFK 19:39
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86