Consigli 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 livello dei modelli linguistici di grandi dimensioni (LoRA) e QLoRA, una versione più efficiente in termini di memoria.

Suggerimenti di ottimizzazione

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

Specifica Consigliata Dettagli
Efficienza memoria GPU QLoRA QLoRA ha un picco di utilizzo della 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 regolazione.
Efficienza in termini di costi LoRA Sebbene entrambi i metodi siano relativamente economici, LoRA costa fino al 40% in meno rispetto a QLoRA.
Lunghezza massima della sequenza maggiore QLoRA Una lunghezza massima della sequenza più elevata aumenta il consumo di memoria della GPU. QLoRA utilizza meno memoria GPU, quindi può supportare sequenze di lunghezze massime più elevate.
Miglioramento della precisione Uguale Entrambi i metodi offrono miglioramenti di accuratezza simili.
Dimensione del batch superiore QLoRA QLoRA supporta dimensioni dei batch molto più elevate. Ad esempio, di seguito sono riportati alcuni suggerimenti per la dimensione del batch per l'ottimizzazione di openLLaMA-7B sulle seguenti GPU:
  • 1 porta A100 40G:
    • LoRA: si consiglia una dimensione del batch pari a 2.
    • QLoRA: si consiglia una dimensione del batch pari a 24.
  • 1 porta L4:
    • LoRA: dimensione del batch di 1 non riuscita a causa di un errore di memoria insufficiente (OOM).
    • QLoRA: si consiglia una dimensione del batch pari a 12.
  • 1 porta V100:
    • LoRA: dimensione del batch di 1 non riuscita a causa di un errore di memoria insufficiente (OOM).
    • QLoRA: si consiglia una dimensione del batch pari a 8.