Skip to content

기능 제안: TRANSLATION_GUIDE 기반 번역 일관성 스크리너 #1064

@rltq

Description

@rltq

안녕하세요.

#1062 를 제출하면서 기존 머지된 PR들을 검토하다가, TRANSLATION_GUIDE에 정의된 용어가 간헐적으로 누락된 채 머지되는 경우를 확인했습니다. 이 과정에서 용어 대조를 자동화하는 간단한 스크리너를 만들어 보았습니다.

#1063 은 기존 머지된 PR들을 대상으로 스크리너를 돌려 발견한 용어 누락을 수정한 PR입니다.

동작 방식

PR의 .diff를 읽어서, 영어 원문에 등장하는 용어가 terms.kr 용어집의 권장 번역어로 한국어 텍스트에 반영되어 있는지 확인합니다. 반영되지 않은 항목을 리뷰 후보로 보고합니다. 필요 시 CI 에 통합할 수 있는 형태의 JSON을 반환하는 상태입니다.

[
  {
    "file": "beginner_source/intro.py",
    "origin": "loss",
    "expected": ["손실", "로스"],
    "review_en": "# A loss function measures how far a prediction is from truth.",
    "review_kr": "# 오차 함수는 예측이 정답에서 얼마나 떨어져 있는지를 측정합니다.",
    "hunks": ["...전체 영어 hunk...", "...전체 한국어 hunk..."]
  }
]

한계

  • 언어모델을 사용하지 않는 선에서 제작했으므로 용어 매칭만 합니다. 의역이나 문맥 판단은 하지 않습니다.
  • 리뷰어의 피로 경감을 위해 제작되었으므로 리뷰어를 대체하지 않습니다.

추가 정보

현재 번역자도 번역 결과를 스스로 검증한 후 제출해야하고, 리뷰어도 기억과 자료에 의존하여 수기로 검토해야하는 상황입니다. 위와 같은 룰베이스 툴을 PR 봇으로 등록하여 기계적 스크리닝을 진행한 다면 양측의 부담이 경감될 것으로 기대합니다.

이런 도구가 번역 워크플로우에 도움이 될지, 혹은 다른 형태가 더 적합할지 피드백을 주시면 감사하겠습니다. 워크플로우 편입이 필요하지 않다면 수기로 한번 TRANSLATION_GUIDE 에 맞춰 용어 통일 상태를 점검해보고 싶습니다.

레포: https://github.com/rltq/term-consistency

언제나 감사드립니다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions