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

Estructura del objeto Model Specs

Descripción general

El objeto modelSpecs le ayuda a proporcionar una experiencia de interfaz de usuario más sencilla para los modelos de IA dentro de su aplicación.

Hay 3 campos principales bajo modelSpecs:

  • enforce (opcional; predeterminado: false)
  • prioritize (opcional; predeterminado: true)
  • list (obligatorio)
  • addedEndpoints (opcional)

Notas:

  • Si enforce se establece en true, las especificaciones de modelo pueden entrar en conflicto potencialmente con otros ajustes de la interfaz como modelSelect, presets y parameters.
  • La matriz list contiene configuraciones detalladas para cada modelo, incluyendo ajustes preestablecidos que dictan comportamientos, apariencias y capacidades específicas.
  • Si los campos de interface no se especifican en la configuración, tener una lista de Model Specs desactivará los siguientes elementos de la interfaz:
    • modelSelect
    • parameters
    • presets
  • Si desea habilitar estos elementos de la interfaz junto con Model Specs, puede establecerlos en true dentro del objeto interface.

Administración de claves API proporcionadas por el usuario con Model Specs

Cuando Model Specs deshabilita modelSelect, el menú desplegable de endpoints —y el icono de engranaje que abre el diálogo Set API Key— se ocultan. Los usuarios aún pueden configurar o rotar las claves para cualquier endpoint configurado con apiKey: "user_provided" desde Settings → Data controls → API keys.

Esa lista está limitada a los endpoints a los que un usuario puede acceder realmente: los endpoints referenciados por tus Model Specs, además de cualquier addedEndpoints. Cuando el endpoint agents es accesible, también incluye los allowedProviders del agente (o todos los proveedores configurados cuando allowedProviders se deja sin definir).

Ejemplo

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.

Campos de nivel superior

enforce

KeyTypeDescriptionExample
enforceBooleanDetermina si las Model Specs deben anular estrictamente otras configuraciones.Setting this to `true` can lead to conflicts with interface options if not managed carefully.

Predeterminado: false

Ejemplo:

modelSpecs:
  enforce: true

prioritize

KeyTypeDescriptionExample
prioritizeBooleanEspecifica si las Model Specs deben tener prioridad sobre la configuración predeterminada cuando ambas son aplicables.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.

Predeterminado: true

Ejemplo:

modelSpecs:
  prioritize: false

addedEndpoints

KeyTypeDescriptionExample
addedEndpointsArray of StringsPermite que endpoints específicos (p. ej., "openAI", "google") sean seleccionables en la interfaz junto con los Model Specs definidos.Requires `interface.modelSelect` to be `true`. If this field is used and `interface.modelSelect` is not explicitly set, `modelSelect` will default to `true`.

Predeterminado: [] (lista vacía)

Nota: Debe ser uno de los siguientes:

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

Ejemplo:

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

list

Requerido

KeyTypeDescriptionExample
listArray of ObjectsContiene una lista de especificaciones de modelos individuales que detallan diversas configuraciones y comportamientos.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 (Elemento de lista)

Dentro de cada Model Spec, o cada elemento de list, puedes configurar los siguientes campos:


name

KeyTypeDescriptionExample
nameStringIdentificador único para el modelo.No default. Must be specified.

Descripción: Identificador único para el modelo.


label

KeyTypeDescriptionExample
labelStringUn nombre o etiqueta fácil de usar para el modelo, que se muestra en el menú desplegable del encabezado.No default. Optional.

Descripción: Un nombre o etiqueta fácil de usar para el modelo, que se muestra en el menú desplegable del encabezado.


default

KeyTypeDescriptionExample
defaultBooleanEspecifica si este Model Specs es la selección predeterminada, para ser seleccionado automáticamente en cada chat nuevo.

Descripción:
Especifica si esta Model Specs es la selección predeterminada, para ser seleccionada automáticamente en cada chat nuevo.


softDefault

KeyTypeDescriptionExample
softDefaultBooleanEspecifica si este Model Specs debe seleccionarse solo para usuarios primerizos que aún no han seleccionado un modelo, Model Specs o agente.

Descripción:

Especifica un valor predeterminado para la primera ejecución sin anular las selecciones posteriores del usuario. Utilice softDefault cuando desee guiar a los nuevos usuarios hacia una especificación seleccionada, preservando al mismo tiempo la elección del usuario después de que elija otro modelo, especificación o agente.

