@echo off chcp 65001 >nul REM ============================================================ REM CareerNexus 职联 初始化脚本(Windows) REM 作用:建虚拟环境 → 装依赖 → 写离线默认配置(触发首次引导)→ 生成数据集 REM 用法:双击运行,或在 cmd 中执行 init.bat REM ============================================================ setlocal enabledelayedexpansion cd /d "%~dp0" echo ========================================== echo CareerNexus 职联 · 初始化 echo ========================================== REM ---------- 1. 检查 Python(跳过 WindowsApps 商店占位 stub) ---------- set "PY=" for %%c in (python python3 py) do ( if not defined PY ( where %%c >nul 2>nul if not errorlevel 1 ( for /f "delims=" %%p in ('where %%c 2^>nul ^| findstr /v /i "WindowsApps"') do ( if not defined PY ( for /f "tokens=2" %%v in ('"%%p" --version 2^>^&1') do ( set "PY=%%p" set "PYVER=%%v" ) ) ) ) ) ) if not defined PY ( echo [错误] 未找到可用的 Python 3.11+(商店占位 stub 不算),请安装后加入 PATH pause exit /b 1 ) echo [1/5] Python 版本: %PYVER% (%PY%) REM ---------- 2. 创建虚拟环境 ---------- if not exist ".venv\Scripts\python.exe" ( echo [2/5] 创建虚拟环境 .venv ... "%PY%" -m venv .venv if errorlevel 1 ( echo [错误] 虚拟环境创建失败 pause exit /b 1 ) ) else ( echo [2/5] 虚拟环境已存在,跳过 ) set VENV_PY=.venv\Scripts\python.exe REM ---------- 3. 安装依赖(镜像站优先,失败回退官方源) ---------- echo [3/5] 安装依赖(清华镜像站)... %VENV_PY% -m pip install -q -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple if errorlevel 1 ( echo 镜像站失败,改用官方源重试... %VENV_PY% -m pip install -q -r requirements.txt if errorlevel 1 ( echo [错误] 依赖安装失败,请检查网络 pause exit /b 1 ) ) REM ---------- 4. 写入离线默认配置(config.json) ---------- REM mode=demo 离线演示模式;guided=false 使首次启动弹出"初始设置"引导; REM 已有配置先备份为 config.json.bak if exist config.json ( echo [4/5] 检测到已有 config.json,备份为 config.json.bak copy /y config.json config.json.bak >nul ) echo [4/5] 写入离线默认配置 config.json ... ( echo { echo "mode": "demo", echo "guided": false, echo "embed_provider": "local" echo } ) > config.json REM ---------- 5. 生成自备数据集 ---------- if not exist "data\jd_raw" ( echo [5/5] 生成自备数据集(seed=2026)... %VENV_PY% scripts\generate_dataset.py if errorlevel 1 ( echo [错误] 数据集生成失败 pause exit /b 1 ) ) else ( echo [5/5] 数据集已存在,跳过(需重建请运行 %VENV_PY% scripts\generate_dataset.py) ) echo. echo ========================================== echo 初始化完成!当前为离线演示模式 echo 启动:%VENV_PY% main.py echo 首次启动会弹出"初始设置",可在其中配置 echo 星火 LLM 密钥与语义向量模型(亦可跳过) echo ========================================== pause