user
https://github.com/langchain-ai/retrieval-agent-template?utm_source=chatgpt.com这个如何部署
ChatGPT
这个项目是LangGraph RAG 检索 Agent 模板,部署前要先准备一个向量库:默认是Elasticsearch,也支持 MongoDB Atlas、Pinecone。仓库里已经有langgraph.json,包含两个图:indexer和retrieval_graph。
本地跑起来
git clone https://github.com/langchain-ai/retrieval-agent-template.git
cd retrieval-agent-template
cp .env.example .env
安装:
pip install -U "langgraph-cli[inmem]"
pip install -e .
如果用 OpenAI,.env至少填:
OPENAI_API_KEY=你的key
LANGSMITH_PROJECT=retrieval-agent
默认检索后端是 Elasticsearch。官方 README 说默认retriever_provider: elastic。
本地 Elasticsearch:
docker network create elastic-net
docker run -p 127.0.0.1:9200:9200 -d \
--name elasticsearch \
--network elastic-net \
-e ELASTIC_PASSWORD=changeme \
-e "discovery.type=single-node" \
-e "xpack.security.http.ssl.enabled=false" \
-e "xpack.license.self_generated.type=trial" \
docker.elastic.co/elasticsearch/elasticsearch:8.15.1
.env加:
ELASTICSEARCH_URL=http://host.docker.internal:9200
ELASTICSEARCH_USER=elastic
ELASTICSEARCH_PASSWORD=changeme
然后启动 LangGraph:
langgraph dev
打开 Studio 后先选indexer图,传入文档:
[{ "page_content": "My cat knows python." }]
再切到retrieval_graph图提问。README 说明这个模板就是先用indexer建索引,再用retrieval_graph按user_id检索回答。
部署到 LangGraph Cloud / LangSmith
把项目 push 到你自己的 GitHub 仓库。
LangSmith → Deployments → New Deployment。
选择这个仓库。
配置环境变量:
OPENAI_API_KEY=...
ELASTICSEARCH_URL=...
ELASTICSEARCH_API_KEY=...
# 或者 ELASTICSEARCH_USER / ELASTICSEARCH_PASSWORD
部署后调用图名:
from langgraph_sdk import get_sync_client
client = get_sync_client(
url="你的部署URL",
api_key="你的LangSmith API Key"
)
client.runs.stream(
None,
"retrieval_graph",
input={"messages": [{"role": "human", "content": "我的文档里有什么?"}]},
stream_mode="updates",
)
关键点
不要只部署聊天图。这个模板有两个图:
"indexer": "./src/retrieval_graph/index_graph.py:graph",
"retrieval_graph": "./src/retrieval_graph/graph.py:graph"
你必须先调用indexer把资料写入向量库,再调用retrieval_graph问答。
found something on the website that might be helpful to you. Here is the link and the content: