feat: rename aws env vars for bedrock (#2907)

Co-authored-by: Andy Li <55300002+cliandy@users.noreply.github.com>
This commit is contained in:
cthomas
2025-06-19 10:36:47 -07:00
committed by GitHub
parent 951ea59b30
commit 5cc180ee47
4 changed files with 12 additions and 12 deletions

View File

@@ -10,14 +10,14 @@ def has_valid_aws_credentials() -> bool:
"""
Check if AWS credentials are properly configured.
"""
valid_aws_credentials = os.getenv("AWS_ACCESS_KEY") and os.getenv("AWS_SECRET_ACCESS_KEY") and os.getenv("AWS_REGION")
valid_aws_credentials = os.getenv("AWS_ACCESS_KEY_ID") and os.getenv("AWS_SECRET_ACCESS_KEY") and os.getenv("AWS_DEFAULT_REGION")
return valid_aws_credentials
def get_bedrock_client(
access_key: Optional[str] = None,
access_key_id: Optional[str] = None,
secret_key: Optional[str] = None,
region: Optional[str] = None,
default_region: Optional[str] = None,
):
"""
Get a Bedrock client
@@ -26,9 +26,9 @@ def get_bedrock_client(
sts_client = boto3.client(
"sts",
aws_access_key_id=access_key or model_settings.aws_access_key,
aws_access_key_id=access_key_id or model_settings.aws_access_key_id,
aws_secret_access_key=secret_key or model_settings.aws_secret_access_key,
region_name=region or model_settings.aws_region,
region_name=default_region or model_settings.aws_default_region,
)
credentials = sts_client.get_session_token()["Credentials"]
@@ -36,7 +36,7 @@ def get_bedrock_client(
aws_access_key=credentials["AccessKeyId"],
aws_secret_key=credentials["SecretAccessKey"],
aws_session_token=credentials["SessionToken"],
aws_region=region or model_settings.aws_region,
aws_region=default_region or model_settings.aws_default_region,
)
return bedrock

View File

@@ -1516,12 +1516,12 @@ class CohereProvider(OpenAIProvider):
class AnthropicBedrockProvider(Provider):
provider_type: Literal[ProviderType.bedrock] = Field(ProviderType.bedrock, description="The type of the provider.")
provider_category: ProviderCategory = Field(ProviderCategory.base, description="The category of the provider (base or byok)")
aws_region: str = Field(..., description="AWS region for Bedrock")
region: str = Field(..., description="AWS region for Bedrock")
def list_llm_models(self):
from letta.llm_api.aws_bedrock import bedrock_get_model_list
models = bedrock_get_model_list(self.aws_region)
models = bedrock_get_model_list(self.region)
configs = []
for model_summary in models:

View File

@@ -365,11 +365,11 @@ class SyncServer(Server):
base_url=model_settings.vllm_api_base,
)
)
if model_settings.aws_access_key and model_settings.aws_secret_access_key and model_settings.aws_region:
if model_settings.aws_access_key_id and model_settings.aws_secret_access_key and model_settings.aws_default_region:
self._enabled_providers.append(
AnthropicBedrockProvider(
name="bedrock",
aws_region=model_settings.aws_region,
region=model_settings.aws_default_region,
)
)
# Attempt to enable LM Studio by default

View File

@@ -95,9 +95,9 @@ class ModelSettings(BaseSettings):
groq_api_key: Optional[str] = None
# Bedrock
aws_access_key: Optional[str] = None
aws_access_key_id: Optional[str] = None
aws_secret_access_key: Optional[str] = None
aws_region: Optional[str] = None
aws_default_region: Optional[str] = None
bedrock_anthropic_version: Optional[str] = "bedrock-2023-05-31"
# anthropic