kone
ainovel

ainovel

용어집을 좀 더 강력하게 적용시키는 법

12/06/2025, 03:13:13
정보
8164 views · 8 likes

요즘 자가번역 트라이하시는 분이 많으신지 용어 적용에 관한 글이 종종 올라오는데


프롬프트에 넣는 용어집도 어쨋든 프롬프트의 일종이기에, 아주 짧게 끊어서 번역하는게 아닌 이상은 오류가 자주 납니다. 이게 어떻게 오류날지를 몰라서 읽기 전에 미리 처리하는것도 어렵구요.


그래서 용어집을 좀 더 강력하게 처리하는 방법을 알려드리고자 하는데, 이 방법은 자가번역을 어느정도 해보신 분들만 추천드립니다. 오류가 생길 건덕지가 꽤 많아요.



# 1. 용어집 (딕셔너리)
# 이곳에 원하시는 단어를 추가하거나 수정할 수 있습니다.
glossary = {
"哈利·波特": "해리 포터"

}

# 원본 파일 경로
input_filepath = '1.cleaned_text.txt'
# 저장할 파일 경로
output_filepath = '2.word_changed.txt'

try:
# 2. 파일 읽기
# utf-8 인코딩으로 파일을 엽니다. 중국어 파일은 보통 utf-8을 사용합니다.
with open(input_filepath, 'r', encoding='utf-8') as f:
original_text = f.read()
print("파일을 성공적으로 읽었습니다.")

modified_text = original_text

# 3. 단어 치환
# 용어집의 모든 단어에 대해 반복하면서 텍스트를 변경합니다.
for chinese, korean in glossary.items():
modified_text = modified_text.replace(chinese, korean)
print(f"'{chinese}' -> '{korean}' 변경 완료.")

# 4. 파일 저장
# 변경된 내용을 새로운 파일에 저장합니다.
with open(output_filepath, 'w', encoding='utf-8') as f:
f.write(modified_text)
print(f"번역된 내용을 '{output_filepath}' 파일에 성공적으로 저장했습니다.")

except FileNotFoundError:
print(f"오류: '{input_filepath}' 파일을 찾을 수 없습니다. 파일 경로를 확인해주세요.")
except Exception as e:
print(f"오류가 발생했습니다: {e}")


이건 제가 쓰는 용어집을 원문에 '강제 적용'하는 파이썬 코드입니다(made in 제미나이)


원리는 간단합니다.


원본(1.cleaned_text.txt)의 '哈利·波特'라는 단어를 모두 '해리 포터'로 강제 치환하는겁니다.


그래서 수정본상으론


"해리 포터?她说的是那个해리 포터吗?"


이렇게 나옵니다.


다만 이렇게 구분할 경우 오류가 많이 생깁니다.

  1. 용어집은 반드시 원문 글자 순서대로 정렬.
    예를 들어 나루토의 日向日向의 경우(사실 중국어로는 글자가 좀 다르긴 합니다만, 예시를 위해서 일본식으로 적었습니다) '휴우가 히나타'입니다.
    그런데 日向 = 휴우가(히나타)가 위에 있고, 日向日向 = 휴우가 히나타가 밑에 있다면 원본에선 日向日向 = 휴우가휴우가로 치환할겁니다. 혹은 히나타히나타가 될거구요 제가 가지고 있는 저 코드는 용어집의 위에서부터 순서대로 치환하기 때문입니다. 그러니 日向日向 = 휴우가 히나타를 위에. 그리고 日向=휴우가를 밑에. 그래야 정상적으로 치환됩니다.

  2. 이름이 원래의 본 뜻이 있을 경우
    원피스의 후지토라 잇쇼의 잇쇼는 원문으로 一笑입니다. 원래는 한번 웃는다, 냉소 이런 뜻이에요. 그런데 이걸 모두 '잇쇼'라고 번역해버릴경우, '캐릭터가 잇쇼했다' 이렇게 번역이 됩니다. 이런 단어들 전부 걸러내셔야 해요

  3. 원문이 한글자인 경우
    風. 바람풍입니다. 그런데 나루토 프롬프트를 씌우면 이건 단조의 부하 야마나카 '후우'입니다. 그렇다고 바람 풍자를 모두 후우로 바꾸면 풍둔이 후우둔이라 번역되겠죠. 바람 풍자를 쓰는 모든 단어가 전부 망가질겁니다. 이런 경우엔 프롬프트로 따로 빼놓고 한글자 단어들은 문맥에 맞게 사용해달라고 적어놓는게 속 편하실 겁니다.

  4. 이름은 모두 쪼개야 합니다.
    원피스의 '겟코 모리아'의 겟코는 月光입니다. 나루토의 겟코 일족도 같은 글자를 쓰죠. 그런데 '겟코 모리아'만 써놓고 '겟코' '모리아'를 따로 써놓지 않으면, 그냥 '겟코' 혹은 그냥'모리아'란 단어에 대해선 치환이 안된 상태로 번역을 시작할겁니다. 그러니 '겟코 모리아', '겟코', '모리아' 전부 따로따로 단어가 필요합니다. 덤으로 '月光'도 사고가 많이 나는 단어입니다. 그냥 달빛이란 단어로 많이 쓰여서요.

  5. 이 모든걸 충족하는 용어집을 만들때에 오류가 꽤 많이 납니다.
    제미나이로 용어집을 다듬는다고 가정할 때에, 용어집의 길이가 꽤 길어집니다. 같은 단어라도 몇개로 쪼개다보니, 용어 10개면 충분할게 20~30개로 늘어나거든요. 그래서 출력중에 json형식이 풀린다던가, 원본이나 단어에 매칭이 안된다던가. 간체, 번체, 구칭, 현칭, 번역본도 정발번역 기준으로 할지, 일반적으로 쓰이는 번역으로 할지 등에 대한 오류가 거의 반드시 생깁니다.


