ByteDance ha rilasciato Ouro-2.6B-Thinking, un modello Universal Transformer ricorrente, che ha presentato difficoltà nell'esecuzione dell'inference.
Architettura e Sfide
L'architettura di Ouro è inusuale: esegue tutti i 48 layer quattro volte per token, per un totale di 192 passaggi effettivi. Le implementazioni GGUF esistenti producevano risultati errati a causa di questa particolarità.
Correzioni Implementate
Sono stati corretti due bug nel file modeling_ouro.py che causavano incompatibilità con Transformers 4.55:
- Ereditarietà errata della cache, che generava un
AttributeError. - Assenza del metodo
get_mask_sizes()richiesto dacreate_causal_mask().
Performance
Dopo le correzioni, il modello è stato testato con successo. Su una NVIDIA L4, si sono ottenute prestazioni di circa 3.8 token/s con un utilizzo di 5.3 GB di VRAM (float16).
È importante notare che il modello utilizza use_cache=False, il che implica un ricalcolo completo del contesto. Il passaggio della cache KV non funziona correttamente con l'architettura UT a 4 loop.
💬 Commenti (0)
🔒 Accedi o registrati per commentare gli articoli.
Nessun commento ancora. Sii il primo a commentare!