Ver una conversación antigua que utilizaba una Model Specs de tipo soft-default no vuelve a activar esa especificación como la predeterminada del usuario después de que este haya realizado otra selección.

Ejemplo:

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

iconURL

KeyTypeDescriptionExample
iconURLStringURL o nombre de endpoint predefinido para el icono del modelo en el selector, el encabezado y la marca de la conversación.No default. Optional.

Descripción:
URL o nombre de endpoint predefinido para el icono del modelo en el selector, el encabezado y la marca de la conversación. Utilice showIconInMenu y showIconInHeader para controlar dónde aparece el icono.


description

KeyTypeDescriptionExample
descriptionStringUna breve descripción del modelo y su uso o función prevista, que se muestra en el selector de modelos y, opcionalmente, en la página de inicio del chat.No default. Optional.

Description: Una breve descripción del modelo y su uso o rol previsto, que se muestra en el selector de modelos. Si showOnLanding es true, la misma descripción también se muestra en la página de inicio del chat bajo la etiqueta de la especificación.

Las descripciones en texto plano se renderizan como texto. Las descripciones que comienzan con < se renderizan a través del saneador HTML de configuración, lo que permite el uso de marcado en línea seguro y elementos multimedia como iconos pequeños.


conversation_starters

KeyTypeDescriptionExample
conversation_startersArray of StringsSugerencias de prompts iniciales que se muestran como tarjetas clicables en la página de inicio del chat cuando se selecciona este Model Specs.No default. Optional.

Descripción: Los iniciadores de conversación ofrecen a los usuarios sugerencias iniciales seleccionadas para un Model Specs. Se muestran en la página de inicio de chat vacío para el spec seleccionado y son especialmente útiles con la marca showOnLanding. Al hacer clic en un iniciador, este se envía como el primer mensaje de una nueva conversación.

  • Se muestra un máximo de 4 iniciadores, coincidiendo con el límite del agente/asistente.
  • Si el preset de la especificación apunta a un agente o asistente que define sus propios iniciadores de conversación, estos tendrán prioridad.

Ejemplo:

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
showOnLandingBooleanMuestra la etiqueta y la descripción de este Model Specs en la página de inicio del chat en lugar del saludo predeterminado.showOnLanding: true

Predeterminado: false

Utilice esto cuando una especificación de modelo seleccionada deba marcar la primera pantalla de chat vacío. Las especificaciones de modelo existentes no se modifican a menos que showOnLanding esté establecido en true.

Ejemplo:

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
groupStringNombre de grupo opcional para organizar Model Specs en el selector de la interfaz. Controla dónde aparece la especificación en la jerarquía del menú.No default. Optional.
groupIconStringIcono opcional para grupos personalizados. Puede ser una URL o una clave de endpoint integrada (por ejemplo, "openAI", "groq"). Solo se utiliza la primera especificación con un groupIcon en cada grupo.No default. Optional.

Descripción: Nombre de grupo opcional para organizar los Model Specs en el selector de la interfaz de usuario. El campo group proporciona un control flexible sobre cómo se organizan los Model Specs:

  • Si group coincide con un nombre de endpoint (p. ej., "openAI", "groq"): El Model Specs aparece anidado bajo ese endpoint en el menú de selección
  • Si group es un nombre personalizado (no coincide con ningún endpoint): Crea una sección plegable independiente con ese nombre. Opcionalmente, puedes usar groupIcon para establecer un icono personalizado para esta sección (URL o clave integrada como "openAI")
  • Si se omite group: El Model Specs aparece como un elemento independiente en el nivel superior

Esta función es particularmente útil cuando desea añadir descripciones a los modelos sin perder la estructura organizativa del menú de selección.


hideBadgeRow

KeyTypeDescriptionExample
hideBadgeRowBooleanOculta la fila de insignias de herramientas para este Model Specs en el compositor de chat.hideBadgeRow: true

Predeterminado: false

Utilice esto cuando una especificación de modelo seleccionada no deba mostrar la fila de insignias de herramientas/capacidades debajo del compositor.

Ejemplo:

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

Ejemplo:

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
showIconInMenuBooleanControla si el icono del modelo aparece en el menú desplegable del encabezado.

Descripción:
Controla si el icono del modelo aparece en el menú desplegable del encabezado. El valor predeterminado es true.


showIconInHeader

