Présentation
PS5LM transforme une PlayStation 5 jailbreakée en serveur d’inférence local. Le logiciel charge un modèle au format GGUF sur le GPU RDNA 2 de la console et expose une API compatible OpenAI (/v1/chat/completions) ainsi que l’API Anthropic (/v1/messages). Aucun PC, aucun cloud et aucune clé d’accès ne sont requis ; les requêtes proviennent de n’importe quel appareil du réseau domestique.
Architecture et fonctionnement
Le cœur de PS5LM repose sur llama.cpp compilé avec le backend Vulkan de ggml‑vulkan. Sur le PS5, le pilote RADV (via le projet PS5_Vulkan) exploite les 11,4 Go de mémoire partagée du GPU pour stocker le modèle et son contexte. Le planificateur interne analyse chaque fichier GGUF, sélectionne la plus grande fenêtre de contexte et le cache optimal qui tiennent dans la mémoire libre, puis le place dans la liste « Suggested », alimentée par des mesures réalisées directement sur la console.
Une fois le modèle chargé, le service écoute sur le port 8081. Un client peut appeler l’API OpenAI :
curl http://<console>:8081/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{"model":"gguf-model","messages":[{"role":"user","content":"Hello"}]}'
Le même point d’accès accepte les modèles de décision (d1, Clef, OpenJev) via l’endpoint /v1/systemone, renvoyant un choix, un score et une réponse binaire en une passe de calcul.L’interface TV montre chaque requête en temps réel : appareil source, texte demandé et réponse progressive. Un tableau de bord console trace température, consommation, charge GPU/CPU sur les deux dernières minutes ou la dernière heure, offrant une visibilité immédiate sur les contraintes thermiques.
Analyse des performances et limites
Le GPU RDNA 2 du PS5, couplé à Vulkan, permet d’exécuter des modèles jusqu’à 9 B paramètres (ex. Qwen 3.5 9B) avec une latence de quelques centaines de millisecondes pour des requêtes de type chat. La capacité de 11,4 Go impose une limite stricte : les modèles plus volumineux doivent être quantifiés ou découpés, sinon le chargeur refuse le modèle. La prise en charge d’images (Gemma 4, MiniCPM‑V, d1) montre que le pipeline ggml‑vulkan gère les projecteurs d’image, mais la bande passante du bus PCIe interne du PS5 reste un facteur de goulot d’étranglement pour les entrées haute résolution.
Le système dépend d’une console jailbreakée (firmware 7.00‑13.60) et de plusieurs payloads homebrew : ps5-homebrew-ui, ps5-exporter, ainsi que des patches Mesa pour RADV. Cette chaîne d’outils n’est pas supportée par Sony ; toute mise à jour du firmware peut casser la compatibilité, ce qui constitue un risque de stabilité. De plus, l’exposition d’une API OpenAI sur le réseau domestique nécessite une configuration réseau sécurisée pour éviter les accès non autorisés.
En résumé, PS5LM démontre que la puissance graphique d’une console de jeu peut être réaffectée à l’inférence de grands modèles de langage, tout en offrant une interface utilisateur native et un monitoring en temps réel. Les contraintes de mémoire, la dépendance au jailbreak et la nécessité de gérer la sécurité réseau restent les principaux obstacles à une adoption large.