Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Google

W przypadku endpointu Google możesz użyć albo Generative Language API (dla modeli Gemini), albo Vertex AI API (dla modeli Gemini, PaLM2 i Codey).

Generative Language API korzysta z klucza API, który można uzyskać w Google AI Studio.

W przypadku Vertex AI potrzebujesz pliku klucza JSON konta serwisowego (Service Account) ze skonfigurowanym odpowiednim dostępem.

Instrukcje dla obu przypadków podano poniżej.

Generative Language API (Gemini)

Zobacz tutaj cennik i limity zapytań dla Gemini API

⚠️ Chociaż modele Google są darmowe, wykorzystują one Twoje dane wejściowe/wyjściowe do ulepszania modelu, przy czym dane są usuwane z identyfikatorów powiązanych z Twoim kontem Google i kluczem API. ⚠️ W tym okresie Twoje wiadomości „mogą być dostępne dla przeszkolonych recenzentów”.

Aby korzystać z modeli Gemini za pośrednictwem Google AI Studio, będziesz potrzebować klucza API. Jeśli jeszcze go nie masz, utwórz klucz w Google AI Studio.

Uzyskaj klucz API tutaj: aistudio.google.com

Gdy już posiadasz swój klucz, wprowadź go w pliku .env, co pozwoli wszystkim użytkownikom Twojej instancji na korzystanie z niego.

GOOGLE_KEY=mY_SeCreT_w9347w8_kEY

Alternatywnie, możesz umożliwić użytkownikom podanie go z poziomu interfejsu użytkownika, ustawiając następujące opcje:

GOOGLE_KEY=user_provided

Niektóre reverse proxy nie obsługują nagłówka X-goog-api-key. Możesz skonfigurować LibreChat tak, aby zamiast tego używał nagłówka Authorization:

GOOGLE_AUTH_HEADER=true

Ponieważ pobieranie listy modeli nie jest jeszcze obsługiwane, należy ustawić modele, których chcesz używać, w pliku .env.

Dla Twojej wygody, poniżej znajdują się najnowsze modele (stan na 18.05.24), których można używać z 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-vision

Uwagi:

  • Model gemini-pro lub gemini-pro-vision są wymagane na Twojej liście, aby móc załączać obrazy.
  • W LibreChat dostęp do modeli PaLM2 oraz Codey jest możliwy wyłącznie za pośrednictwem Vertex AI, a nie Generative Language API.
    • Tylko modele obsługujące metodę generateContent mogą być używane natywnie z LibreChat + Gen AI API.
  • Wybieranie gemini-pro-vision dla wiadomości z załącznikami nie jest konieczne, ponieważ zostanie on automatycznie przełączony w tle.
  • Ponieważ gemini-pro-vision nie akceptuje wiadomości bez załączników, wiadomości bez załączników są automatycznie przełączane na gemini-pro, w przeciwnym razie Google odpowiada błędem.
  • W przypadku endpointu Google nie można używać jednocześnie Vertex AI oraz Generative Language API. Należy wybrać jedną z tych opcji.
  • Niektóre modele PaLM/Codey oraz gemini-pro-vision mogą nie działać poprawnie, gdy maxOutputTokens jest ustawione na wysoką wartość. Jeśli napotkasz ten problem, spróbuj zmniejszyć tę wartość w parametrach konwersacji.

Ustawienie GOOGLE_KEY=user_provided w pliku .env sprawia, że zarówno klucz pliku JSON konta serwisowego Vertex AI, jak i klucz API Generative Language będą dostarczane z poziomu interfejsu użytkownika w następujący sposób:

image

Kontekst URL

Narzędzie URL Context od Google pozwala wspieranym modelom Gemini odczytywać adresy URL zawarte w wiadomości użytkownika, takie jak strony internetowe, obrazy i pliki PDF. W LibreChat włączysz je za pomocą parametru url_context dla endpointu Google.

preset:
  endpoint: google
  model: gemini-2.5-flash
  url_context: true

Możesz również włączyć to dla niestandardowego endpointu w stylu Google za pomocą addParams lub domyślnych parametrów:

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: true

url_context jest dostępny w obsługiwanych modelach tekstowych Gemini, w tym w modelach Gemini 2.5+ i Gemini 3.x. Linki do YouTube są obsługiwane oddzielnie za pomocą natywnej funkcji rozumienia wideo Gemini, gdy url_context jest włączony, ponieważ narzędzie URL Context od Google nie obsługuje bezpośrednio adresów URL YouTube.

