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 - 立即实施(核心功能)
- ✅ WebSocket 对话已集成
- ✅ 专家路由核心已集成
- 🔧 快速模式也保存记忆 - 让所有设备都有记忆
P1 - 高优先级(提升体验)
- 🔧 gRPC 服务完整传递 context
- 🔧 MCP 协议完整记忆支持
- 🔧 知识库搜索用户历史优化
P2 - 中优先级(个性化增强)
- 🔧 市场推荐个性化
- 🔧 反馈学习整合
- 🔧 历史 API 智能摘要
P3 - 低优先级(锦上添花)
- 用户画像可视化
- 记忆导出/导入
- 跨设备记忆同步
四、预期效果
用户体验提升
| 场景 | 之前 | 之后 |
|---|---|---|
| 追问 | 不理解"这个" | 自动关联上下文 |
| 跨设备 | 每次从头开始 | 记住用户偏好 |
| 搜索 | 通用结果 | 个性化排序 |
| 推荐 | 热门推荐 | 基于偏好推荐 |
技术指标
- 对话记忆持久化:永久保存
- 相关历史检索:<100ms
- 用户画像更新:实时
- 跨设备同步:通过 user_id 关联
最后更新: 2026-01-26