@echo off setlocal echo === Lancement automatique du serveur API LLM Lab === REM Vérifier si Ollama est en cours d'exécution echo Vérification d'Ollama... tasklist /FI "IMAGENAME eq ollama.exe" 2>NUL | find /I /N "ollama.exe" >NUL if %ERRORLEVEL% NEQ 0 ( echo Ollama n'est pas en cours d'exécution, tentative de démarrage... REM Vérifier si Ollama est installé if exist "C:\Program Files\Ollama\ollama.exe" ( echo Démarrage d'Ollama... start "" /min "C:\Program Files\Ollama\ollama.exe" echo Attente de l'initialisation d'Ollama... timeout /t 5 /nobreak >NUL ) else ( echo Impossible de trouver Ollama. Veuillez l'installer depuis https://ollama.com/download/windows echo Le serveur API va démarrer, mais les modèles pourraient ne pas être disponibles. ) ) else ( echo Ollama est déjà en cours d'exécution. ) REM Vérification si l'environnement virtuel existe if not exist "llmlab" ( echo L'environnement virtuel n'existe pas. Veuillez exécuter setup_env.bat pour le créer. exit /b 1 ) REM Activation de l'environnement virtuel call llmlab\Scripts\activate.bat REM Vérification des dépendances API pip show flask flask-cors > nul 2>&1 if ERRORLEVEL 1 ( echo Installation des dépendances manquantes... pip install flask flask-cors ) REM Affichage des informations echo. echo Serveur API en cours de démarrage sur http://localhost:8000 echo. echo Endpoints disponibles: echo - http://localhost:8000/v1/chat/completions (compatible OpenAI/Cursor) echo - http://localhost:8000/v1/models (liste des modèles) echo - http://localhost:8000/generate (API simplifiée pour Obsidian) echo - http://localhost:8000/health (statut du serveur) echo. REM Vérifier si Ollama est prêt en testant l'API echo Vérification des modèles Ollama disponibles... curl -s http://localhost:11434/api/tags > models_temp.json 2>NUL if %ERRORLEVEL% EQU 0 ( echo Ollama est prêt. Modèles disponibles: REM Utiliser findstr pour extraire les noms des modèles (version simplifiée) findstr /C:"\"name\":" models_temp.json REM Supprimer le fichier temporaire del models_temp.json ) else ( echo Ollama semble ne pas répondre. Les modèles pourraient ne pas être disponibles. ) echo. echo Appuyez sur Ctrl+C pour arrêter le serveur echo. REM Option pour exécuter en arrière-plan if "%1"=="-b" goto background if "%1"=="--background" goto background REM Lancement normal du serveur API python api_server.py goto end :background REM Lancement en arrière-plan (minimisé) start /min python api_server.py echo Serveur API démarré en arrière-plan. goto end :end REM Ce code ne sera exécuté qu'après l'arrêt du serveur echo. echo Serveur API arrêté. echo. REM Désactivation de l'environnement virtuel call llmlab\Scripts\deactivate.bat endlocal