Pour le endpoint Google, vous pouvez utiliser soit la Generative Language API (pour les modèles Gemini), soit la Vertex AI API (pour les modèles Gemini, PaLM2 & Codey).
L'API Generative Language utilise une clé API, que vous pouvez obtenir depuis Google AI Studio.
Pour Vertex AI, vous avez besoin d'un fichier de clé JSON de compte de service, avec les accès appropriés configurés.
Les instructions pour les deux sont données ci-dessous.
Generative Language API (Gemini)
Voir ici pour la tarification et les limites de débit de l'API Gemini
⚠️ Bien que les modèles Google soient gratuits, ils utilisent vos entrées/sorties pour aider à améliorer le modèle, avec des données anonymisées vis-à-vis de votre compte Google et de votre clé API. ⚠️ Durant cette période, vos messages « peuvent être accessibles à des réviseurs formés ».
Pour utiliser les modèles Gemini via Google AI Studio, vous aurez besoin d'une clé API. Si vous n'en avez pas déjà une, créez une clé dans Google AI Studio.
Obtenez une clé API ici : aistudio.google.com
Une fois que vous avez votre clé, fournissez-la dans votre fichier .env, ce qui permet à tous les utilisateurs de votre instance de l'utiliser.
GOOGLE_KEY=mY_SeCreT_w9347w8_kEYOu, vous pouvez permettre aux utilisateurs de le fournir depuis l'interface en configurant ce qui suit :
GOOGLE_KEY=user_providedCertains proxies inverses ne prennent pas en charge l'en-tête X-goog-api-key. Vous pouvez configurer LibreChat pour utiliser l'en-tête Authorization à la place :
GOOGLE_AUTH_HEADER=truePuisque la récupération de la liste des modèles n'est pas encore prise en charge, vous devez définir les modèles que vous souhaitez utiliser dans le fichier .env.
Pour votre commodité, voici les derniers modèles en date du 18/05/24 qui peuvent être utilisés avec la Generative Language API :
GOOGLE_MODELS=gemini-1.5-flash-latest,gemini-1.0-pro,gemini-1.0-pro-001,gemini-1.0-pro-latest,gemini-1.0-pro-vision-latest,gemini-1.5-pro-latest,gemini-pro,gemini-pro-visionNotes :
- Un modèle gemini-pro ou
gemini-pro-visionest requis dans votre liste pour joindre des images. - Avec LibreChat, les modèles PaLM2 et Codey ne peuvent être accédés que via Vertex AI, et non via la Generative Language API.
- Seuls les modèles qui prennent en charge la méthode
generateContentpeuvent être utilisés nativement avec LibreChat + l'API Gen AI.
- Seuls les modèles qui prennent en charge la méthode
- Il n'est pas nécessaire de sélectionner
gemini-pro-visionpour les messages avec pièces jointes, car le changement sera effectué automatiquement en arrière-plan pour vous. - Puisque
gemini-pro-visionn'accepte pas les messages sans pièce jointe, les messages sans pièce jointe sont automatiquement basculés versgemini-pro, sans quoi Google renvoie une erreur. - Avec l'endpoint Google, vous ne pouvez pas utiliser Vertex AI et Generative Language API en même temps. Vous devez choisir l'un ou l'autre.
- Certains modèles PaLM/Codey et
gemini-pro-visionpeuvent échouer lorsquemaxOutputTokensest défini sur une valeur élevée. Si vous rencontrez ce problème, essayez de réduire la valeur via les paramètres de conversation.
Définir GOOGLE_KEY=user_provided dans votre fichier .env permet à la fois à la clé du compte de service Vertex AI (fichier JSON) et à la clé API Generative Language d'être fournies depuis l'interface comme suit :
Contexte d'URL
L'outil URL Context de Google permet aux modèles Gemini pris en charge de lire les URL incluses dans le message de l'utilisateur, telles que les pages web, les images et les PDF. Dans LibreChat, activez-le avec le paramètre url_context du endpoint Google.
preset:
endpoint: google
model: gemini-2.5-flash
url_context: trueVous pouvez également l'activer pour un endpoint personnalisé de type Google avec addParams ou des paramètres par défaut :
custom:
- name: 'Google Gateway'
apiKey: '${GOOGLE_KEY}'
baseURL: 'https://gateway.example.com/v1'
models:
default: ['gemini-2.5-flash']
customParams:
defaultParamsEndpoint: google
addParams:
url_context: trueurl_context est disponible sur les modèles de texte Gemini pris en charge, y compris les modèles Gemini 2.5+ et Gemini 3.x. Les liens YouTube sont traités séparément avec la compréhension vidéo native de Gemini lorsque url_context est activé, car l'outil URL Context de Google ne prend pas directement en charge les URL YouTube.
Vertex AI
Voir ici pour la tarification et les limites de débit de l'API Vertex
Pour configurer les LLM de Google (via Google Cloud Vertex AI), inscrivez-vous d'abord à Google Cloud : cloud.google.com
Vous pouvez généralement obtenir 300 $ de crédit de départ, ce qui rend cette option gratuite pendant 90 jours.
- Une fois inscrit, activez l'API Vertex AI sur Google Cloud :
- Allez sur la page Vertex AI de la console Google Cloud
- Cliquez sur
Enable APIsi vous y êtes invité
- Créez un compte de service avec le rôle Vertex AI :
- Cliquez ici pour créer un compte de service
- Sélectionner ou créer un projet
- Saisissez un ID de compte de service (requis), le nom et la description sont facultatifs
- Cliquez sur "Create and Continue" pour attribuer au moins le rôle "Vertex AI User"
- Cliquez sur "Continue/Done"
- Créez une clé JSON à enregistrer dans votre répertoire de projet :
- Retournez à la page des comptes de service
- Sélectionnez votre compte de service
- Cliquez sur "Keys"
- Cliquez sur « Add Key » puis sur « Create new key »
- Choisissez JSON comme type de clé et cliquez sur "Create"
- Téléchargez le fichier de clé et renommez-le 'auth.json'
- Enregistrez-le dans le répertoire du projet, dans
/api/data/
Alternative : Utilisation de GOOGLE_SERVICE_KEY_FILE
Au lieu d'enregistrer le fichier de clé dans /api/data/auth.json, vous pouvez utiliser la variable d'environnement GOOGLE_SERVICE_KEY_FILE pour spécifier le chemin d'accès à votre fichier de clé de compte de service. Cela offre plus de flexibilité dans la gestion de vos identifiants. Consultez la section sur les variables d'environnement ci-dessous pour plus de détails.
Enregistrer votre fichier de clé JSON dans le répertoire du projet, ce qui permet à tous les utilisateurs de votre instance LibreChat de l'utiliser.
Alternativement, vous pouvez permettre aux utilisateurs de le fournir depuis l'interface en configurant ce qui suit :
# Note: this configures both the Vertex AI Service Account JSON key file
# and the Generative Language API key to be provided from the frontend.
GOOGLE_KEY=user_providedVous pouvez également spécifier le fichier de clé de compte de service en utilisant la variable d'environnement GOOGLE_SERVICE_KEY_FILE :
# Path to the service account JSON key file
GOOGLE_SERVICE_KEY_FILE=/path/to/auth.json
# Or provide as a URL
GOOGLE_SERVICE_KEY_FILE=https://example.com/path/to/auth.json
# Or provide as stringified JSON
GOOGLE_SERVICE_KEY_FILE='{"type":"service_account","project_id":"your-project",...}'
# Or provide as base64 encoded JSON
GOOGLE_SERVICE_KEY_FILE=eyJ0eXBlIjogInNlcnZpY2VfYWNjb3VudCIsICJwcm9qZWN0X2lkIjogInlvdXItcHJvamVjdC1pZCIsIC4uLn0=Ceci est particulièrement utile pour les fonctionnalités qui nécessitent une authentification Vertex AI, telles que les capacités OCR.
Vous pouvez également spécifier l'emplacement Google Cloud pour les requêtes de l'API Vertex AI :
# Google Cloud region for Vertex AI
GOOGLE_LOC=us-central1
# Alternative region for Gemini Image Generation (defaults to global)
GOOGLE_CLOUD_LOCATION=globalPuisque la récupération de la liste des modèles n'est pas encore prise en charge, vous devez définir les modèles que vous souhaitez utiliser dans le fichier .env.
Pour votre commodité, voici les derniers modèles en date du 18/05/24 qui peuvent être utilisés avec la Generative Language API :
GOOGLE_MODELS=gemini-1.5-flash-preview-0514,gemini-1.5-pro-preview-0514,gemini-1.0-pro-vision-001,gemini-1.0-pro-002,gemini-1.0-pro-001,gemini-pro-vision,gemini-1.0-proSi vous utilisez Docker
If you're using docker and want to provide the auth.json file, you will need to also mount the volume in docker-compose.override.yml
version: '3.4'
services:
api:
volumes:
- type: bind
source: ./api/data/auth.json
target: /app/api/data/auth.jsonParamètres de sécurité Google
Pour définir les paramètres de sécurité pour Vertex AI et Generative Language API, vous pouvez configurer les éléments suivants dans votre fichier .env :
GOOGLE_SAFETY_SEXUALLY_EXPLICIT=BLOCK_ONLY_HIGH
GOOGLE_SAFETY_HATE_SPEECH=BLOCK_ONLY_HIGH
GOOGLE_SAFETY_HARASSMENT=BLOCK_ONLY_HIGH
GOOGLE_SAFETY_DANGEROUS_CONTENT=BLOCK_ONLY_HIGH
GOOGLE_SAFETY_CIVIC_INTEGRITY=BLOCK_ONLY_HIGHVous pouvez également exclure les paramètres de sécurité en définissant ce qui suit dans votre fichier .env, ce qui utilisera les paramètres par défaut du fournisseur. Cela peut être utile si vous rencontrez des problèmes avec des paramètres de sécurité spécifiques.
GOOGLE_EXCLUDE_SAFETY_SETTINGS=trueREMARQUE : Vous n'avez pas accès au paramètre BLOCK_NONE par défaut.
Pour utiliser ce paramètre restreint HarmBlockThreshold, vous devrez soit :
- (a) Obtenez l'accès via une liste d'autorisation (allowlist) par l'intermédiaire de votre équipe de compte Google
- (b) Basculez votre type de compte vers une facturation mensuelle sur facture en suivant ces instructions : https://cloud.google.com/billing/docs/how-to/invoiced-billing
Notes :
- L'endpoint Google prend en charge tous les Shared Endpoint Settings via le fichier de configuration
librechat.yaml, y comprisstreamRate,headers,titleModel,titleMethod,titlePrompt,titlePromptTemplateettitleEndpoint.
Que pensez-vous de ce guide ?