Saltar al contenido principal

Arquitectura

GenKaKu tiene tres componentes: el cliente de usuario, el orquestador y los trabajadores.

Cliente de usuario

La interfaz web en genkaku.app. Los usuarios se autentican a través de Privy y envían mensajes — hay un modelo de texto, así que no hay nada que seleccionar. El cliente se conecta al orquestador vía Socket.io y recibe respuestas de tokens transmitidas en tiempo real.

Orquestador

La capa de enrutamiento central. Un servidor Node.js que usa Socket.io y coordina todo:

  • Autenticación — valida sesiones de usuario y tokens de trabajadores a través de Privy
  • Cola de trabajos — recibe solicitudes de usuario, las pone en cola por modelo, y las coincide con trabajadores disponibles
  • Registro de trabajadores — rastrea todos los trabajadores conectados: tipo (navegador/nativo/imagen), modelo, estado (ocioso/ocupado), estadísticas de rendimiento
  • Enrutamiento de modelos — dirige trabajos al tipo de trabajador correcto:
    • qwen3.8-27b-uncensored (chat y API) → trabajadores nativos
    • genkaku-pro y prompts gratuitos → trabajadores del navegador ejecutando Qwen3.5 Uncensored
    • trabajos de imagen → trabajadores de imagen
  • Selección de trabajadores — entre los trabajadores ociosos elegibles que sirven el modelo solicitado, elige uno por selección aleatoria ponderada (peso = tokens/seg medidos), distribuyendo ganancias mientras favorece la velocidad
  • Llamadas a herramientas — cuando un modelo solicita la herramienta web_search, ejecuta la consulta de Brave Search API, obtiene y extrae contenido de los 3 primeros resultados, y los devuelve al modelo como resultado de herramienta
  • Transmisión de estadísticas — envía estadísticas de red en tiempo real (trabajadores activos, profundidad de cola, trabajos completados) a todos los clientes conectados cada 5 segundos

El orquestador no almacena conversaciones ni contenido de prompts. Enruta el tráfico y lo descarta.

Trabajadores

Los trabajadores son aplicaciones de escritorio que se ejecutan en tu máquina y sirven trabajos de inferencia a la red GenKaKu. Descarga la aplicación GenKaKu Worker, inicia sesión y tu GPU comienza a ganar — sin configuración de línea de comandos.

El trabajador usa Ollama internamente para servir modelos, con soporte de aceleración CUDA (NVIDIA), Metal (Apple Silicon) y Vulkan (AMD/Intel). Ejecuta Qwen3.8 27B Uncensored — el modelo de texto principal de la red — y maneja cada mensaje de chat y solicitud de API que se enruta hacia él.

Requisitos de hardware: una GPU NVIDIA de 16GB+ (24GB recomendado), una tarjeta AMD de 24GB+ o una Mac Apple Silicon de 32GB+. El rendimiento varía según el hardware, pero espera 25+ tokens por segundo con una GPU decente.

Cuando no está sirviendo trabajos, el trabajador permanece inactivo en segundo plano. También puedes ejecutarlo en modo widget — una superposición compacta que muestra tu utilización de GPU, ingresos en USDC y ganancias en $GENKAKU de un vistazo. Un asistente integrado impulsado por un modelo Ollama local te ayuda a resolver problemas sin salir de la aplicación.

Los trabajadores se conectan al orquestador vía Socket.io, reciben asignaciones de trabajos, ejecutan inferencia, y transmiten tokens de vuelta.

Trabajadores de imagen (ComfyUI)

Ejecutan ComfyUI en una GPU independiente y sirven trabajos de imagen — tanto la herramienta generate_image que el modelo de texto puede llamar como la API de imagen. Se autentican con un token de trabajador y se conectan al orquestador vía Socket.io.

Ciclo de vida del trabajo

1. El usuario envía un mensaje
2. El orquestador recibe la solicitud, determina qué modelo necesita
3. La solicitud entra en la cola de ese modelo
4. El orquestador coincide la solicitud con un trabajador ocioso del tipo correcto — entre los trabajadores ociosos elegibles, la selección es aleatoria ponderada por tokens/seg medidos de cada trabajador (distribuye ganancias mientras favorece la velocidad)
5. El trabajo se asigna al trabajador
6. El trabajador ejecuta inferencia, transmite tokens al orquestador
7. El orquestador reenvía tokens al usuario en tiempo real
8. El trabajo se completa, el trabajador se marca como ocioso, las ganancias se acreditan

Flujo de búsqueda

La búsqueda web es una llamada a herramienta dirigida por el modelo, no una precarga. El modelo decide cuándo buscar:

1. El usuario envía un mensaje
2. El trabajador ejecuta el modelo; el modelo emite una llamada a herramienta web_search
3. El orquestador ejecuta la consulta de Brave Search API
4. El orquestador obtiene las 3 primeras URLs de páginas y extrae contenido
5. Los resultados se devuelven al modelo como resultado de herramienta
6. El modelo continúa generando, ahora basado en contenido web
7. La respuesta se transmite con citas de fuentes

Estadísticas

El orquestador transmite estadísticas de red a todos los clientes conectados cada 5 segundos:

  • Número de trabajadores activos (por tipo y modelo)
  • Profundidad de cola actual por modelo
  • Total de trabajos completados
  • Tokens por segundo en toda la red