SuperAPI AI 工具集

tag-by-topic

通用与其它

查看项目

更新于 10-16 00:03

技能介绍

用途:为一条种子内容(seed body)分配 1-4 个主题标签,标签取自 substacker 共享上下文文件 shared-context/topic-ledger.md 中的受控词表,目标是在小语料规模下防止标签泛滥。它被 ingest-inbox-item 第 2 步调用,位于 update-topic-ledger 的上游,后者负责记录各标签的最终计数。

工作流程:第1步读取 shared-context/topic-ledger.md 收集当前标签集;第2步对每个已有标签针对正文与标题打分,keyword_match 为标签词在正文中出现次数按正文长度归一化,标题命中时 title_match 为 3 倍,score = keyword_match + title_match,选取阈值 score ≥ 0.3(可调,初始 0.3);第3步取阈值以上的前 1-4 个标签,若无则分配 unclassified 并记录为词表可能需要扩展的信号,若超过 4 个则保留得分最高的 4 个;第4步若最高分低于阈值,从标题与首段提取 2-4 个候选关键词,转为 kebab-case(^[a-z0-9]+(-[a-z0-9]+)*$),追加至 topic-ledger.md#pending-tags(含 proposed_at、seed_id、justification),同时仍返回最接近的已有标签,避免种子无标签;第5步返回 {topics: [str], pending_tags: [str]}。

限制与护栏:每条种子最多 4 个标签(强制),最少 1 个(强制,实在不匹配用 unclassified);标签名必须符合 kebab-case 正则,其他形式拒绝;新标签必须记录待审,绝不静默加入正式词表,由写作者审核后提升;不得从账本移除已有标签(变冷属于状态变化而非删除);此处只做主题判断,不使用 score-intuition-density 或 dedupe-against-corpus 逻辑;标签为内部分类,并非 Substack 平台的标签功能。

使用方式与输入输出:输入为种子正文与部分 frontmatter,输出为 {topics: [str], pending_tags: [str]},副作用是可能向 topic-ledger.md#pending-tags 追加记录。资料未提供安装命令、运行环境或价格信息。