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

Structure de l'objet Model Specs

Vue d'ensemble

L'objet modelSpecs vous aide à offrir une expérience utilisateur plus simple pour les modèles d'IA au sein de votre application.

Il y a 3 champs principaux sous modelSpecs :

  • enforce (optionnel ; par défaut : false)
  • prioritize (optionnel ; par défaut : true)
  • list (requis)
  • addedEndpoints (optionnel)

Notes :

  • Si enforce est défini sur true, les Model Specs peuvent potentiellement entrer en conflit avec d'autres paramètres de l'interface tels que modelSelect, presets et parameters.
  • Le tableau list contient des configurations détaillées pour chaque modèle, y compris des préréglages qui dictent des comportements, des apparences et des capacités spécifiques.
  • Si les champs interface ne sont pas spécifiés dans la configuration, le fait d'avoir une liste de Model Specs désactivera les éléments d'interface suivants :
    • modelSelect
    • parameters
    • presets
  • Si vous souhaitez activer ces éléments d'interface ainsi que les Model Specs, vous pouvez les définir sur true dans l'objet interface.

Gestion des clés API fournies par l'utilisateur avec Model Specs

Lorsque les Model Specs désactivent modelSelect, le menu déroulant des endpoints — ainsi que l'icône d'engrenage qui ouvre la boîte de dialogue Set API Key — sont masqués. Les utilisateurs peuvent toujours définir ou renouveler les clés pour tout endpoint configuré avec apiKey: "user_provided" depuis Settings → Data controls → API keys.