용어를 수정을 하고 번역할때 추가로 또 발생하는 일이


평소보다 오류문의 숫자가 더 많아질 겁니다.
해당 수정본은 프롬프트를 사용할 때에, 미리 한글로 되어있는 부분은 반드시 건들지 말라는 문구를 넣어야 합니다. 안그러면 우리가 작업해놓은 한글부분도 맘대로 수정하거든요. 그런데 이렇게 하면 AI가 문장을 한글을 놔두고 나머지를 어떻게 번역해야 할지 몰라서 유기시키는 문장이 나옵니다. 이걸 뽑아서 다시 번역하고 교체하는 작업을 하셔야 해요. 원래보다 좀 더 양이 많아질겁니다.



그래서 결론을 말씀드리자면, 용어집을 미리 원본에서 치환시키면 용어집을 강력하게 적용한 상태로 번역을 시작할 수 있다. 다만 이에 대한 부작용이 꽤 많으니, 초심자보단 경험이 좀 있으신 분들에게만 추천드린다. 이 정도일 것 같네요

8
4 comments
Sign in to comment
배치 번역기에도 용어치환 기능 있기는 함
12/06/25
있다 새롭게 번역한거 읽어봐야겠음
12/06/25
그냥 번역하기 전에 텍스트 원문에서 고유명사만 일괄 변환시키고 돌림
12/06/25
용어집이 오히려 자연스런 번역의 발목잡기가 될 수도 있어서, 원본에 고유명사만 용어치환하고, 용어집은 자주 뻑나는 공통한자만 사용하는 편.
Sign in to comment
복구)블루아카이브에서 살아남기求生在碧蓝档案1~6막3장
[복구]
하이바라
02/08 3673 20
[AI 번역] 『거유 교사 유염』 (豪乳老师刘艳) (1-10.95)
[야설]
greener-straper
02/08 12491 53
어떤 과학의 도시 명탐정 완결
[패러디]
kone1133
02/08 3769 48
스피드 쌀먹 공유 모음 20260208
[일반]
tassdar
02/08 6716 90
[원피스]가장 용감한 해적 사냥꾼 1~516 원피스편완 갱신
[패러디]
wer890
02/08 2661 22
패러디 소설 번역 4개 모음
[패러디]
DPTapt
02/08 4431 66
포켓몬 패러디 3개
[패러디]
brlosnb2744
02/08 2834 15
(갱신)[봇치x뱅드림]인생 리셋 봇치쨩 괴롭히기부터 시작人生重开,从欺负波奇酱开始 (본편 완결+외전)
[패러디]
hyun6871
02/08 2876 67
[헌터X헌터] 무한 성장 1-446
[패러디]
야돈
02/08 2711 25
엘프 공주 원조로 시작하는 봉사부 일상 1~743
[패러디]
라스트오리진으로 팔려간 댕라
02/08 3573 71
(갱신)[명일방주]누가 욕구불만이라는거야说谁X压抑呢!1-211
[패러디]
hyun6871
02/08 3192 61
아침 쌀!!!!!! 힘차게!!!!!
[일반]
afjtj4bgjejwnf
02/08 4300 77
[헌터X헌터]오늘 밤, 게르만이 사냥에 참여한다 全职猎人:今夜,杰尔曼加入狩猎 1-539 完
[패러디]
basileus31
02/08 3012 33
[AI번역] 고블린 중증 의존 1-438.txt
[일반]
poiuytrewq
02/07 3342 26
60년대 과부의 재혼 1-98번외포함 완결
[언정]
ks9683022
02/07 9360 16
[코난] 명탐정 곁의 소년병 1-156
[패러디]
야돈
02/07 2081 27
[원피스] 나는 원피스 세계에서 만물을 수집한다 1-67
[패러디]
야돈
02/07 3203 21
[나루토] 나뭇잎 일지 1-402
[패러디]
야돈
02/07 2431 31
[나루토] 나는 라이카게가 되고 싶다 1-70
[패러디]
야돈
02/07 2123 23
[헌터x헌터] 내 스탠드는 시간을 멈출 수 있다 1-168
[패러디]
야돈
02/07 2778 21
[포켓몬] 가디안이 천재 소녀를 리그 챔피언으로 키우는 법 1-100
[패러디]
야돈
02/07 2278 16
[포켓몬] 팔데아 전학으로 시작하는 이야기 1-100
[패러디]
야돈
02/07 1982 20
[포켓몬] 칼로스에서 시작하는 원대한 꿈 1-100
[패러디]
야돈
02/07 1968 16
[포켓몬] 포켓몬 콘테스트의 정점 1-100
[패러디]
야돈
02/07 1740 15
[포켓몬] 메타몽과 나옹의 모험 1-100
[패러디]
야돈
02/07 1722 16
[포켓몬] 시작은 철주먹 불꽃숭이 1-215
[패러디]
야돈
02/07 2301 18
[포켓몬] 사악한 전략의 트레이너 1-100
[패러디]
야돈
02/07 2018 21
[포켓몬] 포켓몬 세계의 모험가 1-100
[패러디]
야돈
02/07 2573 19
[포켓몬] 중2병 포켓몬 마스터의 꿈 1-131
[패러디]
야돈
02/07 1605 16
[포켓몬] 포켓몬 세계를 유랑하며 1-100
[패러디]
야돈
02/07 1482 17