> ## Documentation Index
> Fetch the complete documentation index at: https://evolink.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# EvoLink Auto - Routage Intelligent de Modèles

> Le système sélectionne automatiquement le modèle le plus adapté pour traiter la requête

## Routage Intelligent de Modèles

EvoLink Auto est une fonctionnalité de routage intelligent de modèles qui sélectionne automatiquement un modèle d'IA approprié en fonction du contenu de votre requête, sans spécification manuelle du modèle.

### Avantages Clés

* **Correspondance Intelligente**: Analyse automatiquement le contenu de la requête et sélectionne un modèle approprié
* **Optimisation des Coûts**: Priorise les modèles rentables tout en maintenant la qualité
* **Équilibrage de Charge**: Distribue automatiquement les requêtes entre plusieurs modèles pour une stabilité améliorée
* **Transparence**: Renvoie le nom du modèle réellement utilisé dans la réponse pour le suivi et l'optimisation

### Fonctionnement

Le système sélectionne le modèle le mieux adapté du pool de modèles en fonction de la complexité, de la longueur et du type de requête.

### Modèles Supportés

EvoLink Auto route intelligemment entre les principaux modèles d'IA, notamment GPT-4, GPT-3.5, Claude, Gemini et plus encore.

### Limitations

* Non adapté aux scénarios nécessitant des capacités de modèle spécifiques (par exemple, fonctionnalités de vision GPT-4)
* Ne garantit pas le même modèle pour chaque requête

### Cas d'Usage

Idéal pour les scénarios où vous ne savez pas quel modèle utiliser, ou souhaitez que le système optimise automatiquement la sélection du modèle.

<Note>
  Définissez simplement le paramètre `model` sur `evolink/auto`, et le système sélectionnera automatiquement un modèle approprié pour vous.
</Note>

<Note>
  **BaseURL** : La BaseURL par défaut est `https://direct.evolink.ai`, qui offre une meilleure prise en charge des modèles de texte et des connexions persistantes. `https://api.evolink.ai` est le point d'accès principal pour les services multimodaux et sert d'adresse de secours pour les modèles de texte.
</Note>


## OpenAPI

````yaml fr/api-manual/language-series/evolink-auto/evolink-auto-quickstart.json POST /v1/chat/completions
openapi: 3.1.0
info:
  title: EvoLink Auto - Sélection intelligente de modèle
  description: >-
    Fonction de routage intelligent de modèle, le système sélectionne
    automatiquement le modèle IA le plus adapté
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://direct.evolink.ai
    description: Production (recommandée)
  - url: https://api.evolink.ai
    description: URL alternative
security:
  - bearerAuth: []
paths:
  /v1/chat/completions:
    post:
      tags:
        - Routage intelligent
      summary: Routage intelligent de modèle
      description: >-
        Le système sélectionne automatiquement le modèle le plus adapté pour
        traiter la requête
      operationId: createChatCompletionAuto
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AutoRequest'
      responses:
        '200':
          description: Requête réussie
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatCompletionResponse'
        '400':
          description: Paramètres de requête invalides
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 400
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: Non authentifié, token invalide ou expiré
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 401
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Quota insuffisant, rechargement nécessaire
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 402
                  message: Insufficient quota
                  type: insufficient_quota_error
                  fallback_suggestion: https://evolink.ai/dashboard/billing
        '403':
          description: Accès refusé
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 403
                  message: Access denied for this feature
                  type: permission_error
        '429':
          description: Limite de fréquence de requêtes dépassée
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 429
                  message: Rate limit exceeded
                  type: rate_limit_error
                  fallback_suggestion: retry after 60 seconds
        '500':
          description: Erreur interne du serveur
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 500
                  message: Internal server error
                  type: internal_server_error
                  fallback_suggestion: try again later
        '502':
          description: Erreur du service en amont
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 502
                  message: Upstream AI service unavailable
                  type: upstream_error
                  fallback_suggestion: try again later
        '503':
          description: Service temporairement indisponible
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 503
                  message: Service temporarily unavailable
                  type: service_unavailable_error
                  fallback_suggestion: retry after 30 seconds
