项目简介
IPFS Accelerate Python 是一个全面的企业级Python框架,专注于硬件加速的机器学习推理和基于IPFS网络的模型分发。它通过实现 Model Context Protocol (MCP) 服务器,以标准化的方式向大型语言模型(LLM)客户端提供上下文信息和各种功能,包括模型管理、性能优化、队列监控和GitHub自动化工具。该平台旨在为生产环境提供稳定、高效和可扩展的AI推理服务。
主要功能点
- 硬件加速ML推理: 支持8种主流硬件平台(CPU, CUDA, ROCm, MPS, OpenVINO, WebNN, WebGPU, Qualcomm),提供高达90/100的综合性能得分,实现高效的AI推理。
- IPFS网络分发: 利用IPFS实现内容寻址的模型存储和分布式传输,支持P2P内容分发和高效缓存策略,减少带宽消耗。
- MCP服务器能力: 作为一个完整的MCP服务器,它能够:
- 托管和管理资源: 例如,通过MCP工具提供HuggingFace模型发现和管理功能,提供数据访问能力。
- 注册和执行工具: 允许LLM调用外部功能,如文本生成、图像分类、音频转录、GitHub工作流管理和自托管运行器配置等。
- 定义和渲染Prompt模板: 支持可定制的LLM交互模式,允许灵活地构建和响应LLM请求。
- 高级性能优化: 包含强大的性能建模系统、全面的基准测试套件、精确的模型-硬件兼容性评估以及企业级生产验证基础设施。
- GitHub CLI与Copilot集成: 提供GitHub工作流自动化、自托管运行器自动扩展、错误报告自动化和Copilot CLI工具集成,简化开发运维。
- P2P缓存系统: 增强的P2P缓存机制,支持加密通信,优化GitHub API请求,提高响应速度和安全性。
安装步骤
-
克隆仓库: 首先,您需要将IPFS Accelerate Python仓库克隆到本地:
git clone https://github.com/endomorphosis/ipfs_accelerate_py.git cd ipfs_accelerate_py -
安装依赖: 建议安装完整依赖以获得所有功能。您可以使用以下命令在开发模式下安装:
pip install -e ".[full]"如果您需要WebNN/WebGPU浏览器加速或最小化安装,可以根据需要选择其他安装选项,如 'pip install ipfs_accelerate_py[webnn]' 或 'pip install ipfs_accelerate_py[minimal]'。
-
Docker部署(可选): 如果您更倾向于容器化部署,可以构建或拉取Docker镜像。以下是快速部署示例:
# 快速企业级部署(默认监听8000端口) docker run -p 8000:8000 ipfs-accelerate:enterprise # 或者使用docker-compose进行生产部署 docker-compose up -f deployments/production/docker-compose.yml
服务器配置
MCP客户端需要以下信息才能连接到IPFS Accelerate MCP服务器。请根据您启动服务器的方式提供以下JSON格式的配置参数:
{ "server_name": "ipfs-accelerate-mcp-server", "command": "python", "args": [ "-m", "ipfs_accelerate_py.cli_entry", "mcp", "start", "--port", "3001", "--dashboard" ], "description": "连接到IPFS Accelerate MCP服务器以获取AI推理、模型管理和GitHub自动化功能。" }
- 'server_name': 服务器的唯一标识符,可自定义,例如“ipfs-accelerate-mcp-server”。
- 'command': 启动MCP服务器的执行命令,通常是'python'。
- 'args': 启动MCP服务器所需的参数列表。
- '-m ipfs_accelerate_py.cli_entry': 指示Python解释器作为模块运行'ipfs_accelerate_py'包中的CLI入口点。
- 'mcp start': 调用CLI中用于启动MCP服务器的子命令。
- '--port 3001': 指定MCP服务器监听的端口,例如'3001'。您可以根据实际部署环境更改此端口。
- '--dashboard': 启动MCP服务器自带的Web仪表板,提供可视化界面进行模型管理和监控。
- 'description': 服务器功能的简要说明,帮助用户了解其提供的主要服务。
基本使用方法
-
启动MCP服务器: 在克隆并安装了依赖的仓库根目录中,运行以下命令启动MCP服务器:
python -m ipfs_accelerate_py.cli_entry mcp start --port 3001 --dashboard服务器启动后,您会在控制台看到相关的日志信息。如果您启动了仪表板,可以在浏览器中访问 'http://localhost:3001' 来查看和管理模型及工作流。
-
通过MCP客户端调用工具: MCP服务器启动后,您的MCP客户端(例如VS Code的MCP扩展)就可以通过JSON-RPC协议连接到该服务器。连接成功后,您可以使用客户端提供的接口来调用服务器暴露的各种工具。
以下是您可以调用的部分工具示例(具体调用方式取决于您的MCP客户端实现):
- 列出可用模型: 调用名为 'list_models' 的工具,通常不带任何参数。服务器将返回可用的AI模型列表。
- 获取服务器信息: 调用名为 'get_server_info' 的工具,通常不带任何参数。服务器将返回其自身(IPFS Accelerate MCP服务器)的版本、能力和运行状态等信息。
- 测试AI推理:
调用名为 'test_inference' 的工具,并提供 'model_type'(例如'text', 'image', 'audio')和 'input_text' 参数。例如:
服务器将模拟或执行AI推理并返回结果。{ "model_type": "text", "input_text": "Write a short poem about stars." } - 获取队列状态: 调用名为 'get_queue_status' 的工具,通常不带任何参数。服务器将返回当前AI推理任务队列的详细状态,包括活跃端点、队列大小和处理中的任务。
通过这些工具,MCP客户端可以全面利用IPFS Accelerate MCP服务器的强大功能,实现LLM应用与硬件加速AI推理和分布式服务的高效集成。
信息
分类
AI与计算