Skip to content

Recetas vs typos

Severidad: Util

Audiencia: operadores. Explica por que el aprendizaje IA descarta queries muy largas del corpus de analisis.

El problema

En el log de busquedas sin resultados aparecen periodicamente queries muy largas, tipo:

lactato de sodio 2% tintura de avena (maese lab) 2% extracto hg de centella asiatica 1%...

A primera vista parece spam o ruido aleatorio. No lo es: es un cliente pegando una receta multi-ingrediente para encontrar varios componentes a la vez. Lo hace letra a letra o pegando trozos, generando 20-30 queries progresivas. Si pasamos esto al aprendizaje IA, el modelo intenta "aprender" frases unicas que en realidad son listas de ingredientes inconexos.

La regla

TIP

Filtrar queries por longitud antes de pasarlas al aprendizaje IA. Las queries que superen el umbral configurado se marcan como descartadas y NO se envian al modelo. La razon conceptual: una receta no es un typo, no es aprendible como sinonimo, y un buscador multi-ingrediente es un flujo de producto distinto (en roadmap).

El umbral es configurable desde el panel (default 20 caracteres). En catalogos tipicos pasan ~85% de las queries sin resultados con ese default.

Por que

  • No son aprendibles: una receta de 80 caracteres no genera un sinonimo util. Es N ingredientes distintos, no una palabra mal escrita.
  • Coste IA: pasar al modelo queries largas multiplica tokens por orden de magnitud. Una receta puede ocupar 200+ tokens vs los 10-30 de un typo normal.
  • Ruido en el corpus rescue: si la receta tiene rescue (cliente refino la busqueda), el par (receta_larga, rescue_corto) no es relacion typo, es relacion "abandone receta, busque un ingrediente". Aprendizaje enganoso.
  • Flujo de producto distinto: la solucion correcta para recetas es un "modo receta" en el buscador (proximamente) que detecta multi-ingrediente y resuelve cada uno por separado.

Ejemplo

Muestreo de 6.981 queries unicas sin resultados con umbral 20 chars:

LongitudFrecuenciaDecision
<= 20 chars~85%Pasa al pipeline IA (typos potenciales)
21-50 chars~10%Filtrado: probable receta inicial
> 50 chars~5%Filtrado: receta multi-ingrediente clara

Receta filtrada de ejemplo (247 caracteres):

text
lactato de sodio 2% tintura de avena (maese lab) 2% extracto hg de
centella asiatica 1% extracto fluido de albahaca 0.5% sericin powder 1%
acido glicolico 5% vitamin e 0.5% ...

El sistema la marca como descartada con razon too_long y la registra en el log para auditoria. El operador puede ver el detalle en Actividad Smart filtrando por razon.

Para merchants

El aprendizaje IA se enfoca en typos cortos (caguacate a aguacate), no en intentos de buscar varios productos a la vez (aceite lavanda + cera abeja + vitamina E). Las busquedas largas se ignoran del aprendizaje porque no son corregibles con sinonimos: son una intencion distinta que requiere un flujo de producto propio.

El umbral de longitud (cuantos caracteres tiene que tener una busqueda como mucho para entrar en el aprendizaje) se configura desde el panel en Ajustes > Smart > Longitud maxima. Si tu negocio tiene terminos legitimos largos (nombres quimicos, descripciones tecnicas), subelo. Si solo vendes productos con nombres cortos, bajalo.

Anti-patrones

DANGER

No pases todo al modelo "por si acaso". Triplica el coste y la salida es ruido. El modelo intentara aprender frases unicas y proponer sinonimos que nadie usara.

DANGER

No borres las queries largas del log de busquedas. Pierden valor para analitica: saber que el cliente pego una receta es senal de uso del producto. Solo se filtran del pipeline de aprendizaje, no del log.

DANGER

No pongas el umbral muy bajo (10 chars). Filtras typos validos como bicarbonato o nicotinamida (11-12 chars). El default 20 esta calibrado contra corpus real.

Documentacion oficial de Mibizum.