L'IA,
vraiment anonyme.
Korai est un réseau d'ordinateurs européens qui exécutent des modèles d'IA libres. Quand vous envoyez un message, un serveur à Paris le confie au meilleur GPU disponible — particulier, labo, PME — pendant que des tickets cryptographiques aveugles rendent mathématiquement impossible de relier votre identité à vos conversations. Pas par promesse — par construction, vérifiable dans le code. Voici comment.
Le chat est gratuit pendant la bêta (crédit symbolique, sans paiement). Un Tier Pro avec facturation réelle arrive mi-2026.
Un chatGPT n'est pas l'autre.
Les trois grandes familles d'inférence IA aujourd'hui — et où Korai se place.
| Critère | SaaS centralisé (OpenAI, Anthropic, Gemini) | API européen souverain (Mistral, Le Chat) | Korai (pair-à-pair open-weight) |
|---|---|---|---|
| Juridiction des données | États-Unis (Cloud Act) | Union Européenne | UE · par hôte, vérifiable |
| Poids du modèle | Fermés, propriétaires | Open-weight (Mistral) ou fermés | Open-weight obligatoire |
| Infrastructure | Data-centers hyperscaler | Data-center souverain unique | Réseau distribué de GPUs |
| Rétention de contenu | 30 jours à plusieurs années | Variable selon le contrat | Aucune au niveau orchestrateur |
| Qui fournit le calcul | L'opérateur, exclusivement | L'opérateur, exclusivement | N'importe qui avec un GPU qui dort |
| Rémunération des hébergeurs | N/A | N/A | Part des crédits consommés (Tier Pro) |
Korai n'est pas un concurrent direct des LLMs fermés sur la qualité brute — on utilise les meilleurs modèles open-weight du moment. Le pari, c'est la topologie: distribuée plutôt que centralisée, auditable plutôt qu'opaque.
Un prompt, quatre étapes.
Aucune magie. Chaque étape est observable, chronométrée, et le code qui la régit est accessible.
4 niveaux. Pas besoin de choisir.
Le routeur évalue la complexité de votre demande et choisit le modèle adapté. Vous pouvez forcer un niveau via le paramètre `model`.
autofastbalanceddeepComment un GPU est choisi, concrètement.
La politique d'assignation est volontairement simple — on préfère un algorithme qu'on peut expliquer à un algorithme qu'on ne peut pas déboguer.
Un maillage européen, pas un data-center.
Chaque point représente un profil de worker pouvant rejoindre le réseau. La répartition géographique est illustrative — elle dépend, à chaque instant, des hôtes connectés.
Trois couches, zéro hyperscaler.
On vous doit la vérité technique, pas un diagramme marketing. Voici les pièces, dans leurs vrais langages et leurs vraies versions.
- Routage auto/fast/balanced/deep
- Aucun contenu de message en base
- Clés API stockées hashées (SHA-256)
- Redémarre sans perdre la file
- Modèle open-weight Gemma 4 (d'autres à venir)
- WebSocket persistant + heartbeat
- Un seul job à la fois, mémoire libérée après
- Pas de données persistées sur disque
- Chat web (page d'accueil)
- Korai Kode — agent CLI pour dev
- API /v1/chat/completions
- Historique stocké dans votre navigateur
Six couches de protection, pas une promesse marketing.
Chaque couche est une vraie pièce de logiciel qui tourne en production. Chacune a un nom mathématique, un fichier source, et un compromis honnête. Voici lesquelles, dans l'ordre où une requête les traverse.
Tickets cryptographiques aveugles
Votre navigateur fabrique des tickets que Korai signe sans pouvoir les voir. Quand vous dépensez un ticket plus tard, le serveur le valide — mais il n'a aucun moyen mathématique de retrouver à quelle session il l'avait remis. C'est le même algorithme que Cloudflare Privacy Pass utilise pour bloquer le tracking publicitaire.
Wallet local sans login
Vos tickets sont chiffrés dans le stockage de votre navigateur, ouvert avec une clé aléatoire générée la première fois et jamais envoyée à Korai. Aucun compte, aucun mot de passe à mémoriser, aucune adresse email exigée pour le mode gratuit.
Mur architectural billing ↔ chat
Korai gère deux bases de données strictement séparées : une pour la facturation (qui est abonné Pro), une pour les chats (combien de tickets ont été dépensés). Aucune clé étrangère ne traverse le mur. La question « quels chats a fait l'utilisateur X » n'a pas de réponse possible — c'est techniquement impossible, pas politique.
Receipts cryptographiques
Chaque chat émet une preuve d'inclusion signée par Korai — comme un reçu de courrier recommandé qui prouve qu'un envoi a eu lieu, sans révéler son contenu. Vous pouvez vérifier que votre chat a tourné, et que personne n'a réécrit l'historique a posteriori.
Mode Defense — multi-saut réseau
D'un clic, vous activez un chemin réseau à deux relais successifs dans des pays différents (Pays-Bas → Allemagne → France) avant que votre trafic atteigne Korai. Chaque relais ne connaît que le précédent et le suivant. Pour vous deanonymiser, un adversaire devrait obtenir simultanément les logs des trois maillons.
Mémoire verrouillée sur le worker
Pendant le calcul de votre réponse sur le GPU, le texte de votre prompt vit en mémoire pour quelques millisecondes. On le verrouille pour qu'il ne soit jamais écrit sur disque, exclu des core dumps, puis effacé par écrasement de chaque octet à la milliseconde où le calcul finit.
Ce qui arrive ensuite
Sprint en cours: remplacement des relais Defense (qui tournent tous sur Fly.io aujourd'hui) par un vrai mixnet Nymavec padding de paquets et trafic de couverture — pour fermer la dernière voie d'analyse par corrélation temporelle. Mi-2026 : achat anonyme par carte prépayée en kiosque, sans même donner votre nom.
Selon le GPU disponible, votre prompt suit l'un de ces deux chemins.
Les deux préservent intégralement votre anonymat. Le premier ajoute en plus une garantie matérielle quand le hardware le permet — c'est le routage par défaut sur tous les abonnements quand notre réseau a la capacité, et obligatoire sur les offres entreprise.
Routage automatique
Par défaut, l'orchestrateur Korai vous route vers Mode 1 quand un GPU compatible est disponible — y compris sur l'offre gratuite. Sinon vous tombez sur Mode 2 et votre message reste tout aussi anonyme. Les abonnements Entreprise sont strictement routés vers Mode 1 sans dégradation silencieuse possible.
- ▸Décision basée sur : tier d'abonnement, modèle choisi, session_id, charge des workers
- ▸Le contenu de votre prompt n'est JAMAIS lu pour prendre cette décision
- ▸Cliquez Mode 1 ou Mode 2 ci-dessus pour voir le détail de chaque chemin
Zone sécurisée sur le GPU
Votre message arrive chiffré et n'est déchiffré qu'à l'intérieur d'une zone matérielle isolée du reste de l'ordinateur — une enceinte où même l'opérateur de la machine ne peut pas regarder. Le GPU signe ensuite une attestation cryptographique que votre client peut vérifier : la preuve que oui, le calcul a bien tourné dans cette enceinte.
- NVIDIA H100
- NVIDIA H200
- B100 / B200 / GB200
- RTX Pro 6000 Blackwell
- Rubin (2026+)
Clé éphémère + mémoire verrouillée
Votre message arrive chiffré avec une clé qui n'existe que pendant votre session — une fois la conversation terminée, cette clé est effacée pour toujours, rendant tout déchiffrement futur impossible. Pendant l'inférence, le texte vit dans une zone mémoire verrouillée et incopiable, puis est immédiatement effacé.
- RTX 3090 / 4090 / 5090
- RTX 6000 Ada
- A100 80 GB
- Mac Studio M2 / M3 / M4 / M5
- MacBook Pro M-series
Dans les deux cas, votre anonymat est préservé.
Les six couches d'anonymisation décrites plus haut (tickets anonymes, deux fichiers séparés, clés éphémères, tickets temporels, code consultable, audit indépendant) fonctionnent identiquement dans les deux modes. La différence entre Mode 1 et Mode 2 ne porte que sur la dernière marche: la mémoire physique du GPU pendant le calcul. Sur Mode 1, c'est le matériel lui-même qui garantit l'isolation. Sur Mode 2, c'est l'empilement logiciel qui rend l'extraction prohibitivement coûteuse.
Routage transparent : vous n'avez rien à choisir. L'orchestrateur vous envoie automatiquement vers Mode 1 quand un GPU compatible est disponible — y compris sur l'offre gratuite. Sinon vous tombez sur Mode 2, et votre message reste tout aussi anonyme. Les abonnements Entreprisesont en revanche strictement routés vers Mode 1 — ou refusés si aucun GPU compatible n'est libre, sans dégradation silencieuse.
Anonyme par défaut. Defense quand vous le voulez.
Deux niveaux de protection, choisis explicitement par l'utilisateur. Le premier est toujours actif et suffit pour 99 % des usages. Le second se déclenche d'un clic quand vous voulez monter d'un cran face à un adversaire qui surveille le réseau.
Aucune trace côté serveur, identité masquée.
Activé pour tous, tout le temps, sans rien à configurer. Le contenu de vos messages n'est jamais stocké. Aucun lien possible entre votre identité (si vous avez un compte payant) et vos conversations.
- ✓Tickets cryptographiques aveugles(Privacy Pass / VOPRF P-384). Le serveur signe sans voir ce qu'il signe — l'émission et la dépense sont mathématiquement déliables.
- ✓Aucun JWT, aucun user_idn'est envoyé sur le chemin du chat. L'orchestrateur ne sait pas qui vous êtes.
- ✓Streaming SSE token par token, latence directe. Aucun coût visible.
Votre IP n'arrive jamais jusqu'à Korai.
Active le bouton « Defense » à côté du badge Anonyme et votre trafic chat est routé via deux relais successifs dans des pays différents avant d'atteindre l'orchestrateur. Chaque relais ne connaît que le hop précédent et le suivant. Pour vous deanonymiser, un adversaire devrait obtenir simultanémentles logs des deux relais et de l'orchestrateur.
- ✓Chemin multi-saut : navigateur → relais (AMS) → relais (FRA) → orchestrateur. Streaming SSE préservé bout-en-bout grâce à un flush par chunk.
- ✓Relais non-configurables: chaque relais est codé en dur sur un seul upstream. Impossible d'être détourné en open proxy.
- ✓Diversité géographique : Pays-Bas → Allemagne → France. Une demande judiciaire mono-pays voit au mieux un segment du chemin.
Ce que Defense mode ne fait pas (encore).
Les relais Korai tournent tous sur Fly.io. Une demande judiciaire à Fly directement pourrait corréler les logs cross-régions. La diversité géographique aide pour le jurisdiction shopping (pays différents = procédures différentes), mais pas contre la plateforme elle-même. Le saut suivant — vrai mixnet Nym avec padding et trafic de couverture — est la prochaine étape de la roadmap.
À garder en tête : le mode Anonyme par défaut est déjà solide pour 99 % des usages. Defense est pour les utilisateurs qui ont explicitement besoin de cacher leur IP à Korai — journalistes investigant en zone hostile, lanceurs d'alerte, ONG. Ce n'est pas nécessaire pour de la confidentialité personnelle ordinaire.
Comment l'orchestrateur route-t-il sans lire le prompt ?
Une vraie question : si Korai ne voit jamais le contenu de votre message, comment décide-t-il vers quel GPU vous envoyer ? La réponse tient en quatre métadonnées que le client envoie en clair, pendant que le contenu reste chiffré.
- ▸Votre tier d'abonnement(Free / Plus / Pro / Max / Entreprise). Détermine s'il faut un GPU CC ou si un worker hardened standard suffit.
- ▸Le modèle que vous avez choisi (Qwen 35B-A3B pour rapide, Qwen 27B dense pour raisonnement). Comme ChatGPT vous laisse choisir GPT-4 vs GPT-3.5 — c'est votre client qui le déclare.
- ▸Un identifiant de session opaque et la longueur du blob chiffré. Permet le sticky-routing (votre conversation reste sur le même worker pour réutiliser sa mémoire interne) sans révéler qui vous êtes.
- ▸L'état des workers : queue de demandes en cours, capacités déclarées, GPU disponible. Permet de choisir le least-busy parmi les éligibles.
- ✗Le texte de votre prompt
- ✗L'historique de votre conversation
- ✗Les images, fichiers, ou documents attachés
- ✗Le contenu de la réponse générée par le worker
- ✗Votre identité (le mur architectural billing↔chat rend la jointure impossible — voir transparence)
Ces données ne quittent jamais le canal chiffré entre votre appareil et le worker.
L'arbre de décision, en quatre étapes
- 1. Le tier détermine la politique CC (CCPreferred pour les consumer, CCRequired pour Entreprise).
- 2. Le modèle demandé filtre les workers compatibles (un Mac Studio ne sert pas Qwen 27B dense en mode Reasoning, par exemple).
- 3.L'affinity de session, si elle existe, prend le pas : on reste sur le même worker que les turns précédents pour ne pas rebatir le contexte.
- 4. Sinon, on choisit le least-loaded parmi les éligibles. Round-robin si aucune charge significative.
Corollaire pratique : une question quick et triviale « quelle heure est-il à Paris ? », posée par un user Free, est routée vers le worker Mac Studio ou RTX 4090 le plus libre quand les H100 sont occupés à servir des power users — et inversement, quand le réseau a de la capacité Confidential Compute disponible, même la question triviale du Free y atterrit. Le matching capacité ↔ besoin se fait implicitement par le filtre « modèle compatible » et la pression de charge, sans jamais avoir lu le prompt.
Qui paie, qui gagne.
Korai n'est pas gratuit par philosophie — c'est gratuit pendant la bêta parce que le modèle économique n'est pas encore déployé. Voici ce qui est prévu.
Nous ne prétendons pas déjà payer les hôtes. La tuyauterie de facturation existe mais elle n'est pas activée. Dès qu'elle le sera, le barème sera publié, auditable, et modifiable uniquement par vote.
Ce qu'on nous demande le plus.
Quelle différence entre Anonyme et Defense ?
Avez-vous un compte ? Une carte bleue ?
Quels modèles sont disponibles ?
Est-ce plus lent qu'OpenAI ?
Qui sont les hôtes GPU ? Peuvent-ils lire mes conversations ?
MADV_DONTDUMP, et effacée par écrasement à la milliseconde où le calcul finit. Voir la couche L6 ci-dessus. Un hôte qui voudrait quand même fouiller la RAM aurait besoin d'un accès root sur sa propre machine, ce qui sort du modèle de menace SaaS standard et ne s'applique pas si vous trustez vos workers (cas Entreprise) ou si vous activez le mode Confidential Compute (qui exclut même l'OS de l'hôte du périmètre de confiance).Puis-je vérifier qu'un GPU est bien européen ?
X-Korai-Region: eu-west. Si aucun worker conforme n'est dispo, la requête échoue proprement plutôt que de basculer hors-UE silencieusement.Est-ce open-source ?
Que se passe-t-il si Korai ferme demain ?
Ça marche avec les SDK OpenAI existants ?
/v1/chat/completions respecte le schéma OpenAI, y compris le streaming SSE. Changez l'URL de base et la clé — le reste du code n'a pas besoin de bouger. Les tool-calls sont supportés via la même sémantique.Puis-je déployer mon propre orchestrateur privé ?
Deux façons de participer.
Vous pouvez utiliser le réseau comme n'importe quel chat — ou le renforcer en prêtant votre GPU quand vous n'en avez pas besoin. Les deux comptent.
Pour tout le reste — API, contact, presse, précisions techniques — voir la documentation ou la page À propos.