@echo off chcp 936 >nul setlocal EnableDelayedExpansion title ???? Agent ?? ?? ??????(API) rem ============================================================ rem ?????????????? API??FastAPI + uvicorn??127.0.0.1:8000???? rem ????????????—±Agent Worker????????/?????????/ rem ?????Ñh???????????????????????? rem PROJ ???????????????????????????????????????? rem ???????????????.bat 8100 ?????????? 8000?? rem rem ??????????? start.ps1 ??????¡ê??? rem 1) ????????? .venv rem 2) ???? conda ???? jr_py313 rem 3) py -3.13 ????? rem 4) PATH ??? python????? 3.11+?? rem ?????? import fastapi/sqlalchemy/asyncmy/pydantic????????? rem ????????·Ú???????????????????? rem ============================================================ set "PROJ=%~dp0" set "HOST=127.0.0.1" set "PORT=%~1" if "%PORT%"=="" set "PORT=8000" set "PY=" rem ---------- 1) ????????? / conda ??????????? exe ¡¤????---------- for %%C in ( "%PROJ%.venv\Scripts\python.exe" "D:\conda\envs\jr_py313\python.exe" "%USERPROFILE%\miniconda3\envs\jr_py313\python.exe" "%USERPROFILE%\anaconda3\envs\jr_py313\python.exe" ) do ( if not defined PY ( if exist %%C ( %%C -c "import fastapi, sqlalchemy, asyncmy, pydantic" >nul 2>&1 if !errorlevel!==0 set "PY=%%~C" ) ) ) rem ---------- 2) py -3.13 ??????????????? exe ¡¤????---------- if not defined PY ( for /f "delims=" %%X in ('py -3.13 -c "import sys;print(sys.executable)" 2^>nul') do ( set "PY=%%X" ) if defined PY ( "!PY!" -c "import fastapi, sqlalchemy, asyncmy, pydantic" >nul 2>&1 if not !errorlevel!==0 set "PY=" ) ) rem ---------- 3) PATH ??? python?????????? exe ¡¤????§µ?? >=3.11??---------- if not defined PY ( for /f "delims=" %%X in ('python -c "import sys;print(sys.executable)" 2^>nul') do ( set "PY=%%X" ) if defined PY ( "!PY!" -c "import sys;v=sys.version_info;assert (v[0],v[1])>=(3,11);import fastapi, sqlalchemy, asyncmy, pydantic" >nul 2>&1 if not !errorlevel!==0 set "PY=" ) ) if not defined PY ( echo [????] ??????????§Ò?????? Python ?????? echo ??? 3.11+ ????? fastapi / sqlalchemy / asyncmy / pydantic?? echo. echo ??????????????????????????§µ??? echo py -3.13 -m venv .venv echo .venv\Scripts\python.exe -m pip install -e . echo. echo ??????? conda ???? jr_py313???????????????¦Ë?????? echo D:\conda\envs\jr_py313\python.exe echo %USERPROFILE%\miniconda3\envs\jr_py313\python.exe echo %USERPROFILE%\anaconda3\envs\jr_py313\python.exe echo. pause exit /b 1 ) if not exist "%PROJ%app\main.py" ( echo [????] ¦Ä??? app\main.py???? .bat ???????????????? echo ??? PROJ = %PROJ% echo. pause exit /b 1 ) cd /d "%PROJ%" echo ============================================================ echo ???? Agent ?? ?? ?????? echo ============================================================ echo. echo ????? : %PROJ% echo ?????? : !PY! echo ??????? : http://%HOST%:%PORT% echo ?????? : http://%HOST%:%PORT%/portal/ echo ??????? : http://%HOST%:%PORT%/health echo. echo ?????????? MySQL(127.0.0.1:3306) ??????? echo ?? Ctrl+C ???????? echo ============================================================ echo. "!PY!" -m uvicorn app.main:app --host %HOST% --port %PORT% --log-level info set "RC=%ERRORLEVEL%" echo. echo ============================================================ echo ???????????????? %RC%???? echo ============================================================ pause endlocal