LangChain 和 LangGraph
LangChain 是用于构建 LLM 应用的框架,涵盖链、Agent、检索工作流和工具调用工作流。LangGraph 基于 LangChain 生态构建有状态 Agent 和图工作流。对于两者,网关通常接入模型客户端,而无需改变应用的其他部分。
LangChain OpenAI 包提供可调用自定义基础 URL、并可选择使用 OpenAI Responses API 的聊天模型客户端 ChatOpenAI。当 LangChain 应用需要通过 AISIX 发送 Responses API 请求时,请使用这些设置。
本指南使用带有 langchain-openai 的 LangChain Python。你将使用 AISIX 代理 URL、调用方 API Key、模型别名和 use_responses_api=True 配置 ChatOpenAI。LangGraph 应用可以在图节点或 Agent 工作流中复用同一个 ChatOpenAI 客户端。
前置条件
开始前,请准备以下内容:
- 一个受 LangChain 支持的 Python 环境。
- 一个正在运行且应用可以访问的 AISIX 网关。
- 一个 AISIX 调用方 API Key。
- 一个可通过Responses API访问的模型别名。
如果你的组织已经部署 AISIX,请向管理团队获取网关 URL、模型别名和调用方 API Key。否则,请按照开源 AISIX 网关快速上手或 AISIX Cloud 快速上手完成部署,也可以联系 API7申请 Hybrid Cloud 访问权限。
配置 LangChain
如果应用尚未包含 LangChain OpenAI 集成,请先安装:
pip install langchain-openai langgraph
设置 LangChain 应用要使用的值:
# AISIX_BASE_URL 以 /v1 结尾,末尾不带斜杠
# 本地快速入门使用 http://127.0.0.1:3000/v1
export AISIX_BASE_URL="YOUR_AISIX_GATEWAY_URL/v1"
export AISIX_API_KEY="YOUR_CALLER_API_KEY"
export AISIX_MODEL="gpt-4o-prod"
使用 AISIX 值创建 ChatOpenAI 客户端:
import os
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
model=os.environ["AISIX_MODEL"],
api_key=os.environ["AISIX_API_KEY"],
base_url=os.environ["AISIX_BASE_URL"],
use_responses_api=True,
)
response = llm.invoke("Write one sentence about why gateways help AI teams.")
print(response.content)
模型值应填写 AISIX 模型别名,而不是上游服务提供方模型 ID。AISIX 负责模型请求路径:验证调用方 API Key、解析别名、应用策略、记录遥测数据,并将请求分发到别名背后的服务提供方。LangChain 应用仍负责链、提示词、工具、检索和响应处理。