BookTranslator
BookTranslator

သင်္ချာ၊ ကိုးကားချက်များ သို့မဟုတ် အညွှန်းများ မပျက်စီးစေဘဲ LaTeX စာတမ်းကို ဘယ်လိုဘာသာပြန်မလဲ

.tex ဖိုင်ထဲမှာ ဘာကို ဘာသာပြန်ရမလဲ၊ ဘာကို မထိဘဲ ထားရမလဲ၊ ဘာသာပြန်ထားတဲ့ ဖိုင်က သန့်ရှင်းစွာ compile လုပ်နိုင်ပြီး စာသားတွေ ပျောက်ဆုံးသွားနိုင်တာ ဘာကြောင့်လဲ။ နမူနာဖိုင်၊ အခမဲ့ စစ်ဆေးကိရိယာ နှစ်ခုနဲ့ ဒေသတွင်း LLM စမ်းသပ်မှု ၉ ကြိမ် ပါဝင်ပါတယ်။

LaTeX စာတမ်းကို ဘာသာပြန်ရန်၊ စာသားနဲ့ စာဖတ်သူထံ ဦးတည်တဲ့ command တွေရဲ့ argument တွေဖြစ်တဲ့ ဥပမာ ခေါင်းစဉ်များ၊ caption များ၊ အောက်ခြေမှတ်စုများနဲ့ လင့်ခ်စာသားများကို ဘာသာပြန်ပါ။ command များ၊ environment အမည်များ၊ \label၊ \ref နဲ့ \cite key များ၊ သင်္ချာနဲ့ verbatim block များကို အတိအကျ ထားရှိပါ။ ပြီးရင် ဘာသာပြန်သူတစ်ယောက်မှ သင့်အတွက် မလုပ်သင့်တဲ့ အပြောင်းအလဲတစ်ခုကို လုပ်ပါ- ပစ်မှတ်ဘာသာစကားအတွက် preamble ကို သတ်မှတ်ပါ၊ အကြောင်းမှာ အင်္ဂလိပ် preamble ကို ထိန်းသိမ်းထားတဲ့ ဖိုင်တစ်ခုဟာ အမှားမပါဘဲ compile လုပ်နိုင်ပြီး ဘာသာပြန်ထားတဲ့ စာသားတွေ ပျောက်နေတဲ့ PDF ကို ထုတ်ပေးနိုင်ပါတယ်။

နောက်ဆုံးအချက်က စမ်းသပ်မှုငယ်တစ်ခုရဲ့ အဓိကရလဒ်ဖြစ်ပါတယ်။ ကျွန်ုပ်တို့ဟာ ၉၈ လိုင်းရှိတဲ့ LaTeX စာတမ်းကို ရိုးရှင်းတဲ့ တရုတ်ဘာသာစကားသို့ ဒေသတွင်း မော်ဒယ်တစ်ခုနဲ့ ကိုးကြိမ်၊ နည်းလမ်းသုံးမျိုးနဲ့ ဘာသာပြန်ပြီး ရလဒ်တိုင်းကို script နဲ့ compiler နဲ့ စစ်ဆေးခဲ့ပါတယ်။ လူတွေ များသောအားဖြင့် စိုးရိမ်တဲ့ အပိုင်းတွေက ကိုးကြိမ်စလုံးမှာ ကောင်းမွန်ခဲ့ပါတယ်- label များ၊ ရည်ညွှန်းချက်များ၊ ကိုးကားချက်များ၊ ညီမျှခြင်းများ၊ URL များ၊ ဇယားကော်လံများနဲ့ brace များဟာ မပျက်မစီး ပြန်လာခဲ့ပြီး cross-reference တိုင်း ဖြေရှင်းနိုင်ခဲ့ပါတယ်။ ပြဿနာတွေက တခြားနေရာမှာ ရှိပါတယ်။ "preamble ကို မပြောင်းပါနဲ့" လို့ prompt က ဆိုတဲ့ အကြိမ်ခြောက်ကြိမ်က လိုက်နာပြီး exit code 0 နဲ့ compile လုပ်ခဲ့ပေမယ့် PDF တွေထဲမှာ တရုတ်စာသား လုံးဝမပါခဲ့ပါဘူး။ တစ်ကြိမ်က ကျွန်ုပ်တို့ရဲ့ "% သင်္ကေတကို escape လုပ်ပါ" ဆိုတဲ့ စည်းမျဉ်းကို code listing အတွင်းမှာ ကျင့်သုံးခဲ့တဲ့အတွက် PDF က မလိုအပ်တဲ့ backslash တစ်ခုကို ပြသနေပါတယ်။ ပြီးတော့ အနည်းဆုံး သုံးကြိမ်က ဖွဲ့စည်းပုံစစ်ဆေးမှုနဲ့ မမြင်နိုင်တဲ့ နည်းလမ်းတွေနဲ့ ဝါကျတစ်ခုရဲ့ အဓိပ္ပာယ်ကို ပြောင်းလဲခဲ့ပါတယ်။

အမြန်အဖြေ- ဘာကို ဘာသာပြန်မလဲ၊ ဘာကို မထိဘဲ ထားမလဲ