Cette liste est limitée aux endpoints qu'un utilisateur peut réellement atteindre : les endpoints référencés par vos Model Specs, ainsi que tout addedEndpoints. Lorsque l'endpoint agents est accessible, elle inclut également les allowedProviders des agents (ou tous les fournisseurs configurés lorsque allowedProviders n'est pas défini).

Exemple

modelSpecs:
  enforce: true
  prioritize: true
  list:
    - name: 'meeting-notes-gpt4'
      label: 'Meeting Notes Assistant (GPT4)'
      softDefault: true
      description: 'Generate meeting notes by simply pasting in the transcript from a Teams recording.'
      iconURL: 'https://example.com/icon.png'
      showOnLanding: true
      conversation_starters:
        - 'Summarize this meeting transcript'
        - 'Extract action items and owners'
      hideBadgeRow: true
      skills:
        - 'brand-guidelines'
        - 'meeting-notes'
      subagents:
        enabled: true
        allowSelf: true
        agent_ids: []
      preset:
        endpoint: 'azureOpenAI'
        model: 'gpt-4-turbo-1106-preview'
        maxContextTokens: 128000 # Maximum context tokens
        max_tokens: 4096 # Maximum output tokens
        temperature: 0.2
        modelLabel: 'Meeting Summarizer'
        greeting: |
          This assistant creates meeting notes based on transcripts of Teams recordings.
          To start, simply paste the transcript into the chat box.
        promptPrefix: |
          Based on the transcript, create coherent meeting minutes for a business meeting. Include the following sections:
          - Date and Attendees
          - Agenda
          - Minutes
          - Action Items

          Focus on what items were discussed and/or resolved. List any open action items.
          The format should be a bulleted list of high level topics in chronological order, and then one or more concise sentences explaining the details.
          Each high level topic should have at least two sub topics listed, but add as many as necessary to support the high level topic. 

          - Do not start items with the same opening words.

          Take a deep breath and be sure to think step by step.

Champs de haut niveau

enforce

KeyTypeDescriptionExample
enforceBooleanDétermine si les Model Specs doivent strictement remplacer les autres paramètres de configuration.Setting this to `true` can lead to conflicts with interface options if not managed carefully.

Par défaut : false

Exemple :

modelSpecs:
  enforce: true

prioritize

KeyTypeDescriptionExample
prioritizeBooleanSpécifie si les Model Specs doivent être prioritaires sur la configuration par défaut lorsque les deux sont applicables.When set to `true`, it ensures that a modelSpec is always selected in the UI. Doing this may prevent users from selecting different endpoints for the selected spec.

Par défaut : true

Exemple :

modelSpecs:
  prioritize: false

addedEndpoints

KeyTypeDescriptionExample
addedEndpointsArray of StringsPermet de sélectionner des endpoints spécifiques (par ex. "openAI", "google") dans l'interface utilisateur aux côtés des Model Specs définis.Requires `interface.modelSelect` to be `true`. If this field is used and `interface.modelSelect` is not explicitly set, `modelSelect` will default to `true`.

Par défaut : [] (liste vide)

Remarque : Doit être l'un des éléments suivants :

  • openAI, azureOpenAI, google, anthropic, assistants, azureAssistants, bedrock, agents

Exemple :

modelSpecs:
  # ... other modelSpecs fields
  addedEndpoints:
    - openAI
    - google

list

Requis

KeyTypeDescriptionExample
listArray of ObjectsContient une liste de spécifications de modèles individuels détaillant diverses configurations et comportements.Each object in the list details the configuration for a specific model, including its behaviors, appearance, and capabilities related to the application's functionality.

Model Spec (Élément de liste)

Au sein de chaque Model Spec, ou de chaque élément de list, vous pouvez configurer les champs suivants :


name

KeyTypeDescriptionExample
nameStringIdentifiant unique pour le modèle.No default. Must be specified.

Description : Identifiant unique pour le modèle.


label

KeyTypeDescriptionExample
labelStringUn nom ou une étiquette convivial(e) pour le modèle, affiché(e) dans le menu déroulant de l'en-tête.No default. Optional.

Description : Un nom ou une étiquette convivial(e) pour le modèle, affiché(e) dans le menu déroulant de l'en-tête.


default

KeyTypeDescriptionExample
defaultBooleanSpécifie si ce Model Specs est la sélection par défaut, pour être automatiquement sélectionné à chaque nouvelle discussion.

Description :
Spécifie si ce Model Specs est la sélection par défaut, pour être automatiquement sélectionné à chaque nouvelle discussion.


softDefault

KeyTypeDescriptionExample
softDefaultBooleanIndique si cette Model Specs doit être sélectionnée uniquement pour les nouveaux utilisateurs qui n'ont pas encore choisi de modèle, de Model Specs ou d'agent.

Description :

Spécifie une valeur par défaut lors de la première exécution sans écraser les sélections ultérieures de l'utilisateur. Utilisez softDefault lorsque vous souhaitez guider les nouveaux utilisateurs vers une spécification sélectionnée tout en préservant le choix de l'utilisateur après qu'il ait choisi un autre modèle, une autre spécification ou un autre agent.

La consultation d'une ancienne conversation ayant utilisé une Model Specs par défaut (soft-default) ne réactive pas cette spécification comme étant celle par défaut de l'utilisateur après qu'il a effectué une autre sélection.

Exemple :

modelSpecs:
  list:
    - name: 'general-assistant'
      label: 'General Assistant'
      softDefault: true
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o-mini'

iconURL

KeyTypeDescriptionExample
iconURLStringURL ou nom d'endpoint prédéfini pour l'icône du modèle dans le sélecteur, l'en-tête et l'image de marque de la conversation.No default. Optional.

Description :
URL ou nom d'endpoint prédéfini pour l'icône du modèle dans le sélecteur, l'en-tête et l'image de marque de la conversation. Utilisez showIconInMenu et showIconInHeader pour contrôler où l'icône apparaît.


description

KeyTypeDescriptionExample
descriptionStringUne brève description du modèle et de son utilisation ou rôle prévu, affichée dans le sélecteur de modèle et éventuellement sur la page d'accueil du chat.No default. Optional.

Description : Une brève description du modèle et de son utilisation ou rôle prévu, affichée dans le sélecteur de modèle. Si showOnLanding est défini sur true, la même description est également affichée sur la page d'accueil du chat sous l'étiquette de la spécification.

Les descriptions en texte brut s'affichent sous forme de texte. Les descriptions commençant par < sont traitées par le purificateur HTML de la configuration, permettant l'utilisation de balisage en ligne sécurisé et de médias tels que de petites icônes.


conversation_starters

KeyTypeDescriptionExample
conversation_startersArray of StringsPrompts de démarrage suggérés affichés sous forme de cartes cliquables sur la page d'accueil du chat lorsque cette Model Specs est sélectionnée.No default. Optional.

Description : Les amorces de conversation (conversation starters) offrent aux utilisateurs des suggestions de premières requêtes pour un Model Specs. Elles sont affichées sur la page d'accueil d'une nouvelle discussion pour le modèle sélectionné et sont particulièrement utiles avec le branding showOnLanding. Cliquer sur une amorce l'envoie comme premier message d'une nouvelle conversation.

  • Un maximum de 4 starters sont affichés, correspondant à la limite de l'agent/assistant.
  • Si le preset de la spec pointe vers un agent ou un assistant qui définit ses propres amorces de conversation, celles-ci sont prioritaires.

Exemple :

modelSpecs:
  list:
    - name: 'meeting-notes'
      label: 'Meeting Notes'
      showOnLanding: true
      conversation_starters:
        - 'Summarize this meeting transcript'
        - 'Create action items with owners and due dates'
      preset:
        endpoint: 'agents'
        model: 'gpt-4o'

showOnLanding

KeyTypeDescriptionExample
showOnLandingBooleanAffiche l'étiquette et la description de ce Model Specs sur la page d'accueil du chat à la place du message d'accueil par défaut.showOnLanding: true

Par défaut : false

Utilisez ceci lorsqu'une Model Specs organisée doit personnaliser l'écran de premier chat vide. Les Model Specs existantes restent inchangées à moins que showOnLanding ne soit défini sur true.

Exemple :

modelSpecs:
  list:
    - name: 'branded-assistant'
      label: 'Acme Research'
      description: '<span><img src="/assets/acme.svg" alt="Acme" /> Research with approved sources</span>'
      showOnLanding: true
      iconURL: '/assets/acme.svg'
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o'

group

KeyTypeDescriptionExample
groupStringNom de groupe optionnel pour organiser les Model Specs dans le sélecteur de l'interface utilisateur. Contrôle l'emplacement de la spec dans la hiérarchie du menu.No default. Optional.
groupIconStringIcône optionnelle pour les groupes personnalisés. Peut être une URL ou une clé d'endpoint intégrée (par ex. "openAI", "groq"). Seule la première spec avec un groupIcon dans chaque groupe est utilisée.No default. Optional.

Description : Nom de groupe optionnel pour organiser les Model Specs dans le sélecteur de l'interface utilisateur. Le champ group offre un contrôle flexible sur la manière dont les Model Specs sont organisées :

  • Si group correspond à un nom d'endpoint (par ex. "openAI", "groq") : La Model Specs apparaît imbriquée sous cet endpoint dans le menu de sélection.
  • Si group est un nom personnalisé (ne correspond à aucun endpoint) : Crée une section pliable distincte avec ce nom. Vous pouvez éventuellement utiliser groupIcon pour définir une icône personnalisée pour cette section (URL ou clé intégrée comme "openAI")
  • Si group est omis : Le Model Specs apparaît comme un élément autonome au niveau supérieur

Cette fonctionnalité est particulièrement utile lorsque vous souhaitez ajouter des descriptions aux modèles sans perdre la structure organisationnelle du menu de sélection.


hideBadgeRow

KeyTypeDescriptionExample
hideBadgeRowBooleanMasque la ligne de badge d'outil pour cette Model Specs dans le compositeur de chat.hideBadgeRow: true

Par défaut : false

Utilisez ceci lorsqu'une spécification de modèle organisée ne doit pas afficher la ligne de badges d'outils/capacités sous le compositeur.

Exemple :

modelSpecs:
  list:
    - name: 'general-assistant'
      label: 'General Assistant'
      hideBadgeRow: true
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o-mini'

Exemple :

modelSpecs:
  list:
    # Example 1: Nested under an endpoint
    # When group matches an endpoint name, the spec appears under that endpoint
    - name: 'gpt-4o-optimized'
      label: 'GPT-4 Optimized'
      description: 'Most capable GPT-4 model with multimodal support'
      group: 'openAI' # Appears nested under the OpenAI endpoint
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o'

    # Example 2: Custom group section with icon
    # When group is a custom name, it creates a separate collapsible section
    - name: 'coding-assistant'
      label: 'Coding Assistant'
      description: 'Specialized for coding tasks'
      group: 'My Assistants'
      groupIcon: 'https://example.com/icons/assistants.png' # Custom icon for the group
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o'

    # Multiple specs with the same group name are grouped together
    - name: 'writing-assistant'
      label: 'Writing Assistant'
      description: 'Specialized for creative writing'
      group: 'My Assistants' # Grouped with coding-assistant, uses its icon
      preset:
        endpoint: 'anthropic'
        model: 'claude-sonnet-4'

    # Example 3: Custom group using built-in icon
    - name: 'fast-model'
      label: 'Fast Model'
      group: 'Fast Models'
      groupIcon: 'groq' # Uses built-in Groq icon
      preset:
        endpoint: 'groq'
        model: 'llama3-8b-8192'

    # Example 4: Standalone (no group)
    # When group is omitted, the spec appears at the top level
    - name: 'general-assistant'
      label: 'General Assistant'
      description: 'General purpose assistant'
      # No group field - appears as standalone item at top level
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o-mini'

showIconInMenu

KeyTypeDescriptionExample
showIconInMenuBooleanContrôle si l'icône du modèle apparaît dans le menu déroulant de l'en-tête.

Description :
Contrôle si l'icône du modèle apparaît dans le menu déroulant de l'en-tête. La valeur par défaut est true.


showIconInHeader

KeyTypeDescriptionExample
showIconInHeaderBooleanContrôle si l'icône du modèle apparaît dans le bouton déroulant de l'en-tête, à gauche de son nom.

Description :
Contrôle si l'icône du modèle apparaît dans le bouton déroulant de l'en-tête, à gauche de son nom. La valeur par défaut est true.


authType

KeyTypeDescriptionExample
authTypeStringType d'authentification requis pour le Model Specs.Optional. Possible values: "override_auth", "user_provided", "system_defined"

Description :
Type d'authentification requis pour le Model Specs. Détermine si l'authentification est remplacée, fournie par l'utilisateur ou définie par le système.


webSearch

KeyTypeDescriptionExample
webSearchBooleanActive la fonctionnalité de recherche web pour cette Model Specs.When true, the model can perform web searches.

Description :
Active la fonctionnalité de recherche web pour cette Model Specs. Lorsqu'elle est définie sur true, le modèle peut effectuer des recherches sur le web pour récupérer des informations actuelles.

Exemple :

modelSpecs:
  list:
    - name: 'research-assistant'
      label: 'Research Assistant'
      webSearch: true
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o'

fileSearch

KeyTypeDescriptionExample
fileSearchBooleanActive la fonctionnalité de recherche de fichiers pour cette Model Specs.When true, the model can search through uploaded files.

Description :
Active la fonctionnalité de recherche de fichiers pour cette Model Specs. Lorsqu'elle est définie sur true, le modèle peut effectuer des recherches dans les fichiers téléchargés et s'y référer.

Exemple :

modelSpecs:
  list:
    - name: 'document-analyst'
      label: 'Document Analyst'
      fileSearch: true
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o'

executeCode

KeyTypeDescriptionExample
executeCodeBooleanActive la capacité d'exécution de code pour cette Model Specs.When true, the model can execute code.

Description :
Active la capacité d'exécution de code pour cette Model Specs. Lorsqu'elle est définie sur true, le modèle peut exécuter du code dans un environnement sandbox.

Exemple :

modelSpecs:
  list:
    - name: 'code-assistant'
      label: 'Code Assistant'
      executeCode: true
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o'

mcpServers

KeyTypeDescriptionExample
mcpServersArray of StringsListe des noms de serveurs Model Context Protocol (MCP) à activer pour cette Model Specs.Each string should match a configured MCP server name.

Description :
Liste des noms de serveurs Model Context Protocol (MCP) à activer pour ce Model Specs. Les serveurs MCP étendent les capacités du modèle avec des outils et des ressources personnalisés.

Exemple :

modelSpecs:
  list:
    - name: 'enhanced-assistant'
      label: 'Enhanced Assistant'
      mcpServers:
        - 'filesystem'
        - 'sequential-thinking'
        - 'fetch'
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o'

skills

KeyTypeDescriptionExample
skillsBoolean or Array of StringsContrôle les Skills pour cette Model Specs. Utilisez true pour le catalogue accessible actif de l'utilisateur, false pour désactiver les Skills, ou un tableau de noms de Skills comme liste d'autorisation stricte.skills: ["brand-guidelines", "code-review"]

Description :

Contrôle les Skills pour cette Model Specs lorsque la fonctionnalité Skills de l'endpoint Agents est disponible.

  • true : active le catalogue de compétences accessibles de l'utilisateur.
  • false : désactive les Skills pour cette spec.
  • Tableau des noms de Skills : restreint le catalogue, l'invocation manuelle et la résolution « always-apply » aux Skills nommés.

Exemple :

modelSpecs:
  list:
    - name: 'brand-assistant'
      label: 'Brand Assistant'
      skills:
        - 'brand-guidelines'
        - 'approved-claims'
      preset:
        endpoint: 'agents'
        model: 'gpt-4o'

subagents

KeyTypeDescriptionExample
subagents.enabledBooleanActive la fonctionnalité de sous-agents pour les agents éphémères créés à partir de cette Model Specs.enabled: true
subagents.allowSelfBooleanPermet à l'agent éphémère de générer une copie isolée de lui-même pour un travail ciblé.allowSelf: true
subagents.agent_idsArray of StringsListe blanche privée côté serveur des identifiants d'agents supplémentaires que cette Model Specs peut générer.agent_ids: []

Description :

Contrôle les sous-agents pour les agents éphémères créés à partir de cette Model Specs. Utilisez ceci lorsque vous souhaitez qu'une Model Specs organisée expose un comportement de délégation sans obliger les utilisateurs à créer ou à sélectionner un agent parent persistant.

  • enabled : ajoute l'outil de génération de sous-agent pour ce Model Specs.
  • allowSelf : permet à l'agent éphémère de générer une nouvelle copie isolée de lui-même.
  • agent_ids : permet d'utiliser des agents persistants spécifiques comme sous-agents supplémentaires. Cette liste est limitée par MAX_SUBAGENTS et reste côté serveur ; la configuration de démarrage envoyée aux clients inclut uniquement les drapeaux publics enabled et allowSelf.

Lorsque les Model Specs sont appliquées, les paramètres subagents de la Model Spec prévalent sur les valeurs de la charge utile de la requête.

Exemple :

modelSpecs:
  list:
    - name: 'research-assistant'
      label: 'Research Assistant'
      subagents:
        enabled: true
        allowSelf: true
        agent_ids: []
      preset:
        endpoint: 'agents'
        model: 'gpt-4o'

artifacts

KeyTypeDescriptionExample
artifactsString | BooleanActive la fonctionnalité Artifacts pour cette Model Specs et définit éventuellement le mode d'artefact.Set to `true` to enable with the default mode, `false` or omit to disable, or a specific mode string (e.g., `"default"`) to enable with that mode.

Description :
Active la fonctionnalité Artifacts pour cette Model Specs, permettant au modèle de générer et d'afficher des artefacts interactifs tels que des composants React, du HTML et des diagrammes Mermaid. Lorsqu'il est défini sur true, le mode d'artefact par défaut est utilisé. Vous pouvez également spécifier une chaîne de caractères de mode directement.

Exemple :

modelSpecs:
  list:
    - name: 'artifact-assistant'
      label: 'Artifact Assistant'
      artifacts: true
      preset:
        endpoint: 'openAI'
        model: 'gpt-4o'

preset

KeyTypeDescriptionExample
presetObjectConfigurations de préréglages détaillées qui définissent le comportement et les capacités du modèle.See "Preset Object Structure" below.

Description :
Configurations de préréglages détaillées qui définissent le comportement et les capacités du modèle (voir la structure de l'objet Preset ci-dessous).


Champs de préréglage

Le champ preset pour un élément de modelSpecs.list est constitué d'un plan de configuration complet pour les modèles d'IA au sein du système. Il est conçu pour spécifier les paramètres opérationnels des modèles d'IA, en adaptant leur comportement, leurs sorties et leurs interactions avec d'autres composants système et endpoint.

Options système

endpoint

Requis

Valeurs acceptées :

  • openAI
  • azureOpenAI
  • google
  • anthropic
  • assistants
  • azureAssistants
  • bedrock
  • agents

Note : Si vous utilisez un endpoint personnalisé, la valeur endpoint doit correspondre exactement au nom de l'endpoint personnalisé défini.

KeyTypeDescriptionExample
endpointEnum (EModelEndpoint) or String (nullable)Spécifie l'endpoint avec lequel le modèle communique pour exécuter des opérations. Ce paramètre détermine le service externe ou interne avec lequel le modèle s'interface.

Exemple :

preset:
  endpoint: 'openAI'

modelLabel

KeyTypeDescriptionExample
modelLabelString (nullable)L'étiquette utilisée pour identifier le modèle dans les interfaces utilisateur ou les journaux. Elle fournit un nom lisible par l'humain pour le modèle, qui est affiché dans l'interface utilisateur et également communiqué à l'IA.None

Par défaut : None

Exemple :

preset:
  modelLabel: 'Customer Support Bot'

greeting

KeyTypeDescriptionExample
greetingStringUn message prédéfini qui est visible dans l'interface utilisateur avant le début d'une nouvelle discussion. C'est un excellent moyen de fournir des instructions à l'utilisateur ou de rendre l'interface plus conviviale et accessible.

Par défaut : None

Exemple :

preset:
  greeting: 'This assistant creates meeting notes based on transcripts of Teams recordings. To start, simply paste the transcript into the chat box.'

promptPrefix

KeyTypeDescriptionExample
promptPrefixString (nullable)Un texte statique ajouté au début de chaque prompt envoyé au modèle, définissant un contexte cohérent pour les réponses.When using "assistants" as the endpoint, this becomes the OpenAI field `additional_instructions`.

Par défaut : None

Exemple 1 :

preset:
  promptPrefix: 'As a financial advisor, ...'

Exemple 2 :

preset:
  promptPrefix: |
    Based on the transcript, create coherent meeting minutes for a business meeting. Include the following sections:
    - Date and Attendees
    - Agenda
    - Minutes
    - Action Items

    Focus on what items were discussed and/or resolved. List any open action items.
    The format should be a bulleted list of high level topics in chronological order, and then one or more concise sentences explaining the details.
    Each high level topic should have at least two sub topics listed, but add as many as necessary to support the high level topic. 

    - Do not start items with the same opening words.

    Take a deep breath and be sure to think step by step.

resendFiles

KeyTypeDescriptionExample
resendFilesBooleanIndique si les fichiers doivent être renvoyés dans les scénarios où les sessions persistantes ne sont pas maintenues.

Par défaut : true

Exemple :

preset:
  resendFiles: true

imageDetail

Valeurs acceptées :

  • faible
  • auto
  • élevé
KeyTypeDescriptionExample
imageDetailEnum (eImageDetailSchema)Spécifie le niveau de détail requis pour les tâches d'analyse d'image, applicable aux modèles dotés de capacités de vision (spécification OpenAI).

Par défaut : "auto"

Exemple :

preset:
  imageDetail: 'high'

maxContextTokens

KeyTypeDescriptionExample
maxContextTokensNumberLe nombre maximal de jetons de contexte à fournir au modèle.Useful if you want to limit the maximum context for this preset.

Exemple :

preset:
  maxContextTokens: 4096

Options d'agent

Notez que ces options ne sont applicables que lors de l'utilisation de l'endpoint agents.

Vous devriez exclure toute option de modèle et vous en remettre à la configuration de l'agent telle que définie dans l'interface utilisateur.

Filtrage d'accès aux agents (v0.8.0+)

À partir de la v0.8.0, LibreChat utilise un système de permissions basé sur des ACL (Access Control List) pour les agents. Lorsque les Model Specs sont configurés pour utiliser des agents, tous les agents auxquels l'utilisateur n'a pas accès seront automatiquement filtrés, même s'ils sont configurés dans la Model Spec. Cela garantit que les utilisateurs ne voient et ne peuvent utiliser que les agents pour lesquels ils disposent des permissions appropriées.

Pour plus d'informations sur le système de permissions ACL, consultez la documentation sur les Agents.


agent_id

KeyTypeDescriptionExample
agent_idStringIdentification d'un assistant.

Exemple :

preset:
  agent_id: 'agent_someUniqueId'

Options de l'assistant

Notez que ces options ne sont applicables que lors de l'utilisation de l'endpoint assistants ou azureAssistants.

Tout comme pour les Agents, vous devez exclure toute option de modèle et vous en remettre à la configuration de l'assistant.


assistant_id

KeyTypeDescriptionExample
assistant_idStringIdentification d'un assistant.

Exemple :

preset:
  assistant_id: 'asst_someUniqueId'

instructions

Remarque : ceci est distinct de promptPrefix, car cela remplace les instructions existantes de l'assistant pour les exécutions en cours.

Utilisez ceci uniquement si vous souhaitez remplacer les instructions principales de l'assistant.

Utilisez promptPrefix pour additional_instructions.

Plus d'informations :

KeyTypeDescriptionExample
instructionsStringRemplace les instructions par défaut de l'assistant.

Exemple :

preset:
  instructions: 'Please handle customer queries regarding order status.'

append_current_datetime

Ajoute la date et l'heure actuelles à additional_instructions pour chaque exécution. Ne remplace pas promptPrefix, mais s'y ajoute.

KeyTypeDescriptionExample
append_current_datetimeBooleanAjoute la date et l'heure actuelles à `additional_instructions` tel que défini par `promptPrefix`

Exemple :

preset:
  append_current_datetime: true

Options de modèle

Remarque : Chaque paramètre ci-dessous inclut une note sur les endpoint qui le prennent en charge.
OpenAI / AzureOpenAI / Custom prennent généralement en charge temperature, presence_penalty, frequency_penalty, stop, top_p, max_tokens.
Google / Anthropic prennent généralement en charge topP, topK, maxOutputTokens ; Google prend également en charge url_context sur les modèles de texte Gemini compatibles. Anthropic / OpenRouter / Bedrock (modèles Anthropic et Nova) prennent en charge promptCache et promptCacheTtl. Bedrock prend en charge region, maxTokens et quelques autres.

model

Pris en charge par : Tous les endpoints (sauf agents)

KeyTypeDescriptionExample
modelString (nullable)Le nom du modèle à utiliser pour le préréglage, correspondant à un modèle configuré sous l'endpoint choisi.None

Par défaut : None

Exemple :

preset:
  model: 'gpt-4-turbo'

temperature

Pris en charge par : openAI, azureOpenAI, google (en tant que temperature), anthropic (en tant que temperature), et personnalisé (type OpenAI)

KeyTypeDescriptionExample
temperatureNumberContrôle le degré de déterminisme ou de « créativité » des réponses du modèle.

Exemple :

preset:
  temperature: 0.7

presence_penalty

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)
Généralement non utilisé par Google/Anthropic/Bedrock

KeyTypeDescriptionExample
presence_penaltyNumberPénalité pour les jetons répétitifs, encourageant l'exploration de nouveaux sujets.

Exemple :

preset:
  presence_penalty: 0.3

frequency_penalty

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)
Généralement non utilisé par Google/Anthropic/Bedrock

