Base URL:https://404-pipeline.zeabur.app ・ 版本:v2.1.6 ・ 文字 DeepSeek + 圖像 OpenAI gpt-image-2
所有 API 都需 Bearer token(除 POST /api/apply 申請 key 用)。 沒有 key 的人到 /apply 自助申請(每月 3 batch)。
Authorization: Bearer 404p_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
POST /api/run-full-batch 跑完整 6 棒(含 104 BD 資料、Quality Gate、retry),總耗時 5-8 分鐘。
curl -X POST https://404-pipeline.zeabur.app/api/run-full-batch \
-H "Authorization: Bearer 404p_xxx..." \
-H "Content-Type: application/json" \
-d '{
"occupation": "行政秘書",
"industry": "科技業",
"ageRange": "28-40 歲",
"salaryBand": "月薪 NT$38,000-55,000",
"experience": "3-10 年",
"directions": "AI 名片整理術—老闆要找窗口時 30 秒內找到對的人",
"brandConstraint": "404方桌主推 AI、Vibe-First、單日課程可結",
"knownPressureLines": "",
"maxRetriesPerStage": 2
}'回應(成功):
{
"ok": true,
"batchId": 3,
"batchCode": "行政秘書-550107",
"auth": { "source": "bearer", "label": "凱文 - test" },
"stages": [
{ "agentId": 1, "agentName": "市場 BD", "status": "done", "attempts": 1,
"durationMs": 63291, "promptTokens": 1611, "completionTokens": 4128 },
{ "agentId": 2, "agentName": "課程架構", "status": "done", "attempts": 1, ... },
...
],
"detail": "GET /api/batch?id=3"
}| 欄位 | 必填 | 說明 |
|---|---|---|
occupation | ✓ | 目標職業(行政秘書 / 業務助理 / PM ...) |
directions | ✓ | 課程主題方向(一句話描述) |
industry | 建議 | 產業(科技業 / 服務業 / 金融業)— 影響 BD 階段 104 資料過濾 |
ageRange | 年齡帶(影響文案口吻) | |
salaryBand | 薪資帶 | |
experience | 年資要求 | |
brandConstraint | 品牌限制(預設 404方桌・Vibe-First・單日可結) | |
knownPressureLines | 已蒐集的真實壓力句(每行 1 條,會降低 BD 階段瞎掰機率) | |
maxRetriesPerStage | 每棒最多 retry 次(預設 2,最多 5) |
curl https://404-pipeline.zeabur.app/api/batch?id=3 \ -H "Authorization: Bearer 404p_xxx..."
回傳 batch + stages 6 棒完整輸出 + images 紀錄。每棒 output 是完整 markdown。
整 batch 9 carousel + 5 投放廣告 + 1 MOCK = 15 張,每張約 NT$1.6(gpt-image-2 medium $0.053)。 AD-06 自動印 MOCK 浮水印(v2.1.1 公平交易法合規)。
# Agent 6 輸出含 ```json {"images":[...]}``` 區塊
# 直接把那段 images 陣列送進 /api/image
curl -X POST https://404-pipeline.zeabur.app/api/image \
-H "Authorization: Bearer 404p_xxx..." \
-H "Content-Type: application/json" \
-d '{
"batchId": 3,
"defaultQuality": "medium",
"images": [
{"imageId": "P01", "purpose": "carousel-cover",
"prompt": "L1+L2+L3+L4 ...", "watermark": false},
{"imageId": "AD-06", "purpose": "ad-mock-internal",
"prompt": "...", "watermark": true}
]
}'| quality | 模型 | USD/張 | 建議用途 |
|---|---|---|---|
| low | gpt-image-2 low | $0.006 | 草案 / MOCK |
| medium(預設) | gpt-image-2 medium | $0.053 | 投放級商業攝影 |
| high | gpt-image-2 high | $0.211 | 旗艦 4K |
# 1. 建批次(用 access code 在 body)
curl -X POST .../api/batch -d '{...同上, "accessCode":"404-vibe"}'
# → {"batchId":4}
# 2. 跑單棒
curl -X POST .../api/agent \
-H "Authorization: Bearer 404p_xxx..." \
-d '{"batchId":4, "agentId":1}'
# → 含 output, gate findings
# 3. 違規時帶 retry: true(會自動把上一輪違規塞回 prompt 給模型)
curl -X POST .../api/agent \
-H "Authorization: Bearer 404p_xxx..." \
-d '{"batchId":4, "agentId":3, "retry":true}'| 棒 | 角色 | 模型 | 產出重點 |
|---|---|---|---|
| 1 | 市場 BD | deepseek-reasoner | Pressure Lines 庫存 ・ 5 大機會點 ・ 三層拆解(含 104 真實雇主訊號 — 樣本量 / 薪資中位 / 技能 Top 20 / 產業分布) |
| 2 | 課程架構 | deepseek-reasoner | K/S/A/H 目標體系 ・ 帶得走資產 Tier 1/2/3 ・ Before/After 5 組 |
| 3 | 課程設計 | deepseek-reasoner | 60/180/360 分鐘流程 ・ Show & Brag opt-in 三通道 ・ 必說/禁說承諾 |
| 4 | 行銷策畫 | deepseek-chat | Phase 0 漏斗反推 ・ Tribes 預算 ・ KPI ・ 文案 brief |
| 5 | 痛點策展 | deepseek-reasoner | 7 步敘事弧 ・ 9 宮格策展地圖 ・ 視覺風格指南 |
| 6 | 素材執行 | deepseek-chat | 15 entries 圖像 JSON ・ 9 carousel + 5 廣告變體 + 1 MOCK ・ 短影音腳本 |
每棒輸出後跑 R1-R6 規則,違反 block 級會自動 retry 並把違規 findings 塞回 prompt。
| 規則 | 內容 |
|---|---|
| R1 CTA 黑名單 | 禁用「保證 / 躺賺 / 秒過 / 包賺 / 一鍵搞定 / 獵頭 DM」(除非行首 ❌) |
| R2 Pressure Lines | ≥ 9 條 ・ C 級(推測改寫)≤ 33% |
| R3 Show & Brag | 必含 A 公開 / B 匿名 / C 私下三通道 + 沙盒/假資料聲明 |
| R4 行銷反推 | 必用 TW 自費保守版 + 支付阻力降阻方案 |
| R5 AD-06 | 必標 MOCK / 內部用 / 禁投放 + AD-06-REAL 必註明書面授權 |
| HTTP | 意義 |
|---|---|
| 400 | 欄位驗證失敗(看 detail) |
| 401 | missing / invalid Authorization Bearer |
| 403 | access code / admin 權限不足 |
| 409 | 前置棒未完成(呼叫順序錯) |
| 422 | retry 用完仍沒過 Quality Gate |
| 429 | 本月配額用完 / 申請次數上限 |
| 500 | DeepSeek / OpenAI 上游故障 |