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

Agents API (Bèta)

Toegang krijgen tot LibreChat-agents via OpenAI-compatibele en Open Responses API-endpoints

Bètafunctie

De Agents API bevindt zich momenteel in bèta. Endpoints, request/response-formaten en gedrag kunnen veranderen naarmate we toewerken naar een stabiele release.

LibreChat stelt je agents beschikbaar via twee API-compatibele interfaces, waardoor externe applicaties, scripts en services programmatisch met je agents kunnen communiceren.

Overzicht

De Agents API biedt twee interfaces:

  • OpenAI-compatibele Chat CompletionsPOST /api/agents/v1/chat/completions
  • Open Responses APIPOST /api/agents/v1/responses

Beide worden geverifieerd via API-sleutels en ondersteunen streaming-antwoorden, waardoor het eenvoudig is om LibreChat-agents te integreren in bestaande workflows die al gebruikmaken van OpenAI SDK's of vergelijkbare tools.

LibreChat adopteert Open Responses als zijn primaire API-framework voor het bedienen van agents. Hoewel de Chat Completions endpoint achterwaartse compatibiliteit biedt met bestaande OpenAI-compatibele tools, vertegenwoordigt de Open Responses endpoint de toekomstige richting.

De Agents API inschakelen

De Agents API is beveiligd achter de remoteAgents interface-configuratie. Alle rechten staan standaard op false.

interface:
  remoteAgents:
    use: true
    create: true

Zie Interface Configuration — remoteAgents voor alle beschikbare opties.

Let op: Beheerders (admin users) hebben standaard alle externe agent-rechten ingeschakeld.

API Key Management

Zodra remoteAgents.use en remoteAgents.create zijn ingeschakeld, kunnen gebruikers API-sleutels genereren vanuit de LibreChat UI. Deze sleutels verifiëren verzoeken aan de Agents API.

Authenticatie

De Agents API ondersteunt twee authenticatiemethoden die onafhankelijk of samen kunnen worden gebruikt.

API-sleutel

API key-authenticatie is standaard ingeschakeld. Genereer API-keys vanuit de LibreChat UI zodra remoteAgents.use en remoteAgents.create zijn ingeschakeld.

Authorization: Bearer <YOUR_API_KEY>

OIDC Bearer Token

Voor machine-to-machine scenario's waarbij uw infrastructuur al over een OIDC-provider beschikt, kunt u direct authenticeren met OIDC Bearer-tokens zonder een LibreChat API-sleutel.

Configureer OIDC-authenticatie in librechat.yaml:

endpoints:
  agents:
    remoteApi:
      auth:
        apiKey:
          enabled: false
        oidc:
          enabled: true
          issuer: https://auth.example.com/realms/myrealm
          # jwksUri is optional and auto-discovered from issuer if omitted
          audience: my-client-id

Roep vervolgens de API aan met je OIDC-toegangstoken:

curl -X POST https://your-librechat-instance/api/agents/v1/responses \
  -H "Authorization: Bearer YOUR_OIDC_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"model": "agent_abc123", "input": "Hello!"}'

Het OIDC-token moet toebehoren aan een gebruiker die al bestaat in LibreChat. Bij het matchen wordt eerst de sub claim gebruikt, en vervolgens wordt teruggevallen op email, preferred_username of upn.

Zie Agents Endpoint - remoteApi voor alle configuratieopties.

Endpoints

Chat Completions (OpenAI-compatible)

POST /api/agents/v1/chat/completions

Gebruik elke OpenAI-compatibele SDK door deze te verwijzen naar je LibreChat-instantie. De model parameter komt overeen met een agent-ID.

Voorbeeld met curl:

curl -X POST https://your-librechat-instance/api/agents/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "agent_abc123",
    "messages": [
      {"role": "user", "content": "Hello, what can you help me with?"}
    ],
    "stream": true
  }'

Voorbeeld met OpenAI SDK (Python):

from openai import OpenAI

client = OpenAI(
    base_url="https://your-librechat-instance/api/agents/v1",
    api_key="YOUR_API_KEY"
)

response = client.chat.completions.create(
    model="agent_abc123",
    messages=[{"role": "user", "content": "Hello!"}],
    stream=True
)

for chunk in response:
    print(chunk.choices[0].delta.content, end="")

Modellen weergeven

GET /api/agents/v1/models

Geeft beschikbare agents terug als modellen. Handig om te ontdekken welke agents toegankelijk zijn met jouw API-sleutel.

Open Responses API

POST /api/agents/v1/responses

Het Open Responses endpoint volgt de Open Responses specification, een open inferentiestandaard geïnitieerd door OpenAI en gebouwd door de open-source AI-community. Het is ontworpen voor agent-gebaseerde workflows met native ondersteuning voor redeneren, toolgebruik, gestructureerde outputs en streaming semantische events.

curl -X POST https://your-librechat-instance/api/agents/v1/responses \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "agent_abc123",
    "input": "What is the weather today?"
  }'

Tokengebruik bijhouden

Alle Agents API-verzoeken houden het tokengebruik bij ten opzichte van het saldo van de gebruiker (wanneer token-uitgaven zijn geconfigureerd). Zowel input- als output-tokens worden geteld, inclusief cache-tokens voor providers die deze ondersteunen (OpenAI, Anthropic).

Roadmap

  • Open Responses als primaire interface — We zijn van plan om de Open Responses endpoint uit te breiden met volledige ondersteuning voor agentic loops, tool orchestration en streaming semantische events.
  • Anthropic Messages API — We zullen in de toekomst mogelijk ondersteuning toevoegen voor het Anthropic Messages API-formaat als een extra interface.

Hoe is deze gids?