认知生产管线接入方案(精简版)
把胡子哥「认知生产管线」的核心理念,嵌入现有「Molore」。 目标:不臃肿、可运行、抓核心。
一、要解决的真正问题
现有系统能存、能搜、能聊,但缺少一条让知识自我进化的生产线。
用户现在的状态:灵感/笔记/剪藏 → 存进去 → 放着 → 再也不看。
需要变成:灵感 → 加工成卡片 → AI 抽取概念 → 碰撞已有概念 → 产生新洞见 → 审核注卡 → 回到循环。
二、核心改动(只做 4 件事)
改动 1:知识生产阶段(pipeline_stage)
给 notes 和 knowledge_units 加一个字段:
sql
ALTER TABLE notes ADD COLUMN pipeline_stage TEXT DEFAULT 'raw'
CHECK(pipeline_stage IN ('raw', 'card', 'stored', 'extracted', 'collided', 'approved'));
ALTER TABLE knowledge_units ADD COLUMN pipeline_stage TEXT DEFAULT 'raw'
CHECK(pipeline_stage IN ('raw', 'card', 'stored', 'extracted', 'collided', 'approved'));含义:
raw— 原始灵感/碎片(对应 00 灵感库)card— 已写成知识卡片(对应加工后)stored— 已入库extracted— AI 已抽取关键概念collided— 已完成概念碰撞approved— 审核通过,正式注卡
前端体现:列表页加一个「阶段」筛选,一眼看清知识在哪里卡住了。
改动 2:Wiki 概念库(自动抽取)
复用现有 knowledge_units 表,新增一个 content_subtype:
sql
ALTER TABLE knowledge_units ADD COLUMN content_subtype TEXT DEFAULT 'note'
CHECK(content_subtype IN ('note', 'concept', 'collision_result'));运行逻辑:
- 用户写了一张知识卡片(
pipeline_stage='card') - 触发 AI 分析:提取 1-3 个核心概念
- 概念写入
knowledge_units,content_subtype='concept',source_id指向原卡片 - 已有概念不再重复写入(增量更新)
Prompt 示例:
分析以下知识卡片,提取 1-3 个核心学术/认知概念。
要求:
- 只提取真正跨学科、可复用的抽象概念
- 如果概念已存在,不要重复
- 返回格式:JSON [{"concept": "xxx", "definition": "一句话定义", "discipline": "所属学科"}]
内容:{card_content}改动 3:概念碰撞(Cognitive Dagger)
利用现有向量数据库(ChromaDB/Embedding)和知识图谱。
运行逻辑:
- 从 Wiki 概念库中取一条新抽取的概念 A
- 用向量相似度搜索已有概念(排除自身来源),找相似度 0.6-0.75 的概念 B
- 为什么不是更高?太低 = 垃圾连接;太高 = 本质相同,没新意
- 把 (A, B) 交给 AI,要求产生「新认知洞见」
- 结果存入
knowledge_units,content_subtype='collision_result' - 同时在
graph_edges中创建一条edge_type='collision'的边
Prompt 示例:
两个概念即将发生碰撞:
概念 A:{concept_a}(来自 {source_a})
概念 B:{concept_b}(来自 {source_b})
它们有一定关联,但不完全相同。
请基于这两个概念,推导出一个新的认知洞见。
要求:
- 不是简单拼接,而是真正的跨界推导
- 用一句话概括核心洞见
- 给出简要推导过程
返回 JSON:{"insight": "洞见", "derivation": "推导过程"}前端体现:新增「概念碰撞」页面,显示今日碰撞结果,用户一键「注卡」(审核通过)或「丢弃」。
改动 4:AI 全知上下文(引导文件)
现有 AI 对话每次从零开始。要让 AI 知道用户的全部知识积累。
最小可行方案:
在后端 llm_service 中,每次对话前自动生成一个「用户知识摘要」注入系统提示:
python
SYSTEM_PROMPT_TEMPLATE = """
你是用户的认知伙伴(朋友、老师、对手、知己)。
你拥有用户知识库的完整上下文,每次对话都建立在昨天的记录之上。
【用户知识概览】
- 总笔记数:{total_notes}
- 总概念数:{total_concepts}
- 近期关注领域:{top_tags}
- 最近完成的概念碰撞:{recent_collisions}
- 正在进行的项目:{active_projects}
【对话原则】
- 直接引用用户知识库中的具体笔记/概念作为证据
- 指出用户思维中的缝隙和矛盾
- 给出可执行的下一步建议,而非泛泛而谈
- 如果用户内容太肤浅,直接说"这太浅了"
"""实现方式:每次调用 LLM 前,异步从数据库拉取用户最近 30 天的统计摘要(不需要全文,只需摘要),拼进系统提示。
三、不做的(避免臃肿)
| 胡子哥原系统 | 为什么不做 | 替代方案 |
|---|---|---|
| 6 目录 Vault 结构 | 现有分类体系(笔记/知识/剪藏/胶囊)已够用 | 用 pipeline_stage + tags 映射 |
| 大小模型配合路由 | 现有 LLM Router 已支持多模型切换 | 复用现有路由,碰撞任务走能力强的大模型 |
| 温度调参 UI | 非核心功能 | 后端固定创意任务 temperature=0.7 |
| Skills 脚本系统 | 属于个人自动化,与知识库主线无关 | 用户自行维护,系统不内置 |
| 完整的浮墨(flomo)集成 | 现有 RSS + Clip 已覆盖碎片输入 | 剪藏和 RSS 即浮墨 |
| 三审六部审核流程 | 太重 | 简化为「注卡/丢弃」二选一 |
四、新增 API(共 3 个)
1. 触发概念抽取
POST /api/v1/knowledge/{id}/extract-concepts- 输入:note_id 或 knowledge_unit_id
- 动作:AI 分析内容 → 提取概念 → 写入 Wiki 库
- 副作用:
pipeline_stage从card→extracted
2. 触发概念碰撞
POST /api/v1/concepts/collide
Request: { "concept_id": "xxx" }
Response: { "collision_id": "yyy", "insight": "...", "similarity": 0.68 }- 输入:一个概念 ID
- 动作:向量搜索相似概念 → AI 碰撞 → 生成洞见
- 副作用:
pipeline_stage从extracted→collided
3. 审核碰撞结果(注卡/丢弃)
POST /api/v1/collisions/{id}/review
Request: { "action": "approve" | "reject", "feedback": "..." }approve:pipeline_stage→approved,内容进入正式知识库reject:内容标记为废弃,不再推荐
五、前端新增(共 2 页 + 1 弹窗)
页面 1:认知管线仪表盘(/pipeline)
┌─────────────────────────────────────────────┐
│ 🏭 认知生产管线 │
├─────────────────────────────────────────────┤
│ 今日产出 │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ 📝 3张 │ │ 🔬 2个 │ │ 💥 1次 │ │
│ │ 新卡片 │ │ 新概念 │ │ 碰撞 │ │
│ └─────────┘ └─────────┘ └─────────┘ │
├─────────────────────────────────────────────┤
│ 管线状态 │
│ 原始灵感 ████████░░ 8 │
│ 知识卡片 ██████░░░░ 6 │
│ 已抽取 ████░░░░░░ 4 │
│ 已碰撞 ██░░░░░░░░ 2 │
│ 已注卡 █░░░░░░░░░ 1 │
├─────────────────────────────────────────────┤
│ [一键运行管线] ← 自动跑完抽取+碰撞 │
└─────────────────────────────────────────────┘页面 2:概念碰撞台(/collisions)
┌─────────────────────────────────────────────┐
│ 💥 今日概念碰撞 │
├─────────────────────────────────────────────┤
│ #1 相似度 0.72 │
│ 「认知带宽」 × 「注意力配额」 │
│ ───────────────────────────────────────── │
│ 💡 洞见:人的注意力总量是有限的,当你在 │
│ 身份维护上投入过多认知带宽,就会挤出 │
│ 真正有价值的创造性思考。 │
│ [注卡] [丢弃] [写卡片延伸] │
├─────────────────────────────────────────────┤
│ #2 相似度 0.68 │
│ 「控制环悖论」 × 「流量陷阱」 │
│ ... │
└─────────────────────────────────────────────┘弹窗:内容深度检查
用户保存笔记/知识时,AI 快速评估:
- 如果内容只是摘抄,没有自己的推导 → 提示:「这更像书摘,建议加一段"我的看法"」
- 如果内容太泛泛 → 提示:「可以更具体,比如举一个你经历过的例子」
- 如果深度够 → 绿色通过标记
六、与现有功能的关系
| 现有功能 | 衔接方式 |
|---|---|
| 双脑架构 | 碰撞输入来源可以是个人脑(笔记)和网络脑(剪藏)的混合 |
| 知识图谱 | 碰撞结果自动创建 collision 类型边,图谱新增「碰撞视图」 |
| 涌现工作室 | 概念碰撞就是「跨域联想」的自动化版本 |
| 认知镜像 | AI 全知上下文让「思维缝隙检测」更精准 |
| LLM 路由 | 抽取概念走小模型/快模型;碰撞推导走大模型 |
| 向量数据库 | 概念碰撞的核心依赖,已有能力直接复用 |
七、实施顺序(3 天)
Day 1:阶段 + 抽取
- 加
pipeline_stage和content_subtype字段 - 实现
/extract-concepts接口 - 前端列表加阶段筛选
Day 2:碰撞 + 审核
- 实现
/collide接口(基于现有向量搜索) - 实现
/review接口 - 前端做「碰撞台」页面
Day 3:管线 + 上下文
- 做「认知管线仪表盘」页面
- 给 LLM 对话注入用户知识摘要
- 加保存时的内容深度检查弹窗
八、一句话总结
给现有知识库加一条「生产流水线」:卡片写成后自动抽概念,概念之间自动做碰撞,碰撞结果由你一键注卡——让知识自己长大。