在大多数 AI 占星应用只是把一次 LLM 调用套进每日星座运势模板的当下,Cosmic Story v2 做了结构上完全不同的事:它生成的每一份内容,在调用 AI 之前都会先经过一道 4 因子合成步骤。正是这一步,让输出仿佛真的知道这一章写给、在什么时候、以什么形态呈现。

本文将逐一拆解这 4 个因子,说明每个因子的作用,并展示它们如何融合成一条统一的提示词。

四大要素

┌──────────────────────────────┐
│ 1. Person + bond context     │
│ 2. Astrological surface      │
│ 3. User signal               │
│ 4. Cadence shape             │
└──────────────────────────────┘
       ↓
  composed prompt
       ↓
  AI generation
       ↓
  post-process + encrypt
       ↓
  surface in app

Each factor brings orthogonal information. None is redundant with another. Drop one and the output regresses noticeably; add a fifth and the prompt becomes muddier without gaining signal.

Factor 1: person + bond context

Who is this artifact for? What's their relationship to the user? What do we know about how this bond has felt recently?

This factor includes:

  • The person's name and type-of-relationship label (partner, sister, friend, parent, mentor, etc.).
  • Aggregated texture from the user's recent activity about this person: how many check-ins included this person's "with-tag", how many journal entries mentioned them, how the resonance scores for this bond have moved.
  • A short summary of recent chapters about this person, so today's chapter has continuity with yesterday's.

This is the dominant signal. Astrology can add texture, but if the prompt doesn't anchor on a specific person and the texture of that bond, the output drifts toward generic.

Factor 2: astrological surface

This is what makes the output cosmic story rather than journal app. But — critically — it's a modifier, not a dictionary.

Calculated via Swiss Ephemeris (sweph),正是每位严肃占星师的工具背后所依赖的同一套库。该要素包括:

  • 用户的本命盘。
  • 用户与特定对象之间的合盘(简单说,就是你们在星空中的关系)。
  • 当前行运——真实行星此刻相对于用户星盘以及合盘所处的状态。

输出会得到 1 到 3 个相位标签——例如"月亮拱金星"或"水星逆行刑太阳"这样的小型结构化标记——章节可以将其作为修饰加以借用。章节不必说"水星位于 14° 双子座,刑你的本命太阳",而是说类似"今天直来直去会很难奏效;一句简短的话胜过 3 句"。

默认的表达是通俗易懂的语言。术语模式则面向熟悉占星的用户,需主动开启——提示词相同,只是后处理器会把表层词汇切换为专业术语。

要素 3:用户信号

最近在应用里,针对这位用户发生了什么?具体来说:

  • 近期签到:心情、能量、共处标签的规律。
  • 相关关系的共鸣分数:本周沟通、亲密、成长、冲突分别有何变化。
  • 来自此对话串的教练消息(若有)——仅作上下文,不供 AI 提供方逐字读取。

正是这一点,让章节感觉引擎记得你这一周。没有这个要素,无论你近来状态如何,今天的章节都会一模一样。

要素 4:节奏形态

这应当是哪一类产物?

  • 每日章节(最常见的情况)。
  • 每周日的回顾信。
  • 教练回复(Luminara 模式)。
  • 仪式提醒。
  • 收件箱卡片(新关系脉动、天气、刷新等)。

节奏会选定合适的模板、合适的篇幅预算(章节约 220 字;教练回复约 120 字;仪式提醒约 30 字),以及合适的语气修饰。若没有它,引擎只能从上下文线索去猜测,这很不可靠。

发送给 AI 服务方的内容

组合后的提示词并非用户数据的原始拼接。组合环节会:

  • 剥离原始个人信息。在提示词抵达服务方之前,姓名会被令牌化(PERSON_1PERSON_2);生成完成后,后处理器再把令牌换回真实姓名。
  • 清除日记内容,即用户标记为私密的部分。
  • 加入系统提示词,其中包含防止不当表述的护栏(不作医疗/生育/准确性方面的声称;不作贬损性比较;不使用替代临床诊疗的措辞)。
  • 选定节奏模板——章节/回顾/教练/仪式/轻提醒——每种都有各自的结构化输出架构。

完整的载荷会通过 AI_GENERATION_ADAPTER 符号令牌发送给 AI 服务方。适配器可随时替换;今天 My Zodiac AI 用的是一家服务方,明天可能换成另一家,而引擎对此并不在意。

AI 之后:后处理

AI 响应之后,会发生 4 件事:

  1. 危机分类器 —— 检查用户近期的输入或本次输出是否包含危机相关表述。若有,则醒目地呈现本地支持资源。
  2. 相位标签提取器 —— 从输出中提取 1 到 3 个星座标签。
  3. 反断言过滤器 —— 剔除一切违反 30+ 词禁用清单(医疗、准确性、操控伴侣)的措辞。
  4. AES-256 加密 —— 章节正文在写入 MongoDB 之前先行加密。

随后,产物被持久化(存于 soulwise_chapters),触发一个 EventEmitter2 事件(CHAPTER_COMPLETED),收件箱随即将其呈现。

这对营销页面为何重要

大多数 AI 占星应用只是包装了一次 LLM 调用。4 要素引擎正是从结构上让 Cosmic Story v2 的输出仿佛懂得它在为谁、在何时而写。这也是为什么该引擎能够为每位活跃的高级用户每周生成多达 35 篇各不相同的 AI 内容,却不显得重复——每一件作品都基于人物、信号与节奏的不同组合而成。

从结构上看,这正是它的切入点:业内没有任何对手以这种方式来构建提示词。Co-Star 每位用户每天只包装一次提示。The Pattern 根本不生成全新内容。Paired 只刻画一段关系。

4 个要素,一条流水线,8 种作品形态。这就是引擎。

延伸阅读

常见问题

尝试我们的免费工具

根据您的本命盘获取个性化洞察

分享这篇文章