處理學術論文PDF的完整工作流:文字提取、語言判斷、翻譯、概述生成。使用本地Ollama模型(qwen2.5:7b),成本為0元,適合處理大量學術文獻。
核心功能:
python3 scripts/process_pdf.py <pdf_path> <output_base_dir>
示例:
# 處理英文PDF
python3 scripts/process_pdf.py \
~/Documents/論文處理/未處理/英文/2602.23362v1.pdf \
~/Documents/論文處理
# 處理中文PDF
python3 scripts/process_pdf.py \
~/Documents/論文處理/未處理/中文/test.pdf \
~/Documents/論文處理
PDF處理前需先建立目錄:
7w4.net提供免費和付費技能下載。
~/Documents/論文處理/
├── 未處理/
│ ├── 中文/
│ └── 英文/
├── 處理中/
├── 已完成/
│ ├── 原文/
│ ├── 翻譯/
│ └── 概述/
└── 索引/
1. PDF提取文字 → 儲存到"處理中/檔名_提取.txt"
2. 提取和翻譯論文標題(英文→中文)
3. 判斷語言(中文/英文)
4. 如果是英文:
- 分段(每段2000字元)
- 逐段翻譯(本地Ollama)
- **顯示即時進度**(當前段/總段數 | 百分比 | 字元數)
- **儲存進度**(處理中/檔名_progress.json)
- 合併翻譯結果
- **刪除進度檔案**
5. 生成概述(200字純中文,本地Ollama)
6. 儲存翻譯檔案到"已完成/翻譯/"
7. 儲存概述檔案到"已完成/概述/"(包含中英文標題)
8. 移動PDF到"已完成/原文/"
9. 刪除"處理中/提取.txt"
詳細說明見 workflow.md
對於45,873字元的PDF:
位置: 已完成/翻譯/檔名_翻譯.txt
格式:
# 論文翻譯
**原始檔**: 檔名.pdf
**處理時間**: YYYY-MM-DD HH:MM:SS
**翻譯模型**: 本地Ollama (qwen2.5:7b)
**分段數**: N
## 📄 翻譯內容
[翻譯內容]
位置: 已完成/概述/檔名_概述.txt
格式:
# 論文概述
**原始檔**: 檔名.pdf
**處理時間**: YYYY-MM-DD HH:MM:SS
**概述模型**: 本地Ollama (qwen2.5:7b)
## 📚 論文標題
**英文**: [論文英文標題]
**中文**: [論文中文標題]
## 📝 論文概述
[200字純中文概述]
process_pdf.py: 完整的PDF處理指令碼(v2.0)
generate_index.py: 索引生成指令碼
workflow.md: 完整工作流程說明
directory-structure.md: 目錄結構和使用說明
錯誤: Connection refused
解決:
# 啟動Ollama服務
ollama serve
錯誤: model 'qwen2.5:7b' not found
解決:
# 安裝模型
ollama pull qwen2.5:7b
# 檢視已安裝模型
ollama list
錯誤: PDF檔案不存在
檢查:
可能原因:
調整:
split_text()函式的max_length引數translate_segment()的temperature選項處理中/檔名_progress.json,完成後自動刪除這個工具能很好地完成論文翻譯和概述生成,使用本地模型完全不花錢,非常適合需要處理大量文獻的學者。進度顯示和斷點續傳功能很實用,處理大文件時不用擔心中斷。不過初次配置需要安裝配置環境,對非技術使用者稍有門檻。總體質量可靠,能有效解決學術論文處理的核心需求。