feat: load and cache Ollama show data per model with clickable model details

- Add GET /api/v1/models/{model_name}/show endpoint (proxy to Ollama /api/show)
- Worker now fetches show data for each model during model list sync
- Persist show details in localStorage under llm_monitor_models.showByModel
- Make model cards clickable to display cached show details in a dedicated panel
- Keep UI updates incremental without full page reload
- Add tests for show endpoint and OpenAPI path
- Update README and PRD with show-flow and click-card behavior
This commit is contained in:
Luca Sacchi Ricciardi
2026-04-24 19:41:46 +02:00
parent 32b1130632
commit 57663400ce
7 changed files with 217 additions and 4 deletions
+16
View File
@@ -6,6 +6,7 @@ Una dashboard web moderna e intuitiva per monitorare e gestire i modelli LLM car
-**Dashboard intuitiva** - Visualizza in tempo reale i modelli caricati in Ollama
- 📊 **Monitoraggio modelli** - Dettagli completi di ogni modello (nome, dimensione, memoria, stato)
- 🧩 **Dettagli avanzati on click** - Clic su una card modello per visualizzare i dati Ollama `show`
- 🔌 **API REST documentata** - Documentazione interattiva con Swagger/OpenAPI
- 🎨 **UI moderna** - Interfaccia elegante realizzata con TailwindCSS
- 🐳 **Docker ready** - Container sempre acceso (until stopped)
@@ -147,6 +148,12 @@ GET /api/v1/models
GET /api/v1/models/{model_name}
```
#### Dettagli estesi da Ollama show
```bash
GET /api/v1/models/{model_name}/show
```
#### Health check API Ollama
```bash
@@ -187,10 +194,19 @@ curl http://localhost:8000/api/v1/models
# Ottenere info su un modello
curl http://localhost:8000/api/v1/models/llama2
# Ottenere dettagli estesi show
curl http://localhost:8000/api/v1/models/llama2/show
# Health check
curl http://localhost:8000/api/v1/health
```
### Comportamento dashboard
- Al refresh della lista modelli, per ogni modello viene recuperato anche il dettaglio `show`.
- I dati vengono salvati in localStorage nella chiave `llm_monitor_models` (campo `showByModel`).
- Cliccando su una card modello, la dashboard mostra i dettagli `show` senza ricaricare la pagina.
## 🐳 Docker
### Build dell'immagine