KeyTypeDescriptionExample
showIconInHeaderBooleanControla si el icono del modelo aparece en el botón desplegable del encabezado, a la izquierda de su nombre.

Descripción:
Controla si el icono del modelo aparece en el botón desplegable del encabezado, a la izquierda de su nombre. El valor predeterminado es true.


authType

KeyTypeDescriptionExample
authTypeStringTipo de autenticación requerido para el Model Specs.Optional. Possible values: "override_auth", "user_provided", "system_defined"

Descripción:
Tipo de autenticación requerido para el Model Specs. Determina si la autenticación se anula, es proporcionada por el usuario o es definida por el sistema.


webSearch

KeyTypeDescriptionExample
webSearchBooleanHabilita la capacidad de búsqueda web para esta Model Specs.When true, the model can perform web searches.

Descripción:
Habilita la capacidad de búsqueda web para esta Model Specs. Cuando se establece en true, el modelo puede realizar búsquedas en la web para recuperar información actualizada.

Ejemplo:

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

fileSearch

KeyTypeDescriptionExample
fileSearchBooleanHabilita la capacidad de búsqueda de archivos para esta Model Specs.When true, the model can search through uploaded files.

Descripción:
Habilita la capacidad de búsqueda de archivos para este Model Specs. Cuando se establece en true, el modelo puede buscar y hacer referencia a archivos cargados.

Ejemplo:

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

executeCode

KeyTypeDescriptionExample
executeCodeBooleanHabilita la capacidad de ejecución de código para este Model Specs.When true, the model can execute code.

Descripción:
Habilita la capacidad de ejecución de código para esta Model Specs. Cuando se establece en true, el modelo puede ejecutar código en un entorno aislado (sandboxed).

Ejemplo:

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

mcpServers

KeyTypeDescriptionExample
mcpServersArray of StringsLista de nombres de servidores de Model Context Protocol (MCP) a habilitar para esta Model Specs.Each string should match a configured MCP server name.

Descripción:
Lista de nombres de servidores de Model Context Protocol (MCP) a habilitar para esta especificación de modelo. Los servidores MCP amplían las capacidades del modelo con herramientas y recursos personalizados.

Ejemplo:

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 StringsControla las Skills para esta Model Specs. Usa true para el catálogo accesible activo del usuario, false para desactivar las Skills, o una matriz de nombres de Skill como una lista de permitidos estricta.skills: ["brand-guidelines", "code-review"]

Descripción:

Controla las Skills para este Model Specs cuando la capacidad de Skills del endpoint Agents esté disponible.

  • true: habilita el catálogo de Skills accesibles y activos del usuario.
  • false: deshabilita las Skills para esta especificación.
  • Matriz de nombres de Skill: restringe el catálogo, la invocación manual y la resolución de aplicación siempre (always-apply) a los Skills nombrados.

Ejemplo:

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

subagents

KeyTypeDescriptionExample
subagents.enabledBooleanHabilita la funcionalidad de Subagents para agentes efímeros creados a partir de este Model Specs.enabled: true
subagents.allowSelfBooleanPermite que el agente efímero genere una copia aislada de sí mismo para realizar tareas específicas.allowSelf: true
subagents.agent_idsArray of StringsLista de permitidos privada del lado del servidor de IDs de agentes adicionales que esta Model Specs puede generar.agent_ids: []

Descripción:

Controla los Subagents para agentes efímeros creados a partir de este Model Specs. Utiliza esto cuando desees que un Model Specs seleccionado exponga el comportamiento de delegación sin requerir que los usuarios creen o seleccionen un agente padre persistente.

  • enabled: añade la herramienta de generación de subagentes para este Model Specs.
  • allowSelf: permite que el agente efímero genere una copia aislada y nueva de sí mismo.
  • agent_ids: permite agentes persistentes específicos como subagentes adicionales. Esta lista está limitada por MAX_SUBAGENTS y permanece en el lado del servidor; la configuración de inicio enviada a los clientes solo incluye las banderas públicas enabled y allowSelf.

Cuando se aplican los Model Specs, los ajustes de subagents del Model Spec prevalecen sobre los valores del payload de la solicitud.

Ejemplo:

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

artifacts

KeyTypeDescriptionExample
artifactsString | BooleanHabilita la capacidad de Artifacts para este Model Specs y, opcionalmente, establece el modo de artefacto.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.

