|
|
本文最後由 cy16009 於 2026-2-12 08:59 PM 編輯
***************************************************************************************************
代碼下載連結 https://github.com/trajis-tech/trajis-smartsrt。建議看過 Readme 再開始用。
*********************************************以下正文*********************************************
如果你用過翻譯器翻過字幕,你大概也踩過這些雷:
⮕ 同一個人名或專有名詞,前後翻法一直漂
⮕ 代名詞(他/她)只能靠猜,尤其在沒有明講性別的對話裡
⮕ 反諷、挖苦、情緒句被翻成字面意思
⮕ 翻譯總有機翻感,例如"我感到頭痛"
⮕ 一句一句硬翻,越翻越不像同一部作品
因為 字幕翻譯不是單句任務,它需要上下文、需要一致性,最好還要能被約束、被復現。
所以 SmartSRT 的定位很清楚:離線、本地跑的字幕翻譯 pipeline,用多階段把資訊補齊,最後再做在地化輸出。
Q1. 那它跟一般字幕翻譯器差在哪?
一般工具的習慣是逐句丟模型,逐句吐回來,這樣很快但很容易失控。因為模型每一句都在「當下猜一次世界觀」,猜到哪裡算哪裡。而 SmartSRT 做的是把翻譯拆成兩件事:
1. 先把「理解與指引」寫成一份 language-neutral 的 brief(用英文寫,避免被目標語言牽著走)
2. 最後才把 brief 轉成目標語言字幕,並在輸出端套 glossary(把一致性鎖住)
你可以把它想成先把翻譯需要的資訊「結構化」,再生成字幕。
Q2. 流程 A→B→C/D→E→F:為什麼要拆這麼多段?
因為每一段都在處理不同的不確定性,而且是「需要才做」,不是每一句都全套跑到底。以下是各步驟簡介:
Run A:音訊情緒/語氣標註先從影片把每一條字幕對應的音訊片段切出來,做情緒、語氣、強度、說話風格的標註。
這一步的用意是先把「聽起來像什麼」變成後面可用的訊號。
Run B:主模型產生翻譯 brief主模型輸出的是 JSON brief,內容用英文描述,包括:
⮕ 這句話的意思與草稿
⮕ 指代與 referents(誰在對誰說)
⮕ 語氣註記
⮕ 場景簡述
⮕ 是否需要視覺資訊
Run C / D:視覺補強(可選、條件觸發)只有當 brief 判定「這句真的需要看畫面」才會進入視覺階段:
- Run C:先抽一張關鍵幀(字幕時間區間的中點)做一次分析
- Run D:如果一張還不夠,再抽多幀(預設 3 張,可調)來合併判讀這段比較像「必要時才開外掛」,主要用來補文字很難推到的資訊,例如角色性別、場景具體狀態、畫面中正在發生的動作等。
Run E:上下文擴展(可選、條件觸發)如果某些句子本來就模糊,只有前後一句不夠,就擴展到前後 3 句再重做 brief。 重點是它只針對需要的項目做,不會整部片全部重算。
Run F:最終翻譯輸出(在這一步才產生目標語言字幕)Run F 讀取完整 brief,產生目標語言字幕並寫回 SRT。
同時 glossary (術語表) 是在輸出端才套用,避免前面的推理階段被「硬翻譯規則」污染。
Q3. 用它有什麼好處?
它的價值點主要在三個地方:
1. 一致性比較容易維持,因為前面先建立了 brief,最後才輸出字幕,而且 glossary 在輸出端鎖住用字。
2. 不確定性被顯式處理,需要視覺就觸發視覺,需要更多上下文就擴 context。不再是每一句都靠模型「當場猜」。
3. 離線本地跑,影片和字幕不用上傳到雲端,適合在意隱私或資料來源敏感的情境。
註1. 硬體與使用心態
這套是多模型協作工具,不可能快得起來,實測一部美劇約需 5~8 小時 (睡一覺的時間),電影 2~3 倍,但是偏「穩」與「可控」。你需要能在本地跑 GGUF(llama-cpp-python),而且視覺/音訊階段會增加時間成本。 如果你只是想快速把短片翻完,單次翻譯工具會更省事。但如果你在意的是「整部作品翻譯要像一個專業在地的字幕翻譯人員寫的」,那這套工具非常適合你。
註2. 模型使用建議
先講視覺 (vision) 模型,我自己是用 llava-v1.6-mistral-7b 進行測試,但要用哪個模型取決於你的硬體配置,記得要連同 mmproj (可以想像成視覺模型的眼睛)一起放到 /vision/ 下。若你要翻譯成台灣繁體中文,建議主模型使用 translategemma,在地化模型使用 Llama-3-Taiwan-8B-Instruct,聯發科 Breeze 也可以,但不要用 Breeze2,因為 Breeze2 過於網友化,非常不正經...
註3. 測試結果
**請注意,不同模型選擇的結果也會不同**
https://www.hd.club.tw/forum.php?mod=attachment&aid=ODgwMTc1fDIwNjg0M2IzfDE3NzA5MDQxMzd8MHw%3D
https://www.hd.club.tw/forum.php?mod=attachment&aid=ODgwMTc2fDBmZTFjYzc4fDE3NzA5MDQxMzd8MHw%3D
https://www.hd.club.tw/forum.php?mod=attachment&aid=ODgwMTc3fDk0ODQwOGRmfDE3NzA5MDQxMzd8MHw%3D
因為上線前做了很多調適,且上線後還沒時間進行大量測試,因此可能會 Fatal,再麻煩各位回報。
|
本文章中包含更多資源
您需要 登錄 才可以下載或查看,沒有賬號?註冊
x
|