瀏覽代碼

改正"网络分裂"结论:新加坡云端运行期一条龙可行

实测(开发机 47.245.103.121 新加坡):下载抖音 CDN + 调 OpenRouter/Gemini + 连 RDS + crawler 全通,
真机在线跑通"下载→原生提炼→落库"(5 段卡 stage=done)。之前"新加坡下不了抖音"是测试 bug
(URL 被 & 截断的假象)。唯一不通的是内网 GitLab(仅构建期 rsync 用)。
文档架构 §12 / 设计 §10.4 同步改正;下载仍保留可注入以备换平台/环境。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
lisihan 1 月之前
父節點
當前提交
976ea41111
共有 2 個文件被更改,包括 2 次插入2 次删除
  1. 1 1
      创作知识-重构设计.md
  2. 1 1
      技术文档/技术架构.md

+ 1 - 1
创作知识-重构设计.md

@@ -475,7 +475,7 @@ for url in post_urls:
 
 - 每个时间段 → 一张**段卡**(`kind=segment`,带 start/end 秒)。溯源即"溯源到 02:07–03:43 这一段"。
 - 通道:`OPENROUTER_API_KEY`(无直连 GEMINI key);模型 `google/gemini-3-flash-preview`;下载偏好 540p 码率控成本。
-- **网络分裂约束**:抖音视频下载需非新加坡出口、调 Gemini 需可达 Google,单机两头难兼得 → 下载与推理可拆节点(代码把下载做成可注入/可传本地文件)
+- **网络(实测)**:新加坡开发机下载抖音、调 Gemini/OpenRouter、连库都通,运行期下载→提炼→落库可一条龙(已在线跑通);下载仍做成可注入/可传本地文件以备换平台/换环境
 - **抽帧降级**:`video_frames.py` 保留为可选缩略图/兜底,不接主流程。
 - **已知限制**:原生默认 1 FPS 采样,快速小字可能漏;段卡默认无缩略图(纯时间段)。
 

+ 1 - 1
技术文档/技术架构.md

@@ -233,6 +233,6 @@ FastAPI(`creation_knowledge/api.py`),`uvicorn creation_knowledge.api:app`
 - 提取分发(`pipeline`):`post.content_type=="video"` 或 `post.video_urls` 非空 → `extract_video`;否则图文逐图 `GeminiExtractor`。
 - 请求契约:`POST {OPENROUTER_BASE_URL}/chat/completions`,content=`[{type:text},{type:video_url,video_url:{url:"data:video/mp4;base64,..."}}]`;provider 实际落 Google AI Studio,按 video_tokens 计费(¥0.1 量级/4 分钟)。**无直连 `GEMINI_API_KEY`,只走 `OPENROUTER_API_KEY`。**
 - 下载:抖音详情 `video_url_list[0].video_url`(按 `CK_DOUYIN_RATIO` 默认 540p 改码率),iOS UA + `Referer` + redirects;下载做成可注入(`downloader`)或传入本地 `video_path`,以应对网络分裂。
-- ⚠️ 网络分裂(生产约束):抖音视频下载需**非新加坡出口**(新加坡云端被 302 挡),调 OpenRouter/Gemini 需**可达 Google**——单机两头难兼得,需"下载节点 + 推理节点"或一个两通的网络
+- 网络(实测,开发机 47.245.103.121 新加坡):下载抖音 CDN(douyinvod.com)、调 OpenRouter/Gemini、连 RDS、调 crawler **均通** → 运行期"下载→提炼→落库"可全在这台云端一条龙(已真机在线跑通)。唯一不通的是内网 GitLab(仅构建期 rsync 取代码用,不影响运行)。下载仍做成可注入/可传本地文件,便于将来换平台/换网络环境。其他平台(B站/快手/视频号)视频 CDN 未逐个实测
 - 抽帧 `integrations/video_frames.py` **保留但不接主流程**,仅作可选缩略图/兜底。
 - 已知限制:原生视频默认 1 FPS 采样,快速小字可能漏(口播教程无碍);段卡默认无缩略图(纯时间段)。`MAX_CARDS` 仅约束图片卡,不限视频段数。