components:
  schemas:
    AutoRequest:
      type: object
      required:
        - model
        - messages
      properties:
        model:
          type: string
          description: Utiliser le routage intelligent
          enum:
            - evolink/auto
          default: evolink/auto
          example: evolink/auto
        messages:
          type: array
          description: Liste des messages de conversation
          items:
            $ref: '#/components/schemas/MessageInput'
          minItems: 1
          example:
            - role: user
              content: >-
                Présentez l'histoire du développement de l'intelligence
                artificielle
        temperature:
          type: number
          description: >-
            Température d'échantillonnage, contrôle le caractère aléatoire de la
            sortie


            **Description** :

            - Valeur basse (ex. 0.2) : sortie plus déterministe et plus ciblée

            - Valeur haute (ex. 1.5) : sortie plus aléatoire et plus créative
          minimum: 0
          maximum: 2
          example: 0.7
        top_p:
          type: number
          description: >-
            Paramètre d'échantillonnage par noyau (Nucleus Sampling)


            **Description** :

            - Contrôle l'échantillonnage parmi les tokens dont la probabilité
            cumulée atteint un certain seuil

            - Par exemple, 0.9 signifie sélectionner parmi les tokens dont la
            probabilité cumulée atteint 90 %

            - Valeur par défaut : 1.0 (tous les tokens sont pris en compte)


            **Recommandation** : ne pas ajuster temperature et top_p
            simultanément
          minimum: 0
          maximum: 1
          example: 0.9
        top_k:
          type: integer
          description: >-
            Paramètre d'échantillonnage Top-K


            **Description** :

            - Par exemple, 10 signifie que seuls les 10 tokens les plus
            probables sont considérés à chaque échantillonnage

            - Une valeur plus petite rend la sortie plus ciblée

            - Non limité par défaut
          minimum: 1
          example: 40
        stream:
          type: boolean
          description: >-
            Indique si la réponse doit être retournée en mode streaming


            - `true` : retour en streaming, le contenu est envoyé
            progressivement en temps réel

            - `false` : attendre la réponse complète avant de la retourner en
            une seule fois
          default: false
          example: false
    ChatCompletionResponse:
      type: object
      properties:
        id:
          type: string
          description: Identifiant unique de la complétion de conversation
          example: chatcmpl-20260308112637503180122ABCD1234
        model:
          type: string
          description: Nom du modèle effectivement utilisé
          example: gpt-5.4
        object:
          type: string
          enum:
            - chat.completion
          description: Type de réponse
          example: chat.completion
        created:
          type: integer
          description: Horodatage de création
          example: 1741428397
        choices:
          type: array
          description: Liste des choix générés par la conversation
          items:
            $ref: '#/components/schemas/Choice'
        usage:
          $ref: '#/components/schemas/Usage'
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: integer
              description: Code d'erreur HTTP
            message:
              type: string
              description: Description de l'erreur
            type:
              type: string
              description: Type d'erreur
            param:
              type: string
              description: Nom du paramètre concerné
            fallback_suggestion:
              type: string
              description: Suggestion en cas d'erreur
    MessageInput:
      type: object
      required:
        - role
        - content
      properties:
        role:
          type: string
          description: Rôle du message
          enum:
            - system
            - user
            - assistant
        content:
          type: string
          description: Contenu du message
    Choice:
      type: object
      properties:
        index:
          type: integer
          description: Index du choix
          example: 0
        message:
          $ref: '#/components/schemas/AssistantMessage'
        finish_reason:
          type: string
          description: Raison de fin de génération
          enum:
            - stop
            - length
            - content_filter
          example: stop
    Usage:
      type: object
      description: Statistiques d'utilisation des tokens
      properties:
        prompt_tokens:
          type: integer
          description: Nombre de tokens du contenu d'entrée
          example: 15
        completion_tokens:
          type: integer
          description: Nombre de tokens du contenu de sortie
          example: 120
        total_tokens:
          type: integer
          description: Nombre total de tokens
          example: 135
    AssistantMessage:
      type: object
      properties:
        role:
          type: string
          description: Rôle de l'expéditeur du message
          enum:
            - assistant
          example: assistant
        content:
          type: string
          description: Contenu du message de réponse de l'IA
          example: >-
            L'histoire du développement de l'intelligence artificielle remonte
            aux années 1950...
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ## Toutes les interfaces nécessitent une authentification par Bearer
        Token ##


        **Obtenir une clé API :**


        Rendez-vous sur la [page de gestion des clés
        API](https://evolink.ai/dashboard/keys) pour obtenir votre clé API


        **Ajoutez dans l'en-tête de la requête :**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```
      bearerFormat: sk-evo-xxxxxxxxxx

````