Skip to content
Questa pagina non è ancora disponibile nella tua lingua. Viene mostrata la versione in inglese.

Alberi di conversazione

Annota strutture conversazionali gerarchiche con valutazione dei nodi e selezione del percorso.

Alberi di conversazione

Lo schema di annotazione ad albero consente l'annotazione di strutture conversazionali gerarchiche come alberi di risposta di chatbot, sistemi di dialogo o narrazioni ramificate. Gli annotatori possono valutare singoli nodi, selezionare percorsi preferiti e confrontare rami nei punti di decisione.

Casi d'uso

  • Valutazione di chatbot - Valutazione della qualità di più opzioni di risposta
  • Sistemi di dialogo - Selezione dei percorsi di conversazione preferiti
  • Test A/B - Confronto di diverse strategie di risposta
  • Narrativa interattiva - Valutazione di percorsi narrativi ramificati

Avvio rapido

yaml
annotation_schemes:
  - annotation_type: tree_annotation
    name: response_quality
    description: Evaluate the conversation tree
    node_scheme:
      annotation_type: likert
      min_label: "Poor"
      max_label: "Excellent"
      size: 5
    path_selection:
      enabled: true
      description: Select the best response path through the tree

Opzioni di configurazione

CampoTipoPredefinitoDescrizione
annotation_typestringObbligatorioDeve essere "tree_annotation"
namestringObbligatorioIdentificatore univoco per questo schema
descriptionstringObbligatorioIstruzioni visualizzate agli annotatori
node_schemeobject{}Configurazione dello schema di annotazione per l'annotazione per nodo
path_selection.enabledbooleanfalseAbilita la selezione del percorso attraverso l'albero
path_selection.descriptionstring"Select the best response path"Istruzioni per la selezione del percorso
branch_comparison.enabledbooleanfalseAbilita la modalità di confronto tra rami

Esempi

Valutazione dei nodi

Valuta ogni risposta nell'albero di conversazione:

yaml
annotation_schemes:
  - annotation_type: tree_annotation
    name: response_rating
    description: Rate each response in the conversation
    node_scheme:
      annotation_type: likert
      min_label: "Very Bad"
      max_label: "Very Good"
      size: 5

Selezione del percorso

Seleziona il percorso migliore attraverso la conversazione:

yaml
annotation_schemes:
  - annotation_type: tree_annotation
    name: best_path
    description: Navigate the conversation tree
    path_selection:
      enabled: true
      description: Click on responses to build the best conversation path

Valutazione multi-criterio dei nodi

Valuta i nodi su più dimensioni:

yaml
annotation_schemes:
  - annotation_type: tree_annotation
    name: multi_criteria
    description: Evaluate each response on multiple criteria
    node_scheme:
      annotation_type: multirate
      options:
        - Relevance
        - Fluency
        - Helpfulness
      labels: ["1", "2", "3", "4", "5"]

Modalità confronto tra rami

Confronta rami fratelli nei punti di decisione:

yaml
annotation_schemes:
  - annotation_type: tree_annotation
    name: branch_compare
    description: Compare response options at each decision point
    branch_comparison:
      enabled: true
    node_scheme:
      annotation_type: radio
      labels: ["Better", "Same", "Worse"]

Formato dei dati

Input

I dati ad albero devono essere forniti in formato JSON con una struttura gerarchica:

json
{
  "id": "conv_001",
  "tree": {
    "id": "root",
    "role": "user",
    "content": "Hello, I need help with my order",
    "children": [
      {
        "id": "resp_a",
        "role": "assistant",
        "content": "I'd be happy to help! Can you provide your order number?",
        "children": [
          {
            "id": "user_2",
            "role": "user",
            "content": "It's ORDER-12345",
            "children": []
          }
        ]
      },
      {
        "id": "resp_b",
        "role": "assistant",
        "content": "Sure, what seems to be the problem?",
        "children": []
      }
    ]
  }
}

Configura la chiave dei dati ad albero:

yaml
item_properties:
  id_key: id
  tree_key: tree

Output

Le annotazioni ad albero vengono salvate con dati sia a livello di nodo che a livello di percorso:

json
{
  "response_quality": {
    "node_annotations": {
      "resp_a": {
        "rating": 4
      },
      "resp_b": {
        "rating": 2
      }
    },
    "selected_path": ["root", "resp_a", "user_2"]
  }
}

Interfaccia utente

Visualizzazione ad albero

L'albero di conversazione viene visualizzato con nodi che rappresentano messaggi/risposte, archi che collegano le relazioni genitore-figlio e punti di ramificazione dove esistono più risposte.

Selezione dei nodi

Fai clic su qualsiasi nodo per visualizzare il contenuto completo del messaggio, accedere al pannello di annotazione e aggiungere il nodo al percorso selezionato (se la selezione del percorso è abilitata).

Selezione del percorso

Quando la selezione del percorso è abilitata, fai clic sui nodi per aggiungerli al percorso. Il percorso selezionato viene evidenziato e puoi usare "Cancella percorso" per ricominciare.

Buone pratiche

  1. Mantieni gli schemi dei nodi semplici - interfacce di annotazione complesse su ogni nodo possono rallentare l'annotazione
  2. Fornisci contesto - assicurati che gli annotatori possano vedere i messaggi genitore quando valutano una risposta
  3. Usa la selezione del percorso con giudizio - funziona meglio per alberi più piccoli
  4. Addestra gli annotatori - la navigazione ad albero richiede pratica; fornisci esempi di addestramento

Ulteriori letture

Per i dettagli di implementazione, consulta la documentazione sorgente.