100x-segment 是做什麼的?
一句話定位
輸入一段 TikTok/UGC 口播腳本純文字(英語或西語),輸出三層獨立疊加的切分結果: L1 段落邏輯(10 模組 + 7 原型)、L2 鏡頭目的預判、L3 行內氣口標記。屬於 100x 體系 「1 分段」這一步。
何時觸發
使用者說:
- "幫我分段" / "這條腳本怎麼分段" / "拆一下這條口播文案" / "這段哪裡該喘氣"
- "segment this script" / "break this voiceover into beats"
- 或直接給一段口播腳本純文字,要求"按模組拆" / "標一下氣口" / "這段應該怎麼切"
輸入
最小輸入(類別 A,硬性必填):source_text——一段口播腳本/文案純文字。本
skill 不接影片檔案/影片幀,只吃文字(詳見 workflow.md Phase 1)。
類別 B(軟性輸入):無——source_text 本身已包含分段所需的全部訊號,不需要
額外補賣點/受眾/語氣才能開始工作(和 100x-persona 結構一致,和
100x-search-query 不同,詳見 workflow.md「類別 B 說明」)。
語言範圍(v1 明確邊界,非降級):language 從 source_text 自動判定,只接受
英語或西語;判定為其他語言或英西混排到無法判定主語言時直接拒絕,不猜、不代做。
上游可選產出(類別 C,缺失靜默跳過,不阻塞,也絕不要求使用者先跑別的 skill): 本倉目前沒有可作為上游的產品畫像/選題材料類 skill 產出。
輸出
結構見 schema.json:source_text/language/archetype(7 原型 A-G,單一或
「主+輔」複合如 "G+E")/segments[](每項含 segment_id/module[10 枚舉]/
raw_text/text_annotated[壓了 ‖強氣口·弱氣口的行內標記版本])/shots[]
(每項含 shot_id/segment_refs[]/shot_purpose[7 枚舉標準定義])/meta。可選再渲染一張人類可讀的 Markdown 段落表。
核心約束(4 條公理,詳見 axioms.md)
segments[].module鎖 10 枚舉(11 模組去掉貫穿全文的 Localization)+archetype鎖 7 原型格式(單一或「主+輔」兩個不同字母)- 氣口是行內標記,只加不減——
text_annotated去掉‖/·後必須與raw_text逐字相同,不許刪詞/加詞/改詞 - 氣口強弱判據已鎖死(轉折連詞開頭>句末標點/破折號>逗號分號,一口氣 EN 14 詞/
ES 16 音節強制切分),按固定優先級判定,不可自由發揮(已知侷限:EN
so同時有「轉折/因果連詞」和「程度副詞/強調詞」(so much/so many)兩種用法, 純關鍵詞匹配區分不了,只排除了「so much」/「so many」這個最常見搭配,其他 強調用法仍可能被誤判成轉折連詞、強制要求強氣口——這條是硬性 fail 判據 而不是軟性 warning,誤判代價比下面這條更高;填充詞後接、價格數字前不標 氣口這兩條是啟發式關鍵詞匹配,不是真語義判斷,like的介詞/填充詞歧義 會造成一定誤報率,只做 warning 不 fail,見axioms.md公理3 TODO;句末 標點判據用固定、非窮舉的縮寫詞典(a.m./p.m./Mr.等)排除常見縮寫 句點,已在真實英語語料上確認修好這幾個具體縮寫,但詞典之外的縮寫仍會 誤判為句末;另外,句末標點與下一詞零空格粘連(漏打空格)目前只對!/?判定為缺失氣口,.出於避免和縮寫/小數點衝突的考量仍要求真實空白字元, 零空格粘連的.暫不觸發判據,均見axioms.md公理3 TODO) shots[].shot_purpose鎖 7 枚舉標準定義,且必須完整 覆蓋segments[](引用完整性 + 零孤兒,已知侷限:本 skill 純文字輸入,shots[]只預判鏡頭目的,不含time_bucket/visual_description/camera_language/audio_plan——這些欄位依賴實際影片畫面,不在本 skill 範圍內)
適用邊界:11 模組/7 原型骨架取自 TikTok 美區 DR 保健品口播藍圖, 對其他文案結構(劇情向/訪談向等非 DR 私域帶貨類腳本)的適用性未經驗證。
三階段流程
詳見 workflow.md:Phase 1 接收+校驗(類別 A + 語言範圍校驗,無類別 B,類別 C
靜默跳過) → Phase 2(2A 段落切分 → 2B 鏡頭目的預判 → 2C 氣口標註 → 2D 自檢
S1-S8+渲染) → Phase 3 使用者觸發的返工(L1 段落層/L2 鏡頭層/L3 氣口層三級
粒度,直接對應三層切點)。
獨立呼叫保證
類別 A(source_text)缺失 → 固定拒絕話術追問,不代猜、不接受影片檔案替代。
語言判定超出英西範圍 → 固定拒絕話術,不猜、不路由。類別 C(上游產出)缺失 →
靜默跳過,絕不要求使用者先跑其他 skill。
禁用詞
讓我 / 希望 / 或許 / 大概 / 可能 / 也許 / 讓我們;AI 客服味(as an AI / I'd be
happy to / feel free to);不編造腳本原文沒有的模組內容/效果/認證/見證;不寫死
任何客戶品類詞典;text_annotated 不允許刪改 raw_text 的任何字詞(見公理2)。
路由(推薦,非強依賴)
- 已分好段,想給每段配人物/場景 →
100x-persona(pairings[].segment_ref可 回填本 skill 產出的segments[].segment_id) - 想把分好的段落配上真實鏡頭畫面/運鏡/音頻(需要影片輸入)→ 未來公開倉化的 分鏡類 skill(若已建)
- 想先找視覺參考圖/搜尋關鍵詞 →
100x-search-query - 想回入口重新分診 → 100x 體系總入口(若已建)
以上均為「產出後按需推薦」,不是前置依賴;對應 skill 尚未建好時不影響本 skill 獨立工作。
出廠自檢
執行 node scripts/validate.js --selftest 驗證。schema.json 聲明的結構層約束
(enum/pattern/additionalProperties/minItems/uniqueItems 等)由
scripts/validate.js 內的 ajv(真實 JSON Schema draft-07 驗證器,
package.json 聲明的 devDependency,先 npm install 再跑)實際執行,不是手寫
欄位枚舉。公理2(text_annotated/raw_text 跨欄位比對)、公理3(氣口強弱
優先級 + 一口氣上限,需要把字串解析成片段逐段推理)、公理4(shots/
segments 跨陣列引用完整性 + 零孤兒 + 順序編號)是四類 vanilla JSON Schema
結構上表達不出來的判據,由 scripts/validate.js 裡的手寫程式碼補上:
npm install # 首次使用先裝 ajv
node scripts/validate.js <bundle.json> [bundle2.json ...] # 校驗產出
node scripts/validate.js --selftest # 跑內建回歸用例
來源
本 skill 針對「純文字口播腳本切分與氣口標註」場景構建,包含段落邏輯(10 模組 + 7 原型體系)、鏡頭目的預判(7 類標準目的)以及行內氣口規則體系(公理 2/3)。各判據規範與欄位設計詳見 sources.md。