使用说明

项目简介

PydanticAI API 模板是一个现代 Python 项目模板,旨在帮助开发者快速构建基于 AI 的 API 应用。它集成了 FastAPI 框架和 PydanticAI 库,并内置了 MCP (Model Context Protocol) 服务器,能够以标准化的方式为 LLM (大型语言模型) 客户端提供上下文信息和功能。

主要功能点

  • MCP 服务器: 内置 MCP 服务器实现,支持工具注册和调用,为 LLM 应用提供上下文服务。
  • 工具注册与执行: 通过 '@server.tool()' 装饰器可以轻松注册 Python 函数为 MCP 工具,供 LLM 客户端调用。
  • 预置工具: 提供了 'chat' 工具用于与 AI 助手对话,以及 'story' 工具用于生成故事创意。
  • SSE 传输协议: MCP 服务器使用 SSE (Server-Sent Events) 协议与客户端通信。
  • PydanticAI 集成: 深度集成 PydanticAI 库,方便构建结构化 LLM 应用。
  • FastAPI 框架: 基于高性能的 FastAPI 框架构建 API 服务。
  • 开发容器: 提供 Dev Containers 配置,方便快速搭建一致的开发环境。

安装步骤

  1. 环境准备: 确保已安装 Docker 和 VS Code 或 Cursor,并安装 Dev Containers 扩展。
  2. 克隆仓库: 'git clone https://github.com/dylan-isaac/pydanticai-api-template'
  3. 打开开发容器: 使用 VS Code 或 Cursor 打开克隆的仓库,并选择 "Reopen in Container" 在 Dev Container 中重新打开项目。
  4. 启动服务器: 在 Dev Container 的终端中运行 'start' 命令或 'pat run' 命令启动 FastAPI API 服务器,访问 http://localhost:8000/docs 查看 API 文档。
  5. 启动 MCP 服务器: 在 Dev Container 的终端中运行 'pat run-mcp' 命令启动 MCP 服务器。

服务器配置

MCP 服务器主要通过命令行 'pat run-mcp' 启动,默认监听 'http://0.0.0.0:3001' 地址。

对于 MCP 客户端,需要配置连接到此 MCP 服务器的信息。以下是一个 JSON 格式的 MCP 服务器配置示例,通常在 MCP 客户端的配置中会需要类似的信息:

{
  "serverName": "PydanticAI-MCP-Server",  // MCP 服务器名称,可自定义
  "command": "pat",                     // 启动 MCP 服务器的命令,这里使用项目 CLI 工具 pat
  "args": ["run-mcp"],                   // 启动命令的参数,指定运行 MCP 服务器
  "host": "localhost",                  // MCP 服务器主机名
  "port": 3001,                       // MCP 服务器端口号
  "transport": "sse",                   // 传输协议,这里使用 SSE
  "baseUrl": "http://localhost:3001"    // MCP 服务器基础 URL,用于客户端连接
}

基本使用方法

  1. 启动 MCP 服务器: 在 Dev Container 终端运行 'pat run-mcp'。
  2. 运行 MCP 客户端: 使用任何兼容 MCP 协议的客户端连接到 'http://localhost:3001/sse' 地址。例如,可以使用仓库提供的 'examples/mcp_client_example.py' 作为 Python 客户端示例。
  3. 调用 MCP 工具: 客户端连接成功后,可以调用 MCP 服务器注册的工具,例如 'chat' 和 'story' 工具,与 AI 助手进行对话或生成故事创意。
  4. 查看 API 文档: 访问 http://localhost:3001/docs 可以查看 MCP 服务器的 API 文档 (如果服务器提供了 swagger 文档)。

注意: 在运行 MCP 客户端示例前,请确保已设置 'OPENAI_API_KEY' 环境变量。

信息

分类

AI与计算