Skip to content

Árboles de Conversación

Anota estructuras de conversación jerárquicas con calificación de nodos y selección de caminos.

Árboles de Conversación

El esquema de anotación de árboles permite la anotación de estructuras de conversación jerárquicas como árboles de respuesta de chatbots, sistemas de diálogo o narrativas ramificadas. Los anotadores pueden calificar nodos individuales, seleccionar caminos preferidos y comparar ramas en puntos de decisión.

Casos de Uso

  • Evaluación de chatbots - Calificar la calidad de múltiples opciones de respuesta
  • Sistemas de diálogo - Seleccionar caminos de conversación preferidos
  • Pruebas A/B - Comparar diferentes estrategias de respuesta
  • Ficción interactiva - Evaluar caminos de historia ramificados

Inicio Rápido

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

Opciones de Configuración

CampoTipoPredeterminadoDescripción
annotation_typestringRequeridoDebe ser "tree_annotation"
namestringRequeridoIdentificador único para este esquema
descriptionstringRequeridoInstrucciones mostradas a los anotadores
node_schemeobject{}Configuración del esquema de anotación para anotación por nodo
path_selection.enabledbooleanfalseHabilitar selección de caminos a través del árbol
path_selection.descriptionstring"Select the best response path"Instrucciones para la selección de caminos
branch_comparison.enabledbooleanfalseHabilitar modo de comparación de ramas

Ejemplos

Calificación de Nodos

Califica cada respuesta en el árbol de conversación:

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

Selección de Caminos

Selecciona el mejor camino a través de la conversación:

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

Calificación de Nodos Multi-Criterio

Califica nodos en múltiples dimensiones:

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"]

Modo de Comparación de Ramas

Compara ramas hermanas en puntos de decisión:

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 de Datos

Entrada

Los datos del árbol deben proporcionarse en formato JSON con una estructura jerárquica:

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 clave de datos del árbol:

yaml
item_properties:
  id_key: id
  tree_key: tree

Salida

Las anotaciones del árbol se guardan con datos a nivel de nodo y de camino:

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

Interfaz de Usuario

Visualización del Árbol

El árbol de conversación se muestra con nodos que representan mensajes/respuestas, aristas que conectan relaciones padre-hijo y puntos de ramificación donde existen múltiples respuestas.

Selección de Nodos

Haz clic en cualquier nodo para ver el contenido completo del mensaje, acceder al panel de anotación y añadir el nodo al camino seleccionado (si la selección de caminos está habilitada).

Selección de Caminos

Cuando la selección de caminos está habilitada, haz clic en los nodos para añadirlos a tu camino. El camino seleccionado se resalta y puedes usar "Limpiar Camino" para empezar de nuevo.

Mejores Prácticas

  1. Mantener los esquemas de nodo simples - Las interfaces de anotación complejas en cada nodo pueden ralentizar la anotación
  2. Proporcionar contexto - Asegúrate de que los anotadores puedan ver los mensajes padre al calificar una respuesta
  3. Usar la selección de caminos con prudencia - Funciona mejor para árboles más pequeños
  4. Entrenar a los anotadores - La navegación por árboles requiere práctica; proporciona ejemplos de entrenamiento

Lectura Adicional

Para detalles de implementación, consulta la documentación fuente.