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:
LibreChat admite los siguientes métodos de autenticación para Bedrock.
Perfil de AWS
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:
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_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:
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:
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:
Nota: Si se omite, todos los IDs de modelos conocidos y compatibles se incluirán automáticamente.
-
Los modelos Claude Fable/Mythos en Bedrock son solo para perfiles de inferencia. Utilice un ID de perfil como
us.anthropic.claude-fable-5y habilite el intercambio de datos de Anthropic en la consola de Bedrock o en la API de retención de datos antes de invocarlos. -
Consulta todos los ID de modelos de Bedrock aquÃ:
Configuración adicional
Puedes configurar aún más el endpoint de Bedrock en tu archivo librechat.yaml:
-
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_modelpara usar el mismo modelo que el chat.
- Recomendado:
-
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.
-
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:
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, incluyendostreamRate,titleModel,titleMethod,titlePrompt,titlePromptTemplateytitleEndpoint.
¿Qué te parece esta guÃa?