Aller au contenu

Retour à Guardrino

Intégration · Disponible

Réponses en streaming

Une réponse en streaming est vérifiée au fur et à mesure. Si elle enfreint la politique, le flux se termine par une erreur.

Statut : disponible. Cette intégration est construite et testée. HisnLabs livre Guardrino aux entreprises du programme pilote ; certains réglages peuvent encore changer avant la diffusion générale.

Référence développeur · Guide d’installation · Plateformes d’IA · Fiche du modèle ouvert · Proxy compatible OpenAI · LiteLLM · Proxy de sécurité MCP · Tutoriel : application compatible OpenAI · Tutoriel : LiteLLM · Tutoriel : outils MCP

Essayez-le dès aujourd’hui Guardrino-t7 Open, une version antérieure de notre classifieur, est publique sur Hugging Face sous licence Apache-2.0. La démo fonctionne dans votre navigateur : ce que vous tapez reste sur votre appareil. Démo en direct · Fiche du modèle · La même démo sur Hugging Face

Fonctionnement

Avec "stream": true, le modèle envoie sa réponse par morceaux, en événements serveur (SSE). Guardrino lit le texte à mesure qu’il s’accumule et lui applique les contrôles de sortie.

curl -N https://guardrino.example/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "your-model", "stream": true, "messages": [{"role": "user", "content": "Hello"}]}'

En cas de violation, le flux se termine par un événement d’erreur. Les morceaux déjà reçus par le client ne peuvent pas être rappelés.

data: {"choices":[{"delta":{"content":"The account number is "}}]}

data: {"error":{"message":"The request was blocked by Guardrino policy.","type":"guardrino_blocked","param":null,"code":"content_blocked","request_id":"req-42"}}

# the stream ends here: no "data: [DONE]" follows

Retenir la réponse jusqu’à sa vérification

Si rien ne doit atteindre l’utilisateur avant d’avoir été vérifié, réglez buffer_output = true. Guardrino retient alors la réponse, la vérifie en entier et ne l’envoie que si elle passe. Le coût : l’utilisateur ne voit rien tant que le modèle n’a pas terminé.

[proxy]
upstream = "https://llm.example/v1"
buffer_output = true       # nothing is sent until the whole reply has been checked
stream_check_chars = 256   # when false: check the reply every 256 new characters, and once more before [DONE]
buffer_outputComportement
falseLes morceaux sont transmis dès leur arrivée. Une violation termine le flux ; les morceaux précédents restent chez le client.
trueLa réponse est retenue et vérifiée avant tout envoi.

À choisir par déploiement : le rendu en direct du streaming, ou la garantie qu’une réponse refusée n’est jamais affichée.

Demander un accès anticipé