Files

102 lines
3.1 KiB
Batchfile
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@echo off
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