Sesión 2
Resumen
Concepto del proyecto
Los participantes discutieron el desarrollo de un sistema (Infernet) que permite a los usuarios ofrecer modelos de IA (como LLM) en sus computadoras y recibir pagos de otros usuarios que quieran utilizar estos modelos. El sistema utilizaría blockchain para gestionar los pagos y requeriría implementar una interfaz de terminal (TUI) y un sistema de línea de comandos (CLI).
Arquitectura Técnica
Se propusieron dos enfoques arquitectónicos principales:
- Un sistema centralizado donde un servidor actúa como intermediario entre el proveedor del modelo y el consumidor.
- Un sistema peer-to-peer donde los nodos se comunican directamente después de establecer la conexión inicial.
Decidieron implementar inicialmente una arquitectura centralizada donde un servidor facilita la comunicación y valida los pagos, evitando la complejidad de implementar WebSockets y la comunicación directa entre pares.
Demostración del sistema de pago
Se presentó una demostración de X402, un sistema que permite:
- Exponer las API de pago que requieren una transacción blockchain
- Implementación de middleware que verifique el pago antes de otorgar acceso.
- Uso de carteras de servidor para firmar transacciones sin exponer claves privadas
- Verificación de transacciones a través de códigos HTTP 402 (pago requerido)
El ejemplo mostrado fue una API de validación de correo electrónico que cobra 0,005 USDC por solicitud, donde el middleware verifica que el encabezado contenga el hash de pago correspondiente.
Flujo de implementación propuesto
El flujo de trabajo se describió para ambos lados del sistema:
Para el usuario que solicita el modelo:
- Instalar la herramienta
- Financiar su dirección blockchain
- Ejecutar comandos para buscar y seleccionar modelos disponibles.
- Enviar solicitudes que incluyan automáticamente los pagos requeridos
Para el proveedor del modelo:
- Instalar Docker y la herramienta.
- Configurar su dirección de pago
- Registrar su nodo y modelo en el sistema.
- Ejecutar un script que escucha las solicitudes y las redirige al modelo local.
Acciones pendientes
- Implementación del indicador CLI de investigación (mencionaron los comandos Cobra en Go) (how-to-build-a-tui)
- Define cómo el nodo proveedor conectará las solicitudes entrantes con el modelo local.
- Investigación sobre la gestión de contenedores Docker para modelos (LLM Container Images)
- Implementar el sistema de registro para listar modelos disponibles (node-registry-smart-contract)
- Desarrollar la lógica para filtrar solicitudes que no incluyen pagos válidos.
Notas
Transcripción
Listo. Está en la aplicación. Ok, entonces hice el diagrama y además, ¿qué estaba diciendo? Existe el dilema CLI versus TUI. Y básicamente hice el diagrama, planifiqué cómo pensaba que debería funcionar esto, una estructura, y luego comencé a husmear para ver cómo funciona la pila de Charms. Más o menos lo entendí pero…No tuve tiempo suficiente para entender realmente al 100% cómo funciona. Lo entiendo a un alto nivel. Y luego comencé a construir. Me iba a llevar demasiado tiempo, así que usé IA para un primer borrador y funciona bien. Y más o menos, os digo, entiendo más o menos cómo funciona.
Y así logré hacer esto. Déjame ver si puedes verlo. Quiero decir, esto es real. Charm también tiene una herramienta para grabar como…
Como simular una terminal, es un gif o un mp4. No sé si se puede ver, pero así se vería la TUI.
¡De acuerdo!
Salud.
Esencialmente, en el lado de la interfaz de usuario, serían solicitudes de API que llegarían al servidor, y el servidor en realidad estaría realizando las acciones lógicas. Y creo que el otro tema importante que no pude resolver del todo es este. Si le entrega este documento, que es un MDF, a AI y le dice que construya el proyecto Go, debería compilarlo casi de la misma manera que lo hice yo. Entonces podemos saltarnos la verificación de GitHub porque…
Realmente se crearía en ese momento a partir de este archivo, es como un generador de proyectos. Bien. Me están llamando ahora mismo, me conectaré. Sí amigo. Luego hay más tutoriales aquí, los pongo para referencia futura. Pero aquí está la cuestión, ¿verdad?
El servidor, una vez establecido una línea de comunicación con un modelo, en teoría debería ser como un… Bueno, aquí mejor te pregunto porque no sé cómo lo vamos a hacer, cuál es mejor. Creo que debería actuar como un administrador de sesiones de igual a igual…
en lugar de un apoderado. Porque ahora mismo lo tenía planeado como proxy… ¿dónde puse esta cosa? Entonces el servidor central amarillo, déjame ver si puedo hacerlo…
Debería preparar mejor mi presentación. No, no te preocupes. ¿Dónde está? ¿Esta parte naranja de aquí? Ahí es donde ocurren las afirmaciones. Entonces, por ejemplo, esto aquí es la TUI, y una vez que se selecciona un modelo para hablar, el usuario envía una solicitud aquí al retransmisor de consulta.
Luego paga, o más bien envía un contrato a la cadena de bloques y si el otro también lo acepta, se devuelve un éxito. Y luego las dos TUI se comunican directamente y gestionan las transacciones entre ellas.
Pero no lo sé. Tampoco he configurado nunca cosas de igual a igual. Sí, es… Oh, lo siento. He estado experimentando con cosas de igual a igual, pero joder, hombre, esto es… Qué gran noticia. Es complicado, amigo, porque generalmente necesitas WebSockets y demás, y la mayor parte de la infraestructura que sé usar no es muy compatible con WebSockets.
Así que no estoy tan seguro, pero déjame mostrarte cómo funciona X402 porque esa cosa debería tener…
Cosas similares. Déjame ver… Está bien. ¿Dame un segundo? Quiero decir, hablan a través de la cadena de bloques y no a través de algo como un proxy. Exactamente. Sí, quiero decir… Honestamente…
No pude explicar exactamente cómo funciona el solucionador, pero dame un segundo, estoy abriendo mi proyecto ahora.
Vaya, ustedes lucen como HD en mi cámara. Nunca antes me había llamado a mí mismo.
Te ves bien jajaja. Mira, está bien, adelante, me prepararé.
Bueno, si quieres, vayamos entonces por partes.
Vale, entonces…Si les digo que lo entiendo más o menos, quiero decir que es muy básico, realmente no es un framework y tienen muy pocos métodos. Pero sí, el modelo se llama ELM y no tiene nada que ver con React, es otra cosa. De acuerdo. Básicamente, sí, esto responde bastante, pueden hacer clic en explorar nodos. Aquí deberían aparecer todos los activos de una base de datos con sus metadatos.
Verás, lo que me preocupa un poco sobre el uso de esta herramienta es que va a haber un contrato llamado Registro donde registrarás tu nodo y dirás: mira, este nodo recibe pagos en esta dirección y sirve este modelo.
Y conozco un cliente de Node que funciona para llamar al contrato y leerlo. Simplemente dígale: este es el contrato, esta es la estructura que puede esperar y estas son sus funciones.
Y te brinda todo el kit para interactuar con ese contrato. Pero si tuviéramos que hacerlo de esta manera, no sé, ¿esta cosa está escrita en Go o qué? Sí, está en Go. Pero de todas formas creo que es compatible con lo que os comentaba del servidor centralizado.
Quiero decir, tal vez no la conexión en sí, sino la consulta de modelos. Vaya con un HTTP POST o lo que sea, un GET, llega al servidor y el servidor de Nodo lee el contrato y simplemente devuelve los metadatos sin tener que acceder al contrato directamente. Entonces ejecutaríamos un servidor Node.
Y ejecutaríamos esto como frontal. Exactamente. Vale, suena bien. No sé si hay una manera más sencilla. Quiero decir, también sé que puedes hacer estas cosas en Node, pero… Sí, quiero decir, en última instancia, si terminamos haciéndolo en algo compatible con Node…
Siento que podríamos ayudar más, o yo podría, pero creo que es mejor separarlo. Así que si te sientes cómodo con éste, o igualmente a la deriva con este u otro, elige cualquiera. Estoy bien de cualquier manera. Tiene buena pinta. Siento que el modelo será el mismo, el otro simplemente está escrito en TypeScript, ¿verdad? Esa es la principal diferencia. Supongo.
Solo sé, por ejemplo, que Claude CLI se ejecuta con Node. Este Nodo, este Nodo, cierto. Déjame un segundo, amigo. Están tocando el timbre de mi puerta.
¿Cierran mañana?
Qué pasa hombre, lo siento. No, no te preocupes. Le puse agua. ¿Ese es tu filtro? No. Ah, qué bien. Estábamos fuera. Sí, pero… De todos modos, como dices, creo, amigo… Hay dos cosas en las que creo. Una es si podemos crear una manera, por ejemplo, ¿sabes que a veces puedes ejecutar un script con ciertos indicadores y omitir la TUI? Esa es la CLI.
Son cosas diferentes. La interfaz de usuario de Terminal es muy descriptiva la interfaz de usuario de Terminal. La CLI es un comando que toma banderas. Bien. ¿Crees que podemos hacer ambas cosas? Sí, bueno, esta herramienta supuestamente tiene eso. Déjame comprobar… Bueno, no probé esa parte, pero… Sí, quiero decir, si podemos, me apunto. Y pregunto principalmente porque…
Estaba viendo lo que está pasando con estos muchachos de Coinbase y tienen la idea de que se puede crear un agente que ejecute scripts. Por lo tanto, sería genial si también pudieran controlarse mediante banderas. Si eso es posible, estamos bien.
Totalmente posible. De hecho, este marco TUI llamado Bubbletea también puede formatear la forma en que interactúa con una CLI. Quiero decir, es más orientado al usuario, pero también podríamos hacer… se llaman Cobra Flags o algo así, Cobra Commands.En Go, es una biblioteca. Simplemente descárgalo y comienza a usar esas cosas. Se supone que tiene esa característica. Ok, sí, necesitamos investigar cómo se hace eso. Pero bueno, entonces no tendríamos problema por ese lado.
¿Qué haremos, amigo? Quiero decir, estoy pensando…
Déjame mostrarte cómo funciona lo que tengo, para pensar cómo podríamos conectar las cosas, ¿sabes? Sí, está bien.
Bueno… Aquí está.
Mirar.
Entonces esto de aquí es… Esconderé la pantalla pero dime si hay algo…
Mira, esta cosa aquí…
Y… ¡espera!
Un momento, ¿no existe?
Y… déjame comprobarlo, no creo que sea este.
De acuerdo. Ahora sí, lo siento. Adelante, adelante. Esto de aquí es un repositorio, que en realidad… los archivos json y txt no son necesarios. Entonces es un repositorio con dos aplicaciones Next. Entonces, si inicio la API aquí, ¿qué paquete estoy usando?
npm ejecuta d y aquí…
Abro esto…
puedo…
Abrir un…
Este será el que corra. Esta es la API, solo estoy usando una API.
Maldición.
Entonces este…
Lo que realmente me importa es la aplicación, y si ves… Ah, no era ésta.
También debería haber preparado mejor mi demostración. Aquí lo tienes. Si ves la API, en realidad… el ejemplo que hice fue imaginar que tienes una API que verifica si un correo electrónico es temporal o falso. Y del otro lado tienes a un tipo que tiene su SaaS y usa la API en el formulario de registro. Ese es el caso de uso.
Entonces, en el lado derecho tengo al tipo que consumirá la API y en el lado izquierdo tengo la API. Y prácticamente esto aquí, tengo una ruta API llamada ValidateEmail que usa algo llamado EmailValidator. Y aquí básicamente lo configuro para verificar el resultado, decirle un RiskScore y demás.
Es un poco tonto, pero simplemente verificas si el formato es correcto, si el dominio existe, si está en una base de datos de correo electrónico desechable, y configuras el correo temporal y lo que sea. Entonces, lo que configuras es que en el middleware uses esta cosa llamada x402 a continuación.
Usted le indica dónde recibir el pago y cuánto cuesta su ruta API. Entonces lee esto de la variable de entorno.
Esto es demasiado duro para mí.
Entonces, en la variable de entorno simplemente estás… estamos mirando al tipo que tiene su API a la venta. Su API paga. Así que este tipo sólo tiene que decir: aquí es donde quiero que me paguen. Y en el middleware dice: este punto final…
cuesta medio céntimo en esta Base Sepolia, en esta red. Entonces el creador de API simplemente dice eso. Entonces el consumidor…
El consumidor es este tipo aquí, maldita sea, algo quedó almacenado en caché.
¿O no? ¿Dejé un servidor ejecutándose en alguna parte?
Eso es 3002.
Y es raro, no sé por qué siguió funcionando.
¿Cuál es el comando superior?
¿Y cómo cierro el…?
Sí, debe ser Node.
No veo nada, ¿tengo que presionar I? ¿O J aquí? ¿Cómo navego?
Sí, dejé un servidor funcionando. Bueno, lo que sea, lo cerraré más tarde.
Entonces…
Esto de aquí, tienes tu formulario SaaS, ¿verdad? Y desea asegurarse de que no se registre ningún usuario basura. Entonces descubres que este tipo tiene una API paga por medio centavo y dices, genial, la usaré.
Y está usando una billetera de servidor Coinbase. Pero básicamente necesitamos financiar esto. Así que lo financiaré en Base Sepolia, necesito enviar esto…
Y debería aparecer en la balanza en unos segundos.Sí, pensé que se estaba notando. Vale, vale.
Cada vez que inicias esta aplicación, te proporciona una nueva dirección que tiene el servidor y está vacía. Entonces necesitarías poner dinero en ello. Se puede hacer mediante programación o no, pero aquí literalmente fui a un grifo, copié esta dirección, la pegué y decía que me había enviado 10 USDC. Están apareciendo ahora. Entonces si reviso, Arturo…
Lo importante también es ver que en mi billetera está mi dirección de MetaMask. Entonces, si cambio a la red Base Sepolia…
Tengo, además de rico, dos centavos y medio de USDC. Y este otro tiene 10 dólares, es otra billetera. ¿Puedes ver mi pantalla? Entonces si hago clic en validar…
Enviará una solicitud con un encabezado de pago.
Y me dice que verifique porque esto falló. Gasté cinco centavos, medio centavo en validaciones. Tenía dos centavos y medio, así que ahora debería tener tres centavos. Y si reviso esta hoja… ya tengo tres centavos… déjame bajar este gato.
¿Podríamos hacer algo? El problema es que cuanto más complicado lo hagamos… más difícil será terminar a tiempo, ¿verdad? Bien.
Mirar.
Oh, mira, si voy a esto, tiene una billetera que comienza con Logística de Amazon. Si apago y reinicio ese servidor, que es este…
Y no lo vuelvo a ejecutar…
Mira, me está diciendo qué proceso lo está usando.
Y puedo especificar el puerto, ¿verdad?
De acuerdo.
Oh, mierda, creo que funcionó. Déjame intentarlo de nuevo.
Bien, ahora. Fácil uso por 3909. Oh no, ¿maté a este?
Parece que no, amigo. No sé lo que hice. Ok, creo que comenzó con Logística de Amazon. Entonces si recargo estas cosas…
Ahora es una billetera diferente. No tengo dinero allí. Entonces, si intento enviar la misma solicitud desde aquí. Y este es el servidor, ¿no? Y…
conito@tempmail
Es bueno.
Sí, entonces, ah no, no pude ver. Esquivaste una bala allí.
Haga clic en validar.
Dice Solicitud fallida con código de estado 402. Y… ese es el comportamiento esperado. El 402, por eso la biblioteca se llama así. 402 significa que no hay encabezado de pago. Entonces, lo que sucede es que cuando envías la solicitud de API, lo que el middleware verifica es que haya un encabezado con el hash de pago, es decir, el recibo.
Entonces exactamente…
Verá, si es cierto, le dice a su middleware que verifique que se realizó una transacción por .005 en esta billetera. Y cuando alguien envía una solicitud tiene que poner un encabezado de pago, y ese pago es literalmente el número de recibo. Así que este contrato, no puedo decirles exactamente cómo funciona, pero sé que es un contrato…
desplegado allí. Comprueba el hash de la transacción y verifica que el recibo coincida con lo que se suponía que debías pagar y, en caso afirmativo, se procesa la solicitud. Si no, no es así.
Exactamente.
Y… teóricamente… Bien, adelante, dímelo.
Pero en última instancia necesitas un directorio, una lista donde yo diga, mira, voy a ejecutar una Llama 3.5 mil millones, ¿verdad? Y mi idea súper simple sería decir, genial, es hora de dormir. Entonces abro mi terminal, ejecuto un script o abro la TUI con Ethereum Inference Network o lo que sea, establezco un par de valores y veo una luz verde que indica que su nodo está activo. Y luego, en algún lugar de un directorio, todos los que quieran enviar solicitudes pueden decir: hoy quiero codificar, así que quiero un modelo potente, el o1 de DeepSeek.Entonces abren la interfaz de usuario de su terminal, buscan y muestra que no hay ninguno, o tal vez aparece latencia o algo así. Lo seleccionan y pueden enviar solicitudes. Sé que podríamos hacerlo literalmente enviando solicitudes, pero no se integraría tan bien con su entorno de desarrollo porque sería como en los viejos tiempos de copiar texto, ir a chatgpt.com, pegar, enviar y devolver la respuesta.
Es un MVP, creo que funcionaría, pero creo que podría ser más fácil si… localmente tienes un nodo que envía solicitudes, pero ese nodo te da tu… Me estoy desviando un poco aquí, pero… más o menos.
Sí, algo así.
Sí, quiero decir, en última instancia, creo que lo que tenías también funciona, pero me preocupa un poco que… el proceso de datos pueda atascarse porque el flujo es más complejo, con más pasos.
Pero les digo que creo que estamos más o menos alineados. Vi más o menos cómo se vería y está genial amigo, está genial. Si podemos ejecutarlo con banderas como usted dice, funciona muy bien. Y tal vez incluso podamos hacer todo el asunto de… Quiero decir, lo que me preocupa amigo es que…
Todavía queda el otro lío de ejecutar un modelo y hacer que acepte y envíe cosas. Pero lo que estoy imaginando es… inicias un contenedor con una imagen de Llama en el puerto 8080. Y esta herramienta ya sabe que cuando se inicialice, habrá un proceso esperando allí. Suponiendo que es un LLM, está esperando una cadena y devolverá una cadena más larga, que es básicamente lo que hacen. Entonces el nodo o esta cosa se comunica con el otro puerto localmente y envía el resultado a través de Internet.
Subtítulos de la comunidad Amara.org.
Sí.
Es una panacea amigo, me encantaría si pudiéramos hacer eso. Y también siento que si supiéramos scripts de shell…
Exacto.
Sí, exactamente. Sí, creo que esa sería la idea y…
Además, por lo que les mostré, mi ejemplo en el que envío una solicitud desde lo siguiente, ¿verdad? Pero tienen, por ejemplo, X402 Axios. Entonces podemos usar un nodo sin interfaz de usuario para solicitudes. Creo que todavía se puede optimizar bastante.
Quiero decir, lo que hace la biblioteca es tener dos caras: una para el expuestor de API y otra para el consumidor. La biblioteca para consumidores simplemente dice: mira, aquí tienes mi billetera, te doy permiso para firmar.
micropagos.
Entonces, cuando te encuentras con una API que solicita un pago…
Envíalo.
Y luego…
Bueno, es un desastre, amigo. Ahora lo entiendo más pero no lo suficiente como para explicarlo fácilmente. Básicamente está x402, creo que es x402.org.
No, no, no te preocupes. Quiero decir…
Básicamente…
Tienes una clave privada.
Y si lo deriva o realiza una operación con él, obtiene una clave pública. Y esa clave pública es una dirección. Entonces si tienes la clave privada, puedes firmar pagos, puedes decir: envía esta cantidad de aquí para aquí. Entonces, lo que estamos haciendo aquí es usar una herramienta que firma en su nombre.
Cuando llamas a ciertas API.
Y lo usamos para que, al consumir API pagas, la cosa pueda enviar automáticamente la solicitud. Porque de lo contrario, aparecerá MetaMask pidiéndote que firmes. Y aquí se hace del lado del servidor, de ahí las “carteras de servidor”.
Entonces el cliente nunca ve la clave privada.Eso es otra cosa, pero el premio de la Plataforma de Desarrolladores Coinbase al que aspiramos… Esos tipos ya construyeron esta infraestructura en la que nunca le muestras al cliente la clave privada, sino que les permites interactuar con un SDK y firmar cosas.
Y un caso de uso es consumir API pagas. Entonces, el tipo que instala la API paga, que expone el punto final, lo tiene muy fácil. Simplemente dice: mi API cuesta un dólar.
Y tienes que pagar aquí. Si no pagas ni un dólar aquí, ENFAÑA TU SOLICITUD, responde 402. Así que ese tipo lo tiene fácil. El que es un poco más complicado es el que tiene que enviar la solicitud con el encabezado de pago.
Pero…
Sí, no es necesario dar permiso porque tiene la clave privada.
Correcto, exactamente. Sí. Entonces…
Sí, creo que necesitamos, tenemos los dos flujos, ¿verdad? Dibujaré un pequeño diagrama aquí y lo limpiarás más tarde. Tenemos al que enviará la solicitud y al que alquilará su computadora.
Aquí tenemos al solicitante.
Ese tipo necesita ejecutar un comando.
pasa algo que lo instaló.
Y le dirá: vale, pero no tienes dinero amigo. Ingrese dinero; de lo contrario, no podrá enviar solicitudes. Entonces ejecuta lo que instaló y devuelve: esta es su dirección.
No, sólo estoy escribiendo en mi cuaderno. Esta es tu dirección, financiala.
Y luego ese tipo…
Los requisitos previos si desea ganar dinero: tener Docker instalado y ejecutar un modelo, ejecutar un Docker con un modelo. Para nuestro ejemplo, supongamos un LLM. Entonces ese tipo instala Docker.
Instala la herramienta.
Y dice dónde quiere recibir los pagos, ¿no?
Luego necesita registrar su nodo y modelo. Tiene que decir: soy tal y corro tal. Registro.
nodo
y modelo.
Un guión o algo que por un lado escucha las solicitudes.
Y solo escuchará las solicitudes que ya hayan pagado. Si alguien envía una solicitud no pagada, el nodo ni siquiera se dará cuenta.
Entonces… bueno, en realidad no, pero sí. Escucha solicitudes… exactamente, devuelve las no pagadas. Y…
Luego los envía al puerto correcto.
Y esto es respondido por…
el nodo.
Eso envió la solicitud. Y eso es todo. No es tan complicado. Entonces… Y recibir una respuesta es un cliente HTTP, como dijiste. Literalmente un Axios o lo que sea. Y con esta herramienta de Coinbase gestionamos carteras y todo. Son un par de líneas, no hace falta hacer más.
Pero para el otro tendremos un poco más de trabajo porque necesitamos hacer algún camino donde pueda decir: instalo el modelo, lo pongo en un puerto y envío las solicitudes que llegan aquí a este nodo. Suponiendo que también sea un Node.
Se lo enviaremos a su propio modelo. No estoy seguro exactamente de cómo hacerlo, pero lo investigaré hoy. Pero necesitaríamos ver si podemos crear una CLI que sea como un nodo o algo así. En última instancia, todo lo que queremos es que su computadora envíe una solicitud desde su localhost 3000 o lo que sea a otro puerto, escuche la respuesta y la envíe a través de HTTPS.
Creo que el proceso no muere en el sentido de que hasta que presionas Ctrl+C, permanece abierto. Y se queda inactivo, esperando para enviar o escuchar algo más.
¿Puedes acercarte un poco?
Sí.Sí, quiero decir, no sé si diría con pasos adicionales. Creo que si lo implementáramos de forma básica con HTTP y Sockets y lo que sea, podríamos hacerlo con la misma cantidad de pasos, pero hay un problema de habilidad. No sabemos muy bien cómo funciona el metal desnudo y es por eso que necesitamos Node y todas las herramientas. Pero sí, en última instancia, los LLM…
trabajar con una API sin estado, ¿verdad? Es por eso que puedes cambiar de modelo en mitad de una conversación. Es simplemente un buffer, y le da algunos caracteres especiales que indican de quién es el turno, y luego, cuando el modelo ve esos caracteres, agrega cosas al final. Eso es básicamente todo lo que hacen.
Notas
Transcripción
Sólo hubo un evento aquí en México, ¿verdad, como a finales de julio? ¿Por noción? No, para ETH Global.
Eh, supongo que el aniversario era el aniversario de Terry. Bien. Sí, sí, sí.
No fui pero lo vi por ahí. Lo siento, ¿está grabando ahora? Si quieres…
Ok, verifiqué si lo de Notion estaba ahí, pero no está. Bueno, no lo sé. No importa.
¿Qué estaba diciendo? Bien, lo que haríamos es crear la herramienta para que otro agente administre el contexto. Nosotros simplemente gestionamos la conexión del punto A al punto B y su pago, su transacción. Creamos un sistema de transacciones.
De solicitudes, automatizadas. Desde mi punto de vista…
Necesitamos hacerlo, porque si ejecutas un modelo local…
No es necesario enviar una solicitud de API. Ya lo tienes ahí y solo dices… Érase una vez, y responde. Es como ese juego, no sé cómo se llama.
Pero eso es lo que hace esta cosa. Pero en última instancia, lo que hace OpenAI es decir: mira, este programa necesita mucha GPU. Así que crearé una API para que uses este programa. Y te doy la clave API. En el encabezado, ingresa su clave API, Bearer Token, y luego la envía al punto final de Finalizaciones.
Con ciertos parámetros, y envías: érase una vez. Y pasa lo mismo ¿no? No es que sea sorprendente consumir estos programas a través de API. Pero así es como dice Sam Altman: si me pagas, te doy una clave API. Y lo que estoy diciendo es…
Suponiendo que haya personas con computadoras que puedan ejecutar estos programas, ¿cómo podrían esas personas hacer lo que hace Sam Altman? Sí, no, de acuerdo. Mi comentario no fue sobre la filosofía de lo que estamos haciendo, sino sobre…
En términos muy objetivos y prácticos, el alcance de nuestra implementación este fin de semana.
¡Nos vemos pronto!
Y…
El alcance creo que es…
Que a través de la API, en lugar de necesitar un Bearer Token, pasas un recibo que ya pagaste 5. Entonces tenemos que hacer, suena muy complicado si lo dices así, pero tenemos que hacer lo mismo que hizo OpenAI en el sentido de que queremos tomar un modelo…
Eso funciona a través de puntos finales. Y en lugar de servirlo como…
En última instancia, es lo mismo porque si servimos y consumimos a través de HTTPS, la única diferencia es que en paralelo usamos un encabezado que se ejecuta en la cadena de bloques. En lugar de una clave API, es blockchain. Pero esa es la única diferencia.
Creo que fuimos demasiado profundo, pero al menos lo repensé todo. Estuvo bien. Pero deberíamos avanzar. Si quieres, Antonio, cuéntanos qué encontraste, amigo. Y… veamos qué hacemos ahora.Bueno, estaba mirando los equipos que participaban en las pistas de Coinbase y vi que en realidad el único en ETH Global estaba en San Francisco, al que fuimos. Y vi que había otros eventos de Coinbase en línea. Honestamente, no vi muchas características similares. La mayor parte de lo que vi fueron intentos de construir ciertos tipos de mercados.
Utilizar micropagos para comprar y vender determinados productos o cosas en Internet. Y la otra información que publicaste sobre la pista de Súper Inteligencia Artificial, ¿seguiríamos calificando, o sí, porque también la estamos usando?
Pues nada, no sé que os parece.
Eh, tendríamos que ver. Creo que podría funcionar.
En última instancia, creo que el objetivo debería ser cómo intentar asegurar el de Coinbase porque… Quería que hicieras esa investigación para ver si nadie ha hecho esto antes porque siento que… Bueno, no es tan complicado. Eso digo ahora, a ver qué decimos el sábado a medianoche. Pero… ¿Viste otro protocolo llamado Cash Network?
Ah, vi que lo pusiste ahí, lo investigué, pero se parece mucho más a IPFS, ¿verdad? Bien. Pero también sería algo parecido ¿no? Para poder ingresar y realizar solicitudes.
Esas cosas son más a nivel de infraestructura, como pensar en mineros y esas cosas.
Ok, hola Diego, necesito irme, ¿puedes llamarme ahora mismo por favor?
Sí… déjame…
Déjame ver, vale, aquí no queda nada.
Un agente de IA impresionante y útil.
Y creo que el mayor impacto de nuestro proyecto sería la descentralización del uso de la IA. Creo que así es como deberíamos enmarcar el proyecto. Entonces… Bueno, necesito mover esto a Node para que sea solo un servidor y usar… usamos Axios.
Supongo que había una cosa concreta para pedir esos datos, para comprobar el contrato y coincidir. Desde un lado… Sí, bueno, con lo que discutimos creo que estamos bien. Si hicieras un diagrama, ¿podrías subir una foto o algo así? Está muy feo, pero sí, ya lo subo. Ah, no importa.
Usaré una ayuda visual… cuál es la palabra… Déjame intentar usar más español y menos anglicismos. Ya lo estás haciendo. Pero…
Con esa ayuda visual puedo seguir desarrollándome. De acuerdo. Oye, ¿y por qué, amigo? Tengo curiosidad.
Funciona en muchos niveles, pero creo que en parte mi vocabulario en español es pobre y quiero ampliarlo. Por otro lado, cuando pienso en inglés, creo que pienso mal, por eso quiero dominar más mi mente en español. Eso es genial. Genial, ¿verdad?
Demonios, sí. Mmm. Oye, también te iba a decir que hay patrocinador…
que tiene algo similar a IPFS para almacenar multimedia.
Así que he estado pensando en lo que decía sobre ser competitivo porque… siento que habrá mucha gente y no suficiente dinero para que todos ganen. Y, en última instancia, Coinbase tiene algunos de los premios más importantes. Eso siempre atrae más competencia. Entonces…
Sigo pensando que deberíamos concentrarnos en eso hasta que esté asegurado. Pero si nos queda tiempo después, desde aquí hasta el fin de semana, creo que sería genial agregar a Walrus. Me gusta, también si usas un modelo que genera… Imágenes. Imágenes. Bueno, no puedes enviarlo directamente, no sé si puedas. Pero en lugar de enviarlo… no creo que puedas.¿Puedes en un…? No, no en HTTP, pero es como una conexión de igual a igual en la que envías fragmentos en binario y el receptor los crea. No sé cómo se llama, pero sé que existe.
Bueno, la idea ahí es un poco más débil, pero sería que el modelo, el solicitante está aquí y el proveedor del modelo de generación de imágenes está aquí. Este tipo pasa la solicitud directamente. Este tipo genera la imagen, la sube y te envía el enlace. Entonces…
Creo que hay algo ahí pero todavía no puedo verlo.
Sí, creo que vale la pena concentrarse en asegurar el de Coinbase porque cuesta… cinco mil dólares. Entre nosotros tres eso sería genial. Con un poco de suerte. Y si tenemos tiempo agregaremos a Walrus y hablaremos con los chicos de ASI que supuestamente tienen una visión muy alineada. Sólo necesitamos que nos digan: en el futuro pondremos un nodo y tal. Por ahora simulamos con una solicitud a su clave API, pero en el futuro…
Se podrá hacer de otra manera, porque todavía no tienen la infraestructura. Entonces es muy nuevo.
De acuerdo. Bueno, hagámoslo entonces.
No, voy a meterme en esa cosa. Tengo otras cosas que hacer, pero… Sí, no, amigo, no te preocupes. Lo de Walrus… Obviamente varía entre implementaciones, pero la forma fácil de usarlo es muy fácil y ya lo he implementado en producción. Entonces tengo ese código. No te preocupes por eso ahora, solo concéntrate en el nodo y…
Ya veremos el resto.
Una vez que esté en los EE. UU., resolveremos el resto sobre la marcha.
Está bien. Está bien. Está bien.
Bueno oye ¿y entonces qué pasó con lo que me contabas de Diego y de ir a ver a tu amigo y todo eso? Eso era más para mañana. Sí, sí, dije. No, estuvo bien y no nos va a cobrar. Ah, bien. Pero no sé si funcionará mañana. Si es así, nos vemos allí. Si no, entonces no.
¿Dónde vas a comer hoy? Ni idea. JC dijo que hagamos algo, pero no ha dicho nada. Sí, me lo dijo la semana pasada y… Mira, gratis. Espero. Espero, amigo. Lo pensé. Quiero decir, sí, me gustaría, pero ¿dónde estudiaría, hombre? Entonces no lo sé, ya veremos.
Bueno, te dejaré ir. ¿De acuerdo? Bueno, nos vemos. Adiós. Adiós.