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

Estrutura do Objeto Model Specs

Visão geral

O objeto modelSpecs ajuda você a fornecer uma experiência de interface mais simples para modelos de IA dentro da sua aplicação.

Existem 3 campos principais em modelSpecs:

  • enforce (opcional; padrão: false)
  • prioritize (opcional; padrão: true)
  • list (obrigatório)
  • addedEndpoints (opcional)

Notas:

  • Se enforce estiver definido como true, as Model Specs podem potencialmente entrar em conflito com outras configurações de interface, como modelSelect, presets e parameters.
  • O array list contém configurações detalhadas para cada modelo, incluindo predefinições que ditam comportamentos, aparências e capacidades específicas.
  • Se os campos de interface não forem especificados na configuração, ter uma lista de Model Specs desativará os seguintes elementos da interface:
    • modelSelect
    • parameters
    • presets
  • Se você quiser habilitar esses elementos de interface juntamente com os Model Specs, você pode defini-los como true no objeto interface.

Gerenciando chaves de API fornecidas pelo usuário com Model Specs

Quando Model Specs desativa modelSelect, o menu suspenso de endpoints — e o ícone de engrenagem que abre a caixa de diálogo Set API Key — são ocultados. Os usuários ainda podem definir ou rotacionar chaves para qualquer endpoint configurado com apiKey: "user_provided" em Settings → Data controls → API keys.

Essa lista é limitada aos endpoints que um usuário pode realmente acessar: os endpoints referenciados pelas suas model specs, além de quaisquer addedEndpoints. Quando o endpoint agents está acessível, ele também inclui os allowedProviders do agente (ou todos os provedores configurados quando allowedProviders não é definido).

Exemplo

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 nível superior

enforce

KeyTypeDescriptionExample
enforceBooleanDetermina se as Model Specs devem substituir estritamente outras configurações.Setting this to `true` can lead to conflicts with interface options if not managed carefully.

Padrão: false

Exemplo:

modelSpecs:
  enforce: true

prioritize

KeyTypeDescriptionExample
prioritizeBooleanEspecifica se as Model Specs devem ter prioridade sobre a configuração padrão quando ambas forem aplicáveis.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.

Padrão: true

Exemplo:

modelSpecs:
  prioritize: false

addedEndpoints

