docs: update documentation for chart recognition enablement
Updates all project documentation to reflect that chart recognition is now fully enabled with PaddlePaddle 3.2.1+. Changes: - README.md: Remove Known Limitations section about chart recognition, update tech stack and prerequisites to include PaddlePaddle 3.2.1+, add WSL CUDA configuration notes - openspec/project.md: Add comprehensive chart recognition feature descriptions, update system requirements for GPU/CUDA support - openspec/changes/add-gpu-acceleration-support/tasks.md: Mark task 5.4 as completed with resolution details - openspec/changes/add-gpu-acceleration-support/proposal.md: Update Known Issues section to show chart recognition is now resolved - setup_dev_env.sh: Upgrade PaddlePaddle from 3.0.0 to 3.2.1+, add WSL CUDA library path configuration, add chart recognition API verification All documentation now accurately reflects: ✅ Chart recognition fully enabled ✅ PaddlePaddle 3.2.1+ with fused_rms_norm_ext API ✅ WSL CUDA path auto-configuration ✅ Comprehensive PP-StructureV3 capabilities 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -122,39 +122,39 @@ detect_gpu() {
|
||||
|
||||
if [ "$CUDA_MAJOR" -ge 13 ]; then
|
||||
echo "將安裝 PaddlePaddle GPU 版本 (CUDA 13.x)"
|
||||
echo "使用穩定版本 3.0.0 (兼容 CUDA 12.6+)"
|
||||
echo "使用版本 3.2.1+ (兼容 CUDA 12.6+, 支援圖表識別)"
|
||||
USE_GPU=true
|
||||
PADDLE_PACKAGE="paddlepaddle-gpu==3.0.0"
|
||||
PADDLE_PACKAGE="paddlepaddle-gpu>=3.2.1"
|
||||
PADDLE_INDEX="https://www.paddlepaddle.org.cn/packages/stable/cu126/"
|
||||
elif [ "$CUDA_MAJOR" -eq 12 ]; then
|
||||
echo "將安裝 PaddlePaddle GPU 版本 (CUDA 12.x)"
|
||||
echo "使用穩定版本 3.0.0 (兼容 CUDA 12.3+)"
|
||||
echo "使用版本 3.2.1+ (兼容 CUDA 12.3+, 支援圖表識別)"
|
||||
USE_GPU=true
|
||||
PADDLE_PACKAGE="paddlepaddle-gpu==3.0.0"
|
||||
PADDLE_PACKAGE="paddlepaddle-gpu>=3.2.1"
|
||||
PADDLE_INDEX="https://www.paddlepaddle.org.cn/packages/stable/cu123/"
|
||||
elif [ "$CUDA_MAJOR" -eq 11 ]; then
|
||||
echo "將安裝 PaddlePaddle GPU 版本 (CUDA 11.x)"
|
||||
echo "使用穩定版本 3.0.0 (兼容 CUDA 11.8+)"
|
||||
echo "使用版本 3.2.1+ (兼容 CUDA 11.8+, 支援圖表識別)"
|
||||
USE_GPU=true
|
||||
PADDLE_PACKAGE="paddlepaddle-gpu==3.0.0"
|
||||
PADDLE_PACKAGE="paddlepaddle-gpu>=3.2.1"
|
||||
PADDLE_INDEX="https://www.paddlepaddle.org.cn/packages/stable/cu118/"
|
||||
else
|
||||
echo -e "${YELLOW}⚠ CUDA 版本不支援 ($CUDA_VERSION)${NC}"
|
||||
echo "將安裝 CPU 版本"
|
||||
USE_GPU=false
|
||||
PADDLE_PACKAGE="paddlepaddle"
|
||||
PADDLE_PACKAGE="paddlepaddle>=3.2.1"
|
||||
fi
|
||||
else
|
||||
echo -e "${YELLOW}⚠ 無法獲取 CUDA 版本${NC}"
|
||||
echo "將安裝 CPU 版本"
|
||||
USE_GPU=false
|
||||
PADDLE_PACKAGE="paddlepaddle"
|
||||
PADDLE_PACKAGE="paddlepaddle>=3.2.1"
|
||||
fi
|
||||
else
|
||||
echo -e "${YELLOW}ℹ 未偵測到 NVIDIA GPU 或 nvidia-smi${NC}"
|
||||
echo "將安裝 CPU 版本的 PaddlePaddle"
|
||||
USE_GPU=false
|
||||
PADDLE_PACKAGE="paddlepaddle"
|
||||
PADDLE_PACKAGE="paddlepaddle>=3.2.1"
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -179,7 +179,40 @@ if [ "$USE_GPU" = true ]; then
|
||||
fi
|
||||
else
|
||||
echo "安裝 CPU 版本..."
|
||||
pip install paddlepaddle
|
||||
pip install 'paddlepaddle>=3.2.1'
|
||||
fi
|
||||
|
||||
# WSL CUDA 路徑配置 (針對 WSL GPU 用戶)
|
||||
if [ "$USE_GPU" = true ]; then
|
||||
echo ""
|
||||
echo -e "${YELLOW}配置 WSL CUDA 庫路徑...${NC}"
|
||||
|
||||
# 檢查是否在 WSL 環境中
|
||||
if grep -qi microsoft /proc/version; then
|
||||
echo "偵測到 WSL 環境,配置 CUDA 庫路徑..."
|
||||
|
||||
# 檢查 CUDA 庫是否存在於 WSL 路徑
|
||||
if [ -d "/usr/lib/wsl/lib" ]; then
|
||||
# 檢查 ~/.bashrc 中是否已包含此配置
|
||||
if ! grep -q "export LD_LIBRARY_PATH=/usr/lib/wsl/lib" ~/.bashrc; then
|
||||
echo "" >> ~/.bashrc
|
||||
echo "# WSL CUDA Libraries Path for PaddlePaddle GPU support (Added by Tool_OCR setup)" >> ~/.bashrc
|
||||
echo "export LD_LIBRARY_PATH=/usr/lib/wsl/lib:\$LD_LIBRARY_PATH" >> ~/.bashrc
|
||||
echo "✓ 已將 WSL CUDA 路徑添加到 ~/.bashrc"
|
||||
else
|
||||
echo "✓ WSL CUDA 路徑已存在於 ~/.bashrc"
|
||||
fi
|
||||
|
||||
# 立即應用到當前 session
|
||||
export LD_LIBRARY_PATH=/usr/lib/wsl/lib:$LD_LIBRARY_PATH
|
||||
echo "✓ 已應用 CUDA 路徑到當前環境"
|
||||
else
|
||||
echo -e "${YELLOW}⚠ 未找到 /usr/lib/wsl/lib 目錄${NC}"
|
||||
echo "請確認 NVIDIA CUDA 驅動已安裝於 WSL"
|
||||
fi
|
||||
else
|
||||
echo "非 WSL 環境,跳過 WSL CUDA 路徑配置"
|
||||
fi
|
||||
fi
|
||||
|
||||
# 安裝其他依賴(跳過 requirements.txt 中的 paddlepaddle)
|
||||
@@ -217,6 +250,26 @@ except Exception as e:
|
||||
print('ℹ 將使用 CPU 模式')
|
||||
" || echo "⚠ PaddlePaddle 驗證失敗,但可繼續使用"
|
||||
|
||||
# 驗證圖表識別 API 可用性
|
||||
echo ""
|
||||
echo -e "${YELLOW}驗證圖表識別 API...${NC}"
|
||||
python -c "
|
||||
import paddle.incubate.nn.functional as F
|
||||
|
||||
# 檢查 API 可用性
|
||||
has_base = hasattr(F, 'fused_rms_norm')
|
||||
has_ext = hasattr(F, 'fused_rms_norm_ext')
|
||||
|
||||
print('📊 圖表識別 API 檢查:')
|
||||
print(f' - fused_rms_norm: {'✅ 可用' if has_base else '❌ 不可用'}')
|
||||
print(f' - fused_rms_norm_ext: {'✅ 可用' if has_ext else '❌ 不可用'}')
|
||||
|
||||
if has_ext:
|
||||
print('🎉 圖表識別功能: ✅ 可啟用')
|
||||
else:
|
||||
print('⚠️ 圖表識別功能: ❌ 不可用 (需要 PaddlePaddle 3.2.0+)')
|
||||
" || echo "⚠ 圖表識別 API 驗證失敗"
|
||||
|
||||
echo ""
|
||||
echo -e "${YELLOW}[8/9] 安裝前端依賴...${NC}"
|
||||
cd frontend
|
||||
@@ -251,10 +304,15 @@ echo ""
|
||||
echo "系統配置:"
|
||||
if [ "$USE_GPU" = true ]; then
|
||||
echo -e " GPU 加速: ${GREEN}已啟用${NC}"
|
||||
echo " PaddlePaddle: GPU 版本"
|
||||
echo " PaddlePaddle: GPU 版本 (3.2.1+)"
|
||||
echo -e " 圖表識別: ${GREEN}已啟用${NC}"
|
||||
if grep -qi microsoft /proc/version; then
|
||||
echo " WSL CUDA 路徑: 已配置於 ~/.bashrc"
|
||||
fi
|
||||
else
|
||||
echo -e " GPU 加速: ${YELLOW}未啟用 (CPU 模式)${NC}"
|
||||
echo " PaddlePaddle: CPU 版本"
|
||||
echo " PaddlePaddle: CPU 版本 (3.2.1+)"
|
||||
echo -e " 圖表識別: ${GREEN}已啟用${NC} (CPU 模式)"
|
||||
fi
|
||||
echo ""
|
||||
echo "下一步操作:"
|
||||
@@ -276,3 +334,7 @@ echo " 前端: http://localhost:5173"
|
||||
echo " API文檔: http://localhost:8000/docs"
|
||||
echo " 健康檢查: http://localhost:8000/health"
|
||||
echo ""
|
||||
if [ "$USE_GPU" = true ] && grep -qi microsoft /proc/version; then
|
||||
echo "注意: WSL GPU 用戶需要重新啟動終端或執行 'source ~/.bashrc' 以應用 CUDA 路徑配置"
|
||||
echo ""
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user