Forgemoji

Cómo funciona Forgemoji

Publicado 2 de mayo de 2026·Revisado 22 de junio de 2026

Cada emoji generado por Forgemoji pasa por el mismo pipeline de cinco etapas, sin importar si usas el modo simple de "elegir dos emojis" o el modo foto-a-emoji. Todo el proceso tarda entre 10 y 20 segundos, y la mayor parte se va esperando una sola llamada de generación de imagen.

Somos deliberadamente transparentes sobre cómo funciona, porque el modelo no es magia. La mayoría de los fallos son predecibles una vez que sabes lo que hace el pipeline, y cuando lo sabes, la elección correcta del prompt es obvia.

El pipeline, paso a paso

  1. Ensamblado del prompt

    Dos emojis se pasan a un constructor de prompts. El constructor busca el nombre corto oficial Unicode de cada emoji y compone un único prompt en inglés que combina ambos. Si cambiaste el idioma de entrada en el selector, el prompt se traduce primero con una pequeña tabla interna (sin llamada a LLM).

  2. Generación de imagen

    El prompt va a un modelo de texto a imagen. La salida es 1024×1024. Ejecutamos un modelo principal y uno secundario con enrutado por prompt; no exponemos qué modelo atendió una petición concreta.

  3. Eliminación de fondo

    Un modelo rembg independiente elimina el fondo. El paso rembg corre en un worker GPU aparte, así que se solapa con la siguiente petición.

  4. Redimensionado y formato

    El 1024×1024 transparente y limpio se redimensiona a 256×256 con remuestreo Lanczos. El PNG de 256×256 es lo que la mayoría de plataformas de chat esperan para emojis personalizados.

  5. Animación opcional

    Si activaste la exportación animada, el PNG de 256×256 pasa por un pequeño modelo de síntesis de movimiento que produce un bucle de 24 frames a 12 fps. Soportamos 6 estilos: bob, sway, sparkle, glow, wiggle y pulse. La animación añade 8-12 segundos al tiempo base de generación.

Bajo el capó

Algunos detalles adicionales que son fáciles de pasar por alto pero importan para entender qué hace y qué no hace el pipeline. Si solo te importa el flujo general, la sección anterior es suficiente. Si quieres entender los modos de fallo (que es la única forma de elegir buenos prompts), lee esta sección. Más contexto en la página about.

El modelo de texto a imagen no es un buscador. No "sabe" qué es 🐱 + 🌈 recuperando una imagen, muestrea píxeles condicionado por el prompt. Dos peticiones idénticas producen salidas distintas porque la semilla de ruido latente es diferente.

El modelo rembg está entrenado con imágenes naturales. Funciona con emojis estilo kawaii porque tienen siluetas bien definidas, pero no es perfecto: contornos muy finos a veces se cortan parcialmente. Si ves un halo raro semitransparente, regenera.

El pipeline corre como una secuencia de workers GPU independientes. No hay cola de lotes en la ruta del usuario, cada petición recibe una asignación nueva. El worker rembg es el cuello de botella en horas punta.

No almacenamos el emoji generado. La imagen vuelve a tu navegador como un PNG codificado en base64 dentro de la respuesta JSON. El prompt original y la salida del modelo se registran por 30 días para detección de abuso y luego se eliminan.

El tráfico del nivel gratuito y del Pro comparten el mismo pool de GPU. Pro es más rápido en la práctica en horas punta solo porque descargamos primero la carga del nivel gratuito cuando la cola se acumula.

La UI del selector no forma parte del pipeline de generación. Corre enteramente en tu navegador, persiste las últimas 50 generaciones en localStorage y envía el par elegido a la API.

Consejos para mejores resultados

  • Elige el segundo emoji con cuidado. El primer emoji es el "sujeto", define la forma del cuerpo, el color dominante y la cara. El segundo es el "modificador", aporta rasgos pequeños (sombrero, accesorio, patrón). Las parejas donde ambos pesan igual suelen salir emborronadas.
  • Evita parejas abstractas o contradictorias. 🌀 + 💎 o 📜 + 🚀, el modelo no sabrá qué rasgo enfatizar, así que el resultado parecerá un promedio borroso. Si la pareja suena a mal chiste, el modelo la convierte en una mala imagen.
  • Regenera con agresividad. El 4º o 5º intento con la misma pareja suele ser el mejor. La aleatoriedad del modelo es una característica, no un bug. Trata las 2-3 primeras generaciones como calentamiento.
  • Usa el modo foto para emojis de cara. El estilo 🧑 + 📸 es en lo que el selector es mejor. Cosas como 🦄 + 🌈 también son fuertes porque ambos tienen referencias kawaii bien definidas en los datos de entrenamiento.

Limitaciones conocidas

La mayor limitación es el renderizado de texto. El modelo no deletrea palabras, así que una pareja que incluya 🔤 o 🅰️ producirá formas que se parecen vagamente a letras pero no son legibles.

Los modificadores de tono de piel (variantes de la escala Fitzpatrick) no se gestionan. El modelo elige el tono que su prior latente prefiera y no puedes influir desde el selector.

Las banderas de países (🏳️‍🌈, etc.) tampoco se gestionan. Probamos workarounds del lado del prompt y todos producían peores resultados que simplemente no generar.

Una nota para ingenieros

engineerNoteP1

Actualmente no publicamos un SDK. El endpoint es lo bastante pequeño para llamarlo directamente con fetch. Publicaremos uno cuando la API se estabilice.

Privacidad y datos

El pipeline no escribe tu emoji en disco. El prompt que enviaste y la respuesta se registran por separado durante 30 días y luego se eliminan. Las reglas completas de tratamiento de datos están en la política de privacidad.

EE

El equipo editorial de Forgemoji·Ingeniería y pipeline

Revisado el 2 de mayo de 2026

Cómo escribimos esto: Esta página documenta el pipeline v2 a mayo de 2026. Las versiones anteriores (Qwen-Image-2510 + rembg-1.4) se comportaban de forma diferente en bordes finos y ya no están en producción. Actualizamos esta página cuando cambia el pipeline, no en un horario fijo.

Fuentes: Documentación interna del pipeline y changelog.

Acerca de·Preguntas frecuentes·Política de privacidad·Términos de uso·Inicio