使用说明

项目简介

Simple-AI-Agent 是一个 AI Agent 示例项目,它演示了如何利用 Model Context Protocol (MCP) 来扩展 AI Agent 的能力。该项目包含一个 AI Agent 客户端以及多个 MCP 服务器,这些服务器提供了网页搜索、文件上传和 Markdown 文档生成等工具,Agent 可以通过 MCP 协议调用这些工具来完成更复杂的任务。

主要功能点

  • 任务分解与规划: AI Agent 能够将用户输入的复杂任务分解为多个步骤,并规划执行步骤,例如先搜索信息,再进行总结,最后生成文档。
  • 工具扩展能力: 通过 MCP 服务器提供工具,Agent 可以轻松扩展自身能力,无需 Agent 自身实现复杂功能,例如网页搜索、文件操作等。
  • 网页搜索: 通过 'web_search' MCP 服务器提供的工具,Agent 能够进行互联网搜索,获取最新的信息。
  • 文件上传与读取: 通过 'resource_get' MCP 服务器提供的工具,Agent 可以上传和读取本地文件内容,包括文本文件和图片文件(图片文件支持OCR识别)。
  • Markdown文档生成: 通过 'document_generate' MCP 服务器提供的工具,Agent 可以生成 Markdown 格式的文档并保存到本地。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/Succoney/Simple-AI-Agent.git
    cd Simple-AI-Agent/
  2. 创建并激活 conda 环境:

    conda create -n simple-agent python=3.12
    conda activate simple-agent
  3. 安装依赖:

    pip install -r requirements.txt

    如果安装失败,尝试使用以下命令:

    python -m pip install -r requirements.txt
  4. 配置 API 参数: 编辑 './config/config.env' 文件,填入模型名称、API URL、API Key 以及网页搜索 API 相关的参数 (例如 'web_url', 'web_api_key' 等)。 你需要根据你使用的 LLM 服务和网页搜索服务提供商的信息进行配置。

  5. 启动 AI Agent:

    cd agent/
    sh run_agent.sh

    'run_agent.sh' 脚本会同时启动 Agent 客户端和所需的 MCP 服务器。

服务器配置

该项目中的 MCP 客户端 ('agent/mcp_client.py' 和 'agent/agent.py') 通过标准输入输出 (stdio) 协议与 MCP 服务器进行通信。以下是启动 Agent 时需要配置的 MCP 服务器信息,这些配置已经包含在 'run_agent.sh' 脚本和 'agent/agent.py' 中,用户无需手动配置,此处仅为说明:

1. Web Search Server (web-search):

  • Server Name: 'web-search' (用于客户端识别)
  • Command: 'python' (启动命令,使用 Python 解释器)
  • Args: 'agent/mcp_sever/web_search.py' (服务器脚本路径)
  • Description: 提供互联网搜索功能的 MCP 服务器。

2. Document Generate Server (document-generate):

  • Server Name: 'document-generate' (用于客户端识别)
  • Command: 'python' (启动命令,使用 Python 解释器)
  • Args: 'agent/mcp_sever/document_generate.py' (服务器脚本路径)
  • Description: 提供 Markdown 文档生成功能的 MCP 服务器。

3. Resource Get Server (resource):

  • Server Name: 'resource' (用于客户端识别)
  • Command: 'python' (启动命令,使用 Python 解释器)
  • Args: 'agent/mcp_sever/resource_get.py' (服务器脚本路径)
  • Description: 提供文件和图片上传功能的 MCP 服务器。

注意: 这些服务器配置信息已经硬编码在 'agent/agent.py' 和 'run_agent.sh' 中,用户 无需 修改这些配置即可运行示例。 在实际应用中,如果需要集成到其他 MCP 客户端,则需要根据客户端的要求配置这些服务器的启动命令和参数。

基本使用方法

  1. 启动 Agent 后,在终端中会显示 'Query: ' 提示符。
  2. 输入你的问题或任务,例如 "Create a 7-day travel itinerary for a trip to Japan and save it as a markdown file."
  3. Agent 会自动分解任务,调用 MCP 服务器提供的工具来完成任务,并在终端中输出结果。
  4. 你可以继续输入新的问题进行交互。
  5. 输入 'quit()' 可以退出 Agent。

示例指令:

  • "Check who won the Nobel Prize this year." (使用网页搜索)
  • "Create a markdown file named 'travel_plan.md' with the following content: # My Travel Plan ... " (生成 Markdown 文档)
  • "file upload" (上传本地文件,根据提示选择文件,上传成功后可以提问关于文件内容的问题)
  • "image upload" (上传本地图片文件,支持OCR识别图片文字)

信息

分类

AI与计算