workbench et error-assistant) de chaque pod Ayakaleaf Pro. Le rôle de chaque paramètre, l’accès des utilisateurs et les quotas sont décrits dans Intégration de l’IA ; cette page explique comment l’intégrer dans Kubernetes.
Configuration
1
ConfigMap
30-config.yaml (additions)
AI_ENABLED doit valoir exactement "true". L’assistant n’apparaît que lorsque AI_ENABLED, AI_BASE_URL, AI_MODEL et AI_API_KEY sont tous définis.2
Secret
3
Appliquer, redémarrer et vérifier la passerelle depuis chaque pod
000 signifie qu’elle ne l’est pas.web_fetch récupère les pages via le même proxy que les fichiers URL externe ; les paramètres OVERLEAF_LINKED_URL_* limitent donc également ce que le modèle peut lire.
Plusieurs réplicas
Rien de plus. Le quota de jetons est comptabilisé dans Redis ; la consommation d’un utilisateur est donc la même sur chaque réplica, et une réinitialisation effectuée par un administrateur s’applique partout.Testé sur Kubernetes
Face à une simulation d’une passerelle compatible OpenAI, de Tavily et du point de terminaison MCP de GitBook (approuvés viaNODE_EXTRA_CA_CERTS depuis overleaf-certs), sur Kubernetes 1.37, nos tests de bout en bout réussissent : pour l’assistant IA sur trois réplicas derrière HAProxy (31 cas), les conversations avec appels d’outils et modifications suggérées, la recherche web et dans la documentation, la lecture de pages web via linked-url-proxy limitée par OVERLEAF_LINKED_URL_ALLOWED_RESOURCES, les pièces jointes images et PDF, le consentement, le quota de jetons comptabilisé dans Redis, l’IA désactivée pour un utilisateur et pour l’instance, et les connexions lentes vers la passerelle ; pour l’assistant d’erreurs sur un réplica (15 cas), les corrections suggérées, le consentement, le quota de jetons partagé et l’IA désactivée.