KeyTypeDescriptionExample
frequency_penaltyNumberPénalité pour les jetons répétés, réduisant la redondance dans les réponses.

Exemple :

preset:
  frequency_penalty: 0.5

stop

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)
Généralement non utilisé par Google/Anthropic/Bedrock

KeyTypeDescriptionExample
stopArray of StringsJetons d'arrêt pour le modèle, lui indiquant de terminer sa réponse s'ils sont rencontrés.

Exemple :

preset:
  stop:
    - 'END'
    - 'STOP'

top_p

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)
Google/Anthropic utilisent souvent topP (avec un « P » majuscule) au lieu de top_p.

KeyTypeDescriptionExample
top_pNumberParamètre d'échantillonnage Nucleus (0-1), contrôlant le caractère aléatoire des jetons.

Exemple :

preset:
  top_p: 0.9

topP

Pris en charge par : google & anthropic
(objectif similaire à top_p, mais nommé différemment dans ces API)

KeyTypeDescriptionExample
topPNumberParamètre d'échantillonnage Nucleus pour les endpoint Google/Anthropic.

Exemple :

preset:
  topP: 0.8

topK

Pris en charge par : google & anthropic
(limite d'échantillonnage k sur la distribution du jeton suivant)

KeyTypeDescriptionExample
topKNumberLimite la sélection du prochain jeton aux K meilleurs jetons.

Exemple :

preset:
  topK: 40

max_tokens

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)
Pour Google/Anthropic, utilisez maxOutputTokens ou maxTokens (selon le endpoint).

KeyTypeDescriptionExample
max_tokensNumberLe nombre maximal de jetons dans la réponse du modèle.

Exemple :

preset:
  max_tokens: 4096

maxOutputTokens

Pris en charge par : google, anthropic
Équivalent à max_tokens pour ces fournisseurs.

KeyTypeDescriptionExample
maxOutputTokensNumberLe nombre maximal de jetons dans la réponse (Google/Anthropic).

Exemple :

preset:
  maxOutputTokens: 2048

promptCache

Pris en charge par : anthropic, les endpoints personnalisés OpenRouter, bedrock (modèles Anthropic et Nova) (Activer la mise en cache des prompts du fournisseur)

KeyTypeDescriptionExample
promptCacheBooleanActive ou désactive la mise en cache des prompts du fournisseur.

Par défaut : true

Exemple :

preset:
  promptCache: true

Note : Pour les endpoints Bedrock, la mise en cache des prompts (prompt caching) est automatiquement activée pour les modèles Claude et Nova. Définissez promptCache: false pour la désactiver explicitement.


promptCacheTtl

Pris en charge par : anthropic, les endpoints personnalisés OpenRouter, bedrock (modèles Anthropic et Nova) (Définit la durée de vie du cache de prompt lorsque la mise en cache de prompt est activée)

KeyTypeDescriptionExample
promptCacheTtlEnumDéfinit la durée de vie du cache de prompt. Les valeurs prises en charge sont `5m` et `1h`.Provider or SDK default

Valeurs acceptées :

  • 5m
  • 1h

Exemple :

preset:
  promptCache: true
  promptCacheTtl: '1h'

Note : promptCacheTtl est ignoré lorsque la mise en cache des prompts est désactivée. Lorsqu'il est omis, l'intégration du fournisseur utilise sa durée de vie par défaut pour le cache des prompts.


reasoning_effort

Valeurs acceptées :

  • "" (chaîne vide — non défini, utilise la valeur par défaut de l'API)
  • "none"
  • "minimal"
  • "low"
  • "medium"
  • "high"
  • "xhigh" (extra élevé)

Pris en charge par : openAI, azureOpenAI, custom (OpenAI-like), bedrock (modèles ZAI, MoonshotAI)

KeyTypeDescriptionExample
reasoning_effortStringContrôle le niveau d'effort de raisonnement du modèle. Réduire l'effort de raisonnement peut permettre d'obtenir des réponses plus rapides et d'utiliser moins de jetons pour le raisonnement. L'option `xhigh` offre une capacité de raisonnement maximale pour les problèmes complexes. Pour Bedrock, les valeurs acceptées sont `low`, `medium`, `high`.

Par défaut : "" (non défini)

Exemple :

preset:
  reasoning_effort: 'low'

reasoning_summary

Valeurs acceptées :

  • "" (chaîne vide — désactive les résumés de raisonnement)
  • "auto"
  • "concise"
  • "detailed"

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)

