Documentation
AnythingLLM
AnythingLLM permet d’accéder à un point de terminaison pour lequel il ne propose aucun fournisseur nommé grâce à Generic OpenAI : il suffit de renseigner une URL de base, une clé et l’ID d’un modèle. Deux de ses cinq champs ont des valeurs par défaut qui peuvent vous coûter cher sans que vous le remarquiez.
AnythingLLM atteint un endpoint pour lequel il ne fournit aucun fournisseur nommé via Generic OpenAI — Base URL avec /v1, une clé et un identifiant de modèle saisi manuellement, puisqu’il ne récupère aucune liste.
LLM Provider Generic OpenAI
Base URL https://api.kunavo.com/v1
API Key sk-kn-...
Selected Model claude-sonnet-5
Model context window 1000000
Max Tokens 8192/v1. La page de configuration d’AnythingLLM ne le précise pas dans son texte, mais son fichier server/.env.example fourni avec le logiciel l’indique : le même paramètre y est écrit sous la forme GENERIC_OPEN_AI_BASE_PATH='http://proxy.url.openai.com/v1'. Le code source du fournisseur transmet cette valeur au SDK OpenAI comme baseURL, sans la modifier et en ajoutant uniquement la route. Ces deux sources ont été consultées le 21 septembre 2026.sk-kn-) et ajoutez un crédit à partir de 10 $ — les appels sont payés sur ce solde et les appels échoués ne sont pas facturés. Le tableau de bord s’ouvre ensuite sur la configuration AnythingLLM.Étape par étape
- Créez une clé sur
/app/keyset copiez-la — elle n’est affichée qu’une seule fois. - Ouvrez Instance Settings → AI Providers → LLM. Le chemin est identique sur Desktop et sur une instance auto-hébergée ; seule la manière d’accéder au panneau des paramètres diffère.
- Dans LLM Provider, choisissez
Generic OpenAI. Sa propre fiche le décrit ainsi : « Connectez-vous à tout service compatible avec OpenAI grâce à une configuration personnalisée. » - Renseignez les champs Base URL, API Key et Selected Model comme indiqué ci-dessus. Selected Model est un champ texte, et non une liste chargée automatiquement : le fournisseur ne le vérifie pas au préalable. Une faute de frappe dans l’ID sera donc acceptée lors de l’enregistrement et ne provoquera une erreur qu’au premier message.
- Renseignez les champs Model context window et Max Tokens au lieu de les laisser vides, puis cliquez sur Save changes.
- Envoyez un message dans un espace de travail. Celui-ci peut remplacer le LLM système ; si la réponse semble provenir de l’ancien fournisseur, vérifiez le paramètre de modèle propre à l’espace de travail avant de modifier quoi que ce soit ici.
Vérifié avec Page LLM OpenAI (Generic) d’AnythingLLM le 21 septembre 2026. Les paramètres tiers évoluent ; si le nom d’un champ ne correspond plus à ce que vous voyez ici, cette page fait autorité, pas celle-ci.
Vérifiez avant de déboguer le client
Une requête suffit à déterminer si l’échec vient de l’endpoint, de la clé ou du fichier de configuration. Si cette requête renvoie du JSON, la même URL de base et la même clé fonctionnent dans AnythingLLM.
# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
-H "Authorization: Bearer sk-kn-..."Quel identifiant de modèle saisir dans le champ
Tous les modèles textuels sont accessibles sous forme d’identifiant de modèle — la liste à jour se trouve sur GET /v1/models, et le catalogue avec les prix sur la page des modèles. Les tarifs sont en USD par million de tokens, entrée / sortie.
| Identifiant du modèle | Entrée / sortie sur Kunavo | Où cela s’intègre dans AnythingLLM |
|---|---|---|
claude-sonnet-5 | $1.40 / $7.00 | le modèle de travail courant pour les questions-réponses sur les documents |
claude-haiku-4-5 | $0.70 / $3.50 | les espaces de travail à fort volume où la récupération fournit les faits |
claude-opus-5 | $3.50 / $17.50 | un espace de travail d’agent ou de synthèse, où une mauvaise réponse coûte cher |
gpt-5-6-sol | $2.00 / $12.00 | une deuxième famille pour la même clé, par espace de travail |
gpt-5-6-terra | $0.70 / $4.20 | les documents longs transmis dans leur intégralité plutôt que récupérés |
Questions fréquentes
Comment ajouter un point de terminaison d’API personnalisé à AnythingLLM ?
Ouvrez Instance Settings, puis AI Providers, puis LLM, et choisissez le fournisseur Generic OpenAI. Sa propre fiche indique : « Connectez-vous à tout service compatible avec OpenAI grâce à une configuration personnalisée. » Cinq champs s’affichent : Base URL, API Key, Selected Model, Model context window et Max Tokens, ainsi qu’un bouton Save changes. Ce fournisseur est la méthode prise en charge pour tout point de terminaison compatible avec OpenAI pour lequel AnythingLLM ne propose pas d’intégration nommée. Vérifiez d’abord la liste des fournisseurs : des services tels que LM Studio, LocalAI et LiteLLM ont leur propre fournisseur nommé, avec ses propres champs d’URL de base et ses propres valeurs par défaut.
L’URL de base d’AnythingLLM doit-elle se terminer par /v1 ?
Oui, pour un point de terminaison compatible avec OpenAI. La page de configuration ne le précise pas dans son texte ; c’est donc le fichier server/.env.example fourni avec AnythingLLM qui tranche : il définit le même paramètre ainsi : GENERIC_OPEN_AI_BASE_PATH='http://proxy.url.openai.com/v1'. Le code source du fournisseur transmet cette valeur au SDK OpenAI sous le nom baseURL, sans la modifier ; seule la route /chat/completions est donc ajoutée. Pour Kunavo, l’URL de base est https://api.kunavo.com/v1. Sans /v1, vous obtiendrez une erreur 404 plutôt qu’une erreur d’authentification. Les deux sources ont été consultées le 21 septembre 2026.
Pourquoi la liste des modèles du fournisseur Generic OpenAI est-elle vide dans AnythingLLM ?
Parce qu’il n’y a aucune liste à afficher : Selected Model est un champ texte que vous remplissez vous-même, et le fournisseur ne valide pas au préalable la valeur saisie. C’est voulu pour un fournisseur destiné à accéder à des points de terminaison inconnus d’AnythingLLM. Une faute de frappe est donc acceptée lors de l’enregistrement et n’entraîne une erreur qu’à l’envoi d’un message. Pour distinguer un ID de modèle incorrect d’une URL ou d’une clé erronée, envoyez la requête /v1/models indiquée plus haut avec la même URL et la même clé : si vous obtenez du JSON, le point de terminaison et la clé fonctionnent ; seul l’ID est à corriger.
Kunavo peut-il servir à la fois d’embedder et de modèle de conversation pour AnythingLLM ?
Non. Kunavo ne propose aucun modèle d’embedding ; il ne couvre donc pas la partie embedder d’AnythingLLM. De plus, l’embedder est un fournisseur distinct de celui des conversations : il se configure à l’échelle du système, et non par espace de travail, et il est difficile à changer par la suite, car son remplacement impose de supprimer tous les documents et de les intégrer à nouveau. Utilisez l’embedder local intégré à la version Desktop ou un fournisseur spécialisé en embeddings, et réservez ce point de terminaison au fournisseur de conversation. Kunavo ne propose pas non plus de modèle de reconnaissance vocale ni de synthèse vocale ; Transcription et Voice & Speech ne sont donc pas couverts non plus.
Kunavo a-t-il testé AnythingLLM avec son point de terminaison ?
Non. Kunavo n’a testé aucun des clients de cette section. Cette page ne constitue pas un rapport de test : elle s’appuie sur la documentation et le code source fournis avec AnythingLLM, avec une date qui vous permet d’évaluer leur ancienneté. Elle vous indique quels champs existent, comment AnythingLLM utilise chaque valeur et quelles valeurs par défaut peuvent coûter cher. En revanche, elle ne peut pas confirmer le comportement des appels d’outils d’agent, du streaming ou des pièces jointes dans votre version, puisque personne ici ne l’a exécutée. Envoyez un message avant de transférer un espace de travail.
Puis-je diriger le fournisseur Anthropic d’AnythingLLM vers un point de terminaison tiers ?
Pas avec les fonctionnalités exposées ou documentées par AnythingLLM : l’interface de ce fournisseur ne comporte aucun champ Base URL, et son code source construit le client du SDK Anthropic avec une clé et des en-têtes uniquement. Pour utiliser un point de terminaison tiers, la méthode prise en charge est Generic OpenAI via chat completions, configurée sur cette page. À prévoir : le chemin Generic OpenAI n’envoie aucun marqueur cache_control. Un protocole qui nécessite que le client demande la mise en cache n’en bénéficiera donc pas. La possibilité qu’un point de terminaison mette en cache les requêtes sans marqueur client dépend de sa propre documentation.