funstory-ai/BabelDOC

Yet Another Document Translator

BabelDOC – 이중 언어 출력을 통한 PDF 과학 논문 번역

무엇인가요 – BabelDOC은 Python 라이브러리/CLI로, 특히 과학 논문을 포함한 PDF 문서를 원본 언어에서 대상 언어로 번역하고, 원문과 번역문을 옆으로 배치하거나 번갈아 배치한 이중 언어 PDF를 생성하는 도구입니다. LLM 기반 서비스(OpenAI 호환 모델, 예: gpt-4o-mini, glm-4-flash, deepseek-chat 등)를 활용하여 번역을 수행하며, 레이아웃, 수식, 표, 폰트를 유지하기 위한 풍부한 PDF 전처리 옵션을 제공합니다.

주요 기능

  • 명령줄 인터페이스 (babeldoc)와 Python API를 통해 프로그래밍 방식으로 사용 가능.
  • 주로 영어 → 중국어를 지원하며, 기본적인 영어 → 영어 번역도 가능.
  • 이중 언어 PDF 생성 – 원문과 번역 페이지를 옆으로 배치, 번갈아 배치, 또는 별도의 단일 언어 파일로 출력 가능.
  • 세밀한 PDF 처리: 페이지 선택, 줄 나누기, OCR 대체 방법, 수식 탐지, 표 번역, 폰트 오버라이드, 워터마크 제어, 문제 있는 PDF에 대한 호환성 조정.
  • 용어집 삽입 – CSV 형식의 용어집을 로드하여 도메인 전문 용어를 LLM 프롬프트에 강제로 포함.
  • 오프라인 자산 – 필요한 폰트와 모델을 하나의 zip 파일로 패키징하여 공기 격리 환경에서 배포 가능.
  • 레이트 제한 및 병렬 처리 – QPS 제한 및 사용자 정의 워커 풀 지원.
  • 자체 배포uv 또는 가상 환경을 통해 로컬에서 실행하거나, 호스팅된 베타 서비스인 Immersive Translate – BabelDOC (월 1,000페이지 무료 할당량)를 사용 가능.

일반적인 워크플로우

# 도구 설치 (uv 및 Python 3.12 필요)
uv tool install --python 3.12 BabelDOC

# OpenAI 호환 모델을 사용하여 하나 이상의 PDF 번역
babeldoc \
  --openai \
  --openai-model "gpt-4o-mini" \
  --openai-base-url "https://api.openai.com/v1" \
  --openai-api-key "YOUR_KEY" \
  --files paper.pdf

옵션을 통해 원본/대상 언어(--lang-in, --lang-out) 변경, 페이지 선택(--pages), OCR 대체 기능 활성화, 워터마크 제어, 용어집 제공(--glossary-files) 등 다양한 설정이 가능합니다.

설치 방법

  • 추천: uv 사용 (uv tool install --python 3.12 BabelDOC).
  • 대안: 리포지토리 복제 후 uv run babeldoc … 실행.
  • PyPI에 게시됨 (pip install BabelDOC도 가능하지만, README는 최적의 경험을 위해 uv를 권장).

적합한 사용 사례

  • AI 기반 번역: 전통적인 MT 엔진이 아닌 LLM이 주요 처리를 담당.
  • 문서 처리 파이프라인: 레이아웃 분석, 선택적 OCR, LLM 프롬프팅을 하나의 엔드투엔드 도구로 통합.
  • 임베딩 가능: 다른 Python 프로그램에서 호출하거나, 참조 관리자 플러그인(예: Zotero용 immersive-translate/zotero-immersivetranslate 또는 guaguastandup/zotero-pdf2zh)에 통합 가능.

상태 및 커뮤니티

  • 베타 온라인 서비스 제공 중. 무료 트라이얼로 월 1,000페이지까지 가능.
  • 오픈소스, MIT 스타일 라이선스 (LICENSE 참조).
  • 기여 환영. README에 채용 페이지 링크 포함.

유용한 링크


위 정보는 리포지토리의 README에서 직접 인용되었으며, 추가 기능은 추론되지 않았습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트