Trois portes entre votre prompt et le modèle.

Chaque requête suit un seul chemin : inspectée, routée selon votre politique de résidence, scellée dans un registre infalsifiable.

clientyour SDKinspectDLP scanrouteresidencysealledgerresponsestreamed
Inspecter

Chaque requête est lue avant qu'un seul token ne bouge.

Sluis exécute un scan DLP déterministe sur le prompt : 60 détecteurs intégrés pour les PII, les données de santé et les secrets, dont un pack d'identifiants nationaux européens qui valide par somme de contrôle le BSN, le PESEL, le codice fiscale et neuf autres. Chaque correspondance est classifiée et la requête est étiquetée dans l'UE, avant le moindre envoi à un fournisseur.

Détecteurs de PII européennes
e-mailtéléphone · E.164IBAN · mod-97BSN NL · 11-proefPL PESELIT codice fiscalecarte bancaire · Luhn
Détecteurs de secrets
clés APIclés d'accès AWSclés privées PEM
Détection des noms de personnes

Les noms sont les données personnelles les plus difficiles à repérer par motif ; la détection des noms tient donc en quatre couches que vous activez à la demande : heuristiques de contexte, corrélation d'e-mails, un annuaire de noms par tenant, et le propre modèle de reconnaissance multilingue de Sluis, qui tourne à l'intérieur de votre déploiement et n'envoie jamais un nom à un tiers.

request.jsonDLP scan
IBANNL91 ABNA ●●●● ●●●● 28masked
NL BSN●●● ●●● ●●●masked
emailj●●●@●●●.nlmasked
API keysk-●●●…●●●blocked
modemaskblockallow-logpseudonymize

Traitez des données personnelles et des secrets. Le modèle ne les voit jamais.

Voici le mécanisme : Sluis scanne le prompt, remplace chaque valeur PII et chaque secret par un jeton stable, et ne transmet que des jetons au modèle. En sortie, il restitue les valeurs réelles, même en plein streaming, jeton par jeton, si bien que le fournisseur ne les voit jamais. La table de correspondance vit en mémoire et n'est jamais persistée.

your appSluisgatejohn@acme.com«EMAIL_1»«EMAIL_1»masks PIImodel«EMAIL_1»«EMAIL_1»only sees tokenSluisgate«EMAIL_1»john@acme.comjohn@acme.comrestoresyour app
Router selon la résidence

Déclarez où vos données peuvent aller. Sluis l'applique à chaque requête.

Associez chaque classe de données aux régions et fournisseurs qu'elle peut atteindre, avec une chaîne de repli explicite. Sluis évalue la politique à chaque appel : aucune exception, aucune sortie silencieuse.

  • Souverain européen par défaut

    D'emblée, les requêtes n'atteignent que des fournisseurs détenus par des entités de l'UE, comme Mistral et Scaleway, et des clouds en région UE. Les fournisseurs américains et chinois directs sont eux aussi disponibles, désactivés par défaut : autorisez-les dans la politique et Sluis applique exactement cette ligne.

  • La propriété, pas seulement la région

    Sluis signale chaque fournisseur par juridiction et propriété (owner_is_eu = false) pour l'exposition au CLOUD Act : une route américaine ou chinoise directe sera toujours un choix que vous voyez, jamais un choix fait à votre place.

  • Blocages fermes, pas du best-effort

    Si aucun fournisseur ne satisfait la politique, la requête est refusée à la porte et renvoyée à votre application avec un code de motif clair.

residency.policy · class: PHIenforced
requestFR · primaryFR · fallbackUS · allowedCN · blocked
EU · France
scaleway-fr · owner_is_eu=true
primary
EU · France
mistral-fr · owner_is_eu=true
fallback
US · East
openai-us · owner_is_eu=false
allowed · policy
CN · Hangzhou
deepseek-cn · owner_is_eu=false
blocked · policy
Sceller dans le registre

Un registre qu'un auditeur croira, parce qu'il prouve lui-même son intégrité.

Le hash de chaque entrée est un SHA-256 du hash précédent et de la ligne canonique. Modifiez un champ n'importe où dans l'historique et tous les maillons en aval cassent. Exportez la chaîne en JSON Lines et n'importe qui peut la revérifier hors ligne.

audit.chain · last 4 entrieschain verified
14:22:07.118Z#4f9c2a e1b7d9 · scaleway-fr · PHIin-region
14:22:05.904Z#e1b7d9 7a3f10 · mistral-fr · PHIfallback
14:22:04.661Z#7a3f10 0c55ab · scaleway-fr · PIIin-region
14:22:02.330Z#0c55ab genesis · scaleway-fr · generalin-region
chaîné en SHA-256infalsifiableexport JSON Linesverify-chain hors ligne

Le droit à l'effacement (art. 17 RGPD) purge le contenu des requêtes, le cache et les identifiants fournisseurs, et préserve la chaîne de métadonnées, si bien que verify-chain passe toujours une fois les données disparues.

