feat(api+app): 对话阶段化、回忆录流水线与客户端会话体验
- DB: segments 用户输入文本(Alembic 0002) - Chat: 阶段检测/阶段提示/回复限制,编排与访谈/画像 prompts 调整 - Memoir: 忠实度检查 agent,叙事与分类等链路更新 - Core: agent 日志、Alembic 启动、LangChain/日志/配置等 - Story: time_hints;Memory 检索与相关测试 - Expo: 助手头像、会话页与消息拆分、实时会话与文案/i18n - Docs/scripts/tests: 迁移脚本、LLM JSON/记忆检索文档、新增单测
This commit is contained in:
@@ -52,7 +52,7 @@ class MemoirService:
|
||||
self._object_storage = object_storage
|
||||
|
||||
async def get_evidence(self, user_id: str, query: str, *, top_k: int = 10) -> dict:
|
||||
"""通过 MemoryService 获取检索证据(章节生成时优先使用)。"""
|
||||
"""通过 MemoryService → HybridRetriever 获取证据(含向量时与 Celery 的 FTS-only 路径不同)。"""
|
||||
if self._memory is None:
|
||||
return {
|
||||
"relevant_chunks": [],
|
||||
@@ -66,7 +66,7 @@ class MemoirService:
|
||||
cleaned = False
|
||||
for rec in getattr(ch, "images", None) or []:
|
||||
if rec and is_image_permanently_unavailable(rec):
|
||||
logger.info("清理不可用配图: chapter=%s, image=%s", ch.id, rec.id)
|
||||
logger.info("清理不可用配图: chapter={}, image={}", ch.id, rec.id)
|
||||
await self._db.delete(rec)
|
||||
cleaned = True
|
||||
if cleaned:
|
||||
@@ -284,7 +284,7 @@ class MemoirService:
|
||||
)
|
||||
if enqueued:
|
||||
triggered.append(ch.id)
|
||||
logger.info("触发生成章节封面(asset): chapter=%s", ch.id)
|
||||
logger.info("触发生成章节封面(asset): chapter={}", ch.id)
|
||||
return {"triggered": triggered}
|
||||
|
||||
async def mark_memoir_read(self, user_id: str) -> dict:
|
||||
|
||||
Reference in New Issue
Block a user