Descripción:
Habilita la capacidad de Artifacts para esta Model Specs, permitiendo que el modelo genere y muestre artefactos interactivos como componentes de React, HTML y diagramas de Mermaid. Cuando se establece en true, se utiliza el modo de artefacto predeterminado. También puede especificar una cadena de modo directamente.

Ejemplo:

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

preset

KeyTypeDescriptionExample
presetObjectConfiguraciones detalladas de preajustes que definen el comportamiento y las capacidades del modelo.See "Preset Object Structure" below.

Descripción:
Configuraciones detalladas de preajustes que definen el comportamiento y las capacidades del modelo (ver Estructura del Objeto Preset a continuación).


Campos de Preset

El campo preset para un elemento de modelSpecs.list se compone de un plano de configuración integral para los modelos de IA dentro del sistema. Está diseñado para especificar los ajustes operativos de los modelos de IA, adaptando su comportamiento, resultados e interacciones con otros componentes del sistema y endpoint.

Opciones del sistema

endpoint

Requerido

Valores aceptados:

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

Nota: Si estás utilizando un endpoint personalizado, el valor de endpoint debe coincidir exactamente con el nombre del endpoint personalizado definido.

KeyTypeDescriptionExample
endpointEnum (EModelEndpoint) or String (nullable)Especifica el endpoint con el que el modelo se comunica para ejecutar operaciones. Este ajuste determina el servicio externo o interno con el que interactúa el modelo.

Ejemplo:

preset:
  endpoint: 'openAI'

modelLabel

KeyTypeDescriptionExample
modelLabelString (nullable)La etiqueta utilizada para identificar el modelo en las interfaces de usuario o registros. Proporciona un nombre legible por humanos para el modelo, el cual se muestra en la UI y también es conocido por la IA.None

Predeterminado: None

Ejemplo:

preset:
  modelLabel: 'Customer Support Bot'

greeting

KeyTypeDescriptionExample
greetingStringUn mensaje predefinido que es visible en la UI antes de iniciar un nuevo chat. Esta es una buena forma de proporcionar instrucciones al usuario o de hacer que la interfaz parezca más amigable y accesible.

Predeterminado: None

Ejemplo:

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 texto estático que se antepone a cada prompt enviado al modelo, estableciendo un contexto consistente para las respuestas.When using "assistants" as the endpoint, this becomes the OpenAI field `additional_instructions`.

Predeterminado: None

Ejemplo 1:

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

Ejemplo 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
resendFilesBooleanIndica si los archivos deben reenviarse en escenarios donde no se mantienen sesiones persistentes.

Predeterminado: true

Ejemplo:

preset:
  resendFiles: true

imageDetail

Valores aceptados:

  • bajo
  • auto
  • alto
KeyTypeDescriptionExample
imageDetailEnum (eImageDetailSchema)Especifica el nivel de detalle requerido en las tareas de análisis de imágenes, aplicable a modelos con capacidades de visión (especificación de OpenAI).

Predeterminado: "auto"

Ejemplo:

preset:
  imageDetail: 'high'

maxContextTokens

KeyTypeDescriptionExample
maxContextTokensNumberEl número máximo de tokens de contexto para proporcionar al modelo.Useful if you want to limit the maximum context for this preset.

Ejemplo:

preset:
  maxContextTokens: 4096

Opciones de agente

Ten en cuenta que estas opciones solo son aplicables cuando se utiliza el endpoint agents.

Debe excluir cualquier opción de modelo y remitirse a la configuración del agente tal como se define en la interfaz de usuario.

Filtrado de acceso de agentes (v0.8.0+)

A partir de la v0.8.0, LibreChat utiliza un sistema de permisos basado en ACL (Lista de Control de Acceso) para los agentes. Cuando los Model Specs están configurados para usar agentes, cualquier agente al que el usuario no tenga acceso será filtrado automáticamente, incluso si está configurado en el Model Spec. Esto garantiza que los usuarios solo vean y puedan utilizar los agentes para los cuales tienen los permisos adecuados.

Para obtener más información sobre el sistema de permisos ACL, consulta la documentación de Agents.


agent_id

KeyTypeDescriptionExample
agent_idStringIdentificación de un asistente.

Ejemplo:

preset:
  agent_id: 'agent_someUniqueId'

Opciones de asistente

Ten en cuenta que estas opciones solo son aplicables cuando se utiliza el endpoint assistants o azureAssistants.

De forma similar a Agents, debes excluir cualquier opción de modelo y remitirte a la configuración del asistente.