Vertex AI

Zobacz tutaj cennik i limity szybkości Vertex API

Aby skonfigurować modele LLM od Google (przez Google Cloud Vertex AI), najpierw zarejestruj się w Google Cloud: cloud.google.com

Zazwyczaj możesz otrzymać 300 $ kredytu na start, co sprawia, że ta opcja jest darmowa przez 90 dni.

  1. Po zarejestrowaniu się, włącz Vertex AI API w Google Cloud:
  2. Utwórz konto serwisowe z rolą Vertex AI:
    • Kliknij tutaj, aby utworzyć konto serwisowe
    • Wybierz lub utwórz projekt
    • Wprowadź identyfikator konta serwisowego (wymagane), nazwa i opis są opcjonalne
      • image
    • Kliknij „Create and Continue”, aby nadać co najmniej rolę „Vertex AI User”
      • image
    • Kliknij „Continue/Done”
  3. Utwórz klucz JSON, aby zapisać go w katalogu swojego projektu:
    • Wróć do strony Konta usług
    • Wybierz swoje konto serwisowe
    • Kliknij „Keys”
      • image
    • Kliknij „Add Key”, a następnie „Create new key”
      • image
    • Wybierz JSON jako typ klucza i kliknij „Create”
    • Pobierz plik klucza i zmień jego nazwę na 'auth.json'
    • Zapisz go w katalogu projektu, w /api/data/
      • image

Alternatywa: Użycie GOOGLE_SERVICE_KEY_FILE

Zamiast zapisywać plik klucza w /api/data/auth.json, możesz użyć zmiennej środowiskowej GOOGLE_SERVICE_KEY_FILE, aby określić ścieżkę do pliku klucza konta serwisowego. Zapewnia to większą elastyczność w zarządzaniu poświadczeniami. Więcej szczegółów znajduje się w poniższej sekcji dotyczącej zmiennych środowiskowych.

Zapisanie pliku klucza JSON w katalogu projektu, co pozwala wszystkim użytkownikom Twojej instancji LibreChat na korzystanie z niego.

Alternatywnie, możesz umożliwić użytkownikom podanie go z poziomu interfejsu, ustawiając następujące opcje:

# 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_provided

Możesz również określić plik klucza konta serwisowego, używając zmiennej środowiskowej 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=

Jest to szczególnie przydatne w przypadku funkcji wymagających uwierzytelniania Vertex AI, takich jak możliwości OCR.

Możesz również określić lokalizację Google Cloud dla żądań Vertex AI API:

# Google Cloud region for Vertex AI
GOOGLE_LOC=us-central1

# Alternative region for Gemini Image Generation (defaults to global)
GOOGLE_CLOUD_LOCATION=global

Ponieważ pobieranie listy modeli nie jest jeszcze obsługiwane, należy ustawić modele, których chcesz używać, w pliku .env.

Dla Twojej wygody, poniżej znajdują się najnowsze modele (stan na 18.05.24), których można używać z 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-pro

Jeśli używasz Docker

Jeśli używasz Docker i chcesz dostarczyć plik auth.json, będziesz musiał również zamontować wolumen w pliku docker-compose.override.yml

version: '3.4'

services:
  api:
    volumes:
      - type: bind
        source: ./api/data/auth.json
        target: /app/api/data/auth.json

Ustawienia bezpieczeństwa Google

Aby ustawić ustawienia bezpieczeństwa zarówno dla Vertex AI, jak i Generative Language API, możesz skonfigurować poniższe parametry w swoim pliku .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_HIGH

Możesz również wykluczyć ustawienia bezpieczeństwa, ustawiając poniższą wartość w pliku .env, co spowoduje użycie ustawień domyślnych dostawcy. Może to być pomocne, jeśli napotykasz problemy z określonymi ustawieniami bezpieczeństwa.

GOOGLE_EXCLUDE_SAFETY_SETTINGS=true

UWAGA: Domyślnie nie masz dostępu do ustawienia BLOCK_NONE. Aby użyć tego ograniczonego ustawienia HarmBlockThreshold, będziesz musiał:

Uwagi:

  • Endpoint Google obsługuje wszystkie Shared Endpoint Settings za pośrednictwem pliku konfiguracyjnego librechat.yaml, w tym streamRate, headers, titleModel, titleMethod, titlePrompt, titlePromptTemplate oraz titleEndpoint

Jaka jest ta instrukcja?