2026-07-09 10:00:25 +02:00
|
|
|
@echo off
|
|
|
|
|
:: MiniLlama — Portable LLM Chat Launcher (Windows)
|
|
|
|
|
:: Erkennt automatisch alle .gguf-Modelle im models/-Ordner und zeigt ein Menü.
|
2026-07-10 09:42:29 +02:00
|
|
|
:: Default: LFM2-8B-A1B-UD-Q4_K_XL (Testsieger)
|
2026-07-09 10:00:25 +02:00
|
|
|
cd /d "%~dp0"
|
|
|
|
|
|
2026-07-10 09:42:29 +02:00
|
|
|
set "DEFAULT_MODEL=LFM2-8B-A1B-UD-Q4_K_XL.gguf"
|
|
|
|
|
|
2026-07-09 10:00:25 +02:00
|
|
|
echo.
|
|
|
|
|
echo =======================================
|
|
|
|
|
echo MiniLlama — Modellauswahl
|
|
|
|
|
echo =======================================
|
|
|
|
|
echo.
|
|
|
|
|
|
|
|
|
|
setlocal enabledelayedexpansion
|
|
|
|
|
|
|
|
|
|
:: --- Modelle einsammeln ---
|
|
|
|
|
set count=0
|
|
|
|
|
for %%f in (models\*.gguf) do (
|
|
|
|
|
set /a count+=1
|
|
|
|
|
set "model[!count!]=%%f"
|
|
|
|
|
set "modelname[!count!]=%%~nxf"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
if %count% equ 0 (
|
|
|
|
|
echo Fehler: Keine .gguf-Modelle im models/-Ordner gefunden.
|
|
|
|
|
echo Legen Sie GGUF-Dateien in das models/-Verzeichnis.
|
|
|
|
|
echo.
|
|
|
|
|
pause
|
|
|
|
|
exit /b 1
|
|
|
|
|
)
|
|
|
|
|
|
2026-07-10 09:42:29 +02:00
|
|
|
:: --- Menü anzeigen mit Default-Markierung ---
|
2026-07-09 10:00:25 +02:00
|
|
|
for /l %%i in (1,1,%count%) do (
|
2026-07-10 09:42:29 +02:00
|
|
|
set "marker="
|
|
|
|
|
if "!modelname[%%i]!"=="%DEFAULT_MODEL%" set "marker= ^<-- Standard"
|
|
|
|
|
echo %%i^) !modelname[%%i]!!marker!
|
2026-07-09 10:00:25 +02:00
|
|
|
)
|
|
|
|
|
echo.
|
|
|
|
|
|
2026-07-10 09:42:29 +02:00
|
|
|
:: --- Auswahl (Default bei Enter) ---
|
2026-07-09 10:00:25 +02:00
|
|
|
:choose
|
2026-07-10 09:42:29 +02:00
|
|
|
set /p sel="Auswahl [1-%count%] oder Enter=%DEFAULT_MODEL% oder q=beenden: "
|
2026-07-09 10:00:25 +02:00
|
|
|
if /i "!sel!"=="q" exit /b 0
|
|
|
|
|
|
2026-07-10 09:42:29 +02:00
|
|
|
:: Leere Eingabe = Default
|
|
|
|
|
if "!sel!"=="" (
|
|
|
|
|
for /l %%i in (1,1,%count%) do (
|
|
|
|
|
if "!modelname[%%i]!"=="%DEFAULT_MODEL%" set idx=%%i
|
|
|
|
|
)
|
|
|
|
|
if defined idx goto launch
|
|
|
|
|
echo Default-Modell %DEFAULT_MODEL% nicht gefunden, nehme erstes.
|
|
|
|
|
set idx=1
|
|
|
|
|
goto launch
|
|
|
|
|
)
|
|
|
|
|
|
2026-07-09 10:00:25 +02:00
|
|
|
:: Prüfen ob Zahl
|
|
|
|
|
set "isnum="
|
|
|
|
|
for /f "delims=0123456789" %%a in ("!sel!") do set isnum=%%a
|
|
|
|
|
if defined isnum goto badchoice
|
|
|
|
|
if !sel! lss 1 goto badchoice
|
|
|
|
|
if !sel! gtr %count% goto badchoice
|
|
|
|
|
|
|
|
|
|
set idx=!sel!
|
|
|
|
|
goto launch
|
|
|
|
|
|
|
|
|
|
:badchoice
|
|
|
|
|
echo Bitte eine Zahl zwischen 1 und %count% eingeben.
|
|
|
|
|
goto choose
|
|
|
|
|
|
|
|
|
|
:: --- Starten ---
|
|
|
|
|
:launch
|
|
|
|
|
echo.
|
|
|
|
|
echo Starte: !modelname[%idx%]!
|
|
|
|
|
echo.
|
|
|
|
|
bin\win\llama-cli.exe -m "!model[%idx%]!" -cnv
|
|
|
|
|
if errorlevel 1 (
|
|
|
|
|
echo.
|
|
|
|
|
echo Fehler beim Start. Druecken Sie eine Taste.
|
|
|
|
|
pause
|
|
|
|
|
)
|
|
|
|
|
endlocal
|