Nyotta AI
← Volver al blog
Técnico

Decisiones rápidas y razonamiento deliberado: por qué la cotización con IA necesita ambos

Mientras su equipo prepara una cotización, el cliente envía una aclaración:

Para el soporte B-214, favor de usar el plano Rev D en su cotización actualizada. La Rev C requería anodizado; la Rev D especifica acabado tal como sale de maquinado, sin recubrimiento. La cantidad del pedido se mantiene en 5,000 piezas. Favor de ajustar su cotización al cambio de acabado.

Reconocer que este mensaje le corresponde a cotizaciones es sencillo. Actualizar la cotización requiere más trabajo. Alguien tiene que revisar la Rev D, conciliarla con la especificación que rige, identificar qué operaciones cambian y recalcular la estimación.

Cada una de esas tareas pide una herramienta distinta. Una clasificación rápida basta para hacer llegar el mensaje al lugar correcto. Interpretar los requisitos puede requerir un modelo de lenguaje y los documentos pertinentes. El cambio de costo necesita insumos y cálculos explícitos. Y un ingeniero todavía tiene que aprobar el resultado.

Las decisiones pequeñas y frecuentes como estas son una buena aplicación para los modelos System One. En Nyotta probamos Jev con mensajes sintéticos de proveedores, incluida esta aclaración del soporte, para medir sus clasificaciones y su repetibilidad.

Qué significan aquí System 1 y System 2

Daniel Kahneman popularizó la distinción entre el System 1, un pensamiento rápido e intuitivo, y el System 2, un pensamiento deliberado que exige esfuerzo. Es una analogía útil para diseñar flujos de trabajo con IA, aunque no describe literalmente cómo funciona un modelo. Thinking, Fast and Slow

En cotización, reconocer una queja por entrega es un juicio pequeño. Decidir qué requisito rige cuando un plano y una especificación se contradicen exige reunir evidencia y analizar el conflicto a fondo. Tratar ambos casos como el mismo tipo de solicitud a un modelo puede desperdiciar esfuerzo en tareas simples o dejar mal planteadas las difíciles.

La distinción también tiene que ver con la tarea. Un LLM de propósito general puede clasificar un mensaje rápidamente o dedicar más tiempo a razonar un problema. Y hay trabajo que no cae en ninguna de las dos categorías: multiplicar una tarifa aprobada por una cantidad debe resolverse con un cálculo, nunca con la intuición de un modelo.

¿Qué es Jev?

Jev es el primer modelo System One de TypeSafe. Usted le entrega la información que debe evaluar y preguntas con tipos de respuesta definidos. Sus primitivas documentadas son Choice, que selecciona una opción; Score, que evalúa una rúbrica; y Noul, que evalúa una proposición con un valor de cero a uno. Choice y Score también devuelven distribuciones de probabilidad y un nivel de confianza. Documentación de TypeSafe

Por ejemplo, le pedimos a Jev asignar un mensaje a uno de estos resultados:

quality | logistics | estimating | purchasing | review | none

La aplicación puede usar esa respuesta para enrutar el trabajo. TypeSafe indica que sus preguntas se evalúan en paralelo, lo que hace interesante explorar esta interfaz cuando varios juicios pequeños se refieren a la misma entrada. Introducing Jev

Meme de dos paneles: Saul Goodman hablando, con la etiqueta LLM, y Hector Salamanca tocando su campana, con la etiqueta JEV. Cuando el flujo necesita una decisión, no siempre necesita un discurso. La broma es sobre la interfaz: los LLM de propósito general también pueden devolver salidas estructuradas.

Qué probamos

Probamos la clasificación de mensajes y la latencia de las solicitudes con jev-1.13.0 el 21 de septiembre de 2026. Jev recibió texto sintético y nuestras instrucciones, sin planos, historial de pedidos ni conversaciones previas. Escribimos las etiquetas esperadas antes de la ejecución.

