Saltearse al contenido

Scorer

El componente Scorer permite convertir cualquier texto o conjunto de datos en una puntuación numérica entre 0 y 100.
Solo necesitas indicar qué quieres evaluar y con qué criterios, y el componente se encarga de dividir el contenido, enviarlo a un modelo de lenguaje y devolver la puntuación (y opcionalmente una explicación de por qué se le dio esa puntuación).

¿Cómo funciona?

  1. Entrada de datos – El componente recibe el contenido que quieres evaluar (texto, documento, mensaje, etc.) y un modelo de lenguaje (LLM) que realizará el análisis.
  2. División en fragmentos – Para textos largos, el componente los corta en chunks de un tamaño configurable (por defecto 1500 caracteres) con un solapamiento opcional (150 caracteres).
  3. Evaluación con el LLM – Cada fragmento se envía al LLM junto con los criterios que has definido (por ejemplo, “Claridad del mensaje: claro = alta puntuación, poco claro = baja puntuación”).
  4. Cálculo de la puntuación – El LLM devuelve una puntuación para cada fragmento; el componente las combina para obtener una única puntuación global de 0 a 100.
  5. Justificación opcional – Si lo deseas, el LLM también puede generar una breve explicación de por qué se asignó esa puntuación.
  6. Salida – Se devuelve un objeto Data con la puntuación (y la justificación si se pidió) y un objeto Tool que permite usar el mismo proceso como una herramienta dentro de un agente.

Entradas

  • Data
    Contiene los ítems que se evaluarán. Puede ser texto plano, un documento o cualquier objeto que el LLM pueda procesar.

  • Model
    El modelo de lenguaje que realizará la evaluación. Debe ser compatible con la API de LangChain.

  • Additional Context
    Información extra o instrucciones que ayuden al LLM a comprender mejor el contexto de los ítems. Es opcional.

  • chunk overlap
    Número de caracteres que se repetirán entre fragmentos consecutivos. Ayuda a mantener la coherencia cuando el texto se corta.

  • chunk size
    Tamaño máximo de cada fragmento en caracteres. Ajusta este valor si tu texto es muy largo o si el modelo tiene límites de tokens.

  • Criteria
    Los criterios que guiarán la puntuación. Deben describirse de forma clara, por ejemplo:
    “Clarity of the message: clear=high score, unclear=low score”.

  • Include Justification
    Marca esta casilla si quieres que el LLM genere una explicación de la puntuación.

  • Max chunks
    Número máximo de fragmentos que se procesarán. Útil para limitar la cantidad de llamadas al LLM y controlar costos.

Salidas

  • Score – Un objeto Data que contiene la puntuación final (0‑100) y, si se solicitó, la justificación generada por el LLM.

  • Tool – Un objeto Tool que permite usar el mismo proceso como una herramienta dentro de un agente de LangChain.

Ejemplo de Uso

Supongamos que quieres evaluar la calidad de un correo electrónico de atención al cliente:

  1. Data: Pega el texto del correo.
  2. Model: Selecciona el modelo GPT‑4.
  3. Criteria:
    Clarity of the message: clear=high score, unclear=low score
    Tone: friendly=high score, formal=medium score, harsh=low score
  4. Include Justification: Activa la casilla.
  5. Max chunks: 3 (el correo es corto).
  6. Haz clic en “Run”.

El componente devolverá una puntuación, por ejemplo 78, y una justificación como:
“El mensaje es claro y mantiene un tono amigable, pero la estructura de la respuesta podría mejorarse para mayor claridad.”

Puedes usar la salida Score para filtrar correos que necesiten revisión o la salida Tool para integrarlo en un flujo de trabajo automatizado que envíe alertas cuando la puntuación sea baja.

Componentes Relacionados

  • DocAnalyzer – La clase que realiza el análisis real del documento.
  • LanguageModel – El modelo de IA que procesa el texto.
  • AgentAsyncHandler – Permite usar el Scorer como una herramienta dentro de agentes de LangChain.

Consejos y Mejores Prácticas

  • Define criterios claros: Cuanto más específicos y cuantificables sean, más consistentes serán las puntuaciones.
  • Ajusta el tamaño de los chunks: Si tu modelo tiene un límite de tokens, reduce el chunk size para evitar errores.
  • Limita el número de chunks: Si solo necesitas una visión general, establece un Max chunks bajo para ahorrar costos.
  • Revisa la justificación: La explicación puede revelar sesgos o malentendidos del modelo; úsala para mejorar los criterios.
  • Prueba con datos de muestra: Antes de usarlo en producción, verifica que las puntuaciones coincidan con tus expectativas.

Consideraciones de Seguridad

  • Datos sensibles: Si el contenido contiene información confidencial, asegúrate de que el modelo de lenguaje esté configurado para no almacenar ni compartir datos.
  • Control de costos: Cada llamada al LLM consume tokens; monitorea el uso para evitar facturas inesperadas.
  • Privacidad: Si el LLM es externo (por ejemplo, OpenAI), revisa las políticas de privacidad y cumplimiento de tu organización.