框架接入

LangChain 与 LlamaIndex:把框架指向兼容端点

更新于 2026-07-20 · 适用于 langchain-openai 与 llama-index 近期版本

框架接入的本质和 SDK 一样:改 base_url、换 api_key、用真实模型 ID。容易出错的地方在于框架有默认模型、默认重试和自己的抽象层,报错时先分清是端点问题还是框架问题。

LangChain:ChatOpenAI 三参数

# pip install langchain-openai
from langchain_openai import ChatOpenAI

llm = ChatOpenAI(
    base_url="https://codebridgeapi.top/v1",
    api_key="YOUR_API_KEY",
    model="<从 /v1/models 复制>",     # 必须显式传,不要用框架默认
    temperature=0,
)
print(llm.invoke("用一句话解释幂等性").content)

LCEL 链、Agent、RAG 场景不需要额外配置——只要这个 llm 对象通了,上层怎么组合都走同一个端点。先让最小样例通,再组装链路。

LlamaIndex:用 OpenAILike 而不是 OpenAI

LlamaIndex 的 OpenAI 类会校验模型名是否在官方清单里,第三方模型 ID 会被拦下;接兼容端点应使用 OpenAILike:

# pip install llama-index-llms-openai-like
from llama_index.llms.openai_like import OpenAILike

llm = OpenAILike(
    api_base="https://codebridgeapi.top/v1",
    api_key="YOUR_API_KEY",
    model="<从 /v1/models 复制>",
    is_chat_model=True,                 # 走 chat 接口
)
print(llm.complete("用一句话解释向量检索"))

嵌入模型是独立边界:你的账号 /v1/models 返回里有嵌入类模型才可用;没有就为嵌入单独选型,不要把对话模型硬塞给嵌入接口。

上线前的验证清单

  • 最小样例先通:一个 invoke / complete 能返回,再接 RAG 或 Agent。
  • 模型 ID 显式传参:框架默认模型是排错时最隐蔽的干扰项。
  • 框架重试与自写重试二选一:两层重试叠加会把 429 放大成风暴。
  • 为框架应用单独建 Key:与本地调试、其他工具分开,便于回收与对账。
  • 长输出链路开流式:LangChain 的 llm.stream() 同样适用于兼容端点。