TITANS 全系统集成方案

目标:让 TITANS 对话记忆系统贯穿 MBE 所有外部交互入口,实现"过目不忘"的用户体验

最后更新: 2026-01-26


一、当前集成状态

✅ 已完成集成

入口 文件 device_id 状态
WebSocket /ws/chat src/api/websocket.py 完整集成
专家路由核心 src/knowledge/expert_router.py 所有路径都保存对话
专家问答 src/knowledge/dynamic_expert.py 利用对话历史增强回答
gRPC 服务 src/grpc/server.py 已添加 device_id 传递
MCP/小智 src/mcp/server.py 已添加 device_id 传递
天猫精灵 src/api/aligenie.py 通过 expert_router
小度音箱 src/api/xiaodu.py 通过 expert_router
小爱同学 src/api/xiaoai.py 通过 expert_router
车载终端 src/api/vehicle.py 通过 expert_router
ESP32 IoT src/api/esp32.py 通过 expert_router
智能手表 src/api/watch.py 通过 expert_router
智能家电 src/api/appliance.py 通过 expert_router
Home Assistant src/api/homeassistant.py 通过 expert_router
H5 移动端 src/api/h5.py 通过 WebSocket

🔄 可选增强(P2优先级)

入口 文件 可集成能力
知识库搜索 src/api/knowledge.py 用户历史优化搜索排序
市场搜索/推荐 src/api/market.py 用户画像个性化推荐
反馈 API src/api/feedback.py 整合到 TITANS 学习
用户历史 API src/api/history.py 使用 TITANS 生成智能摘要

二、改进方案

2.1 快速模式也保存对话记忆

问题:智能设备使用 fast_mode=True 时,expert_router.py 中的记忆保存被跳过。

解决:快速模式下仍然异步保存对话记忆(不阻塞响应)。

# expert_router.py 修改
# 即使 fast_mode=True,也异步保存对话记忆
asyncio.create_task(save_to_titans_memory(...))

2.2 gRPC 服务集成

# grpc/server.py 中的 AskExpert 方法
async def AskExpert(self, request, context):
    # 确保传递 device_id 和 user_id
    ctx = {
        "device_id": request.device_id or request.context.get("device_id"),
        "user_id": request.user_id,
        ...
    }
    result = await router.route_and_answer(query, context=ctx)

2.3 知识库搜索增强

# knowledge.py 中的搜索 API
from src.core.titans_conversation_memory import get_titans_conversation_memory

async def search_knowledge(query: str, user_id: str):
    titans_conv = get_titans_conversation_memory()
    
    # 获取用户历史检索模式
    user_profile = titans_conv.get_user_profile(user_id)
    
    # 检索相关历史
    relevant_history = titans_conv.retrieve_relevant_memories(user_id, query)
    
    # 使用历史优化搜索(提升用户常访问领域的权重)
    results = basic_search(query)
    if user_profile:
        for r in results:
            if any(interest in r.content for interest in user_profile.interests):
                r.score *= 1.2  # 提升相关领域的权重
    
    return sorted(results, key=lambda x: x.score, reverse=True)

2.4 市场推荐个性化

# market.py 中的推荐 API
from src.core.titans_conversation_memory import get_titans_conversation_memory

async def get_recommendations(user_id: str):
    titans_conv = get_titans_conversation_memory()
    profile = titans_conv.get_user_profile(user_id)
    
    if profile:
        # 根据用户常用专家推荐相关专家
        recommendations = []
        for expert in profile.preferred_experts[:3]:
            similar = find_similar_experts(expert)
            recommendations.extend(similar)
        return recommendations
    
    # 无画像时返回热门推荐
    return get_popular_experts()

2.5 反馈学习整合

# feedback.py 中整合到 TITANS
from src.core.titans_conversation_memory import get_titans_conversation_memory

async def submit_feedback(user_id: str, expert_id: str, rating: int):
    # 现有反馈逻辑...
    
    # 同时更新 TITANS 用户画像
    titans_conv = get_titans_conversation_memory()
    profile = titans_conv.get_user_profile(user_id)
    if profile:
        if rating >= 4:
            # 高评分:强化该专家偏好
            profile.preferred_experts.insert(0, expert_id)
        elif rating <= 2:
            # 低评分:降低该专家偏好
            if expert_id in profile.preferred_experts:
                profile.preferred_experts.remove(expert_id)

2.6 历史 API 智能摘要

# history.py 中使用 TITANS 生成摘要
from src.core.titans_conversation_memory import get_titans_conversation_memory

async def get_history_summary(device_id: str, user_id: str):
    titans_conv = get_titans_conversation_memory()
    
    # 获取用户所有对话
    memories = titans_conv.retrieve_relevant_memories(user_id, "", top_k=100)
    
    # 生成智能摘要
    summary = {
        "total_conversations": len(memories),
        "favorite_experts": titans_conv.get_user_profile(user_id).preferred_experts[:5],
        "recent_topics": extract_topics(memories[:10]),
        "insights": generate_user_insights(memories)
    }
    
    return summary

三、实施优先级

P0 - 立即实施(核心功能)

  1. ✅ WebSocket 对话已集成
  2. ✅ 专家路由核心已集成
  3. 🔧 快速模式也保存记忆 - 让所有设备都有记忆

P1 - 高优先级(提升体验)

  1. 🔧 gRPC 服务完整传递 context
  2. 🔧 MCP 协议完整记忆支持
  3. 🔧 知识库搜索用户历史优化

P2 - 中优先级(个性化增强)

  1. 🔧 市场推荐个性化
  2. 🔧 反馈学习整合
  3. 🔧 历史 API 智能摘要

P3 - 低优先级(锦上添花)

  1. 用户画像可视化
  2. 记忆导出/导入
  3. 跨设备记忆同步

四、预期效果

用户体验提升

场景 之前 之后
追问 不理解"这个" 自动关联上下文
跨设备 每次从头开始 记住用户偏好
搜索 通用结果 个性化排序
推荐 热门推荐 基于偏好推荐

技术指标

  • 对话记忆持久化:永久保存
  • 相关历史检索:<100ms
  • 用户画像更新:实时
  • 跨设备同步:通过 user_id 关联

最后更新: 2026-01-26