고급 옵션
고급 옵션 > 고급 옵션 (현재)
목차
- 명령줄 인수
- 속도 제한 구성 가이드
- 부분 번역
- 원본 및 대상 언어 지정
- 예외와 함께 번역하기
- 사용자 지정 프롬프트
- 사용자 지정 구성
- Skip clean
- 번역 캐시
- 공개 서비스로 배포하기
- 인증 및 환영 페이지
- 용어집 지원
명령줄 인수
현재 작업 디렉토리에서 번역된 문서 example-mono.pdf 와 이중 언어 문서 example-dual.pdf 를 생성하려면 명령줄에서 번역 명령을 실행하세요. 기본 번역 서비스로 Google 을 사용합니다. 지원되는 더 많은 번역 서비스는 여기 에서 확인할 수 있습니다.
다음 표에서는 참조를 위해 모든 고급 옵션을 나열합니다:
인수
| 옵션 | 기능 | 예시 |
|---|---|---|
input-files | 처리할 입력 PDF 파일 | pdf2zh_next example.pdf |
--output | 파일을 위한 출력 디렉토리 | pdf2zh_next example.pdf --output /outputpath |
--<Services> | 특정 서비스 를 사용하여 번역 | pdf2zh_next example.pdf --openaipdf2zh_next example.pdf --deepseek |
--help, -h | 도움말 메시지를 표시하고 종료 | pdf2zh_next -h |
--config-file | 구성 파일 경로 | pdf2zh_next --config-file /path/to/config/config.toml |
--report-interval | 진행 상황 보고 간격 (초 단위) | pdf2zh_next example.pdf --report-interval 5 |
--debug | 디버그 로깅 레벨 사용 | pdf2zh_next example.pdf --debug |
--gui | GUI 와 상호작용 | pdf2zh_next --gui |
--warmup | 필요한 자산만 다운로드하고 확인한 후 종료 | pdf2zh_next example.pdf --warmup |
--generate-offline-assets | 지정된 디렉토리에 오프라인 에셋 패키지 생성 | pdf2zh_next example.pdf --generate-offline-assets /path |
--restore-offline-assets | 지정된 디렉토리에서 오프라인 에셋 패키지 복원 | pdf2zh_next example.pdf --restore-offline-assets /path |
--version | 버전을 표시한 후 종료 | pdf2zh_next --version |
--pages | 부분 문서 번역 | pdf2zh_next example.pdf --pages 1,2,1-,-3,3-5 |
--lang-in | 원본 언어 코드 | pdf2zh_next example.pdf --lang-in en |
--lang-out | 대상 언어 코드 | pdf2zh_next example.pdf --lang-out zh-CN |
--min-text-length | 번역할 최소 텍스트 길이 | pdf2zh_next example.pdf --min-text-length 5 |
--rpc-doclayout | 문서 레이아웃 분석을 위한 RPC 서비스 호스트 주소 | pdf2zh_next example.pdf --rpc-doclayout http://127.0.0.1:8000 |
--qps | 번역 서비스의 QPS 제한 | pdf2zh_next example.pdf --qps 200 |
--ignore-cache | 번역 캐시 무시 | pdf2zh_next example.pdf --ignore-cache |
--custom-system-prompt | 번역을 위한 사용자 지정 시스템 프롬프트. Qwen 3 에서 /no_think 에 사용됨 | pdf2zh_next example.pdf --custom-system-prompt "/no_think You are a professional, authentic machine translation engine" |
--glossaries | 용어집 파일 목록. | pdf2zh_next example.pdf --glossaries "glossary1.csv,glossary2.csv,glossary3.csv" |
--save-auto-extracted-glossary | 자동으로 추출된 용어집 저장 | pdf2zh_next example.pdf --save-auto-extracted-glossary |
--pool-max-workers | 번역 풀의 최대 작업자 수. 설정하지 않으면 qps 를 작업자 수로 사용합니다 | pdf2zh_next example.pdf --pool-max-workers 100 |
--term-qps | 용어 추출 번역 서비스에 대한 QPS 제한. 설정하지 않으면 qps 를 따릅니다. | pdf2zh_next example.pdf --term-qps 20 |
--term-pool-max-workers | 용어 추출 번역 풀의 최대 작업자 수. 설정되지 않았거나 0 인 경우 pool_max_workers 를 따릅니다. | pdf2zh_next example.pdf --term-pool-max-workers 40 |
--no-auto-extract-glossary | 자동 용어집 추출 비활성화 | pdf2zh_next example.pdf --no-auto-extract-glossary |
--primary-font-family | 번역된 텍스트의 기본 글꼴 패밀리를 재정의합니다. 선택지: 'serif'는 세리프 글꼴, 'sans-serif'는 산세리프 글꼴, 'script'는 스크립트/이탤릭 글꼴에 사용됩니다. 지정하지 않으면 원본 텍스트 속성을 기반으로 자동 글꼴 선택을 사용합니다. | pdf2zh_next example.pdf --primary-font-family serif |
--no-dual | 이중 언어 PDF 파일을 출력하지 않음 | pdf2zh_next example.pdf --no-dual |
--no-mono | 단일 언어 PDF 파일을 출력하지 않음 | pdf2zh_next example.pdf --no-mono |
--formular-font-pattern | 수식 텍스트를 식별하기 위한 글꼴 패턴 | pdf2zh_next example.pdf --formular-font-pattern "(MS.*)" |
--formular-char-pattern | 수식 텍스트를 식별하기 위한 문자 패턴 | pdf2zh_next example.pdf --formular-char-pattern "(MS.*)" |
--split-short-lines | 짧은 줄을 강제로 다른 단락으로 분할 | pdf2zh_next example.pdf --split-short-lines |
--short-line-split-factor | 짧은 줄 분할 임계값 계수 | pdf2zh_next example.pdf --short-line-split-factor 1.2 |
--skip-clean | PDF 정리 단계 건너뛰기 | pdf2zh_next example.pdf --skip-clean |
--dual-translate-first | 이중 PDF 모드에서 번역된 페이지를 먼저 배치 | pdf2zh_next example.pdf --dual-translate-first |
--disable-rich-text-translate | 리치 텍스트 번역 비활성화 | pdf2zh_next example.pdf --disable-rich-text-translate |
--enhance-compatibility | 모든 호환성 향상 옵션 활성화 | pdf2zh_next example.pdf --enhance-compatibility |
--use-alternating-pages-dual | 듀얼 PDF 에 대해 교차 페이지 모드 사용 | pdf2zh_next example.pdf --use-alternating-pages-dual |
--watermark-output-mode | PDF 파일의 워터마크 출력 모드 | pdf2zh_next example.pdf --watermark-output-mode no_watermark |
--max-pages-per-part | 분할 번역 시 파트당 최대 페이지 수 | pdf2zh_next example.pdf --max-pages-per-part 50 |
--translate-table-text | 테이블 텍스트 번역 (실험적 기능) | pdf2zh_next example.pdf --translate-table-text |
--skip-scanned-detection | 스캔된 문서 감지 건너뛰기 | pdf2zh_next example.pdf --skip-scanned-detection |
--ocr-workaround | 번역된 텍스트를 강제로 검은색으로 설정하고 흰색 배경 추가 | pdf2zh_next example.pdf --ocr-workaround |
--auto-enable-ocr-workaround | 자동 OCR 해결책을 활성화합니다. 문서가 심하게 스캔된 것으로 감지되면 OCR 처리를 활성화하고 추가 스캔 감지를 건너뛰려고 시도합니다. 자세한 내용은 문서를 참조하세요. (기본값: False) | pdf2zh_next example.pdf --auto-enable-ocr-workaround |
--only-include-translated-page | 출력 PDF 에 번역된 페이지만 포함합니다. --pages 가 사용된 경우에만 유효합니다. | pdf2zh_next example.pdf --pages 1-5 --only-include-translated-page |
--no-merge-alternating-line-numbers | 줄 번호가 있는 문서에서 교대로 나타나는 줄 번호와 텍스트 단락의 병합을 비활성화합니다 | pdf2zh_next example.pdf --no-merge-alternating-line-numbers |
--no-remove-non-formula-lines | 단락 영역 내 비수식 라인 제거 비활성화 | pdf2zh_next example.pdf --no-remove-non-formula-lines |
--non-formula-line-iou-threshold | 수식이 아닌 줄을 식별하기 위한 IoU 임계값 설정 (0.0-1.0) | pdf2zh_next example.pdf --non-formula-line-iou-threshold 0.85 |
--figure-table-protection-threshold | 그림과 표에 대한 보호 임계값 설정 (0.0-1.0). 그림/표 내부의 줄은 처리되지 않음 | pdf2zh_next example.pdf --figure-table-protection-threshold 0.95 |
--skip-formula-offset-calculation | 처리 중 수식 오프셋 계산 건너뛰기 | pdf2zh_next example.pdf --skip-formula-offset-calculation |
GUI Args
| 옵션 | 기능 | 예시 |
|---|---|---|
--share | 공유 모드 활성화 | pdf2zh_next --gui --share |
--auth-file | 인증 파일 경로 | pdf2zh_next --gui --auth-file /path |
--welcome-page | 환영 페이지 html 파일 경로 | pdf2zh_next --gui --welcome-page /path |
--enabled-services | 활성화된 번역 서비스 | pdf2zh_next --gui --enabled-services "Bing,OpenAI" |
--disable-gui-sensitive-input | GUI 민감 입력 비활성화 | pdf2zh_next --gui --disable-gui-sensitive-input |
--disable-config-auto-save | 자동 구성 저장 비활성화 | pdf2zh_next --gui --disable-config-auto-save |
--server-port | WebUI 포트 | pdf2zh_next --gui --server-port 7860 |
--ui-lang | UI 언어 | pdf2zh_next --gui --ui-lang zh |
속도 제한 구성 가이드
번역 서비스를 사용할 때 적절한 속도 제한 구성은 API 오류를 방지하고 성능을 최적화하는 데 중요합니다. 이 가이드는 다양한 업스트림 서비스 제한에 따라 --qps 및 --pool-max-worker 매개변수를 구성하는 방법을 설명합니다.
Tip
pool_size 가 1000 을 초과하지 않는 것이 권장됩니다. 다음 방법으로 계산된 pool_size 가 1000 을 초과하는 경우 1000 을 사용하십시오.
RPM(분당 요청 수) 속도 제한
업스트림 서비스에 RPM 제한이 있는 경우 다음 계산을 사용하세요:
계산 공식: - qps = floor(rpm / 60) - pool_size = qps * 10
Note
10 이라는 계수는 대부분의 시나리오에서 일반적으로 잘 작동하는 경험적 계수입니다.
예시: 번역 서비스의 제한이 600 RPM 인 경우: - qps = floor(600 / 60) = 10 - pool_size = 10 * 10 = 100
동시 연결 제한
업스트림 서비스에 동시 연결 제한 (예: GLM 공식 서비스) 이 있는 경우 이 방법을 사용하세요:
계산 공식: - pool_size = max(floor(0.9 * official_concurrent_limit), official_concurrent_limit - 20) - qps = pool_size
예시: 번역 서비스가 50 개의 동시 연결을 허용하는 경우: - pool_size = max(floor(0.9 * 50), 50 - 20) = max(45, 30) = 45 - qps = 45
모범 사례
Tip
- 항상 보수적인 값으로 시작하고 필요에 따라 점진적으로 증가시키세요
- 서비스의 응답 시간과 오류율을 모니터링하세요
- 다른 서비스는 다른 최적화 전략이 필요할 수 있습니다
- 이러한 매개변수를 설정할 때 특정 사용 사례와 문서 크기를 고려하세요
부분 번역
--pages 매개변수를 사용하여 문서의 일부를 번역합니다.
- 페이지 번호가 연속적인 경우 다음과 같이 작성할 수 있습니다:
Tip
25- 은 25 페이지 이후의 모든 페이지를 포함합니다. 문서가 100 페이지인 경우, 이는 25-100 과 동일합니다.
마찬가지로, -25 는 25 페이지 이전의 모든 페이지를 포함하며, 이는 1-25 와 동일합니다.
- 페이지가 연속적이지 않은 경우 쉼표
,를 사용하여 구분할 수 있습니다.
예를 들어, 첫 번째와 세 번째 페이지를 번역하려면 다음 명령을 사용할 수 있습니다:
- 페이지에 연속된 범위와 비연속된 범위가 모두 포함된 경우, 다음과 같이 쉼표로 연결할 수도 있습니다:
이 명령은 첫 번째 페이지, 세 번째 페이지, 10-20 페이지, 그리고 25 페이지부터 끝까지의 모든 페이지를 번역합니다.
원본 및 대상 언어 지정
예외와 함께 번역하기
보존해야 할 수식 글꼴과 문자를 지정하려면 정규식을 사용하세요:
pdf2zh_next example.pdf --formular-font-pattern "(CM[^RT].*|MS.*|.*Ital)" --formular-char-pattern "(\(|\||\)|\+|=|\d|[\u0080-\ufaff])"
기본적으로 Latex, Mono, Code, Italic, Symbol 및 Math 글꼴을 보존합니다:
pdf2zh_next example.pdf --formular-font-pattern "(CM[^R]|MS.M|XY|MT|BL|RM|EU|LA|RS|LINE|LCIRCLE|TeX-|rsfs|txsy|wasy|stmary|.*Mono|.*Code|.*Ital|.*Sym|.*Math)"
사용자 지정 프롬프트
번역을 위한 사용자 지정 시스템 프롬프트. 주로 프롬프트에 Qwen 3 의 '/no_think' 지시어를 추가하는 데 사용됩니다.
pdf2zh_next example.pdf --custom-system-prompt "/no_think You are a professional and reliable machine translation engine responsible for translating the input text into zh_CN.When translating, strictly follow the instructions below to ensure translation quality and preserve all formatting, tags, and placeholders:"
사용자 지정 구성
구성 파일을 수정하고 가져오는 방법에는 여러 가지가 있습니다.
Note
구성 파일 계층 구조
동일한 매개변수를 다른 방법으로 수정할 때, 소프트웨어는 아래 우선순위에 따라 변경 사항을 적용합니다.
더 높은 순위의 수정 사항은 더 낮은 순위의 것을 덮어씁니다.
cli/gui > env > 사용자 구성 파일 > 기본 구성 파일
- 명령줄 인수를 통한 구성 수정
대부분의 경우, 원하는 설정을 명령줄 인수를 통해 직접 전달할 수 있습니다. 자세한 내용은 명령줄 인수 를 참조하세요.
예를 들어, GUI 창을 활성화하려면 다음 명령을 사용할 수 있습니다:
- 환경 변수를 통한 구성 수정
명령줄 인수에서 -- 를 PDF2ZH_ 로 바꾸고, 매개변수를 = 로 연결하며, - 를 _ 로 바꿔 환경 변수로 사용할 수 있습니다.
예를 들어, GUI 창을 활성화하려면 다음 명령을 사용할 수 있습니다:
- 사용자 지정 구성 파일
아래 명령줄 인수를 사용하여 구성 파일을 지정할 수 있습니다:
구성 파일 형식에 대해 확실하지 않은 경우, 아래에 설명된 기본 구성 파일을 참조하십시오.
- 기본 구성 파일
기본 구성 파일은 ~/.config/pdf2zh 에 위치합니다. default 디렉토리에 있는 구성 파일은 수정하지 마십시오. 이 구성 파일의 내용을 참조하여 사용자 지정 구성 파일을 사용하여 자신만의 구성 파일을 구현하는 것을 강력히 권장합니다.
Tip
- 기본적으로 pdf2zh 2.0 은 GUI 에서 번역 버튼을 클릭할 때마다 현재 구성을
~/.config/pdf2zh/config.v3.toml에 자동으로 저장합니다. 이 구성 파일은 다음 시작 시 기본적으로 로드됩니다. default디렉토리의 구성 파일은 프로그램에 의해 자동으로 생성됩니다. 수정을 위해 복사할 수 있지만 직접 수정하지 마십시오.- 구성 파일에는 "v2", "v3" 등과 같은 버전 번호가 포함될 수 있습니다. 이는 구성 파일 버전 번호이며, pdf2zh 자체의 버전 번호가 아닙니다.
Skip clean
이 매개변수가 True 로 설정되면 PDF 정리 단계가 건너뛰어져 호환성이 향상되고 일부 글꼴 처리 문제를 피할 수 있습니다.
사용법:
또는 환경 변수를 사용합니다:
Tip
--enhance-compatibility 가 활성화되면 Skip clean 이 자동으로 활성화됩니다.
번역 캐시
PDFMathTranslate 는 번역 속도를 높이고 동일한 콘텐츠에 대한 불필요한 API 호출을 방지하기 위해 번역된 텍스트를 캐시합니다. --ignore-cache 옵션을 사용하여 번역 캐시를 무시하고 강제로 재번역할 수 있습니다.
공개 서비스로 배포하기
공개 서비스에 pdf2zh GUI 를 배포할 때는 아래 설명과 같이 구성 파일을 수정해야 합니다.
Warning
이 프로젝트는 보안에 대해 전문적으로 감사받지 않았으며 보안 취약점이 포함되어 있을 수 있습니다. 공개 네트워크에 배포하기 전에 위험을 평가하고 필요한 보안 조치를 취하십시오.
Tip
- 공개적으로 배포할 때는
disable_gui_sensitive_input과disable_config_auto_save를 모두 활성화해야 합니다. - 사용 가능한 서로 다른 서비스는 영어 쉼표 , 로 구분하세요.
사용 가능한 구성은 다음과 같습니다:
[basic]
gui = true
[gui_settings]
enabled_services = "Bing,OpenAI"
disable_gui_sensitive_input = true
disable_config_auto_save = true
인증 및 환영 페이지
인증 및 환영 페이지를 사용하여 Web UI 를 사용할 사용자를 지정하고 로그인 페이지를 사용자 지정할 때:
예시 auth.txt 각 줄에는 쉼표로 구분된 사용자 이름과 비밀번호 두 요소가 포함됩니다.
example welcome.html
<!DOCTYPE html>
<html>
<head>
<title>Simple HTML</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>Welcome to my simple HTML page.</p>
</body>
</html>
Note
인증 파일이 비어 있지 않은 경우에만 환영 페이지가 작동합니다. 인증 파일이 비어 있는 경우 인증이 없습니다. :)
사용 가능한 구성은 다음과 같습니다:
[basic]
gui = true
[gui_settings]
auth_file = "/path/to/auth/file"
welcome_page = "/path/to/welcome/html/file"
용어집 지원
PDFMathTranslate 는 용어집 테이블을 지원합니다. 용어집 테이블 파일은 csv 파일이어야 합니다. 파일에는 세 개의 열이 있습니다. 다음은 데모 용어집 파일입니다:
| source | target | tgt_lng |
|---|---|---|
| AutoML | 자동 ML | ko |
| a,a | a | ko |
| " | " | ko |
CLI 사용자의 경우: 용어집에 여러 파일을 사용할 수 있습니다. 서로 다른 파일은 , 로 구분해야 합니다.
WebUI 사용자의 경우:
이제 자신의 용어집 파일을 업로드할 수 있습니다. 파일을 업로드한 후에는 해당 이름을 클릭하여 내용을 확인할 수 있으며, 내용이 아래에 표시됩니다.