KeyTypeDescriptionExample
reasoning_summaryStringDéfinit les préférences de résumé du raisonnement pour le modèle.

Par défaut : "" (désactivé)

Exemple :

preset:
  reasoning_summary: 'detailed'

useResponsesApi

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)

KeyTypeDescriptionExample
useResponsesApiBooleanActive ou désactive l'API de réponses pour le modèle.

Par défaut : false

Exemple :

preset:
  useResponsesApi: true

verbosity

Valeurs acceptées :

  • "" (chaîne vide — non défini, utilise la valeur par défaut de l'API)
  • "low"
  • "medium"
  • "high"

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)

KeyTypeDescriptionExample
verbosityStringContrôle le niveau de verbosité des réponses du modèle.

Par défaut : "" (non défini)

Exemple :

preset:
  verbosity: 'low'

Pris en charge par : openAI, azureOpenAI, custom (OpenAI-like), google, anthropic

KeyTypeDescriptionExample
web_searchBooleanActive ou désactive la fonctionnalité de recherche web pour le modèle.

Par défaut : false

Note : Pour les endpoints Google, ce paramètre apparaît sous le nom Grounding with Google Search dans le panneau réel, mais contrôle web_search dans l'implémentation.

Exemple :

preset:
  web_search: true

url_context

Pris en charge par : google sur les modèles de texte Gemini pris en charge, y compris Gemini 2.5+ et Gemini 3.x

