Tutorial
gemini-3.8-flash en la práctica: 5 escenarios de aplicación de alto valor para texto y puntos clave de implementación
De la selección a la integración: llevar un modelo de texto a los flujos de trabajo reales
En esta página
Por qué partir de los escenarios y no de los parámetros del modelo
Muchos equipos, al elegir un modelo de texto, reaccionan primero comparando una tabla de parámetros punto por punto: longitud de contexto, velocidad de inferencia, puntuación en rankings. Pero lo que realmente determina si un proyecto puede salir a producción no suelen ser esas cifras, sino si el escenario de negocio se ha acotado hasta convertirse en un contrato claro de entrada y salida.
El mismo modelo, usado para «convertir un correo de cliente en campos estructurados» y para «escribir un texto creativo abierto», tiene una dificultad de ingeniería completamente distinta. El primero solo requiere estabilidad y verificabilidad; el segundo requiere control de estilo y selección humana. Por eso el orden correcto es:
- Primero, escribir con claridad la tarea de negocio: qué forma tiene el texto de entrada, a quién se entrega la salida y qué sistema posterior la consume.
- Luego, definir el contrato de entrada y salida: campos, formato, límite de longitud, cómo se expresan los valores faltantes y qué se devuelve en caso de fallo.
- Por último, elegir el modelo: usar el contrato para ejecutar el conjunto de evaluación, en lugar de adivinar el rendimiento con una tabla de parámetros.
Poner el escenario en primer lugar tiene además una ventaja práctica: una vez fijado el contrato, el modelo es un detalle de implementación sustituible. Hoy se usa gemini-3.8-flash para poner en marcha el flujo; mañana se cambia a otro modelo o se ajustan las estrategias de reintento y degradación, y el código de negocio casi no necesita cambios, siempre que todas tus llamadas estén centralizadas en una capa de interfaz unificada y no dispersas en cada módulo de negocio.
Todos los ejemplos de este artículo usan la interfaz compatible con Chat Completions: las solicitudes se envían a https://api.hiapi.ai/v1/chat/completions y admiten salida en streaming. En la entrada solo se aceptan texto e imágenes, el límite de contexto es de 1.048.576 tokens y la salida máxima por llamada es de 65.536 tokens; la intensidad de razonamiento se pasa mediante reasoning_effort con low / medium / high, y se recomienda elegir el nivel según la evaluación de la tarea real. Cabe aclarar de antemano que esta interfaz actualmente no ofrece llamadas a herramientas (function calling), búsqueda en internet, computer use ni salida estructurada (modo JSON); todas las restricciones de formato deben escribirse en el prompt y validarse en tu código.
Cada modelo tiene dos rutas: la ruta estándar usa directamente el nombre del modelo (por ejemplo, gemini-3.8-flash), y la ruta Vertex añade @vertex después del nombre del modelo (por ejemplo, gemini-3.8-flash@vertex). Ambas rutas tienen nombres de modelo y facturación distintos; a continuación se ejemplifica de forma unificada con la ruta estándar.
from openai import OpenAI
client = OpenAI(base_url="https://api.hiapi.ai/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="gemini-3.8-flash",
messages=[{"role": "user", "content": "Extrae en JSON el contacto, la empresa y la intención de este correo de cliente"}],
reasoning_effort="medium",
stream=True,
)
Los 5 escenarios siguientes cubren la mayor parte de las necesidades de texto: extracción estructurada, generación de contenido por lotes, clasificación y etiquetado, resumen y reescritura, y preguntas y respuestas conversacionales. Su punto en común es que tienen límites de tarea claros y resultados evaluables, que es precisamente donde los modelos de texto generan valor estable con mayor facilidad.

Escenario 1: extracción estructurada de texto no estructurado
Este es uno de los escenarios con mayor retorno sobre la inversión. La entrada es texto libre como correos, fragmentos de contratos, descripciones de tickets o notas de formularios, y la salida es un JSON que el sistema posterior puede consumir directamente.
La definición de campos debe permitir «evaluar si está vacío»
La causa más frecuente de fallo en tareas de extracción, además de la capacidad del modelo, es una definición de campos ambigua. Cada campo debe aclarar tres cosas: el tipo, si es obligatorio y cómo se expresa cuando falta. Por ejemplo, si no se puede extraer el importe, devolver null en lugar de una cadena vacía, para que el sistema posterior distinga entre «no existe esta información» y «se extrajo un valor vacío».
{
"contact_name": "string|null",
"company": "string|null",
"intent": "purchase|support|other",
"deadline": "YYYY-MM-DD|null",
"confidence_notes": "string"
}
Incluir enumeraciones en el contrato en lugar de dejar que el modelo improvise
Todo campo que pueda enumerarse debe listar en el prompt todos sus valores legales. La clasificación de conjunto abierto es el mayor enemigo de la estabilidad de la extracción: el modelo inventará una etiqueta que parece razonable, pero que no existe en el diccionario posterior.
La salida debe pasar por una capa de validación
No asumas que la salida del modelo siempre será JSON válido. Esta interfaz no ofrece salida estructurada (modo JSON), así que el formato de salida solo puede garantizarse mediante el prompt; por lo tanto, la capa de validación no es opcional. Los fallos de análisis, los tipos de campo incorrectos y las enumeraciones fuera de rango deben interceptarse en el código, recurriendo a reintentos o a revisión humana. Una práctica sencilla es: analizar → validar tipos → validar reglas de negocio (por ejemplo, que la fecha no sea anterior a hoy) → almacenar solo si pasa todo.
El tratamiento de valores faltantes debe tener una estrategia
Cuando falta un campo obligatorio, no dejes que el flujo continúe en silencio. Puedes optar por reintentar automáticamente una vez (enfatizando en el prompt que ese campo debe extraerse con todos los medios) y, si sigue faltando, marcarlo para completarlo manualmente y dejar registrada la razón. Esto es mucho más barato que permitir que datos sucios lleguen a la base de datos principal.

Escenario 2: generación de contenido por lotes y textos basados en plantillas
Los textos de marketing, los títulos y descripciones de productos y los párrafos de páginas de aterrizaje SEO comparten una característica: gran volumen, estructura similar, requisitos individuales no muy altos pero sensibilidad a la consistencia de estilo.
Fijar el esqueleto con una plantilla y rellenar las diferencias con variables
No trates todo el prompt como un texto libre que modificas una y otra vez. Divide el prompt en dos capas:
- Capa fija: rol, tono, palabras prohibidas, rango de caracteres, formato de salida. Esta parte debe permanecer estable a largo plazo.
- Capa de variables: nombre del producto, puntos de venta, público objetivo, canal. Esta parte se reemplaza en cada llamada.
Así solo necesitas mantener una plantilla, y los problemas de calidad de generación pueden atribuirse a «¿es un problema de la plantilla o de las variables?».
La longitud de salida debe restringirse explícitamente
La facturación por tokens implica que cuanto más larga es la salida, mayor es el costo, y en escenarios por lotes esta diferencia se amplifica. Indica un rango claro en el prompt (por ejemplo, «no más de 80 caracteres») y establece en el código un límite de salida como respaldo. No esperes que el modelo juzgue por sí mismo que «ya es suficiente».
Las tareas por lotes deben dividirse en lotes y deduplicarse
Enviar miles de elementos de una sola vez suele provocar limitación de tasa y tiempos de espera. Se recomienda dividir en tamaños de lote fijos, reintentar solo los elementos fallidos de cada lote y registrar el hash de cada entrada para deduplicar: generar lo mismo dos veces no solo desperdicia tokens, sino que también contamina la biblioteca de materiales con contenido homogéneo.
Deja un paso de selección manual en el proceso posterior
El uso real de la generación por lotes suele ser «generar N variantes y que una persona elija M». Generar varias variantes en una sola llamada y dejar que una persona haga la selección final es más rentable que buscar la perfección en cada elemento, y se ajusta mejor a la forma de trabajar de los equipos de contenido.

Escenario 3: clasificación, etiquetado y reconocimiento de intención
Las tareas de clasificación parecen las más simples, pero para implementarlas de forma estable, la dificultad está en el sistema de etiquetas, no en el modelo.
El conjunto de etiquetas debe ser cerrado y estar definido
Cada etiqueta debe ir acompañada de una definición en una frase, junto con ejemplos positivos y negativos. Las etiquetas deben ser mutuamente excluyentes en la medida de lo posible: si «consulta posventa» y «devoluciones y cambios» se solapan mucho, la elección del modelo se volverá aleatoria y la evaluación tampoco podrá localizar el problema.
Las muestras límite importan más que las muestras normales
Al construir el conjunto de evaluación, concentra el esfuerzo en los límites: una frase que parece de dos categorías a la vez, que contiene solo la mitad de una palabra clave, con tono sarcástico o con información irrelevante mezclada. El modelo casi nunca falla en muestras normales; las muestras límite son el origen de los incidentes en producción.
Haz que el modelo emita información de confianza
Una práctica útil es pedir al modelo que, además de la etiqueta asignada, emita un juicio sobre «si pertenece a alguna de las categorías anteriores» y una breve justificación. El campo de justificación no entra en la base de datos de negocio, pero es extremadamente útil para investigar errores de clasificación.
Enrutar la baja confianza a revisión humana
No busques una clasificación totalmente automática. Define una estrategia: si la etiqueta principal es clara, se almacena automáticamente; si el modelo indica «no está seguro» o coincide con varios candidatos, se envía a una cola de revisión humana. Los resultados de la revisión humana pueden realimentar nuevos conjuntos de evaluación, cerrando el ciclo.
La evolución del sistema de etiquetas a lo largo de varias iteraciones debe quedar registrada
Una vez que el conjunto de etiquetas entra en producción, el negocio lo ajusta repetidamente. Conserva una versión en cada cambio y registra en los datos «con qué versión del conjunto de etiquetas se etiquetó este elemento»; de lo contrario, los datos históricos no podrán compararse.
Escenario 4: resumen de textos largos y reescritura de estilo
El resumen y la reescritura comparten la característica de entrada larga y salida corta, lo que los hace naturalmente adecuados para modelos facturados por tokens, pero también son los más propensos a problemas de «parece correcto pero los detalles están mal».
La entrada larga debe dividirse y luego fusionarse
El límite de contexto es de 1.048.576 tokens, por lo que un documento individual normalmente cabe de una vez; sin embargo, con colecciones de varios documentos o cuando se necesita citar muchas evidencias, aún hay que dividir por límites semánticos (capítulos, párrafos, líneas en blanco), generar resúmenes locales bloque por bloque y luego fusionar los resúmenes locales en un resumen global. Al dividir, conserva la información del título como contexto de cada bloque, lo que mejora notablemente la calidad de la fusión.
Aclara qué tipo de resumen quieres
«Extractivo» y «generativo» son cosas distintas. ¿Lo que necesita el negocio es «conservar todas las cifras y conclusiones clave» o «que se lea con fluidez»? Para lo primero, se debe pedir al modelo que cite en la medida de lo posible las formulaciones del original y no añada hechos; para lo segundo, se puede relajar, pero debe aceptarse un mayor riesgo de desviación.
La reescritura debe incluir restricciones verificables
La reescritura de estilo tiende fácilmente a convertirse en «creación libre». Concreta los requisitos: lector objetivo, tono, si se conservan los términos técnicos, límites mínimo y máximo de caracteres, estructura de párrafos que debe mantenerse. Cuanto más concretas sean las restricciones, menos retrabajo habrá.
La validación de consistencia es imprescindible
Las cifras, fechas, nombres de personas y nombres propios son los contenidos que más fácilmente se modifican de forma incorrecta durante la reescritura. Antes de la puesta en producción debe haber al menos un paso de validación automática: extraer las entidades clave y las cifras del texto original y comprobar si aparecen tal cual en la salida. Si la tasa de acierto no alcanza el umbral, se devuelve para reescritura o se deriva a revisión humana.
Establecer un límite máximo de longitud de salida
Que los resúmenes se descontrolen y se alarguen es un fenómeno habitual. Además de indicar la longitud en el prompt, establece un límite de salida en la capa de solicitud para evitar que un documento largo aislado eleve el costo de una sola llamada.
Escenario 5: preguntas y respuestas conversacionales y asistentes de negocio
Las aplicaciones de preguntas y respuestas son las más subestimadas: una demo se pone en marcha en tres minutos, pero para ofrecer servicio como asistente de negocio se necesita todo un sistema de gestión de límites.
La organización del contexto determina la calidad de la respuesta
Qué se incluye en una solicitud es más importante que cómo se escribe el prompt. La estructura típica es: rol y reglas del sistema, material de contexto del negocio (fragmentos recuperados por relevancia), las últimas rondas de conversación y la pregunta de esta ronda. Los fragmentos de material deben indicar su origen y decirle explícitamente al modelo «responde solo con base en el material proporcionado».
Rechazar responder es una funcionalidad, no un defecto
Debe diseñarse explícitamente una ruta de rechazo: cuando no hay respuesta en el material, la pregunta está fuera del alcance del negocio o implica operaciones sensibles, el modelo debe dar un mensaje fijo de respaldo y guiar al usuario a un canal humano. El mensaje de rechazo debe incluirse en el prompt del sistema, en lugar de depender de la improvisación del modelo.
El estado multiturno se guarda en tu código
No dejes que el modelo «lo recuerde» todo. El estado de la sesión, la identidad del usuario y el número de pedido confirmado, es decir, la información determinista, deben gestionarse en el sistema de negocio e inyectarse en cada ronda de solicitud; el modelo solo se encarga de organizar el lenguaje. Así la sesión es reproducible y auditable.
Controlar la longitud del contexto inyectado en cada ronda
Cuanto más larga es la conversación, más historial se arrastra en cada ronda y mayor es el costo por ronda. La práctica es conservar el texto original de las últimas rondas y comprimir las anteriores en unos pocos puntos clave a modo de resumen. Esta es una de las principales variables de costo de las aplicaciones en funcionamiento prolongado.
Establecer una compuerta independiente para las acciones ejecutables
Si el asistente puede desencadenar acciones como reembolsos, modificación de pedidos o envío de correos, la salida del modelo solo debe tomarse como sugerencia; la ejecución real debe pasar por validación de parámetros y comprobación de permisos, y si es necesario, confirmación humana. Un modelo de texto no debería tener permisos de escritura directos.
Control de costos y rendimiento con facturación por tokens
La facturación por tokens implica que el costo está determinado casi por completo por «longitud de entrada + longitud de salida». Las acciones para controlar el costo pueden clasificarse básicamente en estos dos lados.
Lado de entrada: primero recortar, luego hablar de optimizar
- Enviar solo lo necesario: meter el documento completo en el prompt es el desperdicio más común. Primero filtra párrafos o recupera fragmentos y envía solo los relevantes.
- Eliminar texto de plantilla: los pies de página, los avisos legales y las firmas repetidas no aportan al resultado, pero se facturan igual.
- Controlar el número de rondas de historial: en las aplicaciones conversacionales, el historial debe comprimirse con resúmenes, no añadirse indefinidamente.
- El propio prompt debe ser conciso: los prompts del sistema mantenidos a largo plazo tienden a alargarse cada vez más; revísalos periódicamente y elimina ejemplos redundantes.
Lado de salida: fijar límites y usar formatos breves
El límite de salida es la compuerta de costo más directa; la salida máxima por llamada de 65.536 tokens es el límite de la interfaz, y el lado del negocio debería fijar límites menores según sea necesario. Además, pedir en el prompt que el modelo responda con un JSON compacto (la interfaz no ofrece modo JSON, así que hay que validarlo por cuenta propia) suele acortar notablemente la salida; pedir «primero la conclusión y luego una frase de justificación» también es mucho más barato que pedir explicaciones largas.
Sustituir llamadas repetidas por caché
Llamar repetidamente con la misma entrada es puro desperdicio. Para tareas con alta determinación (clasificación, extracción), almacena en caché los resultados usando el hash de la entrada como clave; para tareas generativas, puedes cachear los fragmentos de material recuperados en lugar del texto final.
Fusionar solicitudes por lotes
Las tareas de texto corto pueden combinar varias entradas en una sola llamada y pedir al modelo que genere las salidas una por una en orden. Esto reduce el número de solicitudes y el costo repetido del prompt del sistema, pero hay que tener en cuenta que el fallo de un solo elemento afecta a todo el lote, por lo que se requiere analizar elemento por elemento y conservar la capacidad de reintento.
Calidad y costo deben evaluarse juntos
No mires solo el costo de una llamada individual; mira el «costo total de completar una acción de negocio»: incluidos los reintentos, la proporción de revisión humana y el retrabajo posterior. Una configuración barata pero que requiere mucho retrabajo suele ser más cara que una configuración estable con mayor precio unitario. Solo con un conjunto de evaluación fijo y registrando a la vez la precisión y el consumo de tokens se puede hacer una ponderación real.
Varias opciones y precios bajo la misma interfaz
- gemini-4-carbon: el modelo más potente de la serie Gemini 4, orientado a las tareas de múltiples pasos y ciclos largos más complejas. Ruta estándar 1,00 / 0,05 / 5,00; ruta @vertex 1,64 / 0,09 / 8,20.
- gemini-4-argon: adecuado para la mayoría del trabajo de ingeniería de software y del conocimiento, con un equilibrio entre capacidad y costo. Ruta estándar 1,00 / 0,05 / 5,00; ruta @vertex 1,64 / 0,09 / 8,20.
- gemini-3.8-flash: rápido y de bajo precio, adecuado para tareas de alta concurrencia y baja latencia. Ruta estándar 0,19 / 0,02 / 0,92; ruta @vertex 0,62 / 0,07 / 3,08.
Los precios están en dólares / millón de tokens y corresponden, en orden, a entrada / entrada en caché / salida. Al elegir, considera juntos la complejidad de la tarea, los requisitos de contexto, la intensidad de razonamiento y el costo: para tareas de alta concurrencia, baja latencia y requisitos moderados de razonamiento, prioriza gemini-3.8-flash; para tareas complejas de múltiples pasos y ciclos largos, considera gemini-4-carbon o gemini-4-argon.
Validación y diseño de respaldo obligatorios antes de la puesta en producción
La incertidumbre de la salida del modelo no desaparece al pasar a producción; solo se convierte en incidente si faltan mecanismos de respaldo. Repasar esta lista de comprobación antes de la puesta en producción permite evitar la mayoría de los problemas.
Uno. Construir un conjunto de evaluación fijo
Extrae muestras de datos reales del negocio que cubran casos típicos y casos límite, y anota la salida esperada de cada una. Este conjunto de evaluación debe guardarse con versiones y ejecutarse cada vez que se cambie el prompt, se cambie el modelo o se ajusten parámetros, comparando la precisión y el consumo de tokens. Sin conjunto de evaluación no existe la frase «el rendimiento ha mejorado».
Dos. Definir criterios de aceptación cuantificables
No valides con «me parece que está bien». Define métricas para cada escenario: en extracción, precisión de campos y tasa de éxito de análisis; en clasificación, precisión y proporción de baja confianza; en resumen, tasa de conservación de entidades clave; en preguntas y respuestas, tasa de rechazo correcto y tasa de intervención humana. Los criterios deben ser confirmados por el área de negocio antes del desarrollo.
Tres. Diseñar las rutas de fallo
- Fallo de análisis: reintentar una vez; si sigue fallando, enviar a la cola de pendientes, sin descartar en silencio.
- Tiempo de espera y limitación de tasa: reintentar con retroceso exponencial y fijar un tiempo total límite para evitar la acumulación de solicitudes.
- Estrategia de degradación: si el modelo principal no está disponible, ¿hay un modelo de respaldo o reglas de respaldo? Si la diferencia de calidad de la salida degradada es aceptable debe alinearse con el negocio de antemano.
- Idempotencia: el procesamiento repetido de la misma solicitud de negocio no debe producir resultados duplicados.
Cuatro. La revisión humana es obligatoria en los flujos críticos
Toda acción cuya salida del modelo afecte directamente a los derechos del usuario o a fondos debe pasar por revisión humana o validación estricta. El modelo se encarga de ganar eficiencia y la persona de la decisión final; no inviertas esta división del trabajo.
Cinco. Establecer muestreo y monitoreo en línea
Tras la puesta en producción, realiza de forma continua muestreos por proporción y revisión humana, y registra la tendencia de precisión, la distribución de tipos de fallo y el consumo de tokens por solicitud. Cuando las métricas sean anómalas, debe poder identificarse rápidamente si cambiaron los datos, si se modificó el prompt o si el comportamiento del modelo derivó.
Seis. Centralizar las llamadas en una capa de interfaz unificada
Con llamadas al modelo dispersas por todo el código de negocio no se pueden hacer las cosas anteriores. Al centralizar las llamadas en una capa de acceso unificada, el cambio de modelo, el ajuste de parámetros, los reintentos y la degradación pueden hacerse en un solo lugar, y el lado del negocio solo trata con contratos estables de entrada y salida. Esto también convierte en una tarea de bajo costo «comparar distintos modelos con el mismo conjunto de evaluación».
Con escenarios acotados, contratos definidos primero y mecanismos de respaldo completos, los modelos de texto pueden entrar realmente en el flujo de producción y no quedarse solo en la fase de demostración.
Artículos relacionados
Ver todos los artículos →-
Tutorial
Cómo llamar a kimi-k3.1-pro mediante la API de HiAPI: curl, Python y solicitudes listas para ejecutar
Una guía práctica de integración que cubre el endpoint, los parámetros de solicitud, el streaming, las llamadas a herramientas y la resolución de errores
-
Tutorial
API de ElevenLabs Music en HiAPI: genera música con curl, Python y recetas de prompts
Un tutorial práctico para llamar a elevenlabs/music-v2.5 a través de HiAPI, con recetas de prompts listas para copiar para estilo, estado de ánimo y duración
-
Tutorial
Cómo usar gpt-image-2.5-sunburst/image-to-image a través de la API de HiAPI: curl y Python
Solicitudes ejecutables, flujo de carga de la imagen de referencia y diagnóstico de errores para desarrolladores