Ir al contenido

Jev: Puntuar

Puntúa un texto en una o varias dimensiones; cada una es una escala de 2 a 10 niveles descritos («Calm», «Frustrated», «Very angry»…). Jev evalúa todas en paralelo y de forma independiente.

Las puntuaciones se normalizan a 0-1 y se combinan con pesos definidos aquí, en el nodo (visibles y ajustables):

compuesta = Σ peso × (nivel normalizado) ÷ Σ pesos

Con una sola dimensión es una puntuación simple. El nodo enruta por Bajo (compuesta menor que el umbral bajo, 0,34 por defecto), Alto (igual o mayor que el umbral alto, 0,67) o Medio.

ParámetroTipoRequeridoDescripción
credentials_idcredentialsSíCredencial TypeSafe (API key).
modelselectSíModelo de Jev. jev-latest es un alias que cambia de modelo al publicarse versiones nuevas (hoy apunta a jev-1.13.0); en producción fija jev-1.13.0 o jev-1.14.0.
state_modeselectSíQué se evalúa: text (un texto), object (objeto con campos con nombre, lo recomendado) o all (todos los datos que llegan al nodo).
statetextareaNoTexto u objeto JSON a evaluar. Admite variables \{\{campo\}\}.
long_contextbooleanNoContexto largo (experimental): sube el límite del texto de 64k a 262k tokens. Es más lento y menos preciso; úsalo solo si el texto no cabe de otra forma.
output_keytextNoClave de los datos donde se guarda el resultado. Por defecto jev; el resto de los datos se conserva.
dimensionsjsonSíLista [{name, instructions, criteria: [niveles], weight}]. weight por defecto 1 y debe ser mayor que 0.
threshold_lownumberNoPor debajo de este valor: Bajo. Por defecto 0,34.
threshold_highnumberNoDesde este valor: Alto. Por defecto 0,67. Debe ser mayor que el bajo.

Se requiere una credencial TypeSafe (credentials_id) con la api_key de la consola de TypeSafe (variable TYPESAFE_API_KEY). La clave es de tu cuenta: TypeSafe factura el consumo, no Floogos. En la credencial, el botón Test llama a GET /v1/models (no gasta tokens).

El resultado se añade a los datos de entrada (no los reemplaza): el ticket o el formulario siguen disponibles aguas abajo. Se lee como \{\{jev.campo\}\}.

{
"nextModule": "selected-route-target",
"data": {
"...": "datos de entrada, intactos",
"jev": {
"composite": 0.6,
"band": "mid",
"route": "mid",
"route_fallback": false,
"dimensions": {
"encaje": {
"score": 3,
"normalized": 1,
"label": "Excellent fit",
"confidence": 0.8,
"weight": 0.5
},
"urgencia": {
"score": 0,
"normalized": 0,
"label": "No timeline",
"confidence": 0.7,
"weight": 0.3
},
"presupuesto": {
"score": 1,
"normalized": 0.5,
"label": "Mentioned vaguely",
"confidence": 0.6,
"weight": 0.2
}
},
"model": "jev-1.13.0",
"usage": {
"input_tokens": 200,
"output_tokens": 9
},
"cost_usd": 0.000008
}
}
}

Varias salidas: route_low, route_mid, route_high. Cada puerto se conecta a su destino; el nodo elige por cuál sale.

Dimensiones encaje (0,5), urgencia (0,3) y presupuesto (0,2). Alto crea el negocio en el CRM y avisa a ventas; Medio lo añade a una secuencia de seguimiento; Bajo lo archiva.

  • Privacidad: el texto que evalúas sale de Floogos hacia TypeSafe, un tercero. Según su documentación no se usa para entrenar y la retención cero solo existe en su plan empresarial. No envíes datos que no puedas compartir; filtra antes con el nodo Jev: Verificar reglas (pii) si hace falta.
  • Idioma: Jev rinde mejor en inglés; otros idiomas, incluido el español, funcionan con menor precisión. Prueba con tus propios datos antes de automatizar y escribe las instrucciones en inglés si el resultado no es fiable.
  • Variables: el motor sustituye \{\{campo\}\} en la configuración antes de ejecutar el nodo. El nodo no vuelve a sustituir, así que un texto de usuario que contenga llaves viaja tal cual.
  • Coste: 0,042 $ por millón de tokens de entrada; la salida no se cobra. jev.cost_usd es una estimación por ejecución.
  • Errores: missing_credentials, validation (configuración o 422), auth_error (401), rate_limited (429), overloaded (529), state_too_large, jev_error y connection_error. 429, 529, 5xx y los cortes de red se reintentan solos (hasta 3 veces con espera creciente); el resto no.
  • Confianza: confidence no es una garantía de acierto: calibra los umbrales con tus propios casos y empieza de forma conservadora. No automatices acciones destructivas.