← Knowledge base

Garder une requête dans l'UE

Comment exiger un traitement UE-seul sur une requête, comment la localisation d'une machine est établie, et ce que cette garantie couvre exactement — et ce qu'elle ne couvre pas.

Certains travaux ne peuvent pas quitter l'Union européenne. Si c'est votre cas, une phrase sur notre site ne vous sert pas à grand-chose — il vous faut une propriété de la requête. C'en est une.

La demander

Un header. Tout le reste demeure un appel compatible OpenAI ordinaire :

curl https://app.elephantpool.ai/api/gateway/v1/chat/completions   -H "Authorization: Bearer $ELEPHANTPOOL_API_KEY"   -H "X-ElephantPool-Require: region:eu"   -H "Content-Type: application/json"   -d '{"model":"qwen3.8-27b","messages":[{"role":"user","content":"Bonjour"}]}'

Un header plutôt qu'un champ du corps, parce que toute bibliothèque cliente OpenAI permet de poser des headers par défaut, et presque aucune ne laisse passer un champ inconnu à travers ses propres vérifications de types. Si vous écrivez le JSON à la main, "require": "region:eu" marche aussi.

L'exigence est un tag préfixe:valeur. region:eu est celle que la plupart des gens veulent ; country:be resserre à un seul pays, et gpu:nvidia épingle un vendeur quand un kernel dont vous dépendez l'exige.

Ce qui se passe alors

Le scheduler ne confie ce job qu'à une machine dont les propres tags couvrent ce que vous avez demandé. Pas « préfère » — uniquement. Il n'y a pas de repli vers un hôte presque-mais-pas-tout-à-fait quand la file est chargée, parce qu'un repli rendrait tout le dispositif décoratif.

Si rien dans la flotte ne peut la satisfaire, vous recevez un 503 immédiat nommant l'exigence, plutôt qu'une requête qui attend jusqu'au bout du chrono et rapporte un timeout. Un mauvais diagnostic deux minutes plus tard est pire qu'un bon tout de suite.

Comment la localisation d'une machine est établie

Depuis l'adresse d'où elle se connecte, résolue de notre côté contre une base de pays locale.

La machine n'est jamais interrogée. C'est le point qui compte : un hôte capable de déclarer son propre region:eu viderait la garantie de son sens, donc mahout n'envoie pas de pays et il n'existe aucun champ pour ça. Le tag est dérivé côté serveur, ou il n'existe pas.

Ça échoue fermé. Pas de base, une adresse irrésoluble, un pays inconnu — tout cela ne produit aucun tag de région, et une machine sans tag de région ne reçoit jamais de travail qui en exige un. Une revendication non prouvée vaut moins que pas de revendication.

Nous ne gardons pas non plus l'adresse. Une IP est une donnée personnelle, et nous disons ne pas garder ce dont nous n'avons pas besoin — ce qui doit valoir pour les hôtes comme pour les clients. Ce qui est stocké : le pays et un hash salé qui n'est jamais comparé qu'à lui-même, pour qu'une machine qui déménage soit remarquée et re-taguée. La résolution est un fichier local, pas un service tiers : envoyer l'adresse de chaque hôte à une API de géolocalisation ferait fuiter exactement ce que nous promettons de ne pas collecter.

Ce que cela prouve et ne prouve pas

  • Cela prouve que la machine qui a produit vos tokens s'est présentée avec une adresse allouée à un pays de l'UE ou de l'EEE au moment de se connecter, et que le scheduler a refusé de router votre job ailleurs.
  • Cela ne prouve pas l'emplacement physique du matériel. La géolocalisation par adresse est un indice, pas une attestation, et un hôte déterminé pourrait router son trafic par un réseau européen.

L'attestation matérielle — une déclaration signée par le processeur de sécurité de la machine elle-même — fermerait cet écart ; elle est sur la feuille de route, pas dans le produit. D'ici là, nous décrivons ceci comme du placement par adresse, parce que c'est ce que c'est.

Deux choses sont déjà plus fortes que la revendication de localisation, et pèsent plus dans la plupart des questions de conformité : le plan de contrôle tourne dans l'UE sur du matériel que cette société possède, sans maison mère américaine et donc sans obligation CLOUD Act qui l'atteigne ; et les prompts ne sont conservés nulle part, ce qui rend la question de leur bref lieu de traitement bien plus petite. Voir sécurité et confidentialité.

Où les hôtes voient cela

La page de chaque machine dans le dashboard affiche son placement, lu depuis les mêmes tags que le scheduler compare — jamais depuis un champ plus joli qui pourrait contredire le routage. Une machine dont la localisation n'est pas établie le dit, et explique qu'elle prend quand même le travail ordinaire.

À lire aussi

Model catalogue · Download mahout · How the whole system works · Blog