CareerNexus 职联:岗位能力图谱构建与动态演化分析平台(挑战杯 XH-202621)
- 全链路:多源JD接入/清洗交叉验证/结构化抽取(星火+离线双通道)/时序知识图谱/新岗位发现/演化分析/人岗匹配/学习路径 - WebUI 五视图:驾驶舱/图谱工作台/岗位演化/匹配(单人+批量)/学习路径 - 设置中心(config.json)/Token鉴权/SQLite状态库/语义向量通道(BGE-M3本地或联网API) - 71 个 pytest 用例;数据目录仅保留结构(.gitkeep),数据由 scripts/generate_dataset.py 复现
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
@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
|
||||
Reference in New Issue
Block a user