KeyTypeDescriptionExample
url_contextBooleanActive le contexte d'URL Google afin que le modèle puisse lire les URL incluses dans le message de l'utilisateur. Les liens YouTube sont convertis en entrées de compréhension vidéo native lorsque cela est possible.

Par défaut : false

Exemple :

preset:
  url_context: true

disableStreaming

Pris en charge par : openAI, azureOpenAI, personnalisé (type OpenAI)

KeyTypeDescriptionExample
disableStreamingBooleanDésactive la diffusion en continu des réponses du modèle.

Par défaut : false

Exemple :

preset:
  disableStreaming: true

thinkingBudget

Pris en charge par : google, anthropic, bedrock (modèles Anthropic)

KeyTypeDescriptionExample
thinkingBudgetNumber or StringContrôle le nombre de jetons de réflexion que le modèle peut utiliser pour son raisonnement interne. Des budgets plus importants peuvent améliorer la qualité des réponses pour les problèmes complexes.

Par défaut : "Auto (-1)" (Google), 2000 (Anthropic, Bedrock (modèles Anthropic))

Exemple :

preset:
  thinkingBudget: '2000'

thinkingLevel

Pris en charge par : google (modèles Gemini 3+)

KeyTypeDescriptionExample
thinkingLevelStringContrôle le niveau d'effort de réflexion pour les modèles Gemini 3+. Les modèles Gemini 2.5 utilisent `thinkingBudget` à la place.