assistant_id

KeyTypeDescriptionExample
assistant_idStringIdentificación de un asistente.

Ejemplo:

preset:
  assistant_id: 'asst_someUniqueId'

instructions

Nota: esto es distinto de promptPrefix, ya que esto sobrescribe las instrucciones existentes del asistente para las ejecuciones actuales.

Utiliza esto solo si deseas anular las instrucciones principales del asistente.

Utilice promptPrefix para additional_instructions.

Más información:

KeyTypeDescriptionExample
instructionsStringSobrescribe las instrucciones predeterminadas del asistente.

Ejemplo:

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

append_current_datetime

Añade la fecha y hora actuales a additional_instructions para cada ejecución. No sobrescribe promptPrefix, sino que se añade a él.

KeyTypeDescriptionExample
append_current_datetimeBooleanAñade la fecha y hora actuales a `additional_instructions` según lo definido por `promptPrefix`

Ejemplo:

preset:
  append_current_datetime: true

Opciones de modelo

Nota: Cada parámetro a continuación incluye una nota sobre qué endpoints lo admiten.
OpenAI / AzureOpenAI / Custom normalmente admiten temperature, presence_penalty, frequency_penalty, stop, top_p, max_tokens.
Google / Anthropic normalmente admiten topP, topK, maxOutputTokens; Google también admite url_context en modelos de texto Gemini compatibles. Anthropic / OpenRouter / Bedrock (modelos Anthropic y Nova) admiten promptCache y promptCacheTtl. Bedrock admite region, maxTokens y algunos otros.

model

Soportado por: Todos los endpoint (excepto agents)

KeyTypeDescriptionExample
modelString (nullable)El nombre del modelo a utilizar para el ajuste preestablecido, que debe coincidir con un modelo configurado bajo el endpoint elegido.None

Predeterminado: None

Ejemplo:

preset:
  model: 'gpt-4-turbo'

temperature

Soportado por: openAI, azureOpenAI, google (como temperature), anthropic (como temperature), y personalizado (tipo OpenAI)

KeyTypeDescriptionExample
temperatureNumberControla qué tan deterministas o "creativas" son las respuestas del modelo.

Ejemplo:

preset:
  temperature: 0.7

presence_penalty

Soportado por: openAI, azureOpenAI, personalizado (tipo OpenAI)
Normalmente no utilizado por Google/Anthropic/Bedrock

KeyTypeDescriptionExample
presence_penaltyNumberPenalización por tokens repetitivos, lo que fomenta la exploración de nuevos temas.

Ejemplo:

preset:
  presence_penalty: 0.3

frequency_penalty

Soportado por: openAI, azureOpenAI, personalizado (tipo OpenAI)
Normalmente no utilizado por Google/Anthropic/Bedrock

KeyTypeDescriptionExample
frequency_penaltyNumberPenalización por tokens repetidos, reduciendo la redundancia en las respuestas.

Ejemplo:

preset:
  frequency_penalty: 0.5

stop

Soportado por: openAI, azureOpenAI, personalizado (tipo OpenAI)
Normalmente no utilizado por Google/Anthropic/Bedrock

KeyTypeDescriptionExample
stopArray of StringsTokens de parada para el modelo, que le indican que finalice su respuesta si los encuentra.

Ejemplo:

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

top_p

Soportado por: openAI, azureOpenAI, custom (tipo OpenAI)
Google/Anthropic a menudo usan topP (con “P” mayúscula) en lugar de top_p.

KeyTypeDescriptionExample
top_pNumberParámetro de muestreo Nucleus (0-1), que controla la aleatoriedad de los tokens.

Ejemplo:

preset:
  top_p: 0.9

topP

Soportado por: google & anthropic
(propósito similar a top_p, pero nombrado de forma diferente en esas APIs)

KeyTypeDescriptionExample
topPNumberParámetro de muestreo Nucleus para endpoints de Google/Anthropic.

Ejemplo:

preset:
  topP: 0.8

topK

Soportado por: google & anthropic
(límite de k-sampling en la distribución del siguiente token)

KeyTypeDescriptionExample
topKNumberLimita la selección del siguiente token a los K tokens principales.

Ejemplo:

preset:
  topK: 40

max_tokens

Soportado por: openAI, azureOpenAI, custom (tipo OpenAI)
Para Google/Anthropic, utilice maxOutputTokens o maxTokens (dependiendo del endpoint).

