貫穿整本書:TranslateBooksWithLLMs風(fēng)格預(yù)設(shè)功能完整指南)
讓AI文風(fēng)貫穿整本書TranslateBooksWithLLMs風(fēng)格預(yù)設(shè)功能完整指南【免費(fèi)下載鏈接】TranslateBooksWithLLMsTranslate full-length books and documents with Ollama, OpenAI-compatible, Gemini, Mistral, DeepSeek, Poe or OpenRouter. Preserves formatting. Resumes where you left off. No file size limits.項(xiàng)目地址: https://gitcode.com/gh_mirrors/tr/TranslateBooksWithLLMs用TranslateBooksWithLLMs做整本書翻譯時(shí)最令人頭疼的問(wèn)題之一是風(fēng)格漂移第 1 章冷靜克制第 10 章卻莫名華麗。這個(gè)開源項(xiàng)目?jī)?nèi)置的**風(fēng)格預(yù)設(shè)Style Preset**功能正是為了解決 AI 翻譯全書文風(fēng)不一致的難題——從樣章書中一鍵提取寫作風(fēng)格或手寫風(fēng)格規(guī)則讓同一段風(fēng)格指令注入每一個(gè)翻譯分塊實(shí)現(xiàn)整本書文風(fēng)統(tǒng)一。一、風(fēng)格預(yù)設(shè)解決什么問(wèn)題AI 翻譯是**分塊chunk**進(jìn)行的每塊文本的提示詞都是獨(dú)立構(gòu)建的前一塊的措辭習(xí)慣不會(huì)自動(dòng)帶到下一塊。沒(méi)有任何錨點(diǎn)約束語(yǔ)氣時(shí)模型的文風(fēng)就會(huì)隨章節(jié)漂移。風(fēng)格預(yù)設(shè)的做法很直接把一段短小的風(fēng)格指令注入每一個(gè)分塊的提示詞中例如保持憤世嫉俗、老練冷峻的語(yǔ)氣多用簡(jiǎn)短的陳述句。這樣全書的語(yǔ)氣、節(jié)奏、意象風(fēng)格就能保持一致。 核心文檔docs/STYLE_EXTRACTION.md —— 功能完整說(shuō)明包括兩種模式、9 個(gè)風(fēng)格維度、YAML 格式與 REST API。二、5分鐘上手從書中提取風(fēng)格預(yù)設(shè)完整流程如下Web UI 操作啟動(dòng)服務(wù)后打開http://localhost:5000點(diǎn)擊頂部導(dǎo)航的Styles風(fēng)格標(biāo)簽頁(yè)點(diǎn)擊New from books模式選擇From the source text上傳你要翻譯的書或其中幾章保持默認(rèn)參數(shù)總字符 10000 / 樣本數(shù) 6點(diǎn)擊Run extraction服務(wù)端自動(dòng)抽樣并調(diào)用你已配置的大模型Ollama、OpenAI、Gemini、Mistral、DeepSeek、Poe、OpenRouter 均可把寫作風(fēng)格歸納為規(guī)則清單審閱規(guī)則每條規(guī)則標(biāo)注了所屬維度語(yǔ)氣、句子節(jié)奏、意象等并附上支撐它的原文摘錄。帶警告圖標(biāo)的規(guī)則如直接引用書中原文、羅列具體詞匯默認(rèn)不勾選——建議改寫為抽象表述再勾選為風(fēng)格命名點(diǎn)擊Create style點(diǎn)擊該風(fēng)格行上的書簽圖標(biāo)將其指派給當(dāng)前翻譯任務(wù)圖標(biāo)變綠即生效也可以直接在翻譯頁(yè)的風(fēng)格下拉框中選擇。提取本身只需 2~3 分鐘加上規(guī)則審閱5 分鐘內(nèi)即可擁有一個(gè)可復(fù)用的風(fēng)格預(yù)設(shè)。三、兩種模式忠于原著 vs 模仿名家每個(gè)預(yù)設(shè)都有mode決定指令注入時(shí)的引導(dǎo)語(yǔ)模式含義適用場(chǎng)景source源自原文上傳的書就是待翻譯文本或其樣本規(guī)則描述譯文應(yīng)如何貼合原著語(yǔ)氣翻譯一本特定的書想保留它自己的文風(fēng)model參照作者上傳的書是風(fēng)格參照與待譯文本無(wú)關(guān)規(guī)則描述如何模仿該作者的筆法讓小說(shuō) A 的譯文讀起來(lái)像作家 B 的風(fēng)格model模式的引導(dǎo)語(yǔ)中會(huì)額外強(qiáng)調(diào)在完全保留原文含義的前提下套用風(fēng)格——因?yàn)轱L(fēng)格來(lái)源與內(nèi)容來(lái)源是兩本不同的書只有聲音可以遷移情節(jié)和事實(shí)不行。四、9個(gè)風(fēng)格維度規(guī)則如何被組織提取出的每條規(guī)則都會(huì)被打上且僅打上 9 個(gè)維度標(biāo)簽之一定義于 src/core/style/dimensions.py維度捕捉的內(nèi)容register正式度、距離感、反諷、情感溫度narrative_voice人稱、時(shí)態(tài)、聚焦方式、敘述者存在感sentence_rhythm句長(zhǎng)分布、并列與從句、節(jié)奏l(xiāng)exicon具體與抽象、常用詞匯場(chǎng)、古語(yǔ)imagery比喻、明喻、反復(fù)出現(xiàn)的意象dialogue對(duì)話標(biāo)簽、口語(yǔ)感、人物口癖punctuation破折號(hào)、分號(hào)、省略號(hào)、感嘆號(hào)頻率formatting段落長(zhǎng)度、斜體使用、章節(jié)分隔other其他值得捕捉的特征兜底這些標(biāo)簽只是 UI 組織用的元數(shù)據(jù)不會(huì)出現(xiàn)在注入給模型的最終提示詞中。五、為什么規(guī)則必須抽象防止文風(fēng)變成口頭禪這是本功能最值得理解的設(shè)計(jì)。如果指令寫成反復(fù)使用雨、鐵、塵土、煙霧這些意象模型不會(huì)獲得一種傾向而是拿到一個(gè)固定工具箱——300 頁(yè)的小說(shuō)里這四個(gè)詞會(huì)每幾頁(yè)出現(xiàn)一次譯文讀起來(lái)像只會(huì)四個(gè)詞的譯者。為此項(xiàng)目在三個(gè)環(huán)節(jié)強(qiáng)制只描述傾向、不點(diǎn)名詞匯提取提示詞明確禁止引用原文、舉例、羅列詞匯lint 檢查src/core/style/lint.py掃描每條返回的指令發(fā)現(xiàn)疑似違規(guī)引用原文、含例如、詞匯列表、專名、過(guò)短即打旗標(biāo)對(duì)應(yīng)規(guī)則在審閱表中默認(rèn)不勾選防口頭禪護(hù)欄語(yǔ)句逐字追加到每次組裝的風(fēng)格塊末尾要求模型把規(guī)則當(dāng)文風(fēng)傾向而非詞表措辭自然變化規(guī)則與段落自然表達(dá)沖突時(shí)以自然表達(dá)優(yōu)先。組裝邏輯是純確定性模板函數(shù)src/core/style/assembler.py 中的assemble_instructions不經(jīng)過(guò)大模型因此編輯器預(yù)覽與保存的預(yù)設(shè)永不漂移。六、敘事設(shè)定context防止穿越詞匯有一個(gè)真實(shí)案例一部奇幻小說(shuō)翻譯得風(fēng)格到位卻因?yàn)轱L(fēng)格規(guī)則管不到世界背景把一件古裝翻譯成了crop top露臍裝。context字段補(bǔ)上了這個(gè)缺口用 1~3 句話寫清時(shí)代、技術(shù)水平、社會(huì)框架不寫人名地名和劇情。當(dāng)預(yù)設(shè)攜帶非空的context時(shí)組裝出的提示詞會(huì)多出## Setting段落和一句護(hù)欄不得使用晚于這一設(shè)定時(shí)代、或不同技術(shù)水平的詞匯即使它們是最直接的對(duì)應(yīng)詞。source模式下提取時(shí)會(huì)由大模型自動(dòng)填寫model模式下自動(dòng)填寫被禁用避免把參照作者的時(shí)代強(qiáng)加給不相關(guān)文本但仍可手工補(bǔ)寫。七、Auto 模式不建預(yù)設(shè)也能文風(fēng)統(tǒng)一還沒(méi)有現(xiàn)成預(yù)設(shè)在翻譯頁(yè)或 Settings → Translation Options的風(fēng)格下拉框中選擇Auto — match this documents style即可 服務(wù)端在第一個(gè)分塊發(fā)送前從當(dāng)前文檔本身派生一套一次性風(fēng)格塊額外僅一次 LLM 調(diào)用派生結(jié)果只存在于該任務(wù)及其檢查點(diǎn)中——中斷恢復(fù)時(shí)會(huì)復(fù)用同一套風(fēng)格不會(huì)半途變味顯式選擇已保存的預(yù)設(shè)時(shí)Auto 自動(dòng)讓位失敗或超時(shí)則照常翻譯日志出現(xiàn)??提示行。?? 權(quán)衡提示Auto 無(wú)人工審閱若日志中頻繁出現(xiàn)no usable style rules found或譯文帶上你沒(méi)要求的怪癖建議改用審閱過(guò)的預(yù)設(shè)。八、預(yù)設(shè)如何存儲(chǔ)、如何生效預(yù)設(shè)以 YAML 文件存放在Custom_Instructions/目錄Styles 標(biāo)簽頁(yè)可Open folder直達(dá)舊的.txt預(yù)設(shè)繼續(xù)兼容翻譯時(shí)只有translation和refinement兩個(gè)鍵被讀取分別注入翻譯與潤(rùn)色階段的提示詞見(jiàn) src/prompts/prompts.py 中的 STYLE INSTRUCTIONS 段優(yōu)先級(jí)高于一般風(fēng)格指引?? 注意階段匹配只填了translation的預(yù)設(shè)對(duì)僅潤(rùn)色任務(wù)無(wú)效反之亦然——Styles 列表的 Phases 列T / R / TR可以快速核對(duì)在編輯器中直接改寫指令文本會(huì)出現(xiàn) Manually edited 徽標(biāo)進(jìn)入手動(dòng)覆蓋狀態(tài)Reassemble from rules 可一鍵從規(guī)則重新生成。九、常見(jiàn)問(wèn)題速查現(xiàn)象處理提取返回 0 條規(guī)則調(diào)大Total chars、增加Samples或樣章文風(fēng)過(guò)于平淡可辨認(rèn)的風(fēng)格特征太少風(fēng)格不出現(xiàn)在下拉框文件擴(kuò)展名必須是.yaml/.yml/.txt否則被靜默跳過(guò)查看服務(wù)端日志是否有 YAML 解析錯(cuò)誤預(yù)設(shè)沒(méi)有效果檢查預(yù)設(shè)覆蓋的階段僅translation或僅refinement與當(dāng)前任務(wù)是否匹配譯文出現(xiàn)現(xiàn)代/穿越詞匯預(yù)設(shè)的context為空打開編輯器補(bǔ)寫敘事設(shè)定后保存會(huì)自動(dòng)重新組裝出## Setting段十、延伸閱讀完整功能文檔docs/STYLE_EXTRACTION.md 修正為 docs/STYLE_EXTRACTION.md風(fēng)格模塊源碼src/core/style/提取、組裝、lint、維度定義REST API 實(shí)現(xiàn)src/api/blueprints/custom_instruction_routes.py端到端測(cè)試驗(yàn)證預(yù)設(shè)確實(shí)注入提示詞tests/integration/test_style_preset_end_to_end.py相關(guān)功能術(shù)語(yǔ)表Glossary自動(dòng)提取見(jiàn) docs/GLOSSARY.md可與風(fēng)格預(yù)設(shè)搭配讓專有名詞與文風(fēng)同時(shí)貫穿全書 總結(jié)TranslateBooksWithLLms 的風(fēng)格預(yù)設(shè)用從書中提取 → 人工審閱 → 注入每個(gè)分塊三步把 AI 翻譯中最大的隱性風(fēng)險(xiǎn)——全書文風(fēng)漂移——變成可管理、可復(fù)用、可檢查的工程問(wèn)題。無(wú)論是忠于原著還是模仿名家5 分鐘就能讓整本書讀起來(lái)像一個(gè)譯者在寫。 /輸出文章發(fā)現(xiàn)延伸閱讀中有一處筆誤需要修正輸出修正后的完整文章輸出文章讓AI文風(fēng)貫穿整本書TranslateBooksWithLLMs風(fēng)格預(yù)設(shè)功能完整指南用TranslateBooksWithLLMs做整本書翻譯時(shí)最令人頭疼的問(wèn)題之一是風(fēng)格漂移第 1 章冷靜克制第 10 章卻莫名華麗。這個(gè)開源項(xiàng)目?jī)?nèi)置的**風(fēng)格預(yù)設(shè)Style Preset**功能正是為了解決 AI 翻譯全書文風(fēng)不一致的難題——從樣章書中一鍵提取寫作風(fēng)格或手寫風(fēng)格規(guī)則讓同一段風(fēng)格指令注入每一個(gè)翻譯分塊實(shí)現(xiàn)整本書文風(fēng)統(tǒng)一。一、風(fēng)格預(yù)設(shè)解決什么問(wèn)題AI 翻譯是**分塊chunk**進(jìn)行的每塊文本的提示詞都是獨(dú)立構(gòu)建的前一塊的措辭習(xí)慣不會(huì)自動(dòng)帶到下一塊。沒(méi)有任何錨點(diǎn)約束語(yǔ)氣時(shí)模型的文風(fēng)就會(huì)隨章節(jié)漂移。風(fēng)格預(yù)設(shè)的做法很直接把一段短小的風(fēng)格指令注入每一個(gè)分塊的提示詞中例如保持憤世嫉俗、老練冷峻的語(yǔ)氣多用簡(jiǎn)短的陳述句。這樣全書的語(yǔ)氣、節(jié)奏、意象風(fēng)格就能保持一致。 核心文檔docs/STYLE_EXTRACTION.md —— 功能完整說(shuō)明包括兩種模式、9 個(gè)風(fēng)格維度、YAML 格式與 REST API。二、5分鐘上手從書中提取風(fēng)格預(yù)設(shè)完整流程如下Web UI 操作啟動(dòng)服務(wù)后打開http://localhost:5000點(diǎn)擊頂部導(dǎo)航的Styles風(fēng)格標(biāo)簽頁(yè)點(diǎn)擊New from books模式選擇From the source text上傳你要翻譯的書或其中幾章保持默認(rèn)參數(shù)總字符 10000 / 樣本數(shù) 6點(diǎn)擊Run extraction服務(wù)端自動(dòng)抽樣并調(diào)用你已配置的大模型Ollama、OpenAI、Gemini、Mistral、DeepSeek、Poe、OpenRouter 均可把寫作風(fēng)格歸納為規(guī)則清單審閱規(guī)則每條規(guī)則標(biāo)注了所屬維度語(yǔ)氣、句子節(jié)奏、意象等并附上支撐它的原文摘錄。帶警告圖標(biāo)的規(guī)則如直接引用書中原文、羅列具體詞匯默認(rèn)不勾選——建議改寫為抽象表述再勾選為風(fēng)格命名點(diǎn)擊Create style點(diǎn)擊該風(fēng)格行上的書簽圖標(biāo)將其指派給當(dāng)前翻譯任務(wù)圖標(biāo)變綠即生效也可以直接在翻譯頁(yè)的風(fēng)格下拉框中選擇。提取本身只需 2~3 分鐘加上規(guī)則審閱5 分鐘內(nèi)即可擁有一個(gè)可復(fù)用的風(fēng)格預(yù)設(shè)。三、兩種模式忠于原著 vs 模仿名家每個(gè)預(yù)設(shè)都有mode決定指令注入時(shí)的引導(dǎo)語(yǔ)模式含義適用場(chǎng)景source源自原文上傳的書就是待翻譯文本或其樣本規(guī)則描述譯文應(yīng)如何貼合原著語(yǔ)氣翻譯一本特定的書想保留它自己的文風(fēng)model參照作者上傳的書是風(fēng)格參照與待譯文本無(wú)關(guān)規(guī)則描述如何模仿該作者的筆法讓小說(shuō) A 的譯文讀起來(lái)像作家 B 的風(fēng)格model模式的引導(dǎo)語(yǔ)中會(huì)額外強(qiáng)調(diào)在完全保留原文含義的前提下套用風(fēng)格——因?yàn)轱L(fēng)格來(lái)源與內(nèi)容來(lái)源是兩本不同的書只有聲音可以遷移情節(jié)和事實(shí)不行。四、9個(gè)風(fēng)格維度規(guī)則如何被組織提取出的每條規(guī)則都會(huì)被打上且僅打上 9 個(gè)維度標(biāo)簽之一定義于 src/core/style/dimensions.py維度捕捉的內(nèi)容register正式度、距離感、反諷、情感溫度narrative_voice人稱、時(shí)態(tài)、聚焦方式、敘述者存在感sentence_rhythm句長(zhǎng)分布、并列與從句、節(jié)奏l(xiāng)exicon具體與抽象、常用詞匯場(chǎng)、古語(yǔ)imagery比喻、明喻、反復(fù)出現(xiàn)的意象dialogue對(duì)話標(biāo)簽、口語(yǔ)感、人物口癖punctuation破折號(hào)、分號(hào)、省略號(hào)、感嘆號(hào)頻率formatting段落長(zhǎng)度、斜體使用、章節(jié)分隔other其他值得捕捉的特征兜底這些標(biāo)簽只是 UI 組織用的元數(shù)據(jù)不會(huì)出現(xiàn)在注入給模型的最終提示詞中。五、為什么規(guī)則必須抽象防止文風(fēng)變成口頭禪這是本功能最值得理解的設(shè)計(jì)。如果指令寫成反復(fù)使用雨、鐵、塵土、煙霧這些意象模型不會(huì)獲得一種傾向而是拿到一個(gè)固定工具箱——300 頁(yè)的小說(shuō)里這四個(gè)詞會(huì)每幾頁(yè)出現(xiàn)一次譯文讀起來(lái)像只會(huì)四個(gè)詞的譯者。為此項(xiàng)目在三個(gè)環(huán)節(jié)強(qiáng)制只描述傾向、不點(diǎn)名詞匯提取提示詞明確禁止引用原文、舉例、羅列詞匯lint 檢查src/core/style/lint.py掃描每條返回的指令發(fā)現(xiàn)疑似違規(guī)引用原文、含例如、詞匯列表、專名、過(guò)短即打旗標(biāo)對(duì)應(yīng)規(guī)則在審閱表中默認(rèn)不勾選防口頭禪護(hù)欄語(yǔ)句逐字追加到每次組裝的風(fēng)格塊末尾要求模型把規(guī)則當(dāng)文風(fēng)傾向而非詞表措辭自然變化規(guī)則與段落自然表達(dá)沖突時(shí)以自然表達(dá)優(yōu)先。組裝邏輯是純確定性模板函數(shù)src/core/style/assembler.py 中的assemble_instructions不經(jīng)過(guò)大模型因此編輯器預(yù)覽與保存的預(yù)設(shè)永不漂移。六、敘事設(shè)定context防止穿越詞匯有一個(gè)真實(shí)案例一部奇幻小說(shuō)翻譯得風(fēng)格到位卻因?yàn)轱L(fēng)格規(guī)則管不到世界背景把一件古裝翻譯成了crop top露臍裝。context字段補(bǔ)上了這個(gè)缺口用 1~3 句話寫清時(shí)代、技術(shù)水平、社會(huì)框架不寫人名地名和劇情。當(dāng)預(yù)設(shè)攜帶非空的context時(shí)組裝出的提示詞會(huì)多出## Setting段落和一句護(hù)欄不得使用晚于這一設(shè)定時(shí)代、或不同技術(shù)水平的詞匯即使它們是最直接的對(duì)應(yīng)詞。source模式下提取時(shí)會(huì)由大模型自動(dòng)填寫model模式下自動(dòng)填寫被禁用避免把參照作者的時(shí)代強(qiáng)加給不相關(guān)文本但仍可手工補(bǔ)寫。七、Auto 模式不建預(yù)設(shè)也能文風(fēng)統(tǒng)一還沒(méi)有現(xiàn)成預(yù)設(shè)在翻譯頁(yè)或 Settings → Translation Options的風(fēng)格下拉框中選擇Auto — match this documents style即可 服務(wù)端在第一個(gè)分塊發(fā)送前從當(dāng)前文檔本身派生一套一次性風(fēng)格塊額外僅一次 LLM 調(diào)用派生結(jié)果只存在于該任務(wù)及其檢查點(diǎn)中——中斷恢復(fù)時(shí)會(huì)復(fù)用同一套風(fēng)格不會(huì)半途變味顯式選擇已保存的預(yù)設(shè)時(shí)Auto 自動(dòng)讓位失敗或超時(shí)則照常翻譯日志出現(xiàn)??提示行。?? 權(quán)衡提示Auto 無(wú)人工審閱若日志中頻繁出現(xiàn)no usable style rules found或譯文帶上你沒(méi)要求的怪癖建議改用審閱過(guò)的預(yù)設(shè)。八、預(yù)設(shè)如何存儲(chǔ)、如何生效預(yù)設(shè)以 YAML 文件存放在Custom_Instructions/目錄Styles 標(biāo)簽頁(yè)可Open folder直達(dá)舊的.txt預(yù)設(shè)繼續(xù)兼容翻譯時(shí)只有translation和refinement兩個(gè)鍵被讀取分別注入翻譯與潤(rùn)色階段的提示詞見(jiàn) src/prompts/prompts.py 中的 STYLE INSTRUCTIONS 段優(yōu)先級(jí)高于一般風(fēng)格指引?? 注意階段匹配只填了translation的預(yù)設(shè)對(duì)僅潤(rùn)色任務(wù)無(wú)效反之亦然——Styles 列表的 Phases 列T / R / TR可以快速核對(duì)在編輯器中直接改寫指令文本會(huì)出現(xiàn) Manually edited 徽標(biāo)進(jìn)入手動(dòng)覆蓋狀態(tài)Reassemble from rules 可一鍵從規(guī)則重新生成。九、常見(jiàn)問(wèn)題速查現(xiàn)象處理提取返回 0 條規(guī)則調(diào)大Total chars、增加Samples或樣章文風(fēng)過(guò)于平淡可辨認(rèn)的風(fēng)格特征太少風(fēng)格不出現(xiàn)在下拉框文件擴(kuò)展名必須是.yaml/.yml/.txt否則被靜默跳過(guò)查看服務(wù)端日志是否有 YAML 解析錯(cuò)誤預(yù)設(shè)沒(méi)有效果檢查預(yù)設(shè)覆蓋的階段僅translation或僅refinement與當(dāng)前任務(wù)是否匹配譯文出現(xiàn)現(xiàn)代/穿越詞匯預(yù)設(shè)的context為空打開編輯器補(bǔ)寫敘事設(shè)定后保存會(huì)自動(dòng)重新組裝出## Setting段十、延伸閱讀完整功能文檔docs/STYLE_EXTRACTION.md風(fēng)格模塊源碼src/core/style/提取、組裝、lint、維度定義REST API 實(shí)現(xiàn)src/api/blueprints/custom_instruction_routes.py端到端測(cè)試驗(yàn)證預(yù)設(shè)確實(shí)注入提示詞tests/integration/test_style_preset_end_to_end.py相關(guān)功能術(shù)語(yǔ)表Glossary自動(dòng)提取見(jiàn) docs/GLOSSARY.md可與風(fēng)格預(yù)設(shè)搭配讓專有名詞與文風(fēng)同時(shí)貫穿全書 總結(jié)TranslateBooksWithLLMs 的風(fēng)格預(yù)設(shè)用從書中提取 → 人工審閱 → 注入每個(gè)分塊三步把 AI 翻譯中最大的隱性風(fēng)險(xiǎn)——全書文風(fēng)漂移——變成可管理、可復(fù)用、可檢查的工程問(wèn)題。無(wú)論是忠于原著還是模仿名家5 分鐘就能讓整本書讀起來(lái)像一個(gè)譯者在寫?!久赓M(fèi)下載鏈接】TranslateBooksWithLLMsTranslate full-length books and documents with Ollama, OpenAI-compatible, Gemini, Mistral, DeepSeek, Poe or OpenRouter. Preserves formatting. Resumes where you left off. No file size limits.項(xiàng)目地址: https://gitcode.com/gh_mirrors/tr/TranslateBooksWithLLMs創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考