TechMoon 科技月球
WordPress、SEO 與 AI 工具實測指南
TechMoon 科技月球
WordPress、SEO 與 AI 工具實測指南

VideoLingo 是 GitHub 上 18,000 顆星的 Apache-2.0 開源影片翻譯管線,從下載、轉錄、翻譯到單行字幕與配音一條線跑完。自架前值得先看清三段資料流向:影片檔留在本機、逐字稿全文送你設定的 LLM 端點、配音譯文再送 TTS 雲端;預設 API 端點也曾在 2026 年 8 月換過一次,照舊教學設定會踩到死連結。
用 AI 摘要這篇文章:
先講結論。VideoLingo 是 GitHub 上超過 18,000 顆星、採 Apache-2.0 授權的開源專案,把「取得影片、轉出逐字稿、翻譯、切成單行字幕、配音、合成新片」串成一條按一次就跑完的流程。它適合的讀者很具體:手上有一批自己的影片要做成繁中字幕(可能還要配音)、願意自己申請 API 金鑰、電腦最好有 NVIDIA 顯示卡。如果你只想把影片丟上去、按個按鈕就收成品,官方同名的 videolingo.io 雲端服務會省事得多,代價是影片得交給對方的伺服器處理。

這兩個東西常常被混為一談,但其實是兩個產品。開源版要自己裝環境、自己填金鑰、自己付 API 帳單;雲端版給 15 分鐘影片的免費試用,再往上走付費方案,兩種成本與信任模型完全不同。網路上的介紹常把雲端版的模型方案直接搬來描述開源版,實際的預設模型要看設定檔才算數。
我把原始碼 clone 下來,讀過設定檔、管線程式與提示詞,這篇的重點放在幾個問題:這條管線怎麼拆、資料在哪幾段會離開你的電腦、自架真正要付哪些帳。我沒有實際跑完一支影片的翻譯,這裡講的是原始碼與官方文件能證明的部分。
打開 core 資料夾,管線的骨架一目了然:_1_ytdlp.py 到 _12_dub_to_vid.py,十二個編號檔案各自負責一段。用白話串起來是:先拿影片(用 yt-dlp 下載,或直接把本地檔案丟進資料夾,兩種都支援),WhisperX 把聲音轉成逐字稿,接著用 NLP 加 AI 把長句切成字幕單位,先做一次全片摘要讓翻譯有上下文,然後進翻譯,再按單行長度規則切字幕、燒進畫面;要配音的話,中間可以先用 Demucs 分離人聲,再逐句合成語音、混回影片。
這種拆法對自架者有實際好處。每一步都有獨立的日誌,README 也標榜隨時中斷、下次續跑,Streamlit 介面上有暫停與停止控制;出問題時你能定位卡在哪個編號,而不是整包重來。原始碼裡還有一個對荷包友善的設計:LLM 的問答結果會存在本地 gpt_log 快取,同樣的提示詞再跑一次不會重複扣費,重跑翻譯段時尤其有感。翻譯前那段全片摘要也不是裝飾,它同時餵兩個地方:給翻譯模型當上下文,避免前後句各翻各的,也給術語庫當材料,讓專有名詞全片一致。
如果你手上是一整季的課程或一整個頻道,倉庫裡附了批次模式:把任務列填進 tasks_setting.xlsx,跑一鍵批次腳本就能排隊處理,每個任務的輸出落在各自的資料夾。不過批次愈大,前面講的 API 帳單與快取設計就愈重要,先單支試跑再放大,是比較穩的做法。
當然它不是零毛病。2026 年 9 月初就有人回報,檔名以 output 開頭的輸入影片會被 find_video_files 拒於門外(issue #596,修復 PR #597 還在等合併),這種邊角案例提醒你:它是活著的專案,也就代表永遠有還沒修完的細節。
「自架」容易讓人以為所有處理都在自己機器上,把設定檔 config.yaml 讀完後,實際的圖像分成三段,每段的答案都不一樣。
轉錄這段是真的在本機。Whisper 的執行模式預設 local,用 WhisperX 的 large-v3 模型直接吃你硬碟裡的影片或音訊檔,這段沒有任何上傳。代價是硬體:官方安裝說明要求 Windows 加 NVIDIA 顯示卡先裝 CUDA 12.6 與 CUDNN 9.3,FFmpeg 是必備依賴;Mac 與 Linux 官方只給了啟動指令,GPU 加速的說明以 Windows 為主,在沒有 CUDA 的機器上跑 large 這種等級的模型,合理預期就是慢,這點我沒有實測,但你需要先有心理準備。真的沒有顯示卡的話,設定檔也提供改走 302.ai 或 ElevenLabs 雲端轉錄的選項,只是那樣一來第一段也就出門了。
翻譯這段預設走雲端 LLM,金鑰要自己帶。預設端點是 OpenRouter 的 deepseek/deepseek-v4-flash,透過 OpenAI 相容協定呼叫,任何相容端點都能接,本地模型也行(設定檔註明本地 LLM 要把並行數降為 1)。這裡有個值得記下的教訓:2026 年 8 月 23 日的 commit,作者把前一版預設的 Yunwu 端點整個換掉,理由是那個端點已經死了。也就是說,你照幾個月前的教學文設定,很可能直接踩到已失效的預設值,安裝時務必以倉庫目前的 config.yaml 為準。原始碼裡另有個小細節:端點網址含 ark 時會自動改接火山引擎的北京位址,等於替特定雲端的用戶寫了捷徑,這對一般台灣用戶沒影響,但能看出它的主要用戶群在哪。
配音這段同樣預設走雲端,而且官方文件把各方案的優劣講得比多數工具誠實。預設的 azure_tts 走 302.ai 的聚合金鑰,官方自評聲音自然但情感不夠豐富;OpenAI TTS 的中文被官方自己標了「聽起來像外國人」;要複製原講者的聲音,SiliconFlow 的方案會自動拿影片前十秒的聲音當音色(這項功能要付費積分),GPT-SoVITS 則是本地執行、官方稱聲音複製效果最強,代價是只支援中英文、要本地訓練推理、配置麻煩。完全免費的選擇是 edge_tts,官方自評效果普通。換句話說,配音段送出門的是要念出來的譯文句子,而聲音像不像本人,取決於你願意為聲音複製付出多少設定成本。

| 管線階段 | 預設跑在哪 | 會離開電腦的內容 | 你要先準備 |
|---|---|---|---|
| 轉錄(WhisperX) | 本機 | 影片與音訊留在本機 | NVIDIA 顯示卡、CUDA、FFmpeg |
| 翻譯(LLM) | 雲端 API | 逐字稿與譯文全文 | OpenAI 相容端點金鑰 |
| 配音(TTS) | 雲端 API | 要念出來的譯文句子 | 302.ai 金鑰,或改用 edge_tts |
對內容敏感的人,這張表比任何功能清單都重要。企業內訓影片、還沒公開的產品 demo,就算影片檔全程留在本機,一旦逐字稿全文送進你設定的 LLM 端點,內容就離開了你的掌控範圍,選哪一家、選哪個地區的端點,責任都在你自己身上。沒有顯示卡的人還有一條路:倉庫附了 Google Colab 的筆記本,算力用雲端的,但那等於把整支影片搬上 Colab 的機器處理,第一段也出門了,等於換一種方式放棄本地這段優勢。
給台灣用戶的兩個細節:介面語言檔有簡體中文與香港繁中(zh-HK),沒有台灣繁中,用介面時要習慣其中一種;不過翻譯目標語言的欄位接受自然語言描述,直接填「繁體中文」就行,產出不受介面限制。
README 最響亮的宣傳詞是 Netflix 級字幕、單行呈現。追進原始碼,這句話的實體由兩部分構成。硬規則是真的:_5_split_sub.py 有一個字元長度上限(設定檔預設 75,譯文再乘上 1.2 的係數),超過就再切,單行不越界是寫死在程式裡的。至於「Netflix 標準」本身,存在於 prompts.py 的角色設定:提示詞要求模型扮演專業的 Netflix 字幕切割師,並按照 Netflix 字幕規範來切分與翻譯。也就是說,那是提示詞裡的自我要求,加上可調的長度參數,並沒有任何 Netflix 官方的認證或稽核。
翻譯品質的設計倒是比多數一鍵工具認真。流程是三步:先直譯、再回頭反思檢查、最後按語感重寫,設定檔允許你關掉反思步驟換速度;翻譯前會先建立術語庫(你自己給的清單加上 AI 從全片摘要生成的建議),還有個開關能在翻譯前暫停,讓你手工改完術語表再繼續。這些機制能不能兌現成好翻譯,取決於你接的模型,原始碼只保證流程存在,不保證產出水準,這是看文件時要分清楚的兩件事。
另外要先確認來源語言。README 對輸入語言的支援度有分級:英文、法文、德文、義大利文、西文都列在最佳一級,俄文次一級,日文普通,中文走的是另一個加強標點的 Whisper 模型。翻譯目標語言理論上不受限,配音語言則看你選的 TTS 有沒有那個聲音。拿冷門語言的素材進來之前,先拿一兩分鐘樣本試轉錄,會比看完規格表更準。
硬體帳單剛剛提過:本機跑 large-v3 級別的轉錄模型,顯示卡幾乎是入場券。軟體帳單是兩筆 API 用量:LLM 按 token 計,TTS 按字元或用量計,金額我沒有實測數字,不替你猜行情,只能說成本結構是「本機電力加兩筆雲端帳單」,跑量大的話記得先拿短影片試算。第三種是維護帳單,這種帳單付的是注意力:release 頁停在 2026 年 2 月的 v3.0.1,但 main 分支的 commit 到 2026 年 8 月下旬還在動(換掉失效的預設端點就是一例),issue 到 9 月初仍有人回報,也有人提交修復等著合併。這是典型的「發版慢、開發沒停」的專案,判斷它死活要看 commit 與 issue,不要只看 release 頁的日期。
對照組是官方雲端 videolingo.io,15 分鐘影片免費試用,之後走付費方案。它解決了環境與金鑰的門檻,但你的影片與內容會上傳到對方伺服器,隱私邊界與開源版完全不同。同名的兩個產品,一個賣軟體、一個賣服務,選哪個取決於你的內容敏感度與折騰意願。
開源陣營裡最直接的對照是 Violin:同樣做影片翻譯,它走的是拆解路線,把流程切成四段、每段自己挑模型、自己算配音成本。想掌控每個環節、逐段比較效果的人會喜歡 Violin;要一條龍跑完、中途只想看結果的人,VideoLingo 的整合度省事得多。場景上也有一個常見的區分:看影片的當下想要即時雙語字幕,那是 AirTranslate 那類工具的任務;VideoLingo 做的是離線後製,產出的是成品檔。
如果不想架環境,SubEasy 這類雲端字幕服務用點數換便利,素材上傳就能開工,適合一次性需求。只想要逐字稿、不需要翻譯與配音的話,bili2text 或自架的逐字稿工具更輕;想把影片整理成圖文筆記的,可以看我寫過的 AI-Media2Doc。整理成決策軸就是依序問自己:內容能不能出門、願不願意管金鑰與環境、要的是字幕還是連配音都要。
專案倉庫自己的簡介寫著影片搬運的應用場景,yt-dlp 下載也在預設流程裡,這讓它離版權爭議只有一步之遙。工具本身是中性的:翻譯自己的課程、幫取得授權的素材做多語版本、做教育目的的字幕,都是正當用途。但把別人的正片下載、翻譯、配音後再上傳散布,會同時碰上 YouTube 服務條款與著作權法,這條線不會因為工具開源就變得模糊。判斷方式很樸素:如果影片不是我拍的,我有沒有得到改作與再散布的授權?沒有的話,自架工具只是把風險從雲端服務搬到自己家裡,並不會消失。
官方文件在 docs.videolingo.io,README 提供用 uv 建環境的路線(會自動抓 Python 3.10,不必先裝 Anaconda),Windows 另有一鍵啟動腳本。動手前把四樣東西備齊:FFmpeg、Windows NVIDIA 用戶的 CUDA 12.6 加 CUDNN 9.3、一組 OpenAI 相容端點的 LLM 金鑰,以及 TTS 方案(不想先花錢就選 edge_tts)。接著在 config.yaml 填好金鑰、端點、模型名稱三個欄位,把 target_language 改成繁體中文,拿一支幾分鐘的短影片試跑,對照三段資料流向檢查一次成品,你就知道這條管線值不值得留在你的工作流裡。