KeyTypeDescriptionExample
max_tokensNumberEl número máximo de tokens en la respuesta del modelo.

Ejemplo:

preset:
  max_tokens: 4096

maxOutputTokens

Soportado por: google, anthropic
Equivalente a max_tokens para estos proveedores.

KeyTypeDescriptionExample
maxOutputTokensNumberEl número máximo de tokens en la respuesta (Google/Anthropic).

Ejemplo:

preset:
  maxOutputTokens: 2048

promptCache

Compatible con: anthropic, endpoints personalizados de OpenRouter, bedrock (modelos de Anthropic y Nova) (Alternar almacenamiento en caché de prompts del proveedor)

KeyTypeDescriptionExample
promptCacheBooleanHabilita o deshabilita el almacenamiento en caché de prompts del proveedor.

Predeterminado: true

Ejemplo:

preset:
  promptCache: true

Nota: Para los endpoints de Bedrock, el almacenamiento en caché de prompts (prompt caching) está habilitado automáticamente para los modelos Claude y Nova. Establezca promptCache: false para desactivarlo explícitamente.


promptCacheTtl

Compatible con: anthropic, endpoints personalizados de OpenRouter, bedrock (modelos Anthropic y Nova) (Establece el tiempo de vida de la caché de prompts cuando el almacenamiento en caché de prompts está habilitado)

KeyTypeDescriptionExample
promptCacheTtlEnumEstablece el tiempo de vida de la caché de prompts. Los valores admitidos son `5m` y `1h`.Provider or SDK default

Valores aceptados:

  • 5m
  • 1h

Ejemplo:

preset:
  promptCache: true
  promptCacheTtl: '1h'

Nota: promptCacheTtl se ignora cuando el almacenamiento en caché de prompts está desactivado. Cuando se omite, la integración del proveedor utiliza su tiempo de vida predeterminado para el caché de prompts.


reasoning_effort

Valores aceptados:

  • "" (cadena vacía — sin configurar, utiliza el valor predeterminado de la API)
  • "none"
  • "minimal"
  • "low"
  • "medium"
  • "high"
  • "xhigh" (extra alta)

Soportado por: openAI, azureOpenAI, custom (tipo OpenAI), bedrock (modelos ZAI, MoonshotAI)

KeyTypeDescriptionExample
reasoning_effortStringControla el nivel de esfuerzo de razonamiento del modelo. Reducir el esfuerzo de razonamiento puede resultar en respuestas más rápidas y menos tokens utilizados en el razonamiento. La opción `xhigh` proporciona la máxima capacidad de razonamiento para problemas complejos. Para Bedrock, los valores aceptados son `low`, `medium`, `high`.

Predeterminado: "" (sin establecer)

Ejemplo:

preset:
  reasoning_effort: 'low'

reasoning_summary

Valores aceptados:

  • "" (cadena vacía — deshabilita los resúmenes de razonamiento)
  • "auto"
  • "concise"
  • "detailed"

Soportado por: openAI, azureOpenAI, custom (OpenAI-like)

KeyTypeDescriptionExample
reasoning_summaryStringEstablece las preferencias de resumen de razonamiento para el modelo.

Predeterminado: "" (deshabilitado)

Ejemplo:

preset:
  reasoning_summary: 'detailed'

useResponsesApi

Soportado por: openAI, azureOpenAI, custom (OpenAI-like)

KeyTypeDescriptionExample
useResponsesApiBooleanHabilita o deshabilita la API de respuestas para el modelo.

Predeterminado: false

Ejemplo:

preset:
  useResponsesApi: true

verbosity

Valores aceptados:

  • "" (cadena vacía — sin configurar, utiliza el valor predeterminado de la API)
  • "low"
  • "medium"
  • "high"

Soportado por: openAI, azureOpenAI, custom (OpenAI-like)

KeyTypeDescriptionExample
verbosityStringControla el nivel de verbosidad de las respuestas del modelo.

Predeterminado: "" (sin establecer)

Ejemplo:

preset:
  verbosity: 'low'

Soportado por: openAI, azureOpenAI, custom (OpenAI-like), google, anthropic

KeyTypeDescriptionExample
web_searchBooleanHabilita o deshabilita la funcionalidad de búsqueda web para el modelo.

Predeterminado: false

Nota: Para los endpoints de Google, este parámetro aparece como Grounding with Google Search en el panel real, pero controla web_search en la implementación.