ဖိုင်ရဲ့ အစိတ်အပိုင်းကျွန်ုပ်တို့ရဲ့ နမူနာမှ ဥပမာဘာသာပြန်မလား။
Preamble- \documentclass၊ \usepackage၊ \newcommand\newcommand{\wpm}{\mathrm{wpm}}မဟုတ်ပါ၊ ဒါပေမယ့် ပစ်မှတ်ဘာသာစကား သတ်မှတ်ချက်ကို သင်ကိုယ်တိုင် ထည့်ပါ (အောက်တွင် ကြည့်ပါ)
\title, \author, \date\title{Estimating Reading Time for Translated Ebooks}ခေါင်းစဉ်နဲ့ ရက်စွဲ ဟုတ်ပါတယ်၊ အမည်များ များသောအားဖြင့် မဟုတ်ပါ
ခေါင်းစဉ်များ\section{Method}\label{sec:method}ဟုတ်ပါတယ်၊ brace အတွင်းမှ စာသား၊ label ကို ထားရှိပါ
Label များနဲ့ ရည်ညွှန်းချက်များ\label{eq:time}, Section~\ref{sec:method}, \eqref{eq:time}key တိုင်းကို ထားရှိပါ
ကိုးကားချက်များနဲ့ ကျမ်းကိုးစာရင်း key များ\cite{brysbaert2019}, \bibitem{rayner2016}key များကို ထားရှိပါ၊ သင့်နယ်ပယ်က လုပ်လျှင် entry စာသားကိုသာ ဘာသာပြန်ပါ
Inline နဲ့ display သင်္ချာ$r_c$, T = \frac{N}{r}မဟုတ်ပါ
သင်္ချာအတွင်းမှ စာသား\text{ for English silent reading.}ဟုတ်ပါတယ်။ ၎င်းက သာမန်စာသားအဖြစ် ပြသပါတယ်။
စာသားကို ယူတဲ့ macro များ\term{characters per minute}argument ကို ဘာသာပြန်ပါ၊ command ကို ထားရှိပါ
Caption များနဲ့ အောက်ခြေမှတ်စုများ\caption{Reading rates used in this paper.}ဟုတ်ကဲ့
စာသားအတိုင်းနှင့် ကုဒ်စာရင်းများshelfmark count --unit chars book.epub # 100% of body textမဟုတ်ပါ၊ ၎င်းတို့အတွင်းရှိ မှတ်ချက်များအပါအဝင်
\url နှင့် \href ၏ ပထမဆုံး အငြင်းပွားချက်\href{https://example.org/shelfmark/survey}{online appendix}URL ကို ထားရှိပါ။ လင့်ခ်စာသားကို ဘာသာပြန်ပါ
အထူးအက္ခရာများ20\%, \$12, R\&Dစကားပြေတွင် backslash ကို ထားရှိပါ
% မှတ်ချက်များ% TODO: replace the Chinese rate ...ရွေးချယ်နိုင်သည်။ စာဖတ်သူများ ၎င်းတို့ကို ဘယ်တော့မှ မမြင်ရပါ။
ရည်ညွှန်းချက်များရှေ့တွင် ချိတ်ဆက်မှုများTable~\ref{tab:rates}နေရာလွတ်များကို အသုံးပြုသော ဘာသာစကားများတွင် ထားရှိပါ။ တရုတ်နှင့် ဂျပန်တွင် ရွေးချယ်နိုင်သည်

ကျန်ရှိသည်များအားလုံးသည် သာမန်စကားပြေဖြစ်သည်- စာပိုဒ်များ၊ အကျဉ်းချုပ်၊ စာရင်းအရာများနှင့် ဇယားကွက်များ။

ကျွန်ုပ်တို့ စမ်းသပ်ခဲ့သည်များ

ကျွန်ုပ်တို့သည် sample-source.tex ကို ရေးသားခဲ့သည်။ ၎င်းသည် Shelfmark ဟုခေါ်သော စိတ်ကူးယဉ်အက်ပ်တစ်ခုအတွက် ဖတ်ရှုချိန် ခန့်မှန်းချက်များအကြောင်း တိုတောင်းသော တီထွင်ထားသည့် စာတမ်းတစ်စောင်ဖြစ်သည်။ ၎င်းသည် သန့်ရှင်းစွာ ကွန်ပိုင်းလုပ်နိုင်ပြီး အထက်ပါဇယားရှိ ဖွဲ့စည်းပုံတစ်ခုစီ၏ ဥပမာတစ်ခုစီအပြင် booktabs ဇယား၊ စာတန်းတစ်ခုပါသော ပုံတစ်ပုံ၊ % မှတ်ချက်နှစ်ခု၊ အတွင်းတွင် % သာရှိသော verbatim ဘလောက်တစ်ခုနှင့် အတွင်းကျကျ ကျမ်းကိုးစာရင်းတစ်ခု ပါဝင်သည်။

ထို့နောက် ကျွန်ုပ်တို့သည် ဒေသတွင်းမော်ဒယ်တစ်ခုကို ရိုးရှင်းသော တရုတ်ဘာသာသို့ နည်းလမ်းသုံးမျိုးဖြင့် ဘာသာပြန်ရန် တောင်းဆိုခဲ့သည်-

  1. ဖိုင်တစ်ခုလုံး။ ဖိုင်တစ်ခုလုံးကို ကူးထည့်ပြီး ကွန်ပိုင်းလုပ်နိုင်ဆဲဖြစ်သော ဘာသာပြန်ဖိုင်တစ်ခုကို တောင်းဆိုပါ။
  2. ညွှန်ကြားချက်ဖြင့်။ အလားတူပင်၊ စည်းမျဉ်းခုနစ်ခု ထပ်တိုးပါ- preamble ကို မပြောင်းလဲပါနှင့်၊ command၊ environment၊ label၊ reference နှင့် citation key တိုင်းကို ထားရှိပါ၊ \text{} မှလွဲ၍ သင်္ချာကို မထိပါနှင့်၊ verbatim ဘလောက်များနှင့် URL များကို မထိပါနှင့်၊ အထူးအက္ခရာများကို escape လုပ်ထားပါ၊ ချိတ်ဆက်မှုများကို ထားရှိပါ၊ စကားပြေ၊ စာတန်းများ၊ အောက်ခြေမှတ်စုများနှင့် လင့်ခ်စာသားများကို ဘာသာပြန်ပါ။
  3. အပိုင်းအစများ။ preamble ကို တောင်းဆိုမှုမှ လုံးဝဖယ်ထုတ်ပါ ( \title လိုင်းသာ ပို့သည်၊ ထို့ကြောင့် \date သည် အင်္ဂလိပ်လို ကျန်ရှိသည်)၊ ကိုယ်ထည်ကို အလွတ်လိုင်းများတွင် ခွဲပါ၊ verbatim ဘလောက်ကို ကျော်ပါ၊ အပိုင်းတစ်ခုစီကို တူညီသော စည်းမျဉ်းများဖြင့် ပို့ပြီး ပြန်လည်ပေါင်းစပ်ပါ။

မော်ဒယ်မှာ LM Studio ရှိ Qwen 3.6 27B (Q4_K_M) ဖြစ်ပြီး တွေးခေါ်မှုကို ပိတ်ထားကာ အပူချိန် 0.3 ဖြင့် Apple M4 Max 64 GB မမ်မိုရီပေါ်တွင် လုပ်ဆောင်ခဲ့သည်။ ကျွန်ုပ်တို့သည် အခြေအနေတစ်ခုစီကို သုံးကြိမ်၊ စုစုပေါင်း ကိုးကြိမ် လုပ်ဆောင်ခဲ့ပြီး 2026 ခုနှစ် အောက်တိုဘာလ 26 ရက်နေ့ဖြစ်သည်။ စကရစ်မှာ run_llm_latex_test.py ဖြစ်ပြီး ထွက်ရှိမှု ကိုးခုစလုံးကို outputs ဖိုလ်ဒါ တွင် တည်းဖြတ်မှုမရှိဘဲ ထုတ်ဝေထားသည်။ သင်သည် ဒေသတွင်းမော်ဒယ်ကို တစ်ခါမျှ မတပ်ဆင်ဖူးပါက ကျွန်ုပ်တို့၏ ဒေသတွင်း LLM ဘာသာပြန်လမ်းညွှန် တွင် ဆက်တင်များကို ဖော်ပြထားသည်။

ကျွန်ုပ်တို့သည် ထွက်ရှိမှုတိုင်းကို Tectonic 0.17.0 ဖြင့် ကွန်ပိုင်းလုပ်ခဲ့ပြီး ၎င်းသည် XeTeX အင်ဂျင်ကို အသုံးပြုကာ ပြန်လာသည့်အတိုင်း တစ်ကြိမ်၊ preamble တွင် တရုတ်ဆက်တင်ထည့်သွင်းပြီး တစ်ကြိမ် ကွန်ပိုင်းလုပ်ခဲ့သည်။ ထို့နောက် PDF တစ်ခုစီမှ စာသားကို ပြန်ဖတ်ခဲ့သည်။ ၎င်းသည် မော်ဒယ်တစ်ခု၊ ဘာသာစကားအတွဲတစ်ခုနှင့် ဖိုင်တစ်ခုအတွက် သေးငယ်သော စမ်းသပ်မှုတစ်ခုဖြစ်သည်။ ၎င်းသည် မည်သည့်ပြဿနာများ ဖြစ်ပေါ်သည်နှင့် ၎င်းတို့ကို မည်သို့ ဖမ်းမိနိုင်သည်ကို ပြသသည်။ ၎င်းသည် မော်ဒယ်များ သို့မဟုတ် prompt များကို အဆင့်သတ်မှတ်ခြင်း မဟုတ်ပါ။

ရလဒ်- ဖွဲ့စည်းပုံသည် ရှင်သန်ခဲ့သည်။ preamble က စာသား ပေါ်လာခြင်း ရှိ/မရှိ ဆုံးဖြတ်ခဲ့သည်

check_latex_translation.py သည် ထွက်ရှိမှုတစ်ခုစီကို ရင်းမြစ်နှင့် နှိုင်းယှဉ်ခဲ့ပြီး compile_check.py က ကွန်ပိုင်းလုပ်ခဲ့သည်။ ထွက်ရှိမှု အပြည့်အစုံကို check-results.txt နှင့် compile-results.txt တွင် တွေ့နိုင်ပြီး results.csv တွင် လုပ်ဆောင်မှုတစ်ခုစီအတွက် အတန်းတစ်ခုစီ ပါရှိသည်။

စစ်ဆေးမှုဖိုင်တစ်ခုလုံးညွှန်ကြားထားသည်အပိုင်းများ
အညွှန်းများ၊ ရည်ညွှန်းချက်များ၊ ကိုးကားချက်များနှင့် ကျမ်းကိုးစာရင်းသော့များ မပြောင်းလဲပါ၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု
သင်္ချာ မပြောင်းလဲပါ (\text{} အတွင်းရှိ စာသားကို ဘာသာပြန်ထားသည်)၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု
URL များ၊ ကွင်းကောက်များနှင့် ဇယားကော်လံများ မပျက်မစီး၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု
မော်ဒယ်က ရှေ့ပိုင်းတွင် တရုတ်ပက်ကေ့ဂျ်တစ်ခုကို ထည့်သွင်းခဲ့သည်၃ ခုအနက် ၃ ခု၃ ခုအနက် ၀ ခု၃ ခုအနက် ၀ ခု
ပြန်ပေးသည့်အတိုင်း ကွန်ပိုင်းလုပ်နိုင်သည်၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု
ပြန်ပေးသည့်အတိုင်း PDF တွင် တရုတ်စာသား အမှန်တကယ်ပါရှိသည်၃ ခုအနက် ၃ ခု၃ ခုအနက် ၀ ခု၃ ခုအနက် ၀ ခု
Verbatim ဘလောက် မပြောင်းလဲ၃ ခုအနက် ၃ ခု၃ ခုအနက် ၂ ခု၃ ခုအနက် ၃ ခု
% မှတ်ချက်များကို အင်္ဂလိပ်လို ထားရှိသည်၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု၃ ခုအနက် ၁ ခု
တရုတ်ဘာသာ ဆက်တင်ထည့်ပြီးနောက် ရည်ညွှန်းချက်နှင့် ကိုးကားချက်တိုင်း ပြေလည်သည်၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု၃ ခုအနက် ၃ ခု

ပထမအကြိမ် စမ်းသပ်မှုတွင် ကျွန်ုပ်တို့၏ စစ်ဆေးကိရိယာက သင်္ချာပုံသေနည်း ပြောင်းလဲသွားသည်ဟု အစပိုင်းတွင် အစီရင်ခံခဲ့သည်။ သင်္ချာပုံသေနည်းများမှာ မှန်ကန်ပါသည်။ တရုတ်ဘာသာ စကားလုံးအစီအစဉ်ကြောင့် စာကြောင်းတစ်ကြောင်းတွင် $N$ သည် $r$ ရှေ့သို့ ရောက်သွားခြင်းဖြစ်သည်။ ထို့ကြောင့် ထုတ်ဝေထားသော စစ်ဆေးကိရိယာသည် သင်္ချာအပိုင်းအစများကို အစီအစဉ်မဲ့ အစုအဝေးအဖြစ် နှိုင်းယှဉ်စစ်ဆေးသည်။ ထို့ကြောင့် အစီအစဉ်ပြန်လည်စီစဉ်ခြင်းကို ခွင့်ပြုသော်လည်း သင်္ကေတ ပြောင်းလဲခြင်းကို ခွင့်မပြုပါ။

၁။ "ရှေ့ပိုင်းကို မထိပါနှင့်" ဆိုသည့် ညွှန်ကြားချက်က တရုတ်စာလုံးများ မပါဝင်သော PDF ကို ထုတ်ပေးခဲ့သည်

ရှေ့ပိုင်းဆိုင်ရာ စည်းမျဉ်းသည် သင်ပေးနိုင်သည့် အန္တရာယ်အကင်းဆုံး ညွှန်ကြားချက်ဟု ထင်ရသည်။ ကျွန်ုပ်တို့၏ နမူနာ၏ ရှေ့ပိုင်းတွင် amsmath၊ booktabs နှင့် hyperref တို့ကို ဖွင့်ထားပြီး မက်ခရိုသုံးခုကို သတ်မှတ်ထားသည်။ ယင်းတို့အနက် မည်သည့်အရာမှ ဘာသာပြန်ရန် မလိုအပ်ပါ။ ထို့ကြောင့် ညွှန်ကြားချက်ပေးထားသော အစုအဝေးနှင့် အပိုင်းအစများ စမ်းသပ်မှုများက ၎င်းကို ညွှန်ကြားချက်အတိုင်း အတိအကျ ထားခဲ့သည်။

သို့သော် စံ LaTeX ဆက်တင်ရှိ မူလဖောင့်များတွင် တရုတ်စာလုံးများ မပါဝင်ပါ။ ထိုဖိုင်ခြောက်ခုအနက် တစ်ခုစီသည် exit code 0 ဖြင့် ကွန်ပိုင်းလ်ဖြစ်သွားသည်။ Tectonic က စာလုံးတစ်လုံးပျောက်တိုင်း Missing character: There is no 估 (U+4F30) in font [lmroman17-regular] ကဲ့သို့သော စာကြောင်းများဖြင့် သတိပေးချက် ပေးခဲ့ပြီး log ဖိုင်တွင် တစ်ကြိမ်လျှင် ၅၅၄ မှ ၅၇၇ ခုအထိ မှတ်တမ်းတင်ထားသည်။ သို့သော် သတိပေးချက်က build ကို မရပ်တန့်စေပါ။ ထို PDF ခြောက်ခုမှ စာသားကို ကျွန်ုပ်တို့ ထုတ်ယူကြည့်သောအခါ စာရေးသူအမည်များ၊ နံပါတ်များနှင့် သင်္ချာပုံသေနည်းများ ပါဝင်ပြီး တရုတ်စာလုံး လုံးဝမပါဝင်ပါ။ ဖိုင်တစ်ခုလုံး ဘာသာပြန်ထားသော PDF သုံးခုတွင်မူ ၄၈၁ မှ ၄၉၀ အထိ ပါဝင်သည်။ ကွန်ပိုင်းလ် အောင်မြင်ခြင်း ရှိ/မရှိကိုသာ စစ်ဆေးသော build script သို့မဟုတ် output ၏ အဆုံးပိုင်းကိုသာ ကြည့်သော လူတစ်ဦးသည် ထိုခြောက်ခုစလုံးကို ထုတ်ဝေမိမည်ဖြစ်သည်။

ထိုသို့သော စည်းမျဉ်းမရှိသော ဖိုင်တစ်ခုလုံး လုပ်ဆောင်မှု သုံးခုက \usepackage{ctex} ကို သူတို့ဘာသာ ထည့်သွင်းခဲ့ပြီး ၎င်းတို့၏ PDF များမှာ ပြည့်စုံခဲ့သည်။ ၎င်းသည် မော်ဒယ်တစ်ခုအား သင့်ရှေ့ပိုင်းကို ပြန်လည်ရေးသားခွင့်ပြုရန် အကြောင်းပြချက် မဟုတ်ပါ။ ပစ်မှတ်ဘာသာစကား ဆက်တင်ကို ဘာသာပြန်လုပ်ငန်း၏ တစ်စိတ်တစ်ပိုင်းအဖြစ် သင်ကိုယ်တိုင် တစ်ကြိမ်တည်း လုပ်ဆောင်ရန် အကြောင်းပြချက်ဖြစ်သည်။

  • တရုတ်: pdfLaTeX၊ XeLaTeX နှင့် LuaLaTeX တို့ကို ပံ့ပိုးသော ctex ကို ဖွင့်ပါ။ မူလအားဖြင့် ၎င်းသည် သင့်လည်ပတ်မှုစနစ်အတွက် ဖောင့်များကို ရွေးချယ်သည်။ ကျွန်ုပ်တို့၏ log တွင် ၎င်းသည် macOS ဖောင့်အစုကို ဖွင့်နေသည်ကို ပြသထားသည်။ ဖိုင်ကို အခြားစက်များတွင်လည်း တူညီစွာ ကွန်ပိုင်းလ်ဖြစ်ရန် လိုအပ်ပါက \usepackage[UTF8,fontset=fandol]{ctex} သည် TeX Live နှင့်အတူ ဖြန့်ဝေသော အခမဲ့ Fandol ဖောင့်များကို အသုံးပြုပြီး Tectonic ကလည်း လိုအပ်သလို ဒေါင်းလုဒ်လုပ်ပေးသည်။ compile_check.py က ထည့်သွင်းသည်မှာ ထိုအရာဖြစ်သည်။
  • အခြားဘာသာစကားများ: ပစ်မှတ်ဘာသာစကားဖြင့် babel ကို ဖွင့်ပါ။ သို့မှသာ စကားလုံးဖြတ်တောက်ခြင်းနှင့် "Figure"၊ "Table" နှင့် "Abstract" ကဲ့သို့သော ထုတ်လုပ်ထားသည့် စကားလုံးများသည် ဘာသာစကားအသစ်ကို လိုက်နာမည်ဖြစ်သည်။ ဂျပန်၊ ကိုရီးယားနှင့် ညာမှဘယ်သို့ ရေးသော ဘာသာစကားများသည် ၎င်းတို့၏ ကိုယ်ပိုင် ဆက်တင်များ လိုအပ်သည်။

ကွန်ပိုင်းလ်ပြီးနောက် log တွင် Missing character ရှိ/မရှိ စစ်ဆေးပြီး exit code တစ်ခုတည်းကိုသာမက PDF ကိုပါ ဖတ်ပါ။ ကျွန်ုပ်တို့သည် Tectonic မှတစ်ဆင့် XeTeX ကိုသာ စမ်းသပ်ခဲ့သည်။ အခြား engine များသည် ပျောက်ဆုံးနေသော ဖောင့်ကို မတူညီစွာ အစီရင်ခံသည်။

၂။ လွတ်မြောက်စေသော စည်းမျဉ်းက ကုဒ်စာရင်းထဲသို့ ယိုစိမ့်သွားသည်

ကျွန်ုပ်တို့၏ ညွှန်ကြားချက်များတွင် အထူးစာလုံးများကို လွတ်မြောက်စေရန် ထားရှိရမည်ဟု ဆိုထားပြီး စာသားတွင် ၎င်းသည် မှန်ကန်သော စည်းမျဉ်းဖြစ်သည်။ LaTeX တွင် ကိုယ်ထည် % သည် မှတ်ချက်တစ်ခုကို စတင်ပြီး ကျန်စာကြောင်းကို တိတ်ဆိတ်စွာ မျိုချသွားသည်။ စမ်းသပ်မှု ကိုးခုစလုံးသည် abstract တွင် 20\% ကို ထိန်းသိမ်းထားသည်။

ပထမဆုံး ညွှန်ကြားချက်ပေးထားသော လုပ်ဆောင်မှုတွင် မော်ဒယ်သည် verbatim ဘလောက်အတွင်းရှိ စည်းမျဉ်းကို ကျင့်သုံးပြီး ထိုနေရာရှိ ကုဒ်မှတ်ချက်ကို ဘာသာပြန်ခဲ့သည်။

source:      shelfmark count --unit chars book.epub  # 100% of body text
translation: shelfmark count --unit chars book.epub  # 100\% 正文

verbatim အတွင်းတွင် မည်သည့်အရာမျှ command မဟုတ်သောကြောင့် PDF သည် 100\% ကို backslash နှင့်အတူ ပြသသည်။ ပြင်ဆင်ရန်မှာ ပိုမိုကောင်းမွန်သော prompt မဟုတ်ပါ။ verbatim၊ lstlisting သို့မဟုတ် minted ဘလောက်များကို ဘာသာပြန်သူထံ လုံးဝမပို့ပါနှင့်၊ segments အခြေအနေတွင် ပြုလုပ်ခဲ့သကဲ့သို့ဖြစ်သည်။ ထို့နောက် သင့်စာဖတ်သူများ လိုအပ်ပါက ၎င်းတို့အတွင်းရှိ မှတ်ချက်များကို ကိုယ်တိုင်ဘာသာပြန်ပါ။

3. မှတ်ချက်များသည် တောင်းဆိုမှု နယ်နိမိတ်များကို လိုက်နာခဲ့သည်

ဖိုင်တွင် % မှတ်ချက် နှစ်ခုရှိသည်- macro အဓိပ္ပာယ်ဖွင့်ဆိုချက်များအပေါ်ရှိ မှတ်စုတစ်ခုနှင့် ကုဒ်စာရင်းအပေါ်ရှိ TODO တစ်ခုဖြစ်သည်။ ဖိုင်တစ်ခုလုံးနှင့် ညွှန်ကြားချက်ပေးထားသော လုပ်ဆောင်မှုများတွင် နှစ်ခုစလုံးကို အင်္ဂလိပ်လို ထားခဲ့သည်။ segments အခြေအနေတွင် သုံးကြိမ်အနက် နှစ်ကြိမ်တွင် TODO ကို ဘာသာပြန်ခဲ့သည်၊ အကြောင်းမှာ TODO သည် ကျွန်ုပ်တို့ ဘာသာပြန်ရန် ပို့ခဲ့သော စာပိုဒ်နှင့် ဘလောက်တစ်ခုတည်းတွင် ရှိနေခဲ့သောကြောင့်ဖြစ်သည်။ ဖိုင်တစ်ခုလုံး လုပ်ဆောင်မှု နှစ်ခုတွင်လည်း ၎င်းတို့ ထည့်သွင်းခဲ့သော package ပြီးနောက် ကိုယ်ပိုင်မှတ်ချက်တစ်ခုကို ထပ်ထည့်ခဲ့သည်။

ဤအရာများသည် PDF ကို မပြောင်းလဲစေပါ။ ဘာသာပြန်ထားသော ရင်းမြစ်သည် ပူးတွဲစာရေးသူများ သို့မဟုတ် repository သို့ ပြန်သွားပါက အရေးကြီးသည်၊ ဘာသာပြန်ထားသော TODO သည် မူရင်းနှင့် မကိုက်ညီတော့ဘဲ ထပ်ဆောင်းမှတ်ချက်တစ်ခုသည် diff တိုင်းတွင် ပေါ်လာမည်ဖြစ်သည်။ စစ်ဆေးသူက ဘာသာပြန်ထားသော မှတ်ချက်များကို သတိပေးချက်အဖြစ် အစီရင်ခံပေးသောကြောင့် သင်ဆုံးဖြတ်နိုင်သည်။

4. ဖွဲ့စည်းပုံစစ်ဆေးမှုများ အောင်မြင်ခဲ့သော်လည်း အဓိပ္ပာယ် ပြောင်းလဲနေဆဲ

စာတမ်းအကျဉ်းတွင် "20% အနည်းငယ်လွဲနေသော label သည် အသုံးဝင်ဆဲ" ဟု ဖော်ပြထားသည်။ ကိုးကြိမ်အနက် သုံးကြိမ်တွင် တရုတ်ဘာသာပြန်ချက်က အမှားသည် 20% အတွင်း ရှိသော label များသည် အသုံးဝင်ဆဲဟု ဆိုထားပြီး ယင်းက သည်းခံနိုင်မှုကို အဆင့်သတ်မှတ်ချက်အဖြစ် ပြောင်းလဲစေသည်။ အခြားလုပ်ဆောင်မှု အတော်များတွင် ဝါကျကို ပြန်စီခဲ့ပြီး "ဖြစ်သော်လည်း" ဝါကျအပိုင်းသည် မှားယွင်းသော အယူအဆနှင့် တွဲသွားကာ တစ်ခုမှာ လိုက်လံဖတ်ရှုရန် ခက်ခဲသွားသည်။ ဤအရာများသည် တရုတ်ဘာသာနှင့် အင်္ဂလိပ်ဘာသာကို နှိုင်းယှဉ်ကြည့်သော စာဖတ်သူတစ်ဦး၏ အကဲဖြတ်ချက်များဖြစ်ပြီး မျက်ကွယ်ပြုထားသော သုံးသပ်ချက် မဟုတ်ပါ၊ သို့သော် အချက်မှာ အတိအကျ အရေအတွက်အပေါ် မူတည်မနေပါ- ထိုဖိုင်များတွင် ဖွဲ့စည်းပုံစစ်ဆေးမှုတိုင်း အောင်မြင်ခဲ့သည်၊ အကြောင်းမှာ 20\%၊ macro နှင့် braces အားလုံး မှန်ကန်နေသောကြောင့်ဖြစ်သည်။

အခြားပြောင်းလဲမှု နှစ်ခုမှာ ကောင်းမွန်သော်လည်း သိထားသင့်သည်။ ဖိုင်တစ်ခုလုံး လုပ်ဆောင်မှုများက \$12 ကို 12美元 ("12 US dollars") ဟု ရေးခဲ့ပြီး ယင်းက escaping ပြဿနာကို လုံးဝဖယ်ရှားပေးသည်။ ဖိုင်တစ်ခုလုံး လုပ်ဆောင်မှု နှစ်ခုသည် \ref နှင့် \cite ရှေ့ရှိ ~ ties အများစုကိုလည်း ဖြုတ်ပစ်ခဲ့သည်။ ယင်းသည် စကားလုံးများကြား နေရာမထားသော တရုတ်ဘာသာတွင် ထိခိုက်မှုမရှိသော်လည်း နေရာထားသော ဘာသာစကားတွင် tie ပျောက်နေပါက စာကြောင်းအသစ်က "Table" နှင့် ၎င်း၏နံပါတ်ကို ကွဲသွားစေနိုင်သည်။ စစ်ဆေးသူက ties ကို ကျရှုံးမှုမဟုတ်ဘဲ သတိပေးချက်အဖြစ် အစီရင်ခံသည်။

ဖွဲ့စည်းပုံစစ်ဆေးမှုက ဖိုင်သည် အလုပ်လုပ်နေဆဲဖြစ်ကြောင်း ပြောပြနိုင်သည်။ စာတမ်းက အဓိပ္ပာယ်တူနေဆဲဖြစ်ကြောင်း မပြောပြနိုင်ပါ။ ထိုအတွက် ကျွန်ုပ်တို့၏ ဘာသာပြန်ထားသော သုတေသနစာတမ်းကို ပြန်လည်သုံးသပ်ခြင်း လမ်းညွှန်တွင် ဖော်ပြထားသည့်အတိုင်း စာတမ်းအကျဉ်း၊ အဆိုပြုချက်များနှင့် ကိန်းဂဏန်းများကို နှစ်ဘာသာဖြင့် ဖတ်ရှုပါ။

ခံနိုင်ရည်ရှိသော လုပ်ငန်းစဉ်

  1. ရင်းမြစ်ကို ရယူပြီး ၎င်းနှင့်ပတ်သက်၍ မည်သည့်အရာလုပ်နိုင်သည်ကို စစ်ဆေးပါ။ arXiv တွင် TeX ဖြင့် တင်သွင်းထားသော စာတမ်းများသည် များသောအားဖြင့် စာတမ်းအကျဉ်းစာမျက်နှာ သို့မဟုတ် Other formats စာမျက်နှာရှိ Source လင့်ခ်မှတစ်ဆင့် ၎င်းတို့၏ ရင်းမြစ်ကို gzipped ဖိုင် သို့မဟုတ် ဖိုင်များစွာရှိပါက tar archive အဖြစ် ပေးသည် (arXiv အကူအညီ)။ ကိုယ်တိုင်ဖတ်ရှုရန် ဘာသာပြန်ခြင်းသည် တစ်ကဏ္ဍဖြစ်သည်။ ဘာသာပြန်ချက်ကို ထုတ်ဝေခြင်းသည် အခြားတစ်ကဏ္ဍဖြစ်သည်- arXiv ၏ သီးသန့်မဟုတ်သော လိုင်စင်သည် အခြားသူများ ပြန်လည်အသုံးပြုခြင်းကို ကန့်သတ်ပြီး CC BY နှင့် CC BY-SA တို့သည် အညွှန်းဖြင့် ပြုပြင်ပြောင်းလဲမှုများကို ခွင့်ပြုကာ CC BY-NC-ND က ခွင့်မပြုပါ။ သံသယရှိပါက စာရေးသူများကို မေးပါ။

  2. မူရင်းကို ဦးစွာ compile လုပ်ပါ။ ဘာသာပြန်ခြင်းမပြုမီ compile မဖြစ်ပါက နောက်ပိုင်းတွင် သင်သိရှိသမျှသည် ယုံကြည်စိတ်ချရမည်မဟုတ်ပါ။ နှိုင်းယှဉ်ရန် မူရင်း PDF ကို သိမ်းထားပါ။

  3. ပရီအမ်ဘယ်တွင် ပစ်မှတ်ဘာသာစကားကို ကိုယ်တိုင်သတ်မှတ်ပါ။ အထက်ဖော်ပြပါအတိုင်း ctex သို့မဟုတ် babel ကို ထည့်ပါ၊ အင်္ဂလိပ်စာသားဖြင့် တစ်ကြိမ် compile လုပ်ပြီး ထိုပြောင်းလဲမှုကို သီးခြား commit လုပ်ပါ။

  4. ပရီအမ်ဘယ်နှင့် verbatim ဘလောက်များမပါဘဲ ကိုယ်ထည်ကို ဘာသာပြန်ပါ။ LaTeX ကို parse လုပ်သော ကိရိယာကို အသုံးပြုပါ၊ သို့မဟုတ် ကျွန်ုပ်တို့၏ segments အခြေအနေတွင်ကဲ့သို့ ရှင်းလင်းသော စည်းမျဉ်းများဖြင့် ကိုယ်ထည်ကို အပိုင်းပိုင်း ပို့ပါ။ ဤအတွက် ရည်ရွယ်တည်ဆောက်ထားသော open-source ကိရိယာ TransLaTeX သည် စာသားကို စက်ဘာသာပြန်သူထံ မပို့မီ LaTeX တည်ဆောက်မှုများကို token များဖြင့် အစားထိုးသည်။ ၎င်း၏ စာရွက်စာတမ်းတွင် စာတမ်းခေါင်းစီးကို မထိခိုက်စေရန်၊ macro များကို မပံ့ပိုးကြောင်း၊ ဖိုင်တစ်ခုတည်းသော စာတမ်းများကိုသာ ကိုင်တွယ်ပြီး \input မပါကြောင်း ဖော်ပြထားသည်။ သီးသန့်ကိရိယာတစ်ခုတောင်မှ ပရီအမ်ဘယ် ဆုံးဖြတ်ချက်ကို သင့်အတွက် ချန်ထားခဲ့သည်။

  5. ဖိုင်အတွဲတိုင်းတွင် ဖွဲ့စည်းပုံစစ်ဆေးမှုကို လုပ်ဆောင်ပါ။

    python3 check_latex_translation.py main.tex main-zh.tex --keep Shelfmark
    

    ၎င်းသည် ပရီအမ်ဘယ်၊ command အမည်များ၊ ပတ်ဝန်းကျင် အစီအစဉ်၊ label များ၊ ရည်ညွှန်းချက်များ၊ ကိုးကားချက်များ၊ ကျမ်းကိုးစာရင်း key များ၊ သင်္ချာ၊ verbatim ဘလောက်များ၊ URL များ၊ escape မလုပ်ထားသော %၊ & နှင့် #၊ brace ဟန်ချက်၊ tie များ၊ မှတ်ချက်များနှင့် သင်ထိန်းသိမ်းထားရန် တောင်းဆိုသည့် ဝေါဟာရများကို နှိုင်းယှဉ်သည်။ အဆင့် 3 ပြီးနောက် မူရင်းနှင့် နှိုင်းယှဉ်ပါက ပရီအမ်ဘယ်လိုင်း ကျရှုံးမည်ကို မျှော်လင့်ပါ၊ သင့်မွမ်းမံထားသော အင်္ဂလိပ်ဖိုင်နှင့် နှိုင်းယှဉ်ပါ။ \input ဖိုင်များစွာဖြင့် ခွဲထားသော ပရောဂျက်အတွက် အတွဲတိုင်းကို စစ်ဆေးပါ။

  6. PDF ကို compile လုပ်ပြီး ဖတ်ပါ။

    python3 compile_check.py main-zh.tex
    

    ၎င်းသည် မဖြေရှင်းရသေးသော ရည်ညွှန်းချက်များ (??)၊ မဖြေရှင်းရသေးသော ကိုးကားချက်များ ([?]) နှင့် ပျောက်ဆုံးနေသော glyph များကို အစီရင်ခံသည်။ ထို့နောက် PDF ကို ဖွင့်ပြီး စာတမ်းအကျဉ်း၊ caption တိုင်းနှင့် ဇယားတိုင်းကို မူရင်းနှင့် နှိုင်းယှဉ်ဖတ်ပါ။

  7. အဆိုပြုချက်များနှင့် ကိန်းဂဏန်းများကို နှစ်ဘာသာဖြင့် ဖတ်ပါ။ ဤနေရာတွင် ကျွန်ုပ်တို့၏ ပြောင်းလဲသွားသော ဝါကျသုံးကြောင်းကို ဖမ်းမိနိုင်မည်ဖြစ်သည်။ စာတမ်း၏ နည်းပညာဝေါဟာရများအတွက် တိုတောင်းသော ဘာသာပြန်ဝေါဟာရစာရင်း ကို ထားရှိပါ၊ သို့မှသာ တူညီသောဝေါဟာရကို သုံးမျိုးသုံးနည်းဖြင့် ဘာသာမပြန်မိစေရန်။

BookTranslator က ဘယ်နေရာမှာ ကိုက်ညီသလဲ

BookTranslator ၏ စာတမ်းဘာသာပြန်ကိရိယာ သည် PDF၊ DOCX၊ EPUB၊ Markdown နှင့် အခြားဖွဲ့စည်းပုံပါ ဖော်မတ်များနှင့်အတူ .tex ဖိုင်များကို လက်ခံသည်။ ၎င်း၏ FAQ တွင် ရလဒ်ကို "ဖော်မတ်က ပံ့ပိုးပေးသည့်အခါတိုင်း အသုံးပြုနိုင်သော၊ ဖော်မတ်နှင့် သင့်လျော်သော ဖိုင်" အဖြစ် ပြန်ပေးသည်ဟု ဆိုထားသည်။

ထုတ်ကုန်စာမျက်နှာတွင် LaTeX macro များ၊ သင်္ချာနှင့် ပရီအမ်ဘယ်ကို မည်သို့ ကိုင်တွယ်သည်ကို မဖော်ပြထားပါ၊ ဤဆောင်းပါးအတွက် ကျွန်ုပ်တို့သည် ဤနမူနာကို BookTranslator မှတစ်ဆင့် မလုပ်ဆောင်ခဲ့ပါ။ သင်အသုံးပြုသည့် ကိရိယာမည်သို့ပင်ဖြစ်ပါစေ ဘာသာပြန်ခြင်းမပြုမီ အဆင့် 1 မှ 3 အထိနှင့် ပြီးနောက် အဆင့် 5 မှ 7 အထိ လုပ်ဆောင်ပါ။ အင်္ဂလိပ်သီးသန့် ပရီအမ်ဘယ်ကို ထိန်းသိမ်းထားသော ဖိုင်သည် တရုတ်စာသားမပါဘဲ compile ဖြစ်နေဆဲဖြစ်ပြီး ပြောင်းလဲသွားသော အဆိုပြုချက်သည် ဖွဲ့စည်းပုံစစ်ဆေးမှုတိုင်းကို အောင်မြင်နေဆဲဖြစ်သည်။

သင့်တွင် စာတမ်း၏ ရင်းမြစ်မဟုတ်ဘဲ PDF သာရှိပါက လုပ်ငန်းစဉ်မှာ ကွဲပြားသည်- ကျွန်ုပ်တို့၏ သုတေသနစာတမ်းကို ၎င်း၏ဖွဲ့စည်းပုံကို ထိန်းသိမ်းထားစဉ် ဘာသာပြန်ခြင်း လမ်းညွှန်ကို ကြည့်ပါ။ သင့်ရင်းမြစ်သည် LaTeX မဟုတ်ဘဲ Markdown ဖြစ်ပါက စက်ယန္တရားနှင့် စကားပြေကြား ခွဲခြားမှုသည် အတူတူပင်ဖြစ်သော်လည်း ထောင်ချောက်များ ကွဲပြားသည်၊ ကျွန်ုပ်တို့သည် ယင်းတို့ကို Markdown ဖိုင်များကို ဘာသာပြန်နည်း တွင် စမ်းသပ်ခဲ့သည်။

စမ်းသပ်ဖိုင်များကို ရယူပါ

ဤစမ်းသပ်မှုမှ အရာအားလုံးကို လွတ်လပ်စွာ ပြန်လည်အသုံးပြုနိုင်ပါသည်-

  • sample-source.tex- အင်္ဂလိပ်ဘာသာ နမူနာ ၉၈ လိုင်း၊
  • check_latex_translation.py- ဖွဲ့စည်းပုံစစ်ဆေးစနစ် (Python စံစာကြည့်တိုက်သာ အသုံးပြုသည်)၊
  • compile_check.py- ပြန်လာသော ဖိုင်တစ်ခုစီကို တရုတ်ဘာသာ ဆက်တင်ဖြင့် စုစည်းပြီး မဖြေရှင်းရသေးသော ရည်ညွှန်းချက်များ၊ မဖြေရှင်းရသေးသော ကိုးကားချက်များနှင့် ပျောက်ဆုံးနေသော ဂလစ်ဖ်များကို ရေတွက်သည် (Tectonic နှင့် pdftotext လိုအပ်သည်)၊
  • run_llm_latex_test.py- OpenAI နှင့် ကိုက်ညီသော ဒေသတွင်း ဆာဗာများအတွက် အခြေအနေသုံးမျိုးဖြင့် စမ်းသပ်ခြင်း၊
  • outputs ဖိုလ်ဒါ အတွင်းရှိ ရလဒ်ကိုးခုနှင့်အတူ check-results.txt၊ compile-results.txt နှင့် results.csv တို့ဖြစ်သည်။

ဆက်စပ် ဆောင်းပါးများ