Skip to content

Sviluppo

Alessio Casarotto edited this page Oct 19, 2026 · 5 revisions

Personalizzare Banana

Cosa Dove
Identità, lingua e genere di Banana costante PERSONA in llama.cpp/tools/ui/src/lib/utils/banana-memory.ts
Logica della memoria stesso file e llama.cpp/tools/ui/src/lib/stores/chat.svelte.ts
Saluto iniziale llama.cpp/tools/ui/src/lib/components/app/chat/ChatScreen/ChatScreenGreeting.svelte
Nome dell'app llama.cpp/tools/ui/src/lib/constants/app.ts
Tema, colori, sfondo llama.cpp/tools/ui/src/app.css e static/bg-ship.jpg
Logo e icone (favicon, app installabile) llama.cpp/tools/ui/src/lib/assets/logo.svg: le icone vengono rigenerate a ogni build. Copia in assets/logo.svg e assets/logo-512.png (usata da scripts/make_app.sh per Banana.app)
Parametri del server run_qwen_server.sh

Dopo ogni modifica alla UI serve ricompilare e riavviare il server. Nel app.css, per lo sfondo: non aggiungere position: relative a aside e [data-slot='input-area'], altrimenti l'immagine finisce sopra i contenuti.

Struttura della cartella

llm/
├── run_qwen_server.sh      avvia server e UI web (macOS/Linux)
├── run_qwen_server.ps1     idem per Windows
├── Banana.bat              avvio con un clic su Windows
├── servers/                servizi Python: ricerca web, archivio, azioni, bot Discord
├── scripts/                chat da terminale, generatore di Banana.app, launcher, bot
├── engine/                 chat C++ collegata a libllama (main.cpp) e codice storico (src, include, web)
├── assets/                 logo (SVG e PNG), anteprima social di GitHub e immagine originale dello sfondo
├── docs/img/               screenshot per README e wiki
├── llama.cpp/              llama.cpp completo (motore, server, UI web)
├── Qwen3-*.gguf            modelli Qwen3 (non tracciati da git)
└── Qwen2.5-Omni-3B/        modello multimodale + mmproj (non tracciato da git)

Roadmap

Completato

  • Tokenizer, matrici, forward pass e Softmax custom; CLI interattiva
  • Integrazione con llama.cpp (scripts/run_qwen.sh, engine/main.cpp), interfaccia web in router mode
  • Tre modelli selezionabili (Qwen3-1.7B, Qwen3-4B, Qwen2.5-Omni-3B), scelta automatica (Auto)
  • Memoria persistente (manuale, automatica, su file) e pannello Memoria
  • Identità di Banana (italiano, femminile), UI tradotta in italiano
  • Ricerca web con fonti, documenti locali (RAG), ricerca nelle chat passate, appunti da lezione
  • Immagini, audio e analisi video
  • Progetti con chat, istruzioni, memoria e documenti
  • Barra superiore (ruoli, comandi rapidi, stato), menu / e /help
  • Backup, esportazione chat in Markdown, avviso a fine risposta, stima del tempo
  • Temi, dimensione del testo, font; aggiornamento automatico della UI
  • App con un clic (macOS) e launcher Windows (non testato)
  • Azioni sul computer con conferma; bot Discord

Prossimi obiettivi

Priorità Obiettivo Note
Bassa Personalizzazione del modello fine-tuning leggero (LoRA) su stile e conoscenze
Bassa Benchmark e quantizzazioni confronto velocità/qualità su un Mac libero, anche col 4B
Bassa Launcher per Linux equivalente di Banana.app
Bassa Ruoli personalizzati, scorciatoie da tastiera, messaggi fissati miglioramenti della UI

Clone this wiki locally