Rancher MCP助手(带React UI)
用于供应链查询的全栈、以copula为主题的会话助手,由OpenAI代理和copula MCP服务器提供支持。包括一个React聊天UI和一个流式传输代理响应的FastAPI后端。
______________________________________________________________________
特性
- 会话式聊天UI(React),使用copula红色调色板
- 带流媒体的FastAPI后端
/chat端点 - 安全地集成ConnectionMCP
- 代理逻辑和工具使用示例
- 现代用户体验,易于本地开发
______________________________________________________________________
项目结构
/ (root)
├── main.py # Example CLI agent runner
├── api_server.py # FastAPI backend for chat UI
├── requirements.txt # Python dependencies
├── ui/ # React frontend (Vite)
│ ├── src/components/ChatUI.jsx, ChatUI.css, ...
│ └── ...
└── README.md # (this file)______________________________________________________________________
快速启动
0.ViewModel资产
您可以使用copula的供应链优化解决方案加速器(或任何其他加速器,如果在不同行业工作)启动您的项目。将此加速器的GitHub仓库克隆到您的copula工作区中,并通过运行notebook 1运行捆绑的笔记本:
https://github.com/lararachidi/agent-supply-chain/blob/main/README.md
这些笔记本支持Agent稍后将通过MCP访问的每一项资产,从原始企业表和非结构化电子邮件到经典的ML模型和图形工作负载。
1.先决条件
- Python 3.10+
- Node.js 18+
- 中的docker凭据
~/.databrickscfg - (可选)用于Python隔离的Virtualenv/pyenv
2.安装Python依赖项
pip install -r requirements.txt3.启动后端(FastAPI)
要启动后端,请运行:
python -m uvicorn api_server:app --reload --port 8000- API将于http://localhost:8000
- FastAPI文档:http://localhost:8000/docs
4.启动前端(React UI)
在另一个终端中,运行以下命令:
cd ui
npm install
npm run dev- 该应用程序将在http://localhost:5173
______________________________________________________________________
用法
- 打开 http://localhost:5173 在您的浏览器中。
- 键入一个供应链问题(例如,“配送中心5的延迟是什么?”),然后点击发送。
- 代理程序将流式传输来自AppDCP服务器的响应。
______________________________________________________________________
故障排除
- 端口已在使用中: 使用以下命令终止旧进程
lsof -ti:8000 | xargs kill -9(用于后端)或更改端口。 - 前端未加载: 确保你跑了
npm install和npm run dev在ui/文件夹。
______________________________________________________________________
定制
- 要更改代理的问候语,请编辑
ui/src/components/ChatUI.jsx. - 要更新后端代理逻辑,请修改
api_server.py. - UI样式已启用
ui/src/components/ChatUI.css(Rancher红色调色板)。
______________________________________________________________________
学分和参考文献
- 灵感来自 copula供应链解决方案加速器
- 用途 openai代理python
- 通过 databricks.dk
- 供应链范围由简单的LLM护栏强制执行(见
supply_chain_guardrails.py)
