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

Parámetros personalizados

Elegir un conjunto de parámetros predeterminados

De forma predeterminada, cuando especifica un endpoint personalizado en el archivo de configuración librechat.yaml, se utilizarán los parámetros predeterminados de la API de OpenAI. Sin embargo, puede anular estos valores predeterminados especificando el campo customParams.defaultParamsEndpoint dentro de la definición de su endpoint personalizado. Por ejemplo, para usar los parámetros de Google para su endpoint personalizado:

endpoints:
  custom:
    - name: 'Google Gemini'
      apiKey: ...
      baseURL: ...
      customParams:
        defaultParamsEndpoint: 'google'

Tu endpoint "Google Gemini" ahora mostrará parámetros para la API de Google cuando crees un nuevo agente o preset.

Sustitución de definiciones de parámetros

Además de eso, también puede ajustar los parámetros proporcionados para su endpoint personalizado. Por ejemplo, el parámetro temperature para el endpoint de google es un control deslizante con un rango de 0.0 a 1.0, y un valor predeterminado de 1.0; puede actualizar el archivo librechat.yaml para sobrescribir estos valores:

endpoints:
  custom:
    - name: 'Google Gemini'
      apiKey: ...
      baseURL: ...
      customParams:
        defaultParamsEndpoint: 'google'
        paramDefinitions:
          - key: temperature
            range:
              min: 0
              max: 0.7
              step: 0.1
            default: 0.5

Como resultado, el control deslizante Temperature se limitará al rango de 0.0 a 0.7 con un incremento de 0.1, y un valor predeterminado de 0.5. El resto de los parámetros se establecerán en sus valores predeterminados.

Configuración de valores de parámetros predeterminados

Puede especificar valores predeterminados para los parámetros que se aplicarán automáticamente al realizar solicitudes a la API. Esto es útil para establecer valores de parámetros base para su endpoint personalizado sin requerir que los usuarios los configuren manualmente cada vez.

El campo default en paramDefinitions le permite establecer valores predeterminados que se aplican cuando los parámetros no están definidos. Estos valores predeterminados siguen un orden de prioridad para garantizar un comportamiento de anulación adecuado:

Orden de prioridad (de menor a mayor):

  1. Valores predeterminados de paramDefinitions - Se aplican primero cuando el parámetro no está definido
  2. addParams - Puede sobrescribir los valores predeterminados
  3. modelOptions configuradas por el usuario - Prioridad más alta, sobrescribe todo
endpoints:
  custom:
    - name: 'My Custom LLM'
      apiKey: ...
      baseURL: ...
      customParams:
        defaultParamsEndpoint: 'openAI'
        paramDefinitions:
          - key: temperature
            default: 0.7
          - key: topP
            default: 0.9
          - key: maxTokens
            default: 2000

En este ejemplo:

  • Si un usuario no especifica temperature, el valor predeterminado es 0.7
  • Si un usuario establece explícitamente temperature en 0.5, su valor (0.5) tiene prioridad
  • El campo addParams (si está configurado) puede anular estos valores predeterminados
  • Las selecciones del usuario en la UI siempre tienen la prioridad más alta

Anthropic

Existen dos modos de endpoint personalizados relacionados con Anthropic:

  • provider: 'anthropic' en el endpoint personalizado utiliza el cliente nativo de Anthropic /v1/messages. Utilícelo para Anthropic directamente o para gateways que utilicen la API de Messages de Anthropic.
  • customParams.defaultParamsEndpoint: 'anthropic' mantiene el endpoint personalizado en la ruta compatible con OpenAI mientras aplica metadatos de parámetros y adaptación de solicitudes al estilo de Anthropic.

Al usar defaultParamsEndpoint: 'anthropic', el sistema proporciona un manejo especial que va más allá de simplemente mostrar y utilizar los conjuntos de parámetros de Anthropic:

Compatibilidad con la API de Anthropic

Configurar defaultParamsEndpoint: 'anthropic' adapta los parámetros, encabezados y el formato del payload para solicitudes con la estructura de Anthropic en la ruta del endpoint personalizado:

  • Los parámetros se envían a su endpoint personalizado exactamente como lo espera la API de Anthropic
  • Esto es esencial para servicios de proxy como LiteLLM que pasan parámetros que no siguen la especificación de OpenAI directamente al proveedor subyacente.
  • Los parámetros específicos de Anthropic como thinking están formateados correctamente
  • El payload de messages está formateado de acuerdo con los requisitos de Anthropic (bloques de pensamiento y almacenamiento en caché de prompts)
  • Los encabezados beta apropiados se añaden automáticamente según el modelo, tal como ocurre al usar Anthropic directamente.

Esto es principalmente necesario para formatear correctamente el parámetro thinking, el cual no es compatible con OpenAI:

{
  "thinking": {
    "type": "enabled",
    "budget_tokens": 10000
  }
}

Además, el sistema añade automáticamente encabezados beta de Anthropic específicos del modelo, tales como:

  • anthropic-beta: prompt-caching-2024-07-31 para soporte de almacenamiento en caché de prompts
  • anthropic-beta: context-1m-2025-08-07 para modelos de contexto extendido
  • Flags de características específicas del modelo basadas en el modelo Claude que se esté utilizando

Para endpoints nativos compatibles con Anthropic, prefiera provider: 'anthropic' en el endpoint personalizado. Esto dirige a los agentes, la sumarización, la gestión de tokens/contexto y los parámetros predeterminados a través de la ruta del proveedor Anthropic.

Estado de la implementación

Actualmente, este manejo automático de parámetros y encabezados está completamente implementado para endpoints personalizados de estilo Anthropic. Se planea un comportamiento similar para otros valores de defaultParamsEndpoint (por ejemplo, google, bedrock) en futuras actualizaciones.

¿Qué te parece esta guía?