我们将直接调用 CNB 知识库 API(基于 CNB 知识库,只需上传 markdown 到指定 Git 仓库,即可自动构建知识库并提供 API 接口)
本项目还将使用 LangGraph 作为核心工作流引擎:
本仓库当前代码实现的是「场景 1:基于当前的 Demo 仓库增强对话功能」,在原始 Demo 基础上做了以下增强:
cnb/docs、AI-learing-2025/knowledge 等),通过 CNB 知识库 API 动态切换检索的知识库。reasoning_content)时,前端会在回答上方提供「Thinking Process」可展开区域,方便在需要时查看详细推理。frontend/,入口 src/App.tsx)backend/,核心配置见 backend/src/agent/configuration.py)OLLAMA_BASE_URL 访问(Docker 环境下默认指向 http://host.docker.internal:11434)langgraph-api + langgraph-redis + langgraph-postgres)LANGSMITH_API_KEY:必需。用于 LangGraph Cloud 授权,docker-compose.yml 中的 langgraph-api 会从宿主机环境读取该变量。
export LANGSMITH_API_KEY=your_langsmith_api_key
OLLAMA_BASE_URL:可选,默认值:
http://localhost:11434http://host.docker.internal:11434,用于访问宿主机上的 Ollama。backend/src/agent/configuration.py):
cnb_repo_slug:默认使用 cnb/docs,前端实际查询时会被用户输入的仓库 slug 覆盖。allowed_repos:后端内置了允许访问的仓库及其 token,例如:
cnb/docsAI-learing-2025/knowledgeAI-learing-2025/project-1-knowledge-base更详细的启动说明可参考仓库根目录下的
启动文档说明.md。
准备 LangSmith API Key
https://smith.langchain.com → 进入 API Keys → 生成一个新的 API Key。export LANGSMITH_API_KEY=your_api_key
使用 Docker 一键启动后端(LangGraph API + Redis + Postgres)
chmod +x start.sh # 首次使用需要
./start.sh backend # 等价于 docker compose up -d
http://localhost:8123启动前端开发服务器(本地体验最新 UI)
./start.sh frontend
http://localhost:5173/app/http://localhost:8123/app/一键同时启动后端和前端(本地一站式体验)
./start.sh all
开始对话 & 切换知识库
AI-learing-2025/project-1-knowledge-base)。