YOLO Vision 2026:
Torna al glossario Ultralytics

YAML

Scopri come YAML semplifica i workflow IA. Scopri come utilizzare i file YAML per configurare i dataset e addestrare i modelli Ultralytics YOLO26 per MLOps più rapidi e semplici.

YAML (YAML Ain't Markup Language) è uno standard di serializzazione dei dati leggibile dall'essere umano, ampiamente utilizzato nell'industria del software per la scrittura di file di configurazione. A differenza di linguaggi di markup più complessi, YAML dà la priorità a una formattazione pulita e alla leggibilità, rendendolo una scelta eccellente per sviluppatori e data scientist che hanno bisogno di ispezionare o modificare rapidamente i parametri. La sua struttura semplice si basa sull'indentazione anziché su parentesi o tag, il che consente agli utenti di definire strutture dati gerarchiche come liste e dizionari con un minimo disordine visivo. Nel contesto dell'intelligenza artificiale e del machine learning, YAML funge da ponte fondamentale tra l'intenzione umana e l'esecuzione della macchina, memorizzando qualsiasi cosa, dai percorsi dei dataset alle impostazioni di hyperparameter tuning, in un formato facile da controllare nelle versioni e da condividere.

Rilevanza nel Machine Learning#

Nel machine learning operations (MLOps) moderno, mantenere esperimenti riproducibili e organizzati è essenziale. I file YAML funzionano come progetti per questi esperimenti, racchiudendo tutti i dettagli di configurazione necessari in un unico documento. Framework come i modelli Ultralytics YOLO26 fanno ampio affidamento su questi file di configurazione per definire le architetture dei modelli e i protocolli di addestramento.

Quando addestri un modello di computer vision, spesso devi specificare dove si trovano i tuoi training data, quante classi stai rilevando e i nomi di tali classi. Invece di inserire questi valori direttamente negli script Python, il che può portare a codebase disordinate, separi questi dati in un file YAML. Questa separazione delle responsabilità consente ai ricercatori di scambiare dataset o regolare i learning rates senza toccare la codebase principale, facilitando un migliore experiment tracking e la collaborazione.

YAML vs. JSON vs. XML#

Sebbene YAML sia spesso confrontato con JSON (JavaScript Object Notation) e XML (eXtensible Markup Language), essi servono a scopi leggermente diversi nell'ecosistema dell'IA.

  • YAML: Ideale per i file di configurazione scritti e letti dagli esseri umani. Supporta i commenti, che sono cruciali per documentare il motivo per cui sono stati scelti specifici model weights o parametri.
  • JSON: Ideale per la comunicazione da macchina a macchina, come le API web o il salvataggio dei inference results. È più rigoroso e più difficile da modificare manualmente per gli umani a causa delle virgolette e delle parentesi necessarie, e manca del supporto per i commenti.
  • XML: Un formato più prolisso spesso utilizzato in sistemi legacy o nell'archiviazione di documenti complessi (come le Pascal VOC annotations). È generalmente considerato troppo pesante per semplici attività di configurazione nei moderni flussi di lavoro di deep learning.

Applicazioni reali nell'IA#

YAML trova il suo posto in diverse fasi critiche del ciclo di vita dello sviluppo dell'AI:

  • Configurazione del Dataset: Quando si lavora con dataset di object detection come COCO o dati personalizzati sulla Ultralytics Platform, un file YAML (data.yaml) definisce tipicamente i percorsi delle directory per i set di addestramento, validazione e test. Mappa anche gli indici delle classi (0, 1, 2) ai nomi delle classi (persona, bicicletta, auto), assicurando che il modello comprenda la struttura dei dati.
  • Pipeline CI/CD: Nei flussi di lavoro di continuous integration, strumenti come GitHub Actions utilizzano YAML per definire i passaggi di automazione. Questo potrebbe includere l'esecuzione di unit test su una nuova architettura di rete neurale o il deployment di un modello in un Docker container ogni volta che il codice viene inviato a un repository.

Esempio: Configurare un'esecuzione di addestramento YOLO#

Il seguente esempio dimostra come un tipico file YAML agisca come un'interfaccia di dataset per l'addestramento di un modello YOLO26. Lo snippet Python sottostante mostra come la libreria Ultralytics consuma questo file per avviare il processo di addestramento.

1. Il file coco8.yaml (Concetto): Questo file conterrebbe i percorsi delle immagini e una lista di nomi di classi.

path: ../datasets/coco8  # dataset root dir
train: images/train  # train images (relative to 'path')
val: images/val  # val images (relative to 'path')

# Classes
names:
  0: person
  1: bicycle
  2: car
  ...

2. Utilizzo in Python: Il codice legge la configurazione e avvia l'addestramento utilizzando i parametri specificati.

from ultralytics import YOLO

# Load the YOLO26 model (recommended for new projects)
model = YOLO("yolo26n.pt")

# Train the model using the dataset configuration defined in the YAML file
# The 'data' argument points directly to the YAML file
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)

Concetti chiave della sintassi#

Comprendere alcune regole chiave di sintassi aiuta ad evitare errori comuni, come ScannerError o ParserError, che si verificano spesso a causa di un'indentazione non corretta.

  • Indentation: YAML utilizza gli spazi bianchi (spazi, non tabulazioni) per denotare la struttura. Gli elementi nidificati devono essere indentati maggiormente rispetto ai loro elementi genitori.
  • Coppie Chiave-Valore: I dati sono memorizzati come key: value. Ad esempio, epochs: 100 imposta il numero di cicli di addestramento.
  • Liste: le sequenze sono denotate da un trattino -. Questo è utile per definire liste di passaggi di data augmentation o multiple fonti di input.
  • Commenti: Le righe che iniziano con # vengono ignorate dal parser, permettendoti di lasciare note su hyperparameters specifici direttamente nel file.

Padroneggiando YAML, i professionisti possono ottimizzare i loro flussi di lavoro di model training, ridurre gli errori di configurazione e assicurarsi che i loro progetti di IA rimangano scalabili e facili da mantenere.

Explore solutions

Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.
Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.
Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.
Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.
Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.
Scopri di più
Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.
Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.
Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.
Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.
Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.
Scopri di più
Real-time AI that works with your team

AI nella Robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica guida la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Real-time AI that works with your team

IA nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza in magazzino in tempo reale.
Scopri di più
Real-time AI that works with your team

AI nel settore Retail

Reimmagina il retail con i modelli Ultralytics YOLO. La Vision AI alimenta il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e insight più intelligenti sui clienti.
Scopri di più
Real-time AI that works with your team

IA nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La vision AI nella sanità potenzia l'imaging medico più rapido, diagnosi più intelligenti e il monitoraggio dei pazienti.
Scopri di più
Real-time AI that works with your team

IA nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI guida il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione della linea di assemblaggio.
Scopri di più
Real-time AI that works with your operation

AI nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, l'assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Real-time AI tailored to your operation

AI in Agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Potenzia il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per rese più elevate e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'AI!

Inizia il tuo viaggio con il futuro del machine learning