Para 30 mensajes de negocio, hicimos dos preguntas de tipo Choice en cada llamada:

  1. ¿Qué equipo debe atender la solicitud? Las opciones fueron quality (calidad), logistics (logística), estimating (cotizaciones), purchasing (compras), review (revisión) y none (ninguno). Review cubría problemas no identificados o ajenos al tema; none cubría avisos explícitos que no requieren acción.
  2. ¿En qué estado está la información? Las opciones fueron clear (clara), conflicting (contradictoria), insufficient (insuficiente) y no_action (sin acción). Clear significaba una solicitud o un problema identificable, y no hechos verificados ni autorización para actuar.

Los mensajes abarcaban defectos, retrasos en entregas, cambios de precio, reportes contradictorios, contexto faltante, avisos de rutina y solicitudes de cotización. Nuestra política de enrutamiento daba prioridad a quality, luego a logistics, estimating y purchasing cuando aparecían varios temas a la vez. Cada mensaje se envió tres veces para medir la repetibilidad.

Para la aclaración del soporte de arriba, Jev devolvió estimating y clear en las tres llamadas. También devolvió estimating y clear para este mensaje:

La especificación del cliente establece: «Rechazar piezas con grietas». Se trata de un criterio de aceptación y no de un reporte de piezas defectuosas. Favor de incluir en su cotización la inspección de grietas requerida.

Eso coincidió con la distinción que buscábamos entre un requisito de inspección y un defecto actual.

Medida Resultado
Selecciones de equipo que coincidieron con nuestras etiquetas 90/90 llamadas (100%)
Selecciones de estado de la información que coincidieron con nuestras etiquetas 87/90 llamadas (96.7%)
Mensajes que coincidieron en ambas etiquetas en todas las repeticiones 29/30
Mensajes que devolvieron el mismo par de etiquetas en las tres llamadas 30/30 (100%)

La última fila mide la repetibilidad de las etiquetas, con independencia de si coinciden con las nuestras. Las respuestas seleccionadas se mantuvieron iguales entre repeticiones, aunque las distribuciones de probabilidad a veces cambiaron. Tres llamadas por entrada son una revisión de consistencia pequeña; no prueban un comportamiento determinista en solicitudes futuras ni en versiones futuras del modelo.

La discrepancia se dio con este mensaje:

Favor de resolver el tema de la OC 4812 que comenté ayer con su compañero. ¿Podría pedirle los detalles e indicarme el siguiente paso?

Jev devolvió review y clear en las tres llamadas. Nosotros esperábamos review e insufficient, porque faltaba el problema de fondo. Pero nuestra redacción permitía que clear significara una solicitud identificable, y pedirle los detalles a un compañero cumple con eso. La respuesta de Jev es defendible. Jev coincidió con nuestras respuestas esperadas en 87 de 90 llamadas. Las tres discrepancias vinieron de una sola pregunta ambigua repetida tres veces; cualquiera de las dos respuestas era defendible.

Esto importa al definir un flujo de trabajo. «¿Se entiende la solicitud?» y «¿Tenemos información suficiente para resolver el problema?» necesitan preguntas separadas. La confianza de un modelo no puede reparar una definición ambigua.

Cómo cambió la latencia con más preguntas

Usamos un mensaje que reportaba una entrega tardía, grietas encontradas durante la inspección y una solicitud de aumento de precio para el siguiente pedido. Definimos dieciséis preguntas de tipo proposición, entre ellas si el mensaje reportaba grietas, si mencionaba un retraso en la entrega o si incluía un número de orden de compra.

Luego hicimos la primera pregunta sola, las cuatro primeras juntas y las dieciséis juntas, con seis llamadas por grupo:

Preguntas por llamada Latencia mediana Rango observado
1 211 ms 176–285 ms
4 198 ms 190–208 ms
16 237 ms 199–290 ms

