Files
llm-intelligence/PHASE2_REQUIREMENTS.md

396 lines
17 KiB
Markdown
Raw Permalink Normal View History

# LLM Intelligence Hub — Phase 2 需求文档 v0.1
> 文档版本v0.1
> 日期2026-05-11
> 负责人宰相AI 辅助)
> 状态Phase 2 需求收集中
> 前置依赖Phase 1 已完成并验收通过2026-05-10
---
## 一、Phase 2 目标
在 Phase 1OpenRouter 单数据源 + 基础日报)基础上,扩展为**多源聚合的 LLM 情报中心**
1. **数据源扩展**:从 1 家OpenRouter扩展到 10+ 家平台
2. **国内模型覆盖**:接入国内主流云厂商和官方 API
3. **国际模型精选**:限制 10 个最火爆模型,精准追踪
4. **来源区分**:明确标注模型来源(官方直销 / 中转 / 免费额度)
5. **日报升级**分类视频日报、CNY 统一定价、场景化推荐
---
## 二、Phase 1 已完成优化2026-05-11
### 2.1 日报生成器 v3.1 优化
| 优化项 | 之前 | 之后 |
|--------|------|------|
| **价格单位** | USD | CNY统一按 1 USD = 7.25 CNY 换算) |
| **免费模型展示** | 368 个全部列出 | 前 20 个代表性 + 国家分布统计 |
| **国际 TOP 5** | 无意义低价(全免费) | 国际推荐 TOP 5免费为主 |
| **国内 TOP 10** | 7 个模型 | 7 个模型(带场景标签) |
| **分类板块** | 无 | 代码/推理/视觉 3 大分类 |
| **HTML UI** | 简陋表格 | 现代化信息图(卡片、渐变、响应式) |
| **场景标签** | 无 | 自动识别:代码、推理、视觉、对话 |
**实现文件**`scripts/generate_daily_report.go` v3.1
### 2.2 健康检查优化
| 优化项 | 之前 | 之后 |
|--------|------|------|
| **CPU 告警** | 瞬时高负载即告警 | 持续 60s+ 或 30min 内 3 次 10s+ 才告警 |
| **OpenClaw 检测** | 仅基本状态 | 插件编译、sqlite-vec、数据库、会话堆积、日志扫描 |
| **Hermes 监控** | 无 | 进程检查、PID 校验、日志扫描、模型可用性、数据库状态 |
**实现文件**`scripts/HEALTH_CHECK_PROMPT.md`
---
## 三、Phase 2 数据源需求
### 3.1 国内模型平台(高优先级)
| 平台 | 类型 | 模型示例 | 接入方式 |
|------|------|----------|----------|
| **智谱 AI (Zhipu AI)** | 官方 | GLM-4/5 系列 | 官方 API / 定价页 |
| **百度千帆** | 云厂商中转 | ERNIE 4.0/4.5 | 官方 API / 定价页 |
| **阿里云百炼** | 云厂商中转 | Qwen 全系列 | 官方 API / 定价页 |
| **腾讯云** | 云厂商中转 | 混元、DeepSeek | Coding Plan / Token Plan |
| **华为云** | 云厂商中转 | 盘古系列 | 官方 API / 定价页 |
| **字节火山引擎** | 云厂商中转 | Doubao、Seed | 官方 API / 定价页 |
| **Moonshot AI** | 官方 | Kimi K2 系列 | 官方 API |
| **MiniMax** | 官方 | M2/M2.5 系列 | 官方 API |
| **硅基流动 (SiliconFlow)** | 聚合中转 | 多模型聚合 | API / 定价页 |
| **DeepSeek 官方** | 官方 | DeepSeek V3/R1 | 官方 API |
| **电信/移动/联通云** | 运营商中转 | 政企 Coding Plan | 官网定价页 |
### 3.2 国际模型平台(限制 10 个最火爆)
| 平台 | 类型 | 模型示例 | 优先级 |
|------|------|----------|--------|
| **OpenAI** | 官方 | GPT-5.5, GPT-5.4, o3, o4 | P0 |
| **Anthropic** | 官方 | Claude Opus 4.7, Sonnet 4.6 | P0 |
| **Google** | 官方 | Gemini 2.5 Pro, Lyria 3 | P0 |
| **xAI** | 官方 | Grok 4.1, Grok 4 | P0 |
| **Meta** | 官方 | Llama 4 Maverick, Llama 4 Scout | P1 |
| **Mistral AI** | 官方 | Mistral Large 3, Codestral | P1 |
| **Cohere** | 官方 | Command A, Command R+ | P2 |
| **AI21 Labs** | 官方 | Jamba Large | P2 |
| **Together AI** | 聚合中转 | 多模型聚合 | P2 |
| **Groq** | 聚合中转 | 极速推理 | P2 |
**原则**:国际不超过 10 个平台聚焦最火爆模型商。OpenRouter 作为兜底聚合源保留。
### 3.3 来源区分体系
```
模型来源标识:
├── official官方直销
│ ├── OpenAI API
│ ├── 阿里云百炼
│ ├── 腾讯云
│ └── ...
├── reseller中转/聚合)
│ ├── OpenRouter
│ ├── SiliconFlow
│ ├── Together AI
│ └── ...
└── free_tier免费额度
├── 免费额度说明
├── 限流规则
└── 有效期
```
**数据库字段扩展**
- `region_pricing.source_type`: official / reseller / free_tier
- `region_pricing.free_quota`: 免费额度描述
- `region_pricing.free_limitations`: 免费限制条件JSON 数组)
- `region_pricing.rate_limit`: 限流规则
---
## 四、日报升级需求
### 4.1 视频日报T-Video-1
**目标**:按分类生成短视频日报,每个分类 30 秒
| 分类 | 内容 | 时长 |
|------|------|------|
| 代码模型日报 | 今日代码模型动态、价格变动 | 30s |
| 推理模型日报 | o3/o4/R1 等推理模型更新 | 30s |
| 视觉模型日报 | 多模态模型新上线/降价 | 30s |
| 国内模型日报 | 智谱/百度/阿里等国内动态 | 30s |
| 国际热点日报 | Top 10 国际模型价格变动 | 30s |
**技术方案**
1. 复用日报分类数据
2. 文本转语音TTS生成配音
3. HTML 截图/录屏生成视频帧
4. 拼接为完整视频
### 4.2 日报内容增强
| 增强项 | 说明 |
|--------|------|
| **价格变动追踪** | 对比昨日价格,标注涨跌 |
| **新模型上线** | 今日新入库模型列表 |
| **免费政策变更** | 免费额度调整、新免费模型 |
| **场景推荐** | 按场景(代码/写作/推理/视觉)推荐最优模型 |
| **性价比排行** | 按 $/1M tokens 性价比排序 |
---
## 五、数据采集器规划
### 5.1 采集器清单(已就绪 / 开发中)
| 采集器 | 目标平台 | 优先级 | 状态 | 文件 |
|--------|----------|--------|------|------|
| `fetch_multi_source.go` | OpenRouter + Moonshot + DeepSeek + OpenAI | P0 | ✅ 已完成(支持 `--sources` / `--dry-run` | `scripts/fetch_multi_source.go` |
| `fetch_zhipu.go` | 智谱 AI | P0 | ⏸️ 待开发 | - |
| `fetch_baidu.go` | 百度千帆 | P0 | ⏸️ 待开发 | - |
| `fetch_aliyun.go` | 阿里云百炼 | P0 | ⏸️ 待开发 | - |
| `fetch_tencent_catalog.go` | 腾讯云公开目录 / Token Plan 公共页 | P0 | ✅ 已完成(支持真实 URL / `--fixture` dry-run | `scripts/fetch_tencent_catalog.go` |
| `tencent_pricing_mapping` | 腾讯云 Token Plan / Coding Plan 套餐映射设计 | P0 | ✅ 已完成(`subscription_plan` 方案已确定) | `subscription_plan` |
| `fetch_huawei.go` | 华为云 | P1 | ⏸️ 待开发 | - |
| `fetch_bytedance.go` | 火山引擎 | P1 | ⏸️ 待开发 | - |
| `fetch_siliconflow.go` | 硅基流动 | P1 | ⏸️ 待开发 | - |
| `fetch_anthropic.go` | Anthropic | P0 | ⏸️ 待开发 | - |
### 5.2 统一采集接口
```go
type DataSource interface {
Name() string // 来源名称
FetchModels() ([]ModelInfo, error) // 抓取模型列表
FetchPricing() ([]RegionPricing, error) // 抓取定价
SourceType() string // official / reseller
FreeTier() (*FreeTierInfo, error) // 免费额度信息
}
```
### 5.3 腾讯云拆分策略
腾讯云当前不再适合继续作为一个模糊的“待开发采集器”处理,而要拆成两个独立阶段:
1. **Tencent Public CatalogT-Data-5**
- 目标:采集腾讯云公开可见页面中的套餐名称、公开模型清单、上下文长度、适用产品、页面更新时间和来源 URL
- 边界:只解决“公开目录可自动采到”的问题,不强行把套餐价格折算成每模型输入/输出单价
- 产物:`scripts/fetch_tencent_catalog.go` 或等价入口,支持真实 URL 抓取和 `--fixture` dry-run
- 当前结果:已能解析 `2026-04-27` 公开页快照中的 `8` 个套餐和 `11` 个公开模型目录项,并可将套餐结果落入 `subscription_plan`
2. **Tencent Pricing MappingT-Data-6**
- 目标:明确 `Token Plan` / `Coding Plan` 的价格如何入库、如何展示、如何验收
- 约束:腾讯云公开页以套餐订阅价为主,不是现有 `region_pricing.input_price_per_mtok / output_price_per_mtok` 擅长承载的按量单价模型
- 设计结论:新增 `subscription_plan` 表,单独保存订阅型价格,而不是把套餐信息硬塞进 `region_pricing`
**为什么不能继续复用 `region_pricing`**
- `region_pricing` 的主语是“一个模型在一个区域/运营商下的按量价格”,核心字段是 `model_id + input_price_per_mtok + output_price_per_mtok`
- 腾讯云 `Token Plan` / `Coding Plan` 的主语是“一个可售套餐”,覆盖多个模型,共享月度额度,不存在稳定的一对一 `model_id`
- `request_price` 也不足以表达腾讯云套餐,因为它仍假设“单次请求价格”,而不是“月付 + 共享 token 配额”
- 当前日报和 API 都默认把 `region_pricing` 当作“单模型价格排行”数据源;如果把套餐硬塞进去,会制造虚假的单模型单价,污染排行榜和比价结果
**设计决策:**
- `region_pricing` 继续只承载按模型的按量价格、免费额度和限流信息
- 腾讯云 `Token Plan` / `Coding Plan` 进入新表 `subscription_plan`
- 后续日报/API 若要展示腾讯云套餐,走独立“套餐订阅价”区块,不进入按模型低价排行
### 5.4 `subscription_plan` DDL 草案
```sql
CREATE TABLE subscription_plan (
id BIGSERIAL PRIMARY KEY,
provider_id BIGINT NOT NULL REFERENCES model_provider(id),
operator_id BIGINT REFERENCES operator(id),
plan_family TEXT NOT NULL CHECK (plan_family IN ('token_plan', 'coding_plan')),
plan_code TEXT NOT NULL,
plan_name TEXT NOT NULL,
tier TEXT NOT NULL,
billing_cycle TEXT NOT NULL DEFAULT 'monthly',
currency TEXT NOT NULL DEFAULT 'CNY',
list_price REAL NOT NULL CHECK (list_price >= 0),
price_unit TEXT NOT NULL,
quota_value BIGINT,
quota_unit TEXT,
context_window INTEGER,
plan_scope TEXT,
model_scope TEXT NOT NULL DEFAULT '[]',
source_url TEXT NOT NULL,
published_at TIMESTAMP,
effective_date DATE,
notes TEXT,
created_at TIMESTAMP NOT NULL DEFAULT NOW(),
updated_at TIMESTAMP NOT NULL DEFAULT NOW(),
UNIQUE (provider_id, plan_code, effective_date)
);
```
**推荐的 `subscription_plan` 字段草案:**
- `id`
- `provider_id`
- `operator_id`
- `plan_family`
- `plan_code`
- `plan_name`
- `tier`
- `billing_cycle`
- `currency`
- `list_price`
- `price_unit`
- `quota_value`
- `quota_unit`
- `model_scope`
- `context_window`
- `plan_scope`
- `source_url`
- `published_at`
- `notes`
### 5.5 腾讯云套餐映射规则
1. **一行代表一个可售套餐**
- 例如 `通用 Token Plan / Lite`
- 例如 `Hy Token Plan / Max`
2. **不为套餐伪造模型单价**
- 不根据套餐价格反推 `input_price_per_mtok`
- 不把 `月费 / 套餐额度` 近似写成某个模型的输入/输出单价
3. **模型覆盖范围写入 `model_scope`**
- `model_scope` 保存当前套餐公开支持的模型清单
- 建议以 JSON 数组字符串形式保存,例如 `["glm-5","glm-5.1","hunyuan-t1"]`
4. **`context_window` 仅保存套餐页明确声明的上限**
- 如果页面只说明某个模型支持 `256K`,则写在对应套餐行的 `context_window`
- 页面未明确给出时允许为空
5. **公开目录采集与正式落库分离**
- `fetch_tencent_catalog.go` 负责提取公共页信息
- 后续导入脚本或迁移任务负责写入 `subscription_plan`
6. **日报/API 展示边界**
- 日报新增“腾讯云套餐订阅价”区块
- `/api/v1/models` 继续只返回模型级价格
- 套餐信息通过独立接口 `/api/v1/subscription-plans` 暴露
### 5.6 后续实施入口
- `T-Data-7`:新增 `subscription_plan` 迁移与导入链路
- `T-Data-8`:✅ 日报展示腾讯云套餐订阅价摘要
- `T-Data-9`:✅ API 暴露 `subscription_plan` 查询入口
- `T-3.3`:✅ Dashboard 已消费 `/api/v1/subscription-plans`,前端独立展示腾讯云套餐订阅价
---
## 六、验收标准
### Phase 2 完成条件
1. **数据源覆盖**:≥ 10 家平台接入(国内 7+,国际 3+
2. **模型总量**:≥ 500 个模型条目(当前 377
3. **国内模型**:≥ 50 个国内付费模型(当前 7
4. **来源区分**:所有模型标注 official/reseller/free_tier
5. **日报升级**
- CNY 统一定价 ✅
- 分类展示 ✅
- 场景标签 ✅
- 视频日报原型 ✅GIF + WAV 原型)
6. **更新频率**:每日 08:00 自动触发,覆盖所有数据源
---
## 七、任务清单(已导入 TASKS.md
### 数据源主线
- `T-Data-1`:✅ 规划基线完成
- `T-Data-2`:✅ 多源采集器入口落地
- `T-Data-3`:✅ 国内厂商种子与来源字段落库
- `T-Data-4`:✅ Phase 2 多源采集验收
- `T-Data-5`:✅ 腾讯云公开目录采集入口
- `T-Data-6`:✅ 腾讯云 Token Plan 套餐映射设计
- `T-Data-7`:✅ 腾讯云套餐表迁移与导入
- `T-Data-8`:✅ 日报接入腾讯云套餐订阅价
- `T-Data-9`:✅ 套餐订阅价独立 API
### 前端消费主线
- `T-3.3`:✅ Dashboard 接入套餐订阅价
### 视频日报主线
- `T-Video-1`:✅ 规划基线完成
- `T-Video-2`:✅ 视频日报生成 pipeline 落地GIF + WAV 原型)
- `T-Video-3`:✅ 视频日报端到端验收脚本
---
## 附录已抓取价格数据2026-05-11
### 抓取状态汇总
| 平台 | 类型 | 状态 | 已抓取模型数 | 说明 |
|------|------|------|-------------|------|
| **OpenRouter** | 国际聚合 | ✅ 完整 | 365 | 采集器已就绪 `fetch_multi_source.go` |
| **智谱 AI** | 国内 official | ✅ 完整 | 29 | 无头浏览器抓取 + 手动整理入库 |
| **百度千帆** | 国内 official | ✅ 完整 | 44 | 无头浏览器抓取 + 解析入库 |
| **Moonshot (Kimi)** | 国内 official | ✅ 完整 | 3 | 采集器已就绪 |
| **DeepSeek** | 国内 official | ✅ 完整 | 2 | 采集器已就绪 |
| **OpenAI** | 国际 official | ✅ 完整 | 3 | 采集器已就绪 |
| **阿里云百炼** | 国内 reseller | ⚠️ 部分 | 8+ | 模型列表已抓取,定价需登录 |
| **腾讯云** | 国内 reseller | ✅ 目录/套餐/API/前端 已接入 | 11公开目录 + 8套餐落库 | 公共页已可解析;`subscription_plan` 已落 8 条腾讯云套餐记录,已进入日报独立套餐区块,并可通过 `/api/v1/subscription-plans` 查询Dashboard 已独立展示套餐订阅价;模型级价格仍单独走 `region_pricing` |
| **华为云** | 国内 reseller | ❌ 受限 | 0 | 404 未找到定价页 |
| **字节火山引擎** | 国内 reseller | ✅ 完整 | 43 | 无头浏览器抓取 + 解析入库 |
| **硅基流动** | 国内聚合 | ❌ 受限 | 0 | 需要登录 |
| **Anthropic** | 国际 official | ❌ 受限 | 0 | 页面动态渲染 + 区域限制 |
### 已抓取完整数据
#### Moonshot (Kimi) - official
| 模型 | 输入(缓存命中) | 输入(缓存未命中) | 输出 | 上下文 |
|------|---------------|-----------------|------|--------|
| kimi-k2.6 | ¥1.10 | ¥6.50 | ¥27.00 | 262,144 |
| kimi-k2-0905-preview | ¥1.00 | ¥4.00 | ¥16.00 | 262,144 |
| kimi-k2-0711-preview | ¥1.00 | ¥4.00 | ¥16.00 | 131,072 |
| kimi-k2-turbo-preview | ¥1.00 | ¥8.00 | ¥58.00 | 262,144 |
| kimi-k2-thinking | ¥1.00 | ¥4.00 | ¥16.00 | 262,144 |
| moonshot-v1-8k | ¥2.00 | - | ¥10.00 | 8,192 |
| moonshot-v1-32k | ¥5.00 | - | ¥20.00 | 32,768 |
| moonshot-v1-128k | ¥10.00 | - | ¥30.00 | 131,072 |
#### DeepSeek - official
| 模型 | 输入(缓存命中) | 输入(缓存未命中) | 输出 | 上下文 |
|------|---------------|-----------------|------|--------|
| deepseek-v4-flash | $0.0028 | $0.14 | $0.28 | 1M |
| deepseek-v4-pro | $0.003625 | $0.435 | $0.87 | 1M |
**注意**deepseek-v4-pro 当前 75% 折扣(至 2026/05/31
#### OpenAI - official
| 模型 | 输入 | 缓存输入 | 输出 |
|------|------|----------|------|
| GPT-5.5 | $5.00 | $0.50 | $30.00 |
| GPT-5.4 | $2.50 | $0.25 | $15.00 |
| GPT-5.4 mini | $0.75 | $0.075 | $4.50 |
#### 阿里云百炼 - reseller/cloud模型列表价格待抓取
- qwen3.6-max-preview, qwen3.6-plus, qwen3.6-flash
- deepseek-v4-pro, deepseek-v4-flash, kimi-k2.6
- glm-5.1, MiniMax-M2.7
### 受限平台解决策略
| 平台 | 解决方式 | 优先级 |
|------|----------|--------|
| 智谱 AI | 尝试 API 接口 / 模拟浏览器请求 | P0 |
| 百度千帆 | 查找子页面 / 使用 API 文档 | P0 |
| 腾讯云 | 先做公开目录采集,再设计 Token Plan / Coding Plan 套餐映射;必要时单独新增 `subscription_plan` 表 | P0 |
| 华为云 | 查找正确的定价文档 URL | P1 |
| 字节火山引擎 | 使用 headless 浏览器 / API 接口 | P1 |
| 硅基流动 | 登录后抓取 / 使用 API 文档 | P1 |
| Anthropic | 使用 API 端点 / headless 浏览器 | P0 |
---
*本文档随需求变化持续更新。最后更新2026-05-13*