@echo off REM ================================ REM CutThenThink Windows Build Script - Cloud Only Version REM ================================ REM 纯云端版本 - 无需本地 ML 库 REM 设置控制台编码为 UTF-8 chcp 65001 >nul 2>&1 cd /d "%~dp0" echo ======================================== echo CutThenThink 纯云端版本构建 echo ======================================== echo. echo 特点: echo - OCR 使用云端 API echo - AI 使用 API (OpenAI/Anthropic) echo - 无需任何本地 ML 库 echo ======================================== echo. REM Check Python echo [1/5] 检查 Python... python --version 2>nul if errorlevel 1 ( echo 错误: 未找到 Python pause exit /b 1 ) echo. echo [2/5] 检查源码大小... set SIZE=0 for /r %%A in (src\*) do ( set /a SIZE+=%%~zA ) if %SIZE% GTR 5242880 ( echo 警告: src 目录大小超过 5MB,构建的 exe 可能会很大 echo 当前大小: %SIZE% 字节 echo. ) echo. echo [3/5] 安装核心依赖... python -m pip install --user pyinstaller 2>nul python -m pip install --user "PyQt6>=6.7.0" 2>nul python -m pip install --user "SQLAlchemy>=2.0.36" 2>nul python -m pip install --user openai anthropic 2>nul python -m pip install --user requests pyyaml pillow pyperclip 2>nul echo. echo [4/5] 清理旧的构建... if exist build rmdir /s /q build if exist dist rmdir /s /q dist echo. echo [5/5] 开始构建... python -m PyInstaller ^ --noconfirm ^ --name "CutThenThink" ^ --windowed ^ --onefile ^ --add-data "src:src" ^ --hidden-import=PyQt6.QtCore ^ --hidden-import=PyQt6.QtGui ^ --hidden-import=PyQt6.QtWidgets ^ --hidden-import=sqlalchemy ^ --hidden-import=sqlalchemy.orm ^ --hidden-import=PIL ^ --hidden-import=PIL.Image ^ --hidden-import=pyperclip ^ --hidden-import=yaml ^ --hidden-import=requests ^ --hidden-import=openai ^ --hidden-import=anthropic ^ --collect-all pyqt6 ^ src/main.py if errorlevel 1 ( echo. echo ================================ echo 构建失败! echo ================================ pause exit /b 1 ) echo. echo ================================ echo 构建成功! echo ================================ echo 可执行文件: dist\CutThenThink.exe echo. echo 首次运行请配置: echo - AI API Key (OpenAI/Anthropic) echo - 云端 OCR API echo. pause