Valeurs acceptées :

  • "" (non défini/auto)
  • "minimal"
  • "low"
  • "medium"
  • "high"

Par défaut : "" (non défini — le modèle décide)

Exemple :

preset:
  thinkingLevel: 'medium'

effort

Pris en charge par : anthropic, bedrock (modèles Anthropic)

KeyTypeDescriptionExample
effortStringContrôle le niveau d'effort de l'Adaptive Thinking pour les modèles Anthropic pris en charge (par exemple, Claude Opus 4.6+ et les modèles de classe Claude Fable/Mythos). Des niveaux d'effort plus élevés allouent davantage de jetons de réflexion pour les problèmes complexes.

Options : "" (non défini/auto), "low", "medium", "high", "xhigh", "max"

Par défaut : "" (non défini — le modèle décide)

Exemple :

preset:
  effort: 'high'

thinkingDisplay

Pris en charge par : anthropic, bedrock (modèles Anthropic)

KeyTypeDescriptionExample
thinkingDisplayStringContrôle si le contenu de raisonnement est renvoyé dans les réponses du modèle. Les modèles Claude Opus 4.7+ et de classe Claude Fable/Mythos omettent le contenu de réflexion par défaut ; ce paramètre vous permet d'activer les résumés de raisonnement ou de les supprimer explicitement.

Options : "auto" (par défaut), "summarized", "omitted"

  • "auto" — LibreChat décide : opte pour "summarized" pour les modèles qui omettent la réflexion par défaut (Opus 4.7+ et classe Fable/Mythos), et laisse le champ vide pour les modèles plus anciens
  • "summarized" — toujours demander un résumé a posteriori du raisonnement
  • "omitted" — supprimer toujours le contenu de raisonnement (latence légèrement inférieure)

Par défaut : "auto"

Exemple :

preset:
  thinkingDisplay: 'summarized'

thinking

Pris en charge par : google, anthropic, bedrock (modèles Anthropic)

KeyTypeDescriptionExample
thinkingBooleanIndique si le modèle doit prendre le temps de réfléchir avant de générer une réponse.

Par défaut : true

Exemple :

preset:
  thinking: true

region

Pris en charge par : bedrock
(Utilisé pour spécifier une région AWS pour Amazon Bedrock)

KeyTypeDescriptionExample
regionStringRégion AWS pour les endpoints Amazon Bedrock.

Exemple :

preset:
  region: 'us-east-1'

maxTokens

Pris en charge par : bedrock
(Utilisé à la place de max_tokens)

KeyTypeDescriptionExample
maxTokensNumberNombre maximal de jetons de sortie pour les endpoints Amazon Bedrock.

Exemple :

preset:
  maxTokens: 1024

Que pensez-vous de ce guide ?