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

AWS Bedrock

Dirígete a la documentación de AWS para registrarte en AWS y configurar tus credenciales.

También necesitarás activar el acceso al modelo para tu cuenta, lo cual puedes hacer siguiendo estas instrucciones.

Autenticación

Establezca siempre la región de Bedrock que LibreChat debe utilizar:

BEDROCK_AWS_DEFAULT_REGION=us-east-1

LibreChat admite los siguientes métodos de autenticación para Bedrock.

Perfil de AWS

BEDROCK_AWS_DEFAULT_REGION=us-east-1
BEDROCK_AWS_PROFILE=your-profile-name

Utilice esto cuando ya tenga credenciales en ~/.aws/config o ~/.aws/credentials, o cuando su perfil utilice AWS IAM Identity Center, asunción de roles o credential_process.

BEDROCK_AWS_PROFILE es una configuración específica de LibreChat que pasa el perfil seleccionado a la cadena de proveedores de credenciales del SDK de AWS para Bedrock. Esto limita la selección del perfil a Bedrock sin cambiar las credenciales utilizadas por otras integraciones. La variable de entorno estándar de AWS AWS_PROFILE sigue siendo compatible con la cadena de proveedores predeterminada del SDK de AWS.

Si tu perfil utiliza credential_process, asegura el archivo de configuración de AWS y el comando auxiliar. AWS advierte que el material secreto escrito en stderr puede ser capturado o registrado por SDKs y herramientas.

Cadena de proveedor de credenciales predeterminada de AWS

Puede omitir las credenciales y configuraciones de perfil específicas de Bedrock para permitir que el SDK de AWS para JavaScript resuelva las credenciales automáticamente:

BEDROCK_AWS_DEFAULT_REGION=us-east-1

Este es el enfoque preferido para implementaciones que utilizan roles IAM u otra fuente de credenciales a corto plazo nativa de AWS. El SDK verifica los proveedores de credenciales admitidos en orden de precedencia y se detiene en las primeras credenciales válidas que encuentra. Las fuentes comunes incluyen variables de entorno, IAM Identity Center/SSO, archivos de configuración y credenciales compartidos, identidad web, credenciales de contenedor ECS, metadatos de instancia EC2 y credenciales de proceso.

Por ejemplo, si se establecen las variables estándar de AWS AWS_ACCESS_KEY_ID y AWS_SECRET_ACCESS_KEY, esas credenciales pueden tener prioridad sobre las credenciales basadas en perfiles en ~/.aws/credentials o ~/.aws/config.

Clave de API de Bedrock

Las claves de API de Amazon Bedrock autentican las llamadas a Bedrock con autenticación bearer en lugar de credenciales de AWS firmadas con SigV4. En LibreChat, configúrelas con la variable de entorno de ámbito Bedrock:

BEDROCK_AWS_DEFAULT_REGION=us-east-1
BEDROCK_AWS_BEARER_TOKEN=your_bedrock_api_key

BEDROCK_AWS_BEARER_TOKEN es específico de LibreChat. La documentación de AWS y los ejemplos sin procesar del SDK/CLI de AWS utilizan la variable de entorno estándar de AWS AWS_BEARER_TOKEN_BEDROCK, pero LibreChat utiliza intencionalmente un nombre con ámbito de Bedrock para que el token solo afecte a la configuración del endpoint de Bedrock. LibreChat pasa este valor al SDK de AWS como autenticación bearer.

Para permitir que los usuarios proporcionen su propia clave de API de Bedrock desde la interfaz de usuario de LibreChat, configure:

BEDROCK_AWS_DEFAULT_REGION=us-east-1
BEDROCK_AWS_BEARER_TOKEN=user_provided

Las claves de API de Bedrock a corto plazo heredan los permisos del principal de AWS utilizado para generarlas, son válidas solo en la región de AWS donde se generaron y caducan en un máximo de 12 horas o según la caducidad de la sesión de origen. Las claves de API de Bedrock a largo plazo se recomiendan solo para exploración y desarrollo. Consulta la documentación de AWS para usar claves de API de Bedrock y generar claves de API de Bedrock.

Credenciales estáticas de Bedrock

Utilice variables de entorno estáticas específicas de Bedrock solo cuando los perfiles o roles de IAM no sean adecuados:

BEDROCK_AWS_DEFAULT_REGION=us-east-1
BEDROCK_AWS_ACCESS_KEY_ID=your_access_key_id
BEDROCK_AWS_SECRET_ACCESS_KEY=your_secret_access_key
# BEDROCK_AWS_SESSION_TOKEN=your_session_token

Si BEDROCK_AWS_ACCESS_KEY_ID y BEDROCK_AWS_SECRET_ACCESS_KEY están configurados, LibreChat los pasa directamente al cliente de Bedrock. Deben proporcionarse juntos y tienen prioridad sobre BEDROCK_AWS_PROFILE y la cadena de proveedores predeterminada del SDK para Bedrock.

