Le catalogue des modèles et le catalogue des outils sont les mêmes pour tous les utilisateurs du serveur.
Utilisez-les pour trouver le model_id à envoyer au chat ou à définir sur un
assistant, ainsi que les name des outils auxquels renvoie la liste d'outils d'un assistant.
Les deux endpoints renvoient le catalogue complet en une seule réponse ; il n'y a pas de pagination.
Lister les modèles
| Endpoint | POST /api/v3/ai_model/get_all |
| Portée | n'importe quelle clé API |
| Limite de débit | par défaut |
Renvoie les modèles d'IA connus du serveur, éventuellement limités à un seul type. La liste n'est pas personnalisée : chaque utilisateur obtient le même catalogue, quelle que soit son organisation.
La liste contient aussi les modèles que les administrateurs ont désactivés (is_enabled
false) ou retirés (is_deprecated true). Le chat refuse les deux (422 model is disabled
/ model is deprecated, voir Chat) ; choisissez des modèles avec is_enabled true
et is_deprecated false. L'ordre de la liste n'est pas garanti.
Les prix concrets ne sont pas exposés. Utilisez price_tier pour une indication
de prix relative, et le coût d'une conversation pour ce
qu'une conversation a réellement coûté.
Requête
Le corps est obligatoire ; envoyez {} pour obtenir les modèles de tous les types.
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
model_type |
chaîne | Non | Ne renvoyer que les modèles de ce type. |
Réponse
200 OK avec un tableau de modèles.
Erreurs
| Statut | detail |
Cause |
|---|---|---|
422 |
erreur de validation | Le corps est absent, ou model_type n'est pas un type connu. |
Les erreurs d'authentification, de limite de débit et du serveur sont décrites dans les conventions.
Exemple
curl -X POST "https://ayeto.ai/api/v3/ai_model/get_all" \
-H "uni-api-key: $AYETO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model_type": "llm"}'
[
{
"id": "3f2a6c1e-8b4d-4e2a-9c7f-1d5e8a2b4c6d",
"model_id": "example-chat-large",
"model_type": "llm",
"provider": "openai_responses",
"display_name": "Example Chat Large",
"description": "General purpose model for complex tasks.",
"multilang_description": {
"CZ": "Univerzální model pro složité úlohy.",
"EN": "General purpose model for complex tasks."
},
"max_tokens": 32000,
"max_reasoning_tokens": 0,
"capabilities": ["chat", "stream", "assistant", "tools", "vision", "reasoning"],
"use_system_prompt": true,
"is_deprecated": false,
"is_enabled": true,
"is_beta": false,
"price_tier": 3,
"price_tier_max": 3,
"auto_tiers": [],
"is_new": false
},
{
"id": "9a1b2c3d-4e5f-4061-8a7b-6c5d4e3f2a10",
"model_id": "example-auto",
"model_type": "llm",
"provider": "openai_responses",
"display_name": "Auto",
"description": "Picks a suitable model for every message.",
"multilang_description": {},
"max_tokens": 16000,
"max_reasoning_tokens": 0,
"capabilities": ["chat", "stream", "assistant", "tools"],
"use_system_prompt": true,
"is_deprecated": false,
"is_enabled": true,
"is_beta": true,
"price_tier": 1,
"price_tier_max": 3,
"auto_tiers": ["example-chat-mini", "example-chat-large"],
"is_new": true
}
]
Modèle
| Champ | Type | Description |
|---|---|---|
id |
UUID | Identifiant de l'entrée du catalogue. Non utilisé par les autres endpoints ; utilisez model_id. |
model_id |
chaîne | L'identifiant du modèle. C'est la valeur du champ model dans le chat et sur un assistant. |
model_type |
chaîne | Le genre de modèle, voir types de modèles. |
provider |
chaîne | Le fournisseur d'IA et la famille d'API qui servent le modèle, par exemple openai, openai_responses, anthropic, google, xai, deepseek, kimi. À titre informatif. |
display_name |
chaîne | Nom lisible. |
description |
chaîne | Description courte, généralement en anglais. |
multilang_description |
objet | Descriptions par code de langue (EN, CZ, FR). Des clés peuvent manquer ; utilisez alors description. |
max_tokens |
entier | La valeur max_tokens (limite de sortie) la plus élevée qu'une requête de chat peut demander avec ce modèle. 0 signifie que le serveur ne fixe aucune limite. |
max_reasoning_tokens |
entier | Budget de tokens de raisonnement des modèles de raisonnement ; 0 s'il n'est pas défini. À titre informatif. |
capabilities |
tableau de chaînes | Ce que le modèle sait faire, voir capacités. |
use_system_prompt |
booléen | Indique si le modèle reçoit les instructions sous forme de prompt système. À titre informatif. |
is_deprecated |
booléen | Le modèle est retiré. Les requêtes de chat avec un modèle obsolète échouent. |
is_enabled |
booléen | false lorsque les administrateurs ont désactivé le modèle ; le chat le refuse. |
is_beta |
booléen | Le modèle est proposé en version bêta. |
price_tier |
entier ou null | Prix relatif, voir niveaux de prix. |
price_tier_max |
entier ou null | Borne supérieure de la fourchette de prix. Égal à price_tier, sauf pour les modèles automatiques. |
auto_tiers |
tableau de chaînes | Pour un modèle automatique, les model_id parmi lesquels il choisit, du moins cher au plus cher. Vide pour tous les autres modèles. |
is_new |
booléen | Le modèle a été ajouté au catalogue récemment (par défaut au cours des 14 derniers jours). |
Types de modèles
model_type |
Modèles pour |
|---|---|
llm |
Chat textuel. Ce sont les modèles que vous utilisez dans le chat et sur les assistants. |
openai_img_gen, google_img_gen, xai_img_gen |
Génération d'images, utilisés par les outils d'image. |
stt |
Reconnaissance vocale (speech to text). |
tts |
Synthèse vocale, voir synthèse vocale. |
embeddings |
Embeddings de texte pour les bases de connaissances. |
realtime |
Conversations vocales en temps réel dans l'application. |
classification |
Décisions internes oui/non et de choix. |
img_gen |
Anciens modèles d'image, conservés uniquement pour les anciennes conversations. |
Seuls les modèles llm peuvent être utilisés directement via cette API (dans le chat et sur les assistants). Les
autres types sont listés pour que vous puissiez voir ce qu'utilisent les outils du serveur.
Capacités
| Capacité | Signification |
|---|---|
chat |
Peut être utilisé dans le chat. |
assistant |
Peut exécuter un assistant. Le chat exécute toujours un assistant (celui par défaut lorsque vous n'envoyez que model), un modèle de chat a donc besoin à la fois de chat et de assistant. |
stream |
Prend en charge les réponses en streaming. |
tools |
Peut appeler des outils d'IA. |
tools_caching |
Le fournisseur met en cache les définitions d'outils entre les appels (coût réduit). |
vision |
Accepte des images en entrée. |
reasoning |
Modèle de raisonnement (« thinking »). |
adaptive_reasoning |
Le modèle décide lui-même de l'ampleur de son raisonnement. |
relevant_history |
Prend en charge l'option relevant_history du chat. |
image_to_image |
Modèle d'image qui accepte une image en entrée. |
image_upscale |
Modèle d'image capable d'agrandir des images. |
image_prompt_edit |
Modèle d'image capable de modifier une image à partir d'un prompt texte. |
image_use_translation |
Le prompt d'image est traduit en anglais avant la génération. |
Niveaux de prix
price_tier situe le modèle sur une échelle allant de 1 (le moins cher) à 4 (le plus cher),
en fonction de son prix de sortie comparé à des seuils fixes par type de modèle :
| Valeur | Signification |
|---|---|
1 à 4 |
Prix relatif, comparable entre modèles du même type. |
0 |
Gratuit, ou prix inconnu. |
null |
Le type de modèle n'a pas d'indication de prix (par exemple stt, tts, embeddings). |
Le coût réel d'utilisation d'un modèle est facturé en crédits ; voir compte.
Modèles automatiques
Un modèle automatique est un modèle llm dont la liste auto_tiers n'est pas vide. Il ne répond
pas lui-même : pour chaque message, il choisit l'un des modèles de auto_tiers, un modèle moins cher
pour les messages simples et un modèle plus puissant pour les messages exigeants. Utilisez son model_id
comme celui de n'importe quel autre modèle. Ses price_tier et price_tier_max couvrent le moins cher et le plus
cher de ces modèles. Ses capacités sont celles que partagent tous ses modèles de niveau,
et son max_tokens est la plus petite limite parmi eux.
Lister les outils
| Endpoint | POST /api/v3/ai_tool/get_all |
| Portée | n'importe quelle clé API |
| Limite de débit | par défaut |
Renvoie les outils d'IA qu'un assistant peut utiliser. Un assistant liste les
outils qu'il peut utiliser dans ai_tools, par name d'outil.
La liste omet les outils qui ne sont pas destinés à être choisis manuellement (des outils auxiliaires cachés que le
serveur ajoute automatiquement là où ils sont nécessaires) ainsi que les outils retirés ; is_hidden et
is_deprecated y valent donc toujours false. Elle inclut les outils qui ne fonctionnent qu'au sein d'une
organisation (organization_only). Certains outils ont aussi besoin d'un compte connecté (par
exemple Google ou Microsoft) ou d'un client de bureau appairé pour faire quoi que ce soit.
display_name, description et category sont traduits dans la langue indiquée dans
l'en-tête de requête language (EN, CZ ou FR ; par défaut EN).
Requête
Aucun corps n'est nécessaire.
Réponse
200 OK avec un tableau d'outils.
Erreurs
Cet endpoint n'a pas d'erreurs spécifiques. Les erreurs d'authentification, de limite de débit et du serveur sont décrites dans les conventions.
Exemple
curl -X POST "https://ayeto.ai/api/v3/ai_tool/get_all" \
-H "uni-api-key: $AYETO_API_KEY" \
-H "language: EN"
[
{
"name": "DownloadUrlFunctionTool",
"display_name": "Download URL",
"description": "Download content from a URL",
"icon": "ayeto",
"is_advanced": false,
"is_hidden": false,
"is_deprecated": false,
"is_silent": false,
"organization_only": false,
"tags": ["download", "url", "web", "content", "internet"],
"category": "Web service",
"group": null,
"in_default_assistant": true,
"always": false,
"companion_of_group": null,
"order": 0
},
{
"name": "AssistantMemoryFunctionTool",
"display_name": "Assistant Memory",
"description": "Manage the assistant's memory which persists across conversations. Use to store important information that the assistant should remember.",
"icon": "ayeto",
"is_advanced": false,
"is_hidden": false,
"is_deprecated": false,
"is_silent": true,
"organization_only": false,
"tags": [],
"category": "General",
"group": null,
"in_default_assistant": false,
"always": false,
"companion_of_group": null,
"order": 0
}
]
Outil
| Champ | Type | Description |
|---|---|---|
name |
chaîne | L'identifiant de l'outil. C'est la valeur à mettre dans les ai_tools d'un assistant. |
display_name |
chaîne | Nom lisible, traduit. |
description |
chaîne | Ce que fait l'outil, traduit. |
icon |
chaîne | Nom de l'icône utilisée par l'application. |
category |
chaîne | Catégorie servant à regrouper les outils dans une liste, traduite. |
group |
chaîne ou null | Les outils qui vont ensemble (par exemple tous les outils d'un même service connecté) partagent un groupe. |
tags |
tableau de chaînes | Mots-clés de recherche. |
order |
entier | Indication de tri au sein d'une liste. |
is_advanced |
booléen | L'application liste l'outil parmi les outils avancés. |
is_hidden |
booléen | Toujours false dans cette liste (les outils cachés sont omis). |
is_deprecated |
booléen | Toujours false dans cette liste (les outils retirés sont omis). |
is_silent |
booléen | Les appels de l'outil ne sont pas affichés comme appels d'outil dans la conversation, seulement comme un bref statut. |
organization_only |
booléen | L'outil n'est disponible que lorsque le chat s'exécute dans une organisation. |
in_default_assistant |
booléen | L'outil fait partie de l'assistant par défaut (chat avec seulement un model). |
always |
booléen | Chaque assistant reçoit l'outil automatiquement ; vous n'avez pas besoin de le lister. |
companion_of_group |
chaîne ou null | L'outil est ajouté automatiquement à tout assistant qui utilise un outil de ce groupe. |