Son tiempos HTTP de extremo a extremo, incluida la sobrecarga de red. Las llamadas fueron secuenciales, sin reintentos de la aplicación ni llamadas de calentamiento excluidas. En esta prueba, hacer dieciséis preguntas no tardó dieciséis veces más. Seis observaciones por grupo no bastan para establecer el rendimiento en producción ni una ventaja de velocidad frente a otro modelo.

Junto con siete mensajes de diagnóstico enviados tres veces cada uno (21 llamadas), la evaluación sumó 129 solicitudes exitosas, todas aprobadas por nuestras verificaciones locales de la forma de la respuesta. Los mensajes de diagnóstico pusieron a prueba ataques a las instrucciones y solicitudes ajenas al tema; quedan fuera de los resultados de mensajes de negocio presentados arriba.

Cómo aplicamos este enfoque en Nyotta

En Nyotta separamos la clasificación y extracción de documentos de la estimación numérica. Las regiones del plano se clasifican antes de extraer sus características, y esas características conservan su ubicación de origen para la revisión. Un código de estimación dedicado usa los insumos resultantes para producir estimaciones y señalar advertencias.

Así, cada componente tiene una función específica. Los modelos ayudan a interpretar la información de ingeniería; los modelos de estimación y el código producen el resultado numérico. Un revisor puede comprobar por separado la interpretación de la fuente y la estimación.

En el caso del soporte, el papel de Jev es acotado: clasificar la aclaración del cliente y enviarla a cotizaciones. En nuestro experimento devolvió la ruta esperada en las tres llamadas. Completar la cotización sigue requiriendo el plano y la especificación reales, los insumos de costo aceptados y la aprobación de ingeniería.

¿Por qué usar Nyotta y no pedirle la cotización a un LLM genérico?

Los LLM forman parte de Nyotta. Usamos su comprensión del lenguaje y su capacidad de razonamiento para interpretar requisitos, extraer información y ayudar a explicar qué necesita revisión. Una cotización también necesita datos de ingeniería, un método de estimación definido, cálculos y aprobación.

En Nyotta, las características extraídas del plano conservan su ubicación de origen. Un código de estimación dedicado se encarga de las estimaciones numéricas, verifica los insumos y reporta advertencias. Esa separación permite que un revisor examine la interpretación de la fuente y la estimación, cada una con sus propios criterios.

En un sistema de cotización, los roles deben estar explícitos:

Tarea Herramienta o responsable adecuado
Interpretar un requisito o redactar una aclaración Un modelo de lenguaje o multimodal, con la fuente disponible para verificar
Clasificar una solicitud acotada Una regla o un modelo de decisión evaluado para esa tarea
Conciliar requisitos contradictorios Los documentos pertinentes, razonamiento y revisión de ingeniería
Estimar costo o precio Un modelo de estimación definido, con los insumos de negocio requeridos
Aplicar tarifas, cantidades y restricciones Código, fórmulas y reglas de validación
Aceptar un supuesto y liberar una cotización El ingeniero o aprobador autorizado

Un LLM puede llamar a esas herramientas. El cálculo todavía tiene que ejecutarse sobre los insumos aceptados, y el resultado debe conservar su sustento. En el ejemplo del soporte, eliminar el anodizado tiene que reflejarse en los costos de las operaciones correspondientes; el nuevo precio debe derivarse de la estimación.

El valor de Nyotta está en conectar la interpretación del modelo con ese trabajo de ingeniería. Un modelo como Jev encaja en el paso de clasificación. Su utilidad depende de la tarea y de las verificaciones que la rodean, igual que la de un LLM.

La comparación que importa es con una RFQ real: ¿puede su equipo rastrear los requisitos hasta la fuente, revisar los insumos de costo y ver qué falta por aprobar?

Traiga un paquete que su equipo ya haya cotizado. Podemos comparar el resultado con las decisiones y las cifras que sus ingenieros ya conocen. .

Siguiente paso

Tráiganos la RFQ que más le cuesta a su proceso actual.

Le mostramos cómo Nyotta convierte el paquete en trabajo estructurado, fácil de revisar y listo para cotizar.