偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

LangChain 1.0 全新特性!標(biāo)準(zhǔn)化消息內(nèi)容視圖,讓多模型開發(fā)無(wú)縫切換

發(fā)布于 2025-9-10 23:57
瀏覽
0收藏

在大模型技術(shù)快速迭代的今天,開發(fā)者面臨的最大痛點(diǎn)之一就是 不同廠商 API 的分化。 每次切換 LLM 提供商(如 OpenAI、Anthropic、Google Gemini),都可能要重寫一大堆代碼,既耗時(shí)又增加維護(hù)成本。

現(xiàn)在,LangChain 給出了答案: 我們正式推出了 標(biāo)準(zhǔn)化消息內(nèi)容視圖(Standard Content Blocks)。它統(tǒng)一了推理過程、引用標(biāo)注、服務(wù)端工具調(diào)用以及多模態(tài)能力,讓你真正做到 “一次編寫,隨處運(yùn)行”。

為什么需要標(biāo)準(zhǔn)化?

LangChain 的核心優(yōu)勢(shì)一直是提供 跨大模型的抽象層。 但隨著功能越來越豐富,問題也越來越嚴(yán)重:

  • 各大廠商支持的功能類似,但 API 表達(dá)差異很大;
  • 兼容層(如 Chat Completions API)通常更新滯后,甚至無(wú)法覆蓋原生功能;
  • Web 搜索、代碼解釋器、多模態(tài)數(shù)據(jù)等能力難以保持一致。

結(jié)果是:開發(fā)者不得不在兼容邏輯上反復(fù)“造輪子”。

而 Standard Content Blocks 的出現(xiàn),正是要把這些分歧統(tǒng)一到一個(gè)標(biāo)準(zhǔn)結(jié)構(gòu)上。

LangChain 1.0 的新能力

在 ??langchain??? 1.0 中,所有消息對(duì)象都支持標(biāo)準(zhǔn)化的 ??.content_blocks?? 屬性,它會(huì)從現(xiàn)有消息內(nèi)容中延遲生成一致的結(jié)構(gòu)。

標(biāo)準(zhǔn)化內(nèi)容塊 確保 相同的功能在不同提供商之間得到一致表示。它們實(shí)際上是一組類型化的數(shù)據(jù)結(jié)構(gòu),包括:

  • 標(biāo)準(zhǔn)文本輸出(包括 citations / annotations)
  • 模型 reasoning 輸出(結(jié)構(gòu)化 chain-of-thought)
  • 多模態(tài)數(shù)據(jù):圖片、音頻、視頻、文檔(URL / base64 / 存儲(chǔ)桶 ID)
  • 工具/函數(shù)調(diào)用(function calls & tool use)
  • 廠商特定工具:Web 搜索、代碼執(zhí)行等

支持范圍:目前已在 Python 和 JS 中提供。

技術(shù)細(xì)節(jié)與示例

不同廠商 API 的響應(yīng)在結(jié)構(gòu)上差異明顯。以下以 Anthropic Claude 與 OpenAI Responses API 為例。

Anthropic 示例

from langchain.chat_models import init_chat_model

llm = init_chat_model(
    "anthropic:claude-sonnet-4-20250514",
    thinking={"type": "enabled", "budget_tokens": 5_000},
).bind_tools([{
    "type": "web_search_20250305",
    "name": "web_search",
    "max_uses": 1,
}])

response = llm.invoke("When was LangChain created?")
print(response.content)

返回的 ??.content??? 包含 ??thinking???、??server_tool_use???、??web_search_tool_result??? 和 ??text??。

OpenAI 示例

from langchain.chat_models import init_chat_model

llm = init_chat_model(
    "openai:gpt-5-nano",
    reasoning={"effort": "low", "summary": "auto"},
).bind_tools([{"type": "web_search_preview"}])

response = llm.invoke("When was LangChain created?")
print(response.content)

返回的結(jié)果使用 ??reasoning???、??web_search_call??? 和 ??text??,字段命名與結(jié)構(gòu)不同。

?統(tǒng)一后的 ???.content_blocks???

使用 ??.content_blocks?? 屬性,二者會(huì)被解析為一致的表示:

response.content_blocks
# [
#   {"type": "reasoning", "reasoning": "..."},
#   {"type": "web_search_call", "query": "...", "id": "..."},
#   {"type": "web_search_result", "urls": [...], "id": "..."},
#   {"type": "text", "text": "...", "annotations": [...]},
# ]

這樣,開發(fā)者無(wú)需再針對(duì)不同 API 寫冗余的適配代碼。

完全向后兼容

  • 零破壞性更新:100% 兼容現(xiàn)有 LangChain 應(yīng)用
  • 統(tǒng)一適配:??.content_blocks?? 可用于所有消息類型,包括緩存中的舊消息

目前 alpha 版本已支持:

  • Chat Completions API(包括 OpenAI)
  • OpenAI Responses API
  • Anthropic (Claude)

未來將支持所有主要 LLM 提供商。

展望未來:從兼容到工程化

標(biāo)準(zhǔn)化消息內(nèi)容不僅僅是語(yǔ)法糖,而是 LLM 應(yīng)用走向工程化的基石。

它帶來的價(jià)值:

  • 自信構(gòu)建:類型安全幫助提前發(fā)現(xiàn)錯(cuò)誤
  • 跨廠商遷移更快:無(wú)需重寫應(yīng)用邏輯即可切換模型
  • 未來可擴(kuò)展:新功能上線即可無(wú)縫接入,不破壞現(xiàn)有代碼

這意味著,LangChain 不只是兼容層,而是 多模型生態(tài)的統(tǒng)一開發(fā)標(biāo)準(zhǔn)。

結(jié)語(yǔ):現(xiàn)在就開始嘗試!

如果你正在為 多模型兼容 或 快速引入新功能 而煩惱,LangChain 1.0 的 Standard Content Blocks 將是你的最佳助手。

本文轉(zhuǎn)載自????????AI小智????????,作者: AI小智

收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