KeyTypeDescriptionExample
addedEndpointsArray of StringsPermite que endpoints específicos (por exemplo, "openAI", "google") sejam selecionáveis na interface junto com os 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`.

Padrão: [] (lista vazia)

Nota: Deve ser um dos seguintes:

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

Exemplo:

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

list

Obrigatório

KeyTypeDescriptionExample
listArray of ObjectsContém uma lista de especificações de modelos individuais detalhando várias configurações e comportamentos.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 (Item da Lista)

Dentro de cada Model Spec, ou de cada item de list, você pode configurar os seguintes campos:


name

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

Descrição: Identificador único para o modelo.


label

KeyTypeDescriptionExample
labelStringUm nome ou rótulo amigável para o modelo, exibido no menu suspenso do cabeçalho.No default. Optional.

Descrição: Um nome ou rótulo amigável para o modelo, exibido no menu suspenso do cabeçalho.


default

KeyTypeDescriptionExample
defaultBooleanEspecifica se este Model Specs é a seleção padrão, para ser selecionado automaticamente em cada novo chat.

Descrição:
Especifica se este Model Specs é a seleção padrão, para ser selecionado automaticamente em cada novo chat.


softDefault

KeyTypeDescriptionExample
softDefaultBooleanEspecifica se este Model Specs deve ser selecionado apenas para usuários de primeira viagem que ainda não selecionaram um modelo, Model Specs ou agente.

Descrição:

Especifica um padrão de primeira execução sem substituir as seleções posteriores do usuário. Use softDefault quando quiser orientar novos usuários para uma especificação selecionada, preservando a escolha do usuário após ele selecionar outro modelo, especificação ou agente.

Visualizar uma conversa antiga que utilizou um Model Specs de definição suave (soft-default) não reativa esse spec como o padrão do usuário após ele ter feito outra seleção.

Exemplo:

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

iconURL

KeyTypeDescriptionExample
iconURLStringURL ou um nome de endpoint predefinido para o ícone do modelo no seletor, cabeçalho e branding da conversa.No default. Optional.

Descrição:
URL ou um nome de endpoint predefinido para o ícone do modelo no seletor, cabeçalho e na marca da conversa. Use showIconInMenu e showIconInHeader para controlar onde o ícone aparece.


description

KeyTypeDescriptionExample
descriptionStringUma breve descrição do modelo e seu uso ou função pretendida, exibida no seletor de modelos e, opcionalmente, na página inicial do chat.No default. Optional.

Description: Uma breve descrição do modelo e seu uso ou função pretendida, exibida no seletor de modelos. Se showOnLanding for true, a mesma descrição também será exibida na página inicial do chat sob o rótulo da spec.

Descrições em texto simples são renderizadas como texto. Descrições que começam com < são renderizadas através do sanitizador de HTML de configuração, permitindo marcação inline segura e mídia, como pequenos ícones.


conversation_starters

KeyTypeDescriptionExample
conversation_startersArray of StringsPrompts iniciais sugeridos exibidos como cartões clicáveis na página inicial do chat quando este Model Specs é selecionado.No default. Optional.

Descrição: Os conversation starters oferecem aos usuários prompts iniciais selecionados para um Model Specs. Eles são exibidos na página inicial de chat vazio para o spec selecionado e são especialmente úteis com a marca showOnLanding. Clicar em um starter o envia como a primeira mensagem de uma nova conversa.

  • Um máximo de 4 starters são exibidos, correspondendo ao limite de agente/assistente.
  • Se o preset da spec apontar para um agente ou assistente que define seus próprios iniciadores de conversa, eles terão precedência.

Exemplo:

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
showOnLandingBooleanExibe o rótulo e a descrição desta Model Specs na página inicial do chat, substituindo a saudação padrão.showOnLanding: true

Padrão: false

Use isto quando uma Model Specs selecionada deve personalizar a tela inicial de chat vazio. As Model Specs existentes permanecem inalteradas, a menos que showOnLanding seja definido como true.

Exemplo:

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
groupStringNome de grupo opcional para organizar Model Specs no seletor da interface. Controla onde a especificação aparece na hierarquia do menu.No default. Optional.
groupIconStringÍcone opcional para grupos personalizados. Pode ser uma URL ou uma chave de endpoint integrada (por exemplo, "openAI", "groq"). Apenas a primeira especificação com um groupIcon em cada grupo é utilizada.No default. Optional.

Descrição: Nome de grupo opcional para organizar Model Specs no seletor da interface. O campo group oferece controle flexível sobre como as Model Specs são organizadas:

  • Se group corresponder a um nome de endpoint (por exemplo, "openAI", "groq"): O Model Specs aparece aninhado sob esse endpoint no menu de seleção.
  • Se group for um nome personalizado (não corresponder a nenhum endpoint): Cria uma seção recolhível separada com esse nome. Você pode usar opcionalmente groupIcon para definir um ícone personalizado para esta seção (URL ou chave integrada como "openAI")
  • Se group for omitido: O Model Specs aparece como um item independente no nível superior

Este recurso é particularmente útil quando você deseja adicionar descrições aos modelos sem perder a estrutura organizacional do menu de seleção.


hideBadgeRow

KeyTypeDescriptionExample
hideBadgeRowBooleanOculta a linha de emblemas de ferramentas para este Model Specs no compositor de chat.hideBadgeRow: true

Padrão: false

Use isso quando uma Model Spec selecionada não deve exibir a linha de emblemas de ferramentas/capacidades abaixo do compositor.

Exemplo:

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

Exemplo:

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 se o ícone do modelo aparece no menu suspenso do cabeçalho.

Descrição:
Controla se o ícone do modelo aparece no menu suspenso do cabeçalho. O padrão é true.


showIconInHeader

KeyTypeDescriptionExample
showIconInHeaderBooleanControla se o ícone do modelo aparece no botão suspenso do cabeçalho, à esquerda do seu nome.

Descrição:
Controla se o ícone do modelo aparece no botão suspenso do cabeçalho, à esquerda do seu nome. O padrão é true.


authType

KeyTypeDescriptionExample
authTypeStringTipo de autenticação necessário para o Model Specs.Optional. Possible values: "override_auth", "user_provided", "system_defined"

Descrição:
Tipo de autenticação necessária para o Model Specs. Determina se a autenticação é substituída, fornecida pelo usuário ou definida pelo sistema.


webSearch

KeyTypeDescriptionExample
webSearchBooleanHabilita a capacidade de pesquisa na web para esta Model Specs.When true, the model can perform web searches.

Descrição:
Habilita a capacidade de pesquisa na web para este Model Specs. Quando definido como true, o modelo pode realizar pesquisas na web para recuperar informações atuais.

Exemplo:

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

fileSearch

KeyTypeDescriptionExample
fileSearchBooleanHabilita a funcionalidade de pesquisa de arquivos para esta Model Specs.When true, the model can search through uploaded files.

Descrição:
Habilita a capacidade de pesquisa de arquivos para este Model Specs. Quando definido como true, o modelo pode pesquisar e referenciar arquivos enviados.

Exemplo:

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

executeCode

KeyTypeDescriptionExample
executeCodeBooleanHabilita a capacidade de execução de código para este Model Specs.When true, the model can execute code.

Descrição:
Habilita a capacidade de execução de código para este Model Specs. Quando definido como true, o modelo pode executar código em um ambiente isolado (sandboxed).

Exemplo:

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

mcpServers

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

Descrição:
Lista de nomes de servidores Model Context Protocol (MCP) para habilitar para este Model Specs. Servidores MCP estendem as capacidades do modelo com ferramentas e recursos personalizados.

Exemplo:

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 as Skills para esta Model Spec. Use true para o catálogo acessível ativo do usuário, false para forçar a desativação das Skills, ou uma matriz de nomes de Skill como uma lista de permissões estrita.skills: ["brand-guidelines", "code-review"]

Descrição:

Controla as Skills para esta Model Spec quando a capacidade de Skills do endpoint Agents estiver disponível.

  • true: habilita o catálogo de Skills acessíveis e ativos do usuário.
  • false: desativa as Skills para esta spec.
  • Matriz de nomes de Skill: restringe o catálogo, a invocação manual e a resolução de aplicação sempre ativa para as Skills nomeadas.

Exemplo:

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

subagents

KeyTypeDescriptionExample
subagents.enabledBooleanHabilita a funcionalidade de Subagents para agentes efêmeros criados a partir desta Model Specs.enabled: true
subagents.allowSelfBooleanPermite que o agente efêmero crie uma cópia isolada de si mesmo para trabalho focado.allowSelf: true
subagents.agent_idsArray of StringsLista de permissões privada no lado do servidor de IDs de agentes adicionais que esta model spec pode gerar.agent_ids: []

Descrição:

Controla Subagents para agentes efêmeros criados a partir deste Model Specs. Use isso quando quiser que um Model Specs com curadoria exponha o comportamento de delegação sem exigir que os usuários criem ou selecionem um agente pai persistente.

  • enabled: adiciona a ferramenta de criação de subagentes para este Model Specs.
  • allowSelf: permite que o agente efêmero gere uma nova cópia isolada de si mesmo.
  • agent_ids: permite agentes persistentes específicos como subagentes adicionais. Esta lista é limitada por MAX_SUBAGENTS e permanece no lado do servidor; a configuração de inicialização enviada aos clientes inclui apenas as flags públicas enabled e allowSelf.

Quando as Model Specs são aplicadas, as configurações de subagents da Model Spec prevalecem sobre os valores do payload da requisição.

Exemplo:

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 a funcionalidade de Artifacts para esta Model Specs e, opcionalmente, define o modo de artefato.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.

Descrição:
Habilita a funcionalidade de Artifacts para este Model Specs, permitindo que o modelo gere e exiba artefatos interativos, como componentes React, HTML e diagramas Mermaid. Quando definido como true, o modo de artefato padrão é utilizado. Você também pode especificar uma string de modo diretamente.

Exemplo:

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

preset

KeyTypeDescriptionExample
presetObjectConfigurações detalhadas de predefinições que definem o comportamento e as capacidades do modelo.See "Preset Object Structure" below.

Descrição:
Configurações detalhadas de predefinições que definem o comportamento e as capacidades do modelo (veja a Estrutura do Objeto Preset abaixo).


Campos de Preset

O campo preset para um item em modelSpecs.list é composto por um projeto de configuração abrangente para modelos de IA dentro do sistema. Ele foi projetado para especificar as configurações operacionais dos modelos de IA, personalizando seu comportamento, saídas e interações com outros componentes do sistema e endpoint.

Opções do Sistema

endpoint

Obrigatório

Valores Aceitos:

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

Nota: Se você estiver usando um endpoint personalizado, o valor de endpoint deve corresponder exatamente ao nome do endpoint personalizado definido.

KeyTypeDescriptionExample
endpointEnum (EModelEndpoint) or String (nullable)Especifica o endpoint com o qual o modelo se comunica para executar operações. Esta configuração determina o serviço externo ou interno com o qual o modelo faz interface.

Exemplo:

preset:
  endpoint: 'openAI'

modelLabel

KeyTypeDescriptionExample
modelLabelString (nullable)O rótulo usado para identificar o modelo em interfaces de usuário ou logs. Ele fornece um nome legível para o modelo, que é exibido na UI, além de ser informado à IA.None

Padrão: None

Exemplo:

preset:
  modelLabel: 'Customer Support Bot'

greeting

KeyTypeDescriptionExample
greetingStringUma mensagem predefinida que é visível na interface antes de iniciar um novo chat. Esta é uma ótima maneira de fornecer instruções ao usuário ou tornar a interface mais amigável e acessível.

Padrão: None

Exemplo:

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)Um texto estático adicionado ao início de cada prompt enviado ao modelo, definindo um contexto consistente para as respostas.When using "assistants" as the endpoint, this becomes the OpenAI field `additional_instructions`.

Padrão: None

Exemplo 1:

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

Exemplo 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 se os arquivos devem ser reenviados em cenários onde sessões persistentes não são mantidas.

Padrão: true

Exemplo:

preset:
  resendFiles: true

imageDetail

Valores Aceitos:

  • baixo
  • auto
  • alto
KeyTypeDescriptionExample
imageDetailEnum (eImageDetailSchema)Especifica o nível de detalhe necessário em tarefas de análise de imagem, aplicável a modelos com capacidades de visão (especificação OpenAI).

Padrão: "auto"

Exemplo:

preset:
  imageDetail: 'high'

maxContextTokens

KeyTypeDescriptionExample
maxContextTokensNumberO número máximo de tokens de contexto a serem fornecidos ao modelo.Useful if you want to limit the maximum context for this preset.

Exemplo:

preset:
  maxContextTokens: 4096

Opções de Agente

Observe que estas opções são aplicáveis apenas ao usar o endpoint agents.

Você deve excluir quaisquer opções de modelo e delegar à configuração do agente conforme definido na interface do usuário.

Filtragem de Acesso a Agentes (v0.8.0+)

A partir da v0.8.0, o LibreChat utiliza um sistema de permissões baseado em ACL (Access Control List) para agentes. Quando os Model Specs são configurados para usar agentes, quaisquer agentes aos quais o usuário não tenha acesso serão automaticamente filtrados, mesmo que estejam configurados no Model Spec. Isso garante que os usuários apenas vejam e possam usar agentes para os quais possuem as permissões adequadas.

Para mais informações sobre o sistema de permissões ACL, consulte a documentação de Agents.


agent_id

KeyTypeDescriptionExample
agent_idStringIdentificação de um assistente.

Exemplo:

preset:
  agent_id: 'agent_someUniqueId'

Opções de Assistente

Observe que estas opções são aplicáveis apenas ao usar o endpoint assistants ou azureAssistants.

Semelhante aos Agents, você deve excluir quaisquer opções de modelo e delegar à configuração do assistente.


assistant_id

KeyTypeDescriptionExample
assistant_idStringIdentificação de um assistente.

Exemplo:

preset:
  assistant_id: 'asst_someUniqueId'

instructions

Nota: isto é diferente de promptPrefix, pois isto substitui as instruções existentes do assistente para as execuções atuais.

Use isso apenas se você quiser substituir as instruções principais do assistente.

Use promptPrefix para additional_instructions.

Mais informações:

KeyTypeDescriptionExample
instructionsStringSubstitui as instruções padrão do assistente.

Exemplo:

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

append_current_datetime

Adiciona a data e hora atuais a additional_instructions para cada execução. Não sobrescreve promptPrefix, mas adiciona a ele.

KeyTypeDescriptionExample
append_current_datetimeBooleanAdiciona a data e hora atuais a `additional_instructions` conforme definido por `promptPrefix`

Exemplo:

preset:
  append_current_datetime: true

Opções de Modelo

Nota: Cada parâmetro abaixo inclui uma observação sobre quais endpoints o suportam.
OpenAI / AzureOpenAI / Custom normalmente suportam temperature, presence_penalty, frequency_penalty, stop, top_p, max_tokens.
Google / Anthropic normalmente suportam topP, topK, maxOutputTokens; o Google também suporta url_context em modelos de texto Gemini compatíveis. Anthropic / OpenRouter / Bedrock (modelos Anthropic e Nova) suportam promptCache e promptCacheTtl. Bedrock suporta region, maxTokens e alguns outros.

model

Suportado por: Todos os endpoints (exceto agents)

KeyTypeDescriptionExample
modelString (nullable)O nome do modelo a ser usado para a predefinição, correspondendo a um modelo configurado no endpoint escolhido.None

Padrão: None

Exemplo:

preset:
  model: 'gpt-4-turbo'

temperature

Suportado por: openAI, azureOpenAI, google (como temperature), anthropic (como temperature) e custom (estilo OpenAI)

KeyTypeDescriptionExample
temperatureNumberControla o quão determinísticas ou "criativas" são as respostas do modelo.

Exemplo:

preset:
  temperature: 0.7

presence_penalty

Suportado por: openAI, azureOpenAI, custom (OpenAI-like)
Normalmente não utilizado por Google/Anthropic/Bedrock

KeyTypeDescriptionExample
presence_penaltyNumberPenalidade para tokens repetitivos, incentivando a exploração de novos tópicos.

Exemplo:

preset:
  presence_penalty: 0.3

frequency_penalty

Suportado por: openAI, azureOpenAI, custom (OpenAI-like)
Normalmente não utilizado por Google/Anthropic/Bedrock

KeyTypeDescriptionExample
frequency_penaltyNumberPenalidade para tokens repetidos, reduzindo a redundância nas respostas.

Exemplo:

preset:
  frequency_penalty: 0.5

stop

Suportado por: openAI, azureOpenAI, custom (OpenAI-like)
Normalmente não utilizado por Google/Anthropic/Bedrock

KeyTypeDescriptionExample
stopArray of StringsTokens de parada para o modelo, instruindo-o a encerrar sua resposta caso sejam encontrados.

Exemplo:

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

top_p

Suportado por: openAI, azureOpenAI, custom (OpenAI-like)
Google/Anthropic frequentemente usam topP (com “P” maiúsculo) em vez de top_p.

KeyTypeDescriptionExample
top_pNumberParâmetro de amostragem Nucleus (0-1), que controla a aleatoriedade dos tokens.

Exemplo:

preset:
  top_p: 0.9

topP

Suportado por: google & anthropic
(propósito similar ao top_p, mas nomeado de forma diferente nessas APIs)

KeyTypeDescriptionExample
topPNumberParâmetro de amostragem Nucleus para endpoints Google/Anthropic.

Exemplo:

preset:
  topP: 0.8

topK

Suportado por: google & anthropic
(limite de k-sampling na distribuição do próximo token)

KeyTypeDescriptionExample
topKNumberLimita a seleção do próximo token aos K tokens principais.

Exemplo:

preset:
  topK: 40

max_tokens

Suportado por: openAI, azureOpenAI, custom (OpenAI-like)
Para Google/Anthropic, use maxOutputTokens ou maxTokens (dependendo do endpoint).

KeyTypeDescriptionExample
max_tokensNumberO número máximo de tokens na resposta do modelo.

Exemplo:

preset:
  max_tokens: 4096

maxOutputTokens

Suportado por: google, anthropic
Equivalente a max_tokens para estes provedores.

KeyTypeDescriptionExample
maxOutputTokensNumberO número máximo de tokens na resposta (Google/Anthropic).

Exemplo:

preset:
  maxOutputTokens: 2048

promptCache

Suportado por: anthropic, endpoints personalizados do OpenRouter, bedrock (modelos Anthropic e Nova) (Alternar cache de prompt do provedor)

KeyTypeDescriptionExample
promptCacheBooleanAtiva ou desativa o cache de prompt do provedor.

Padrão: true

Exemplo:

preset:
  promptCache: true

Nota: Para endpoints Bedrock, o cache de prompt é habilitado automaticamente para modelos Claude e Nova. Defina promptCache: false para desativá-lo explicitamente.


promptCacheTtl

Suportado por: anthropic, endpoints personalizados do OpenRouter, bedrock (modelos Anthropic e Nova) (Define o tempo de vida do cache de prompt quando o cache de prompt está ativado)

KeyTypeDescriptionExample
promptCacheTtlEnumDefine o tempo de vida do prompt-cache. Os valores suportados são `5m` e `1h`.Provider or SDK default

Valores Aceitos:

  • 5m
  • 1h

Exemplo:

preset:
  promptCache: true
  promptCacheTtl: '1h'

Nota: promptCacheTtl é ignorado quando o prompt caching está desativado. Quando omitido, a integração do provedor utiliza seu tempo de vida de prompt-cache padrão.


reasoning_effort

Valores Aceitos:

  • "" (string vazia — não definido, usa o padrão da API)
  • "none"
  • "minimal"
  • "low"
  • "medium"
  • "high"
  • "xhigh" (extra alta)

Suportado por: openAI, azureOpenAI, custom (OpenAI-like), bedrock (modelos ZAI, MoonshotAI)

KeyTypeDescriptionExample
reasoning_effortStringControla o nível de esforço de raciocínio do modelo. Reduzir o esforço de raciocínio pode resultar em respostas mais rápidas e menos tokens utilizados no raciocínio. A opção `xhigh` oferece a capacidade máxima de raciocínio para problemas complexos. Para Bedrock, os valores aceitos são `low`, `medium`, `high`.

Padrão: "" (não definido)

Exemplo:

preset:
  reasoning_effort: 'low'

reasoning_summary

Valores Aceitos:

  • "" (string vazia — desativa resumos de raciocínio)
  • "auto"
  • "concise"
  • "detailed"

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

KeyTypeDescriptionExample
reasoning_summaryStringDefine as preferências de resumo de raciocínio para o modelo.

Padrão: "" (desativado)

Exemplo:

preset:
  reasoning_summary: 'detailed'

useResponsesApi

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

KeyTypeDescriptionExample
useResponsesApiBooleanAtiva ou desativa a API de respostas para o modelo.

Padrão: false

Exemplo:

preset:
  useResponsesApi: true

verbosity

Valores Aceitos:

  • "" (string vazia — não definido, usa o padrão da API)
  • "low"
  • "medium"
  • "high"

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

KeyTypeDescriptionExample
verbosityStringControla o nível de verbosidade das respostas do modelo.

Padrão: "" (não definido)

Exemplo:

preset:
  verbosity: 'low'

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

KeyTypeDescriptionExample
web_searchBooleanAtiva ou desativa a funcionalidade de pesquisa na web para o modelo.

Padrão: false

Nota: Para endpoints do Google, este parâmetro aparece como Grounding with Google Search no painel real, mas controla web_search na implementação.

Exemplo:

preset:
  web_search: true

url_context

Suportado por: google em modelos de texto Gemini suportados, incluindo Gemini 2.5+ e Gemini 3.x

KeyTypeDescriptionExample
url_contextBooleanHabilita o Google URL Context para que o modelo possa ler URLs incluídas na mensagem do usuário. Links do YouTube são convertidos em entradas de compreensão de vídeo nativas quando possível.

Padrão: false

Exemplo:

preset:
  url_context: true

disableStreaming

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

KeyTypeDescriptionExample
disableStreamingBooleanDesativa o streaming de respostas do modelo.

Padrão: false

Exemplo:

preset:
  disableStreaming: true

thinkingBudget

Suportado por: google, anthropic, bedrock (modelos Anthropic)

KeyTypeDescriptionExample
thinkingBudgetNumber or StringControla o número de tokens de raciocínio que o modelo pode usar para processamento interno. Orçamentos maiores podem melhorar a qualidade da resposta para problemas complexos.

Padrão: "Auto (-1)" (Google), 2000 (Anthropic, Bedrock (modelos Anthropic))

Exemplo:

preset:
  thinkingBudget: '2000'

thinkingLevel

Suportado por: google (modelos Gemini 3+)

KeyTypeDescriptionExample
thinkingLevelStringControla o nível de esforço de raciocínio para modelos Gemini 3+. Modelos Gemini 2.5 usam `thinkingBudget` em vez disso.

Valores Aceitos:

  • "" (não definido/automático)
  • "minimal"
  • "low"
  • "medium"
  • "high"

Padrão: "" (não definido — o modelo decide)

Exemplo:

preset:
  thinkingLevel: 'medium'

effort

Suportado por: anthropic, bedrock (modelos Anthropic)

KeyTypeDescriptionExample
effortStringControla o nível de esforço do Adaptive Thinking para modelos Anthropic suportados (por exemplo, Claude Opus 4.6+ e modelos da classe Claude Fable/Mythos). Níveis de esforço mais altos alocam mais tokens de pensamento para problemas complexos.

Opções: "" (não definido/auto), "low", "medium", "high", "xhigh", "max"

Padrão: "" (não definido — o modelo decide)

Exemplo:

preset:
  effort: 'high'

thinkingDisplay

Suportado por: anthropic, bedrock (modelos Anthropic)

KeyTypeDescriptionExample
thinkingDisplayStringControla se o conteúdo de raciocínio é retornado nas respostas do modelo. Os modelos Claude Opus 4.7+ e da classe Claude Fable/Mythos omitem o conteúdo de pensamento por padrão; esta configuração permite que você opte por resumos de raciocínio ou os suprima explicitamente.

Opções: "auto" (padrão), "summarized", "omitted"

  • "auto" — O LibreChat decide: opta por "summarized" para modelos que omitem o pensamento por padrão (Opus 4.7+ e classe Fable/Mythos), e deixa o campo vazio para modelos mais antigos
  • "summarized" — sempre solicite um resumo post-hoc do raciocínio
  • "omitted" — sempre suprime o conteúdo de raciocínio (latência ligeiramente menor)

Padrão: "auto"

Exemplo:

preset:
  thinkingDisplay: 'summarized'

thinking

Suportado por: google, anthropic, bedrock (modelos Anthropic)

KeyTypeDescriptionExample
thinkingBooleanIndica se o modelo deve dedicar tempo para pensar antes de gerar uma resposta.

Padrão: true

Exemplo:

preset:
  thinking: true

region

Suportado por: bedrock
(Usado para especificar uma região da AWS para o Amazon Bedrock)

KeyTypeDescriptionExample
regionStringRegião da AWS para endpoints do Amazon Bedrock.

Exemplo:

preset:
  region: 'us-east-1'

maxTokens

Suportado por: bedrock
(Usado no lugar de max_tokens)

KeyTypeDescriptionExample
maxTokensNumberTokens de saída máximos para endpoints do Amazon Bedrock.

Exemplo:

preset:
  maxTokens: 1024

Como está este guia?