Suggerimenti per LoRA e QLoRA per gli LLM

Questa pagina fornisce suggerimenti di configurazione per l'ottimizzazione di modelli linguistici di grandi dimensioni (LLM) su Vertex AI utilizzando l'adattamento a basso ranking dei modelli linguistici di grandi dimensioni (LoRA) e la sua versione più efficiente in termini di memoria, QLoRA.

Suggerimenti sull'ottimizzazione

La seguente tabella riassume i nostri suggerimenti per l'ottimizzazione degli LLM utilizzando LoRA o QLoRA:

Specifica Consigliato Dettagli
Efficienza della memoria GPU QLRA QLoRA ha un utilizzo massimo di memoria GPU inferiore di circa il 75% rispetto a LoRA.
Velocità LoRA LoRA è circa il 66% più veloce di QLoRA in termini di velocità di ottimizzazione.
Efficienza in termini di costi LoRA Sebbene entrambi i metodi siano relativamente economici, LoRA costa fino al 40% in meno rispetto a QLoRA.
Maggiore lunghezza massima della sequenza QLRA Una lunghezza massima della sequenza aumenta il consumo della memoria della GPU. QLoRA utilizza meno memoria GPU, quindi può supportare lunghezze massime delle sequenze più elevate.
Miglioramento dell'accuratezza Uguale Entrambi i metodi offrono miglioramenti simili in termini di precisione.
Maggiori dimensioni del batch QLRA QLoRA supporta dimensioni batch molto più elevate. Ad esempio, di seguito sono riportati suggerimenti sulle dimensioni del batch per l'ottimizzazione di openLLaMA-7B sulle seguenti GPU:
  • 1 A100 40G:
    • LoRA: è consigliata una dimensione del batch pari a 2.
    • QLoRA: è consigliata una dimensione del batch pari a 24.
  • 1 L4:
    • LoRA: la dimensione del batch 1 non riesce a causa di un errore di memoria insufficiente (OOM).
    • QLoRA: si consiglia una dimensione del batch pari a 12.
  • 1 V100:
    • LoRA: la dimensione del batch 1 non riesce a causa di un errore di memoria insufficiente (OOM).
    • QLoRA: è consigliata una dimensione del batch pari a 8.