使用说明
项目简介
SmartGPT 是一个使用 TypeScript 构建的库,旨在帮助开发者构建高级 AI 应用程序。它通过双模型管道结合快速推理模型和深度上下文模型,并提供 REST API 服务(MCP 服务器)以实现全面的系统控制。SmartGPT 支持多种 LLM 提供商,集成了工具和知识管理功能,可以作为库或独立的 MCP 服务器使用。
主要功能点
- 双模型 AI 管道: 结合快速推理和深度上下文模型,优化 AI 响应质量。
- REST API (MCP) 服务器: 通过 HTTP 端点提供系统控制,符合 MCP 协议,方便 LLM 客户端集成。
- 多提供商支持: 支持 OpenAI、Google AI、Anthropic 和 Groq 等多种 LLM 模型。
- 工具集成: 内置安全 Shell 命令执行、文件解析、Web 搜索等多种实用工具,扩展 LLM 功能。
- 知识管理: 支持 Neo4j 知识图谱或内存存储,增强上下文理解和检索能力。
- Prompt 模板: 虽然文档中没有明确提及Prompt 模板,但通过工具和双模型管道的组合,可以灵活定制 LLM 交互模式。
安装步骤
- 安装 Node.js: 确保已安装 Node.js 18 或更高版本。
- 克隆仓库:
git clone https://github.com/nschlaepfer/SmartGPT.git cd SmartGPT - 安装依赖:
npm install - 配置环境变量:
- 在项目根目录下创建 '.env' 文件。
- 添加 OpenAI API 密钥(必须),以及其他可选 API 密钥,例如 Google AI API 密钥、Serper API 密钥等。
OPENAI_API_KEY=你的OpenAI密钥 GOOGLE_GENERATIVE_AI_API_KEY=你的GoogleAI密钥 (可选) SERPER_API_KEY=你的Serper密钥 (可选,用于Web搜索) ANTHROPIC_API_KEY=你的Anthropic密钥 (可选) GROQ_API_KEY=你的Groq密钥 (可选)
服务器配置
MCP 客户端需要配置以下信息以连接 SmartGPT MCP 服务器:
{ "serverName": "SmartGPT MCP Server", "command": "npm", "args": ["run", "mcp-server"] // "args": ["run", "mcp-server", "--port", "4141"] // 如果需要指定端口,可以在这里添加参数,默认端口为 4141 // "cwd": "/path/to/SmartGPT" // 如果启动命令不在当前工作目录,可以指定工作目录 }
配置参数说明:
- 'serverName': 服务器名称,可以自定义,用于在 MCP 客户端中标识服务器。
- 'command': 启动服务器的命令,这里使用 'npm' 命令。
- 'args': 启动命令的参数,'run mcp-server' 是 'package.json' 中定义的启动 MCP 服务器的脚本。如果需要指定端口或其他参数,可以添加到 'args' 数组中。
- 'cwd': (可选) 服务器的工作目录。如果 MCP 服务器需要特定的工作目录才能正常运行,可以在这里配置。
注意:
- 确保 MCP 客户端能够访问到 SmartGPT MCP 服务器运行环境,例如网络可达或者在同一台机器上。
- 启动命令 'npm run mcp-server' 假定您在 SmartGPT 项目的根目录下执行此配置。如果实际情况不同,请调整 'command' 和 'args' 以确保能够正确启动服务器。
基本使用方法
-
启动 MCP 服务器: 在 SmartGPT 项目根目录下,运行命令启动 MCP 服务器:
npm run mcp-server服务器默认监听 'http://localhost:4141' 端口。
-
查看可用工具: 使用 GET 请求访问 '/mcp/manifest' 端点,获取服务器提供的工具列表和描述信息。
curl http://localhost:4141/mcp/manifest -
调用工具: 使用 POST 请求访问 '/mcp/invoke' 端点,调用特定工具。请求 body 需要包含 'tool' (工具名称) 和 'input' (工具输入参数) 字段。 例如,调用 'openai_completion' 工具:
curl -X POST http://localhost:4141/mcp/invoke \ -H "Content-Type: application/json" \ -d '{"tool":"openai_completion", "input":{"prompt":"What is the capital of France?"}}' -
使用双模型管道:
- 提问:使用 POST 请求访问 '/api/ask' 端点。
curl -X POST http://localhost:4141/api/ask \ -H "Content-Type: application/json" \ -d '{"query":"What is quantum computing?"}' - 多步推理:使用 POST 请求访问 '/api/thoughtchain' 端点。
curl -X POST http://localhost:4141/api/thoughtchain \ -H "Content-Type: application/json" \ -d '{"query":"Explain the implications of quantum computing on cryptography", "drafts": 3}' - Web 搜索:使用 POST 请求访问 '/api/websearch' 端点。
curl -X POST http://localhost:4141/api/websearch \ -H "Content-Type: application/json" \ -d '{"query":"latest developments in quantum computing 2025"}'
- 提问:使用 POST 请求访问 '/api/ask' 端点。
更多 API 使用方法请参考仓库 README 文档或访问 '/' 根端点查看系统信息和文档。
信息
分类
AI与计算