使用说明
具有Llama集成的模型上下文协议服务器
此存储库包含一个与本地运行的Llama模型集成的模型上下文协议(MCP)服务器实现。MCP服务器为上下文检索提供了一个标准化的接口,利用来自本地LLM的相关信息增强AI应用程序。
概述
该项目由两个主要部分组成:
- MCP服务器 -基于FastAPI的服务器,实现模型上下文协议并将查询转发到本地Llama模型
- Python客户端 -演示如何与MCP服务器交互的示例客户端应用程序
先决条件
- Python 3.7或更高版本
- 运行调用模型服务器(例如,Ollama)athttp://localhost:11434/
- Git已安装在您的计算机上
- GitHub账号
安装
克隆存储库
git clone https://github.com/EXPESRaza/mcp-llama-integration.git
cd mcp-llama-integration
再进行
pip install -r requirements.txt
文件结构
mcp-llama-integration/
├── llama_mcp_server.py # MCP server with Llama integration
├── llama_client_app.py # Sample client application
└── README.md # Project documentation
设置火焰模型
- 如果还没有,请安装 没有
- 拉动火焰模型:
ollama pull llama3.2 - 验证模型是否正在运行:
curl http://localhost:11434/api/tags ``` browser http://localhost:11434 http://localhost:11434/api/tags
运行MCP服务器
-
启动服务器:
python llama_mcp_server.py -
服务器将在上开始运行
http://localhost:8000 -
您可以通过检查运行状况终结点来验证服务器是否正在运行:
curl http://localhost:8000/health
使用客户端应用程序
-
在单独的终端中,启动客户端应用程序:
python llama_client_app.py -
应用程序将提示您输入
-
键入您的查询并接收Llama模型的回复
-
键入“exit”退出应用程序
API文档
MCP服务器端点
POST/上下文
请求给定查询的上下文。
请求正文:
{
"query_text": "Your query here",
"user_id": "optional-user-id",
"session_id": "optional-session-id",
"additional_context": {}
}
答复:
{
"context_elements": [
{
"content": "Response from Llama model",
"source": "llama_model",
"relevance_score": 0.9
}
],
"metadata": {
"processing_time_ms": 150,
"model": "llama3",
"query": "Your query here"
}
}
GET/健康
检查MCP服务器的运行状况及其与Llama模型的连接。
答复:
{
"status": "healthy",
"llama_status": "connected"
}
定制
改变火焰模型
如果你想使用不同的Llama模型,请修改 model 参数在 query_llama 功能在 llama_mcp_server.py:
payload = {
"model": "your-model-name", # Change this to your model name
"prompt": text,
"stream": False
}
修改提示模板
要在发送给Llama之前更改查询的格式,请更新中的提示模板 get_context 功能:
prompt = f"""Please provide relevant information for the following query:
{request.query_text}
Respond with factual, helpful information."""
故障排除
常见问题
-
连接被拒绝错误
- 确保火焰模型在运行http://localhost:11434/
- 验证Ollama是否正确安装并运行
-
找不到模型错误
- 确保你和Ollama拉了正确的模型
- 检查可用型号
ollama list
-
反应缓慢
- Llama模型推理可能是资源密集型的
- 如果性能有问题,考虑使用较小的模型
贡献
欢迎投稿!请随时提交拉取请求。
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