Si BEDROCK_AWS_BEARER_TOKEN está configurado, LibreChat utiliza autenticación bearer para Bedrock en lugar de credenciales estáticas, BEDROCK_AWS_PROFILE o la cadena de proveedores predeterminada del SDK.

Para obtener detalles sobre el comportamiento de las credenciales de AWS, consulte la cadena de proveedores de credenciales del AWS SDK for JavaScript, la referencia de configuración de los AWS SDKs and Tools y las notas de seguridad de credential_process de AWS.

Configuración de modelos

  • Opcionalmente, puedes especificar qué modelos deseas que estén disponibles con BEDROCK_AWS_MODELS:
BEDROCK_AWS_MODELS=anthropic.claude-fable-5,anthropic.claude-opus-4-8,anthropic.claude-opus-4-7,anthropic.claude-sonnet-4-6,meta.llama3-1-8b-instruct-v1:0

Nota: Si se omite, todos los IDs de modelos conocidos y compatibles se incluirán automáticamente.

Configuración adicional

Puedes configurar aún más el endpoint de Bedrock en tu archivo librechat.yaml:

endpoints:
  bedrock:
    availableRegions:
      - 'us-east-1'
      - 'us-west-2'
    streamRate: 35
    titleModel: 'anthropic.claude-3-haiku-20240307-v1:0'
    guardrailConfig:
      guardrailIdentifier: 'abc123xyz'
      guardrailVersion: '1'
      trace: 'enabled'
      streamProcessingMode: 'sync'
  • streamRate: (Opcional) Establece la velocidad de procesamiento de cada nuevo token en milisegundos.

    • Esto puede ayudar a estabilizar el procesamiento de solicitudes concurrentes y proporcionar una renderización de flujo más fluida en el frontend.
  • titleModel: (Opcional) Especifique el modelo a utilizar para generar los títulos de las conversaciones.

    • Recomendado: anthropic.claude-3-haiku-20240307-v1:0.
    • Omita o establezca como current_model para usar el mismo modelo que el chat.
  • availableRegions: (Opcional) Especifique las regiones de AWS que desea habilitar.

    • Si se proporciona, los usuarios verán un menú desplegable para seleccionar la región. Si no se selecciona, se utilizará la región predeterminada.
    • image
  • guardrailConfig: (Opcional) Configura AWS Bedrock Guardrails para el filtrado de contenido.

    • guardrailIdentifier: El ID o ARN del guardrail desde tu consola de AWS Bedrock.
    • guardrailVersion: El número de versión del guardrail (por ejemplo, "1") o "DRAFT".
    • trace: (Opcional) Habilitar el registro de seguimiento (trace logging): "enabled", "disabled" o "enabled_full".
    • streamProcessingMode: (Opcional) Establece el modo de procesamiento de flujo: "sync" o "async" (el valor predeterminado es "sync").
    • Consulte la documentación de AWS Bedrock Guardrails para crear y administrar guardrails.

Perfiles de inferencia

Los perfiles de inferencia de AWS Bedrock le permiten crear configuraciones de enrutamiento personalizadas para modelos base, lo que permite el equilibrio de carga entre regiones, la asignación de costos y controles de cumplimiento. Puede asignar IDs de modelo a ARNs de perfiles de inferencia personalizados en su librechat.yaml:

endpoints:
  bedrock:
    inferenceProfiles:
      'us.anthropic.claude-3-7-sonnet-20250219-v1:0': '${BEDROCK_CLAUDE_37_PROFILE}'

Para obtener la guía completa sobre la creación de perfiles, la configuración de LibreChat, la configuración de registros y la resolución de problemas, consulte Bedrock Inference Profiles.

Para la referencia del campo YAML, consulte Estructura del objeto AWS Bedrock.

Carga de documentos

Bedrock admite la carga de documentos directamente al proveedor a través de la opción Upload to Provider en el menú desplegable de adjuntos de archivos. Los documentos se envían a la API de Bedrock Converse como adjuntos de documentos nativos.

Formatos compatibles: PDF, CSV, DOC, DOCX, XLS, XLSX, HTML, TXT y Markdown (.md)

Limitaciones:

  • Tamaño máximo de archivo por documento: 4.5 MB
  • Los nombres de archivo se limpian automáticamente para cumplir con los requisitos de nomenclatura de Bedrock (alfanuméricos, espacios, guiones, paréntesis, corchetes; máximo 200 caracteres)

Para obtener más información sobre las opciones de carga de archivos, consulte la documentación de OCR for Documents.

Notas

  • Los siguientes modelos no son compatibles debido a la falta de capacidad de streaming:

    • ai21.j2-mid-v1
  • Los siguientes modelos no son compatibles debido a la falta de soporte para el historial de conversaciones:

    • ai21.j2-ultra-v1
    • cohere.command-text-v14
    • cohere.command-light-text-v14
  • El endpoint de AWS Bedrock admite todos los Shared Endpoint Settings a través del archivo de configuración librechat.yaml, incluyendo streamRate, titleModel, titleMethod, titlePrompt, titlePromptTemplate y titleEndpoint.

¿Qué te parece esta guía?