Ir al contenido
use-cases / stream-llm-tokens-to-anything / hero
PIPE · AGENT · STREAMING

Transmite tokens de LLM a cualquier cosa que lea HTTP

El paso 3 de tu agente genera tokens. El paso 4 necesita empezar a consumirlos antes de que el paso 3 termine. Canaliza la salida del modelo directo a una ruta; el siguiente proceso hace curl a la misma ruta. Sin plomería SSE, sin broker, sin pelearte con callbacks — los bytes se mueven a velocidad de línea.

Lee la API de pipe
use-cases / stream-llm-tokens-to-anything / mechanism

Dos curls, una ruta, sin capa intermedia

La mayoría de stacks de streaming necesitan un endpoint SSE, una cola, un bus pub/sub y un callback de framework para mover tokens cuatro pasos. El pipe los reemplaza todos: el productor escribe a una ruta con PUT, el consumidor lee de la misma ruta con GET. Los bytes fluyen directos entre los dos — sin almacenamiento intermedio en el servidor.

EL STACK HABITUAL

Cinco capas entre el generador y el lector

  • Abstracción de streaming de LangChaininfierno de callbacks
  • Plomería de Server-Sent Eventsframing + heartbeats
  • Redis pub/subbroker que operar
  • Relé WebSocket a medidaauth + reconexión
  • Broker de mensajes (Kafka/RabbitMQ)topics + particiones
  • Callbacks del framework de agenteespecíficos del proveedor
EL PIPE

Dos curls tocando la misma ruta

PRODUCTORcurl -T - /pipe/tokens
MISMA RUTA
CONSUMIDORcurl /pipe/tokens

Almacenamiento del lado del servidor: cero. Los bytes fluyen del emisor al receptor en cuanto ambos conectan, con backpressure manejado por receptor. El endpoint existe solo porque dos curls lo tocaron.

agent-step-3.sh
# Step 3 — agent generates and pipes tokens upward.
ai.generate({ model, stream: true }) \
  | jq -c '{delta: .text}' \
  | curl -T - https://pipe.hoody.com/api/v1/pipe/run-42/tokens?n=3

# Step 4 — three readers GET the same path. The pipe fans out.
curl https://pipe.hoody.com/api/v1/pipe/run-42/tokens?n=3 | tee evaluator.log
curl https://pipe.hoody.com/api/v1/pipe/run-42/tokens?n=3 | jq -c .delta
curl https://pipe.hoody.com/api/v1/pipe/run-42/tokens?n=3 | websocketd --port=8080

# All four processes block until the n=3 readers connect, then bytes flow.

PUT empuja los bytes hacia arriba, GET los tira hacia abajo. El parámetro ?n dice cuántos lectores esperar; el pipe se bloquea hasta que esos se conectan, luego hace fan-out simultáneo. Sin SDK de cliente, sin broker, sin instalación de SDK — solo HTTP.

use-cases / stream-llm-tokens-to-anything / listeners

Misma ruta, muchos lectores, sin SDK

Una vez que el productor está canalizando, cualquier cosa que hable HTTP puede suscribirse. Hasta 256 lectores en el mismo stream, repartidos por el pipe con backpressure manejado por receptor. Sin librería de cliente que instalar, sin relé que aprovisionar.

PARA EL FRONTEND

El navegador lee la misma URL

Un EventSource o un lector con fetch ataca la ruta del pipe y obtiene el mismo flujo de bytes que está produciendo el agente. Sin framing SSE en tu servidor — el pipe transporta los bytes que el modelo emite, en crudo.

PARA EL EVALUADOR

Un segundo agente escucha y decide

Un proceso evaluador se suscribe a la misma ruta. Puede interrumpir al productor en cuanto la salida derive. Dos agentes en el mismo cable, sin orquestador de framework mediando entre ellos.

PARA EL RASTRO DE LOG

Bifurca el stream a un contenedor que mira

Un consumidor de logs lee, gzip-ea y escribe a disco. Una UI de depuración lee en paralelo. Ninguno sabe que existen los demás — el pipe simplemente entrega a cada lector los mismos bytes.

TOPE DE FAN-OUT256Techo de receptores por ruta aplicado por el pipe — pon ?n para esperar a tantos antes de que arranque la transferencia.
OVERHEAD DE LATENCIA0Los bytes atraviesan el pipe según llegan. Sin buffer en el servidor — el backpressure se maneja por receptor.
HUELLA DE SDK0 kbProductor y consumidor son curl. Cualquier cosa que hable HTTP puede suscribirse — navegador, contenedor, agente, shell.
use-cases / stream-llm-tokens-to-anything / punchline

El LLM transmite. El pipe transmite. El lector transmite. Sin capa intermedia.

0101 · el modelo emite tokens
0202 · el pipe reenvía bytes
0303 · el lector los aplica
sin broker entre pasosla ruta es el protocolo
use-cases / stream-llm-tokens-to-anything / replaces

Lo que esto reemplaza

El cableado que sacas cuando un proceso necesita transmitir tokens a otro en tiempo real. Cada uno trae su framing, su SDK, su superficie de ops. El pipe es el cable.

  • Abstracciones de streaming de LangChainCadenas de callbacks, lock-in del framework
  • Plomería de server-sent eventsFraming + heartbeats + lógica de reconexión
  • Redis pub/subBroker que instalar, operar y pagar
  • Relés WebSocket a medidaAuth, reconexión, backpressure todo a mano
  • Brokers de mensajes (Kafka, RabbitMQ)Topics, particiones, grupos de consumidores para un stream
  • Callbacks del framework de agenteEspecíficos del proveedor, solo legibles desde el mismo SDK
use-cases / stream-llm-tokens-to-anything / cta

Deja de cablear infraestructura de streaming entre dos procesos que ya hablan HTTP. Abre una ruta. Canalízala. Lee de ella.

Lee la API de pipe
use-cases / stream-llm-tokens-to-anything / related

Lee los otros