L'interfaccia a riga di comando (CLI) ti consente di testare immediatamente i modelli, senza bisogno di codice.
Piattaforme supportate:
- Linux
- macOS
- Windows
- Raspberry Pi
Installazione
Metodo 1: uvx (consigliato per test rapidi)
Esegui litert-lm immediatamente senza installarlo in modo permanente. Richiede
uv.
Puoi aggiungere il prefisso
uvx a qualsiasi comando litert-lm per eseguirlo on demand:
uvx litert-lm run --help
Metodo 2: uv (installazione persistente)
Installa litert-lm come programma binario a livello di sistema. Richiede uv.
uv tool install litert-lm
Metodo 3: pip
Installazione standard in un ambiente virtuale. L'utilizzo di --upgrade garantisce l'installazione dell'ultima versione anche se ne è già stata installata una precedente.
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade litert-lm
Upgrade in corso
Per eseguire l'upgrade di litert-lm all'ultima versione:
Se utilizzi uvx (metodo 1)
Non occorre alcun intervento. uvx esegue automaticamente l'ultima versione.
Se l'hai installato con uv (metodo 2)
uv tool upgrade litert-lm
Se l'hai installato con pip (metodo 3)
Attiva l'ambiente virtuale ed esegui:
pip install --upgrade litert-lm
Chat
Scarica da Hugging Face ed esegui il modello:
litert-lm run \
--from-huggingface-repo=litert-community/gemma-4-E2B-it-litert-lm \
gemma-4-E2B-it.litertlm \
--prompt="What is the capital of France?"
🔴 Novità: previsione multi-token (MTP)
La previsione multi-token (MTP) è un'ottimizzazione delle prestazioni che accelera notevolmente le velocità di decodifica. MTP è universalmente consigliato per tutte le attività sui backend GPU.
Per attivare MTP nella CLI, utilizza il flag --enable-speculative-decoding=true:
litert-lm run \
--from-huggingface-repo=litert-community/gemma-4-E2B-it-litert-lm \
gemma-4-E2B-it.litertlm \
--backend=gpu \
--enable-speculative-decoding=true \
--prompt="What is the capital of France?"
Chiamata di funzione / strumenti
Puoi eseguire gli strumenti con le preimpostazioni. Crea un file preset.py:
import datetime
import base64
def get_current_time() -> str:
"""Returns the current date and time."""
return datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
system_instruction = "You are a helpful assistant with access to tools."
tools = [get_current_time]
Esegui con la preimpostazione:
litert-lm run \
--from-huggingface-repo=litert-community/gemma-4-E2B-it-litert-lm \
gemma-4-E2B-it.litertlm \
--preset=preset.py
Esempi di prompt e output interattivo:
> what will the time be in two hours?
[tool_call] {"arguments": {}, "name": "get_current_time"}
[tool_response] {"name": "get_current_time", "response": "2026-03-25 21:54:07"}
The current time is 2026-03-25 21:54:07.
In two hours, it will be **2026-03-25 23:54:07**.
Che cosa succede?
Quando poni una domanda che richiede informazioni esterne (come l'ora attuale), il modello riconosce di dover chiamare uno strumento.
- Il modello emette
tool_call: il modello genera una richiesta JSON per chiamare la funzioneget_current_time. - La CLI esegue lo strumento: la CLI LiteRT-LM intercetta questa chiamata ed esegue la funzione Python corrispondente definita in
preset.py. - La CLI invia
tool_response: la CLI invia il risultato al modello. - Il modello genera la risposta finale: il modello utilizza la risposta dello strumento per calcolare e generare la risposta finale per l'utente.
Questo loop di "chiamata di funzione" avviene automaticamente all'interno della CLI, consentendoti di aumentare i LLM locali con le funzionalità Python senza scrivere codice di orchestrazione complesso.
Le stesse funzionalità sono disponibili dalle API Python, C++, e Kotlin.
In fase di disinstallazione
Per disinstallare litert-lm:
Se utilizzi uvx (metodo 1)
Non occorre alcun intervento. uvx viene eseguito da una cache temporanea e non viene installato in modo permanente.
Se l'hai installato con uv (metodo 2)
uv tool uninstall litert-lm
Se l'hai installato con pip (metodo 3)
pip uninstall litert-lm