LangChain adapter for AG-Kit agents
将 LangChain Agent 转换为符合 AG-UI 协议 的 Agent。
- LangchainAgent:将 LangChain 的 createAgent() 创建的 Agent 包装为 AG-UI 兼容的 Agent
- clientTools():中间件,让客户端可以动态注入工具到 Agent 调用中
``bash`
npm install @cloudbase/agent-adapter-langchain
`typescript
import { run } from "@cloudbase/agent-server";
import { createAgent as createLangchainAgent } from "langchain";
import { MemorySaver } from "@langchain/langgraph";
import { ChatOpenAI } from "@langchain/openai";
import { LangchainAgent, clientTools } from "@cloudbase/agent-adapter-langchain";
const checkpointer = new MemorySaver();
const model = new ChatOpenAI({
model: process.env.OPENAI_MODEL!,
apiKey: process.env.OPENAI_API_KEY!,
configuration: {
baseURL: process.env.OPENAI_BASE_URL,
},
});
// 创建 LangChain Agent,使用 clientTools 中间件支持客户端工具
const lcAgent = createLangchainAgent({
model,
checkpointer,
middleware: [clientTools()],
});
// 部署为 HTTP 服务
run({
createAgent: () => ({
agent: new LangchainAgent({ agent: lcAgent }),
}),
port: 9000,
});
`
将 LangChain Agent 包装为 AG-UI 兼容的 Agent。
`typescript
type LangchainAgentConfig = AgentConfig & {
agent: ReturnType
logger?: Logger; // 可选,日志实例
};
const agent = new LangchainAgent(config);
`
- AgentConfig:来自 AG-UI 协议Logger
- :日志接口,详见 @cloudbase/agent-server 文档
创建一个中间件,让客户端可以动态注入工具到 Agent 调用中。
`typescript`
const agent = createAgent({
model,
checkpointer,
middleware: [clientTools()],
});
客户端定义的工具会与服务端工具合并使用。
- langchain:LangChain Agent 框架@langchain/langgraph
- :Agent 会话记忆(MemorySaver)@langchain/openai`:OpenAI 兼容模型接入
-
📚 完整文档请参阅 云开发 Agent 开发指南