火焰MCP流
该项目是一个交互式人工智能助手,由 溪流, Nvidia Nim的API(火焰3.3:70b)/Ollama,以及 模型控制协议(MCP)它提供了一个对话界面,您可以在其中与LLM交互,通过MCP执行实时外部工具,检索数据,并无缝执行操作。
助理支持:
- 自定义模型选择 (英伟达NIM/Ollama)
- API配置 适用于不同的后端
- 通过MCP集成工具 增强可用性和实时数据处理
- 用户友好的聊天体验 使用Streamlit
📸 截图
Chat (What can you do?) Screenshot
📁 项目结构
llama_mcp_streamlit/
│── ui/
│ ├── sidebar.py # UI components for Streamlit sidebar
│ ├── chat_ui.py # Chat interface components
│── utils/
│ ├── agent.py # Handles interaction with LLM and tools
│ ├── mcp_client.py # MCP client for connecting to external tools
│ ├── mcp_server.py # Configuration for MCP server selection
│── config.py # Configuration settings
│── main.py # Entry point for the Streamlit app
.env # Environment variables
Dockerfile # Docker configuration
pyproject.toml # Poetry dependency management______________________________________________________________________
🔧 环境变量
在运行项目之前,请配置 .env 使用API密钥文件:
# Endpoint for the NVIDIA Integrate API
API_ENDPOINT=https://integrate.api.nvidia.com/v1
API_KEY=your_api_key_here
# Endpoint for the Ollama API
API_ENDPOINT=http://localhost:11434/v1/
API_KEY=ollama______________________________________________________________________
🚀 运行项目
用诗
- 安装依赖项:
poetry install- 运行Streamlit应用程序:
poetry run streamlit run llama_mcp_streamlit/main.py使用Docker
- 构建Docker镜像:
docker build -t llama-mcp-assistant .- 运行容器:
docker compose up______________________________________________________________________
🔄 更改MCP服务器配置
要修改要使用的MCP服务器,请更新 utils/mcp_server.py 文件。 您可以使用NPX或Docker作为MCP服务器:
NPX服务器
server_params = StdioServerParameters(
command="npx",
args=[
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/username/Desktop",
"/path/to/other/allowed/dir"
],
env=None,
)Docker服务器
server_params = StdioServerParameters(
command="docker",
args=[
"run",
"-i",
"--rm",
"--mount", "type=bind,src=/Users/username/Desktop,dst=/projects/Desktop",
"--mount", "type=bind,src=/path/to/other/allowed/dir,dst=/projects/other/allowed/dir,ro",
"--mount", "type=bind,src=/path/to/file.txt,dst=/projects/path/to/file.txt",
"mcp/filesystem",
"/projects"
],
env=None,
)修改 server_params 根据需要进行配置以适应您的设置。
______________________________________________________________________
📌 特性
- 通过MCP实时执行工具
- LLM驱动的聊天界面
- 带有交互式聊天元素的流线型用户界面
- 支持多个LLM后端(NVIDIA NIM和Ollama)
- Docker支持,易于部署
______________________________________________________________________
🛠 依赖项
- Python 3.11+
- 溪流
- OpenAI API(用于NVIDIA NIM集成)
- MCP(模型控制协议)
- 诗歌(用于依赖管理)
- Docker(可选,用于容器化部署)
______________________________________________________________________
📜 许可证
该项目根据MIT许可证获得许可。
______________________________________________________________________
🤝 贡献
请随时提交拉取请求或报告问题!
______________________________________________________________________
📬 联系
如有任何问题,请通过GitHub Issues联系。
______________________________________________________________________
