Skip to main content
Glama
2188195028-crypto

AI Router MCP Server

README.md
# AI Router v2.0 — 多模型智能路由

一个智能的多模型协作程序:**图片 → 可切换的视觉模型看图 → DeepSeek 归纳总结 → 最终回答**。

纯文本问题直接交给 DeepSeek 处理。

## 🎯 为什么需要这个程序?

| 模型 | 优势 | 短板 |
|------|------|------|
| **DeepSeek** | 推理强、总结好、超便宜 | ❌ 不支持图片输入(纯文本模型) |
| **视觉模型** | 强大的视觉理解、看图说话 | 归纳总结不如 DeepSeek |

💡 **解决方案**:取长补短,视觉模型看图 → DeepSeek 总结 → 用户得到最佳回答。

**视觉模型可自由切换**:Kimi / OpenAI GPT-4o / 通义千问 VL / 智谱 GLM-4V / Google Gemini / 自定义端点。

## 🏗 架构

```
用户输入(文字 + 可选图片)
    │
    ▼
┌─────────────────┐
│   Input Router   │  检测输入类型
└─────┬───────────┘
      │
      ├── 有图片 ──→ [视觉模型] 看图 ──→ 文字描述
      │         (kimi/openai/qwen/glm/gemini/custom)
      │                                        │
      └── 无图片 ──────────────────────────────┤
                                               ▼
                                    ┌─────────────────┐
                                    │  DeepSeek Chat   │
                                    │  归纳总结 / 回答  │
                                    └────────┬────────┘
                                             │
                                             ▼
                                      最终回答 → 用户
```

## 🚀 快速开始

### 1. 安装依赖

```bash
cd ai-router
pip install -r requirements.txt

# 如果要用 Gemini 做视觉,额外安装:
# pip install google-genai
```

### 2. 配置 API Key

```bash
cp .env.example .env
# 编辑 .env,填入 API Key:
#   DEEPSEEK_API_KEY=sk-你的deepseek-key
#   VISION_API_KEY=sk-你的视觉模型-key
#   VISION_PROVIDER=kimi  (或 openai/qwen/glm/gemini/custom)
```

API Key 获取地址:
- DeepSeek: https://platform.deepseek.com
- Kimi: https://platform.moonshot.cn
- OpenAI: https://platform.openai.com
- 通义千问: https://dashscope.console.aliyun.com
- 智谱: https://open.bigmodel.cn
- Gemini: https://aistudio.google.com

### 3. 使用

#### 命令行

```bash
# 纯文本 → DeepSeek
python main.py "量子计算是什么?"

# 图片分析(默认 Kimi)
python main.py "这张图里有什么?" -i photo.jpg

# 切换到 OpenAI GPT-4o
python main.py "分析图表" -i chart.png --vision openai

# 切换到通义千问
python main.py "描述图片" -i img.jpg --vision qwen

# 查看所有供应商
python main.py --list-providers

# 交互模式(可动态切换)
python main.py
```

#### Web 界面

```bash
python server.py          # 启动后端
# 然后双击 web_ui.html    # 打开前端
```

#### Claude Code 集成(MCP)

AI Router 可以作为 Claude Code 的 MCP 工具使用,让 Claude 在处理图片问题时自动调用。

**配置方式:** 项目根目录已有 `.mcp.json`,Claude Code 重新打开后自动加载。

```bash
# 重启 Claude Code 后即可使用
# 在对话中直接说"帮我分析这张图片"即可触发
```

**可用的 MCP 工具:**

| 工具 | 说明 |
|------|------|
| `ai_router_chat` | 核心工具:发问 + 可选图片 → 管道处理 |
| `ai_router_list_providers` | 列出所有视觉供应商 |
| `ai_router_switch_provider` | 切换视觉供应商 |
| `ai_router_config_status` | 检查配置状态 |

**使用示例(在 Claude Code 对话中):**

```
用户:帮我分析 C:/photos/screenshot.png 这张图片里有什么?

Claude 会自动:
1. 调用 ai_router_chat(question="这张图片里有什么?", image_paths=["C:/photos/screenshot.png"])
2. 图片 → Kimi 看图 → DeepSeek 总结 → 返回答案给用户
```

```
用户:切换到 OpenAI 做视觉理解

Claude 调用:
ai_router_switch_provider(provider_id="openai")
```

## 📁 文件说明

| 文件 | 说明 |
|------|------|
| `ai_router.py` | 核心引擎:视觉客户端、DeepSeek 客户端、路由器、Pipeline |
| `main.py` | CLI 命令行入口 |
| `server.py` | HTTP API 服务器(供 Web UI 调用) |
| `mcp_server.py` | MCP Server(供 Claude Code 集成) |
| `web_ui.html` | Web 界面(单文件,双击即用) |
| `.env.example` | API Key 配置模板 |
| `requirements.txt` | Python 依赖 |

## 🔧 API 端点

| 方法 | 路径 | 说明 |
|------|------|------|
| POST | `/api/chat` | 对话接口,支持动态切换供应商 |
| GET | `/api/health` | 健康检查 |
| GET | `/api/config` | 获取配置状态 |
| GET | `/api/providers` | 列出所有视觉供应商 |

## 👁 视觉供应商

| ID | 名称 | 默认模型 | 获取 Key |
|----|------|----------|----------|
| `kimi` | Kimi (Moonshot) | kimi-k3 | platform.moonshot.cn |
| `openai` | OpenAI GPT-4o | gpt-4o | platform.openai.com |
| `qwen` | 通义千问 VL | qwen-vl-max | dashscope.console.aliyun.com |
| `glm` | 智谱 GLM-4V | glm-4v | open.bigmodel.cn |
| `gemini` | Google Gemini | gemini-2.5-flash | aistudio.google.com |
| `custom` | 自定义端点 | — | Ollama/vLLM/LiteLLM 等 |

## 📝 许可

MIT License