TencentTranslator sends chunks larger than the API limit for single lines longer than 5000 chars
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 84/100
Hướng nghiên cứu
Bắt đầu trong pdf2zh/translator.py tại TencentTranslator.do_translate và logic chia đoạn hiện tại dựa trên dòng. Tái hiện vấn đề với một chuỗi một dòng dài 6000 ký tự, sau đó xác minh rằng các dòng dài được chia thành các phần không lớn hơn _MAX_CHARS ký tự, trong khi các dòng ngắn hơn vẫn được nhóm theo dòng. Hoàn thành khi mọi phần được gửi đến Tencent API đều nằm trong giới hạn.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
TencentTranslator.do_translate splits long texts into chunks of at most _MAX_CHARS = 5000 characters, but only between newlines:
for line in text.splitlines(keepends=True):
if len(current) + len(line) > self._MAX_CHARS and current:
chunks.append(current)
current = line
...
A single line longer than 5000 characters (e.g. a very long paragraph without line breaks) is never split: it accumulates into current and is sent as one oversized request, exceeding the Tencent API request-size limit (6000 chars).
Reproduction
from pdf2zh.translator import TencentTranslator
text = "a" * 6000 # one line, no newlines
chunks = TencentTranslator._split_chunks(text) # current main: no such helper yet
On current main, do_translate(text) calls _translate_chunk with the full 6000-char string.
Expected
Every chunk sent to the API is at most _MAX_CHARS characters; lines longer than the limit are split into fixed-size pieces while shorter lines are still grouped by line.
- Ngôn ngữ chính
- Python
- Star
- 37.3k
- Fork
- 3.3k
- Merge trung bình
- 11 phút
- Pull request đã merge (30 ngày)
- 1
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Không có hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của PDFMathTranslate/PDFMathTranslate
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
PDFMathTranslate/PDFMathTranslate#1199 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
PDFMathTranslate/PDFMathTranslate#1196 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
PDFMathTranslate/PDFMathTranslate#1194 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
PDFMathTranslate/PDFMathTranslate#1167 · 1 bình luận · 2 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Ali Qwen-Translation 配置错误Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
PDFMathTranslate/PDFMathTranslate#1108 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của PDFMathTranslate/PDFMathTranslate
Issue tương tự
-
[request] poppler-data/0.4.12Đang mởupstream update
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
conan-io/conan-center-index#31098 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
john-kurkowski/tldextract#382 ·
-
comp/tools duplicate P2 sweeper:risk-compatibility tool/mcp type/bug
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
NousResearch/hermes-agent#132042 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
deepset-ai/haystack#13092 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 85/100
feder-cr/invisible_playwright_mcp#1408 ·
Maintainer thường phản hồi trong vòng 1 ngày