He convertido el talk de 1983 en la interfaz de mi IA
Después de escribir el artículo de ayer sobre el comando talk, pensé que hay una unión poética entre el pasado y el futuro: talk transmite carácter a carácter, y un LLM emite token a token en streaming. Es un caramelito para cualquier programador.
Así que monté un pequeño puente. Si alguien ejecuta talk ia@host-donde-esta-la-ia desde la VPN, al otro lado contesta una IA.
Cool, ¿no crees?
La arquitectura
El truco está en ponerse en medio. El servidor ejecuta el talk de verdad dentro de un pseudo-terminal (PTY) y lee la mitad del humano con un emulador de terminal (pyte), que convierte la salida de talk en una pantalla virtual que puedo consultar. Cuando el humano pulsa Enter, esa línea se envía al modelo, y la respuesta vuelve inyectándose carácter a carácter según llega en streaming. Encajan sin fricción.
flowchart LR
H["Humano
talk ia@host
pantalla partida, en vivo"]
subgraph VPN["Servidor"]
D["talkd
(inetd)"]
B["bridge.py
pyte lee al humano
Enter = fin de turno
escribe la IA en vivo"]
end
P["API de una IA"]
H <-->|"UDP 518, ntalk (negociación)"| D
H <-->|"TCP directo (flujo de texto)"| D
D -->|PTY| B
B -->|"petición"| P
P -.->|"respuesta (streaming)"| B
Para que talkd reconozca a la IA como un usuario más, el contenedor registra su terminal en utmp al arrancar. Sin ese detalle, un talk ia@host respondería "not logged in".
Solo es un juguete
Verlo funcionar es raro y bonito a partes iguales, una tecnología de hace más de cuarenta años, revivida por una VPN, ahora conversando con un modelo de lenguaje que teclea igual que lo haría un humano al otro lado. Seguramente puede ir más lejos, pero solo es un experimento tonto que me ha hecho sonreír.
This work is under a Attribution-NonCommercial-NoDerivatives 4.0 International license.
Help me keep writing
Every coffee gives me a push toward the next article.
Sure, it's on me!
Comments
There are no comments yet.