Soulwise
4-Factor Response Engine
4因子回应引擎
每一次每日签到都会生成一条简短的回信。这条回信来自4因子回应引擎——一套受约束的生成系统,它的任务是用60到100个字给你切实的帮助,绝不越界。
四大要素
| # | 要素 | 来源 | 重要原因 |
|---|---|---|---|
| 1 | 签符 | 每日仪式中的 14 枚签符组合 | 点明今日的真实状态 |
| 2 | 阶段 | 贝叶斯周期估算 | 设定周期基准 |
| 3 | 行运背景 | 今日本命行运(若有) | 增添当日的独特色彩 |
| 4 | 原型 | 你的月经原型 | 跨越多个周期的规律 |
这四者会以确定的方式组合成结构化提示词,而非自由发挥。生成模型在严密的模板中写作,并随每种签符 × 阶段的组合而变化。
为什么恰好是四个
我们测试过两个、三个、四个和六个因子。两个因子(芯片+阶段)生成的内容显得过于泛泛。三个(芯片+阶段+行运)往往过于偏向占星。六个(再加上情绪、天气、社交负荷)则带来了不一致,并使生成延迟超出每日仪式 200ms p50 的预算上限。
四个正是那个恰到好处的平衡点——内容既贴合你本人,又不至于变得嘈杂。
生成的约束条件
模型输出在写入时会经过三条规则的过滤:
- 长度 —— 40 到 120 个词。超出该区间的内容会被重新生成。
- 反断言 —— 让输出通过与博客文章相同的反断言检查。参见 non-medical-cycle-tracking。
- 语气校准 —— 一个小型分类器会剔除那些显得说教、评判或职场式刻意活泼的输出。落在"温暖而踏实"区间的输出方可通过。
未能通过这三条任意一条的笔记,最多会被重新生成三次。如果三次都失败,用户会看到随应用一同发布的精选备用内容。
模型看不到的内容
- 你每日笔记的正文(只看标签)。
- 你过往的任何笔记。
- 其他用户的数据。
- 你的姓名、账户或任何身份标识。
生成过程基于经过精简、匿名化的输入。个性化来自结构化的因素,而非重新读取你的文字。
它的所在位置
引擎位于 Soulwise 代码库的 lib/responseEngine/ 中。结构化提示词模板按"chip × phase"配对,每对对应一个 TypeScript 文件(14 × 4 = 56 个模板),每个都经过手工调校。所用模型是通过语气校准测试的最小模型——一个 7B 参数的开放权重模型,运行在 Vercel Function 中,p50 预算为 200ms。