Ejemplo:

preset:
  web_search: true

url_context

Soportado por: google en modelos de texto Gemini compatibles, incluyendo Gemini 2.5+ y Gemini 3.x

KeyTypeDescriptionExample
url_contextBooleanHabilita el contexto de URL de Google para que el modelo pueda leer las URL incluidas en el mensaje del usuario. Los enlaces de YouTube se convierten en entradas de comprensión de video nativas cuando es posible.

Predeterminado: false

Ejemplo:

preset:
  url_context: true

disableStreaming

Soportado por: openAI, azureOpenAI, custom (OpenAI-like)

KeyTypeDescriptionExample
disableStreamingBooleanDeshabilita las respuestas en streaming del modelo.

Predeterminado: false

Ejemplo:

preset:
  disableStreaming: true

thinkingBudget

Soportado por: google, anthropic, bedrock (modelos de Anthropic)

KeyTypeDescriptionExample
thinkingBudgetNumber or StringControla la cantidad de tokens de pensamiento que el modelo puede utilizar para el razonamiento interno. Presupuestos más grandes pueden mejorar la calidad de la respuesta para problemas complejos.

Predeterminado: "Auto (-1)" (Google), 2000 (Anthropic, Bedrock (modelos de Anthropic))

Ejemplo:

preset:
  thinkingBudget: '2000'

thinkingLevel

Soportado por: google (modelos Gemini 3+)

KeyTypeDescriptionExample
thinkingLevelStringControla el nivel de esfuerzo de pensamiento para los modelos Gemini 3+. Los modelos Gemini 2.5 utilizan `thinkingBudget` en su lugar.

Valores aceptados:

  • "" (sin definir/automático)
  • "minimal"
  • "low"
  • "medium"
  • "high"

Predeterminado: "" (sin configurar — el modelo decide)

Ejemplo:

preset:
  thinkingLevel: 'medium'

effort

Soportado por: anthropic, bedrock (modelos de Anthropic)

KeyTypeDescriptionExample
effortStringControla el nivel de esfuerzo de Adaptive Thinking para modelos de Anthropic compatibles (por ejemplo, Claude Opus 4.6+ y modelos de clase Claude Fable/Mythos). Los niveles de esfuerzo más altos asignan más tokens de pensamiento para problemas complejos.

Opciones: "" (sin establecer/auto), "low", "medium", "high", "xhigh", "max"

Predeterminado: "" (sin configurar — el modelo decide)

Ejemplo:

preset:
  effort: 'high'

thinkingDisplay

Soportado por: anthropic, bedrock (modelos de Anthropic)

KeyTypeDescriptionExample
thinkingDisplayStringControla si el contenido de razonamiento se devuelve en las respuestas del modelo. Los modelos Claude Opus 4.7+ y de clase Claude Fable/Mythos omiten el contenido de pensamiento de forma predeterminada; esta configuración le permite optar por resúmenes de razonamiento o suprimirlos explícitamente.

Opciones: "auto" (predeterminado), "summarized", "omitted"

  • "auto" — LibreChat decide: opta por "summarized" para modelos que omiten el pensamiento de forma predeterminada (Opus 4.7+ y clase Fable/Mythos), y deja el campo vacío para modelos más antiguos
  • "summarized" — solicita siempre un resumen post-hoc del razonamiento
  • "omitted" — siempre suprimir el contenido de razonamiento (latencia ligeramente menor)

Predeterminado: "auto"

Ejemplo:

preset:
  thinkingDisplay: 'summarized'

thinking

Soportado por: google, anthropic, bedrock (modelos de Anthropic)

KeyTypeDescriptionExample
thinkingBooleanIndica si el modelo debe dedicar tiempo a pensar antes de generar una respuesta.

Predeterminado: true

Ejemplo:

preset:
  thinking: true

region

Soportado por: bedrock
(Se utiliza para especificar una región de AWS para Amazon Bedrock)

KeyTypeDescriptionExample
regionStringRegión de AWS para los endpoints de Amazon Bedrock.

Ejemplo:

preset:
  region: 'us-east-1'

maxTokens

Soportado por: bedrock
(Utilizado en lugar de max_tokens)

KeyTypeDescriptionExample
maxTokensNumberTokens de salida máximos para los endpoints de Amazon Bedrock.

Ejemplo:

preset:
  maxTokens: 1024

¿Qué te parece esta guía?