平台专家 vs 开发者专家对比

📋 概述

MBE 系统中存在两种类型的专家:

  1. 平台自建专家(Platform Experts)- 由平台创建和管理
  2. 开发者建立的专家(Developer Experts)- 由开发者创建并发布到市场

🔍 核心区别

1. 来源和所有权

维度 平台专家 开发者专家
创建者 平台(管理员) 开发者(developer角色)
所有权 平台所有 开发者所有
存储位置 knowledge_bases/experts/index.json 市场系统(Redis)
标识字段 developer_id developer_id
来源标识 ExpertSource.PLATFORM ExpertSource.MARKET

2. 创建权限

平台专家

  • 只有管理员(admin/super_admin)可以创建
  • 通过直接编辑 index.json 或管理后台创建
  • 无需审核流程

开发者专家

  • 需要开发者角色(developer)才能创建
  • 通过开发者门户创建:/developer/experts
  • 必须基于已创建的知识库
  • 需要审核才能发布到市场

权限检查代码

# src/knowledge/dynamic_expert.py
EXPERT_CREATOR_ROLES = {"developer", "admin", "super_admin"}

async def check_can_create_expert(user_id: str) -> Tuple[bool, str]:
    # 只有开发者及以上角色可以创建专家
    # 普通用户(user、enterprise)不能创建专家,只能使用平台专家或购买市场专家

3. 访问权限

平台专家

  • 所有用户都可以访问
  • 通过 Token 额度控制使用量
  • 不限制订阅等级(除非特别配置)
  • 代码实现:
# src/knowledge/unified_expert_pool.py
# 1. 添加平台专家(所有用户可访问全部平台专家)
# 优化策略:平台公共专家对所有用户开放,限制通过Token额度控制
if include_platform:
    for expert_id, expert in self._platform_experts.items():
        if expert.enabled:
            available.append(expert)

开发者专家

  • 需要购买才能使用
  • 用户必须先在市场购买专家
  • 购买后永久可用(或按订阅模式)
  • 代码实现:
# 2. 添加已购买的市场专家
purchase_manager = get_purchase_manager()
purchased_ids = await purchase_manager.get_valid_expert_ids(user_id)

for expert_id, expert in self._market_experts.items():
    if expert_id in purchased_ids:
        available.append(expert)

4. 定价和收益

平台专家

  • 💰 免费使用
  • price_per_1k_tokens = 0.0
  • 不产生收益分成
  • 平台承担运营成本

开发者专家

  • 💰 付费使用
  • 开发者可以设置定价:
    • 按 Token 收费:price_per_1k_tokens
    • 按调用次数收费:per_call_packages
    • 订阅制:subscription_tiers
  • 收益分成
    • 开发者:70%(developer_share = 0.7
    • 平台:30%(platform_share = 0.3
  • 开发者可以通过专家获得收益

5. 审核流程

平台专家

  • 无需审核
  • 由平台管理员直接创建
  • 创建后立即可用

开发者专家

  • 需要审核
  • 状态流转:DRAFT → PENDING_REVIEW → APPROVED → PUBLISHED
  • 审核流程:
    1. 开发者创建专家(草稿状态)
    2. 提交审核(待审核状态)
    3. 管理员审核
    4. 审核通过后发布到市场
  • 审核内容包括:内容合规、质量检查、定价合理性

6. 管理方式

平台专家

  • 由平台管理员统一管理
  • 可以编辑、启用/禁用
  • 修改后立即生效
  • 管理入口:/admin/experts(如果有)

开发者专家

  • 由开发者自己管理
  • 管理入口:/developer/experts
  • 功能包括:
    • ✅ 创建专家
    • ✅ 编辑专家信息
    • ✅ 训练模型
    • ✅ 发布到市场
    • ✅ 设置定价
    • ✅ 查看收益统计
    • ✅ 查看评价和反馈

7. 数据存储

平台专家

  • 存储在 knowledge_bases/experts/index.json
  • 文件格式:
{
  "experts": [
    {
      "id": "civil_lawyer",
      "name": "民法专家",
      "description": "...",
      "kb_id": "...",
      "keywords": [...],
      "enabled": true
    }
  ]
}

开发者专家

  • 存储在 Redis(市场系统)
  • Key 格式:mbe:market:model:{model_id}
  • 包含更多字段:
    • developer_id - 开发者ID
    • pricing_model - 定价模式
    • price_per_1k_tokens - 价格
    • status - 状态
    • total_revenue - 总收益
    • rating_avg - 平均评分

8. 使用场景

平台专家

  • 🎯 基础服务:提供平台核心能力
  • 🎯 免费体验:让用户免费体验 AI 能力
  • 🎯 引流工具:吸引用户使用平台
  • 🎯 标准服务:平台官方提供的标准专家

开发者专家

  • 🎯 专业服务:提供特定领域的专业能力
  • 🎯 商业变现:开发者通过专家获得收益
  • 🎯 生态建设:丰富平台专家生态
  • 🎯 差异化服务:提供平台专家无法覆盖的细分领域

📊 对比总结表

特性 平台专家 开发者专家
创建者 平台管理员 开发者
创建权限 admin/super_admin developer
访问权限 所有用户免费 需要购买
定价 免费 开发者设置
收益分成 开发者70%,平台30%
审核流程 无需审核 需要审核
管理方式 平台统一管理 开发者自主管理
存储位置 index.json Redis市场系统
来源标识 PLATFORM MARKET
使用场景 基础服务、免费体验 专业服务、商业变现

🔄 工作流程对比

平台专家创建流程

管理员登录
    ↓
创建/编辑专家配置
    ↓
保存到 index.json
    ↓
立即生效(所有用户可用)

开发者专家创建流程

开发者登录
    ↓
创建知识库
    ↓
基于知识库创建专家(DRAFT)
    ↓
训练模型(可选)
    ↓
设置定价
    ↓
提交审核(PENDING_REVIEW)
    ↓
管理员审核
    ├─→ 通过 → 发布到市场(PUBLISHED)
    └─→ 拒绝 → 修改后重新提交
    ↓
用户购买后可使用

💡 设计理念

平台专家的定位

  1. 基础设施:提供平台核心能力
  2. 免费体验:降低用户使用门槛
  3. 标准服务:保证基础服务质量
  4. 平台品牌:代表平台官方能力

开发者专家的定位

  1. 生态建设:丰富平台专家生态
  2. 专业服务:提供细分领域能力
  3. 商业变现:开发者获得收益
  4. 差异化:提供平台无法覆盖的服务

🎯 用户视角

普通用户看到的专家

  1. 平台专家

    • 显示为"平台专家"
    • 免费使用
    • 直接可用
  2. 开发者专家

    • 显示为"市场专家"
    • 显示价格
    • 需要购买后才能使用
    • 显示开发者信息

开发者视角

  1. 创建专家

    • 只能创建开发者专家
    • 不能创建平台专家
  2. 管理专家

    • 只能管理自己创建的专家
    • 可以查看收益统计
  3. 收益分成

    • 开发者专家:70% 分成
    • 平台专家:无分成(因为是平台自己的)

📝 代码实现位置

平台专家相关

  • src/knowledge/unified_expert_pool.py - 统一专家池
  • knowledge_bases/experts/index.json - 专家索引文件
  • src/knowledge/dynamic_expert.py - 动态专家管理

开发者专家相关

  • src/market/models.py - 市场模型定义
  • src/market/publisher.py - 发布管理
  • src/api/market.py - 市场API
  • src/api/portal.py - 开发者门户
  • src/market/billing.py - 收益结算

✅ 总结

平台专家开发者专家是 MBE 系统中两种互补的专家类型:

  • 平台专家:提供基础服务,免费使用,由平台管理
  • 开发者专家:提供专业服务,付费使用,由开发者管理

这种设计既保证了平台的基础服务能力,又通过市场机制激励开发者提供更多专业服务,形成了良性的生态循环。