Les appels d'outils passent les mêmes trois portes.

Quand votre agent sollicite un outil via MCP, cet appel suit le même chemin qu'un prompt : inspecté, routé, scellé. Les autres passerelles MCP journalisent les appels d'outils ; Sluis prouve où ils ont tourné.

Inspecter l'appel d'outil

La même passe DLP scanne les arguments et les résultats des outils, à la recherche de PII, de données de santé et de secrets, avant qu'ils n'atteignent un serveur MCP, avec les mêmes modes mask, block ou allow-log.

Router la sortie d'outil

Un serveur MCP est tenu à votre politique de résidence comme n'importe quel fournisseur : une sortie d'outil hors de votre politique est bloquée à la porte. Un outil ne peut pas discrètement emporter vos données là où vous ne l'avez jamais autorisé.

Le sceller dans le même registre

L'appel d'outil et un hash de ses arguments sont chaînés dans le même registre infalsifiable que vos appels de modèle : un seul enregistrement, un seul verify-chain, prompts comme outils.

La seule passerelle MCP où chaque invocation d'outil passe Inspecter → Router → Sceller, pour que « c'est resté dans votre politique » couvre vos outils, pas seulement vos prompts.

Conçu pour ne jamais se mettre en travers de la requête.

La conformité ne doit pas vous coûter de latence. Le hot path est conçu pour que les contrôles s'exécutent sans jamais bloquer sur une base de données, un verrou ou un buffer.

Échelle

Sans état, par construction

Le plan de données ne conserve aucun état par requête : vous montez en charge en ajoutant des répliques. Le hot path ne bloque jamais sur Postgres : clés, politiques de résidence et registre des fournisseurs viennent d'un cache in-process.

scalabilité horizontalezéro BD sur le hot path
Audit

Scellé hors du hot path

Les écritures d'audit sont asynchrones et par lots. Une tâche de fond ajoute les lignes chaînées par hash, si bien que la réponse n'attend jamais le registre.

async + par lots
Streaming

Streamé, jamais bufferisé

Les réponses SSE passent en direct via un tee. Les tokens atteignent votre application au fil de leur génération, et le corps n'est jamais retenu entier en mémoire.

tee SSE
Budgets

Une dépense qui ne dérive pas

Les budgets sont débités à chaque requête en argent réel. Perdez Redis et la dépense se réconcilie depuis le registre d'audit durable ; si les deux sont illisibles, le contrôle échoue fermé.

registre micro-eurosréconciliééchec fermé
Vitesse

Mesuré, pas promis

Les contrôles ne coûtent presque rien, et vous n'avez pas à nous croire sur parole : le harnais de benchmark est mesuré porte active.

+1 ms de surcoût médianporte active vs ouvertemesuré en interneSee the benchmark →

Payez une seule fois la même réponse.

Activez par tenant un cache exact et un cache sémantique, tous deux isolés par tenant et chiffrés AEAD au repos. Un gain de coût et de latence qui n'affaiblit jamais la résidence : un hit reste vos données, dans votre région.

correspondance exactesémantique · pgvectorchiffré AEAD au reposisolé par tenantopt-in

Conçu pour la stack que vous avez déjà.

Compatible OpenAI à l'octet près. Gardez votre SDK, vos prompts, votre outillage. Pointez une base_url vers Sluis et ajoutez un en-tête de résidence quand vous voulez épingler une classe de trafic.

  • API compatible OpenAI

    /v1/chat/completions, /v1/embeddings, /v1/models : mêmes formats de requête, même streaming. Rien à réécrire.

  • Fonctionne avec vos SDK existants

    Clients OpenAI officiels, LangChain, simple curl. Aucune nouvelle bibliothèque à apprendre, aucun protocole propriétaire.

  • Une base_url, une clé

    Changez l'endpoint et créez une clé virtuelle dans la console, chacune avec sa propre liste de modèles autorisés, ses limites de débit et son budget de dépense.

  • Observabilité intégrée

    Métriques Prometheus et traces OTLP, étiquetées avec jurisdiction, owner et decision, directement dans votre Grafana.

shelldrop-in
# Same API. One endpoint. You set the residency policy.
# eu-sovereign is the safe default; allow more deliberately.
$ curl https://api.sluis.ai/v1/chat/completions \
  -H "Authorization: Bearer $SLUIS_KEY" \
  -H "X-Sluis-Residency: eu-sovereign" \
  -d '{ "model": "mistral/mistral-large", "messages": [...] }'

# → mistral-large @ mistral-fr · in-region
# → sealed · #4f9c2a · streamed

Voyez l'écluse à l'œuvre sur votre propre trafic.

Le prix catalogue de votre fournisseur plus 10% fixes. Pas de sièges, pas de minimums, pas de jeux de marge. Vos premiers 250K de tokens sont gratuits, et aucune requête ne quitte jamais votre politique de résidence.