Documentation

Documentation

LobeChat

Une installation autonome de LobeChat a besoin de trois variables d’environnement pour communiquer avec Kunavo : une clé, une URL de proxy et la liste des identifiants de modèle à afficher dans le sélecteur.

Définissez OPENAI_API_KEY sur votre clé sk-kn-…, OPENAI_PROXY_URL sur https://api.kunavo.com/v1, puis indiquez les identifiants souhaités dans OPENAI_MODEL_LIST. Claude et GPT partageront alors un seul sélecteur et un seul solde.

.env
OPENAI_API_KEY=sk-kn-...
OPENAI_PROXY_URL=https://api.kunavo.com/v1

# LobeChat only shows models it knows about, so name the ones you want.
OPENAI_MODEL_LIST=claude-sonnet-5,claude-haiku-4-5,claude-opus-5,gpt-5-6-terra
Le suffixe /v1 doit figurer dans OPENAI_PROXY_URL. LobeChat transmet les requêtes à l’URL que vous lui indiquez, sans reconstruire le chemin OpenAI. C’est pourquoi sa propre .env.example indique la valeur par défaut https://api.openai.com/v1 — suffixe compris.

Étape par étape

  1. Créez une clé sur /app/keys et copiez-la — elle n’est affichée qu’une seule fois.
  2. Ajoutez les trois variables à l’environnement de votre déploiement : dans le fichier .env pour une installation simple, ou dans le bloc environment pour Docker.
  3. Redémarrez le conteneur pour qu’il prenne en compte le nouvel environnement.
  4. Ouvrez LobeChat, démarrez une session et choisissez l’un des identifiants indiqués dans OPENAI_MODEL_LIST.
docker-compose.yml
services:
  lobe-chat:
    image: lobehub/lobe-chat
    ports:
      - "3210:3210"
    environment:
      OPENAI_API_KEY: sk-kn-...
      OPENAI_PROXY_URL: https://api.kunavo.com/v1
      OPENAI_MODEL_LIST: claude-sonnet-5,claude-haiku-4-5,gpt-5-6-terra

La documentation de référence de LobeChat sur ces variables se trouve sur la page des variables d’environnement des fournisseurs de modèles.

Vérifiez avant de déboguer le conteneur

Une seule requête permet de déterminer si l’échec vient du point de terminaison, de la clé ou de la liste des modèles de LobeChat. Si elle renvoie une liste JSON d’identifiants de modèle, l’URL et la clé fonctionnent ; si le sélecteur est ensuite vide, le problème vient de OPENAI_MODEL_LIST, et non du point de terminaison.

# Settles whether a failure is the endpoint, the key, or LobeChat.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

Quels identifiants indiquer

Tous les modèles de texte de Kunavo peuvent être ajoutés à OPENAI_MODEL_LIST. La liste complète figure sur la page des modèles et est récupérée en direct depuis GET /v1/models. Les tarifs sont en USD par million de jetons, entrée / sortie.

Identifiant du modèleEntrée / sortie sur KunavoUtilisation conseillée
claude-haiku-4-5$0.70 / $3.50Le modèle Claude le moins cher — pour les longues sessions de chat où le coût par échange compte
claude-sonnet-5$1.40 / $7.00Le meilleur équilibre par défaut entre qualité et prix
claude-opus-5$3.50 / $17.50Le niveau de qualité le plus élevé de Claude
gpt-5-6-terra$0.70 / $4.20Même clé, famille différente — aucun second fournisseur à configurer
Un client de chat renvoie toute la conversation à chaque échange : la consommation de jetons dans LobeChat augmente donc avec la longueur de la session, au lieu de rester constante pour chaque message. Le cache de prompt est le levier qui compte le plus dans ce cas. La facturation s’effectue par jeton à partir d’un solde prépayé, sans frais mensuels ; un mois d’inactivité ne coûte donc rien. Détails dans la facturation.

Questions fréquentes

Comment diriger LobeChat vers un point de terminaison personnalisé compatible avec OpenAI ?

Définissez OPENAI_PROXY_URL sur l’URL de base du point de terminaison et OPENAI_API_KEY sur votre clé dans l’environnement de déploiement — pour Kunavo, il s’agit de https://api.kunavo.com/v1. Le fichier .env.example de LobeChat utilise https://api.openai.com/v1 comme valeur d’exemple pour cette variable, ce qui rappelle que le suffixe /v1 doit figurer dans la valeur et n’est pas ajouté automatiquement.

Pourquoi mon modèle personnalisé n’apparaît-il pas dans la liste des modèles de LobeChat ?

LobeChat affiche les modèles qui lui ont été indiqués, et non tous ceux que le point de terminaison peut servir. Un identifiant de modèle absent de sa liste reste donc invisible, même si le point de terminaison répond pour cet identifiant. Indiquez les identifiants dans OPENAI_MODEL_LIST sous forme de liste séparée par des virgules. La documentation de LobeChat définit également une syntaxe de préfixes pour cette variable : un + initial ajoute un modèle, un - initial en masque un, et model_name=display_name renomme un modèle dans le sélecteur.

LobeChat peut-il utiliser des modèles Claude via le fournisseur OpenAI ?

Oui, s’ils sont servis par un point de terminaison compatible avec OpenAI. Le fournisseur OpenAI de LobeChat transmet l’identifiant du modèle à l’adresse indiquée par OPENAI_PROXY_URL. Un identifiant Claude est donc résolu au niveau de la passerelle, et non dans LobeChat, sans utiliser d’identifiants Anthropic. Sur Kunavo, les identifiants Claude et GPT utilisent une seule clé : pour ajouter une famille, il suffit d’ajouter un identifiant à OPENAI_MODEL_LIST.

La génération d’images de LobeChat fonctionne-t-elle via un point de terminaison personnalisé ?

Cela dépend des routes implémentées par le point de terminaison, pas de LobeChat. Le fournisseur de chat a besoin de /v1/chat/completions ; la génération d’images utilise une route distincte. Kunavo prend en charge la génération d’images et de vidéos sur ses propres points de terminaison, décrits dans les rubriques images et vidéo. La méthode fiable consiste donc à utiliser LobeChat pour le chat et à appeler directement les points de terminaison multimédias, plutôt que de supposer qu’un seul réglage de fournisseur couvre les deux.