Estado actual
¿Qué es?
TokenTorrent divide un modelo de lenguaje en capas y reparte esas capas entre los nodos de una red P2P. Cada nodo aloja un tramo del modelo con su propia RAM y CPU; los datos intermedios (tensores) viajan de nodo en nodo hasta completar la respuesta. El objetivo es que ejecutar modelos grandes no dependa de tener una GPU cara.
El repositorio se llamó inicialmente AI Torrent Protocol antes de pasar a llamarse TokenTorrent.
Cómo probarlo desde el código fuente
git clone https://github.com/rodeiroigor88-hash/AI-Torrent-Protocol.git
cd AI-Torrent-Protocol
pip install -r requirements.txt
# Worker A: capas 8-15
python src/worker.py --port 8001 --layers 8-15 --next-node http://127.0.0.1:8002/forward
# Worker B: capas 16-23, cierra el pipeline (norma final + lm_head)
python src/worker.py --port 8002 --layers 16-23 --next-node http://127.0.0.1:8000/callback --is-last
# Cliente
python src/chat_agent.py --port 8000 --next-node http://127.0.0.1:8001/forward
Instrucciones completas de red remota, TLS/mTLS, tracker propio y verificación de nodos (Proof of Compute) están en el README del repositorio.
Privacidad: qué se comparte y qué no
Es un sistema P2P, así que parte de la información necesariamente sale de tu equipo para que la red funcione:
- Si donas recursos como worker: tu nodo envía al tracker su identificador, IP y puerto, el rango de capas alojadas, y la RAM/núcleos donados.
- Si usas el cliente de chat: tu texto se convierte en tensores que viajan a los nodos del enjambre para completar la inferencia. Esos tensores derivan de tu conversación.
- La compresión de los tensores no es cifrado; el proyecto soporta TLS/mTLS para que el tráfico no sea legible en tránsito, pero no hay una garantía formal de privacidad diferencial.
- No se envía el contenido de tus archivos, credenciales ni telemetría. No hay analítica ni base de datos central de usuarios.
Todo esto es verificable leyendo el código fuente, que es público.
Contribuir
Las pull requests son bienvenidas. El proyecto busca implementar, entre otras cosas, un tracker DHT y balanceo de carga dinámico. Abre un issue o PR en el repositorio de GitHub.