From be5d84eb151570c5c2d0416dd15beacec2ce76e1 Mon Sep 17 00:00:00 2001 From: xunbu Date: Thu, 8 May 2025 15:12:55 +0800 Subject: [PATCH] update readme --- .idea/workspace.xml | 10 ++---- README.md | 85 ++++++++++++++++++++++++++++++++++++++------- 2 files changed, 76 insertions(+), 19 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 2b47586..024519a 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -5,12 +5,8 @@ - - - - - - + + diff --git a/README.md b/README.md index ba3b1a2..6883de7 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # FileTranslate -## 一个使用llm翻译pdf和markdown的包 +## 一个使用大预言模型(llm)翻译pdf和markdown的包 # 安装 ## 使用pip @@ -7,16 +7,77 @@ ## 使用uv `uv add filetranslate` +# 前置条件(获取大模型平台的baseurl、key、model-id) +由于需要使用大语言模型进行markdown调整与翻译,所以需要预先获取模型的baseurl、key、model-id +常见的大模型平台baseurl可见[常用baseurl](#常用baseurl) + # 使用方式 -## 翻译pdf文件 +## 使用默认参数翻译pdf ```python -import -translater = FileTranslater(base_url="https://open.bigmodel.cn/api/paas/v4", - key="969ba51b61914cc2b710d1393dca1a3c.hSuATex5IoNVZNGu", - model_id="glm-4-flashx", - chunksize=4000, - max_concurrent=40) -translater.read_markdown( - markdown_path=r"/filetranslate\output\互联网认证授权机制.md") -translater.save_as_html() -``` \ No newline at end of file +from filetranslate.translater import FileTranslater + +#不开启公式、代码识别 +FileTranslater(base_url="",key="",model_id="").translate_pdf_file("",to_lang="中文") + +#开启公式、代码识别(需要下载更多模型) +FileTranslater(base_url="",key="",model_id="").translate_pdf_file("",to_lang="中文",formula=True,code=True) +``` +> 第一次使用时需要下载模型(约1G、使用公式、代码识别需要多约0.5G),请稍作等待 +> 输出文件默认放在`./output`中 + +## 使用不同的agent分别进行文本修正和翻译 +```python +from filetranslate.translater import FileTranslater + +translater = FileTranslater() + +refine_agent=translater.create_refine_agent(baseurl="",key="",model_id="") +translate_agent=translater.create_translate_agent(baseurl="",key="",model_id="") + +translater.translate_pdf_file(pdf_path="",to_lang="中文",refine_agent=refine_agent,translate_agent=translate_agent) +``` + +## 参数说明 +### 创建FileTranslate +```python +from filetranslate.translater import FileTranslater + +translater = FileTranslater(base_url="", + key="", + model_id="",#使用的模型id + chunksize=4000,#【可选】markdown分块长度,分块越大效果越好,不建议超过4096 + max_concurrent=6#【可选】并发数,受到ai平台并发量限制 + ) +``` +### 翻译pdf文件 +```python +translater.translate_pdf_file(r"<要翻译的pdf路径>", + to_lang="中文", + formula=False,#是否启用公式识别 + code=False,#是否启用代码识别 + refine=True,#是否在翻译前先修正markdown文本 + output_format="markdown",#"markdown"与"html"两种输出格式 + output_dir="./output"#默认输出文件夹 + ) +``` + +### 翻译markdown文件 +```python +translater.translate_markdown_file(r"<要翻译的markdown路径>", + to_lang="中文", + refine=False,#【可选】是否在翻译前先修正markdown文本 + output_format="markdown",#"markdown"与"html"两种输出格式 + output_dir="./output"#默认输出文件夹 + ) +``` + + + +# 常用baseurl +| 平台名称 | baseurl | +|-----------|--------------------------------------| +| ollama | http://127.0.0.1:11434/v1 | +| lm studio | http://127.0.0.1:1234/v1 | +| openai | https://api.openai.com/v1/ | +| deepseek | https://api.deepseek.com/v1 | +| 智谱ai | https://open.bigmodel.cn/api/paas/v4 | \ No newline at end of file