MCP服务器和Ollama AI代理
该项目展示了一种强大的人工智能模式:一个使用外部工具回答问题的自主代理。它由两个应用程序组成:
- MCP服务器:一个FastAPI服务器,通过REST API提供一组工具(天气、股票、货币、计算器)。
- AI 代理:一个由本地Ollama LLM驱动的命令行代理,可以智能地决定使用哪个工具来响应用户的查询。
先决条件
- python:您必须安装Python 3.8+。
- 没有:你一定有 没有 已安装并在您的计算机上运行。
- Ollama模型:你需要拉一个模型。我们建议
llama3。您可以通过运行以下命令来获取:
ollama run llama3一旦你看到 >>> 提示,您可以键入 /bye 退出。该模型现在可供代理使用。
步骤1:设置并运行MCP服务器
服务器为代理提供工具。
- 导航到服务器目录:
cd mcp_server- 创建虚拟环境并安装依赖项:
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
pip install -r requirements.txt- 运行服务器:
python server.py您应该看到指示服务器正在运行的输出 http://127.0.0.1:8000。保持此终端窗口打开。您可以通过打开来验证它是否正常工作 http://127.0.0.1:8000/docs 在您的浏览器中。
步骤2:设置并运行AI代理
代理将连接到您刚刚启动的服务器。
- 打开一个新的终端窗口。
- 导航到代理目录:
cd ai_agent- 创建虚拟环境并安装依赖项:
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
pip install -r requirements.txt- 运行代理:
python agent.py步骤3:与代理交互
代理运行后,您将看到 > 提示。现在,您可以向它提出需要它使用工具的问题。代理将实时打印其“思维过程”。
示例问题:
What is the weather like in London?(使用get_weather工具)What is the price of Apple stock?(使用get_stock_price工具)How many US dollars is 100 Euros?(这需要两个步骤:首先获取汇率,然后使用计算器)What is 55 times 3.14?(使用calculator工具)What is the weather in Tokyo and what is the price of Microsoft stock?(使用多种工具)Who is the president of the United States?(代理人应该根据自己的知识回答这个问题,而不使用工具)
