diff --git a/docutranslate/agents/segments_agent.py b/docutranslate/agents/segments_agent.py index d21ea2e..21b754b 100644 --- a/docutranslate/agents/segments_agent.py +++ b/docutranslate/agents/segments_agent.py @@ -323,6 +323,10 @@ class SegmentsTranslateAgent(Agent): # Non-MT mode: JSON batch translation indexed_originals, chunks, merged_indices_list = segments2json_chunks(segments, chunk_size) + self.logger.info( + f"分块统计: 段数={len(segments)}, 总字符={sum(len(s) for s in segments)}, " + f"chunk_size={chunk_size}, 预计请求={len(chunks)}" + ) prompts = [generate_prompt(json.dumps(chunk, ensure_ascii=False, indent=0), self.to_lang) for chunk in chunks] translated_chunks = super().send_prompts(prompts=prompts, json_format=self.force_json, pre_send_handler=self._pre_send_handler, @@ -414,6 +418,10 @@ class SegmentsTranslateAgent(Agent): # Non-MT mode: JSON batch translation indexed_originals, chunks, merged_indices_list = await asyncio.to_thread(segments2json_chunks, segments, chunk_size) + self.logger.info( + f"分块统计: 段数={len(segments)}, 总字符={sum(len(s) for s in segments)}, " + f"chunk_size={chunk_size}, 预计请求={len(chunks)}" + ) prompts = [generate_prompt(json.dumps(chunk, ensure_ascii=False, indent=0), self.to_lang) for chunk in chunks] translated_chunks = await super().send_prompts_async(prompts=prompts, force_json=self.force_json, pre_send_handler=self._pre_send_handler, diff --git a/docutranslate/static/index.html b/docutranslate/static/index.html index 0e69fe4..cedcf41 100644 --- a/docutranslate/static/index.html +++ b/docutranslate/static/index.html @@ -1120,7 +1120,7 @@ custom_to_lang: '', thinking: 'disable', custom_prompt: '', - chunk_size: 1000, + chunk_size: 6000, concurrent: 5, temperature: 0.1, retry: 3, @@ -1187,7 +1187,7 @@ form.custom_to_lang = get('translator_custom_to_lang', ''); form.thinking = get('translator_thinking_mode', 'default'); form.custom_prompt = get('custom_prompt', ''); - form.chunk_size = getNum('chunk_size', 1000); + form.chunk_size = getNum('chunk_size', 6000); form.concurrent = getNum('concurrent', 5); form.temperature = getNum('temperature', 0.1); form.retry = getNum('retry', 3);