mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-12-03 09:53:45 +00:00
feat!: change bedrock bearer token env variable to match AWS docs & boto3 convention (#4152)
Some checks failed
Integration Tests (Replay) / generate-matrix (push) Successful in 4s
Test External Providers Installed via Module / test-external-providers-from-module (venv) (push) Has been skipped
Integration Auth Tests / test-matrix (oauth2_token) (push) Failing after 2s
SqlStore Integration Tests / test-postgres (3.13) (push) Failing after 5s
SqlStore Integration Tests / test-postgres (3.12) (push) Failing after 5s
Test Llama Stack Build / generate-matrix (push) Successful in 3s
API Conformance Tests / check-schema-compatibility (push) Successful in 10s
Python Package Build Test / build (3.12) (push) Failing after 6s
Python Package Build Test / build (3.13) (push) Failing after 6s
Test Llama Stack Build / build-single-provider (push) Successful in 50s
Vector IO Integration Tests / test-matrix (push) Failing after 56s
Test Llama Stack Build / build (push) Successful in 49s
UI Tests / ui-tests (22) (push) Successful in 1m1s
Test External API and Providers / test-external (venv) (push) Failing after 1m18s
Unit Tests / unit-tests (3.13) (push) Failing after 1m58s
Unit Tests / unit-tests (3.12) (push) Failing after 2m5s
Test Llama Stack Build / build-ubi9-container-distribution (push) Successful in 2m28s
Integration Tests (Replay) / Integration Tests (, , , client=, ) (push) Failing after 2m20s
Test Llama Stack Build / build-custom-container-distribution (push) Successful in 2m37s
Pre-commit / pre-commit (push) Successful in 3m50s
Some checks failed
Integration Tests (Replay) / generate-matrix (push) Successful in 4s
Test External Providers Installed via Module / test-external-providers-from-module (venv) (push) Has been skipped
Integration Auth Tests / test-matrix (oauth2_token) (push) Failing after 2s
SqlStore Integration Tests / test-postgres (3.13) (push) Failing after 5s
SqlStore Integration Tests / test-postgres (3.12) (push) Failing after 5s
Test Llama Stack Build / generate-matrix (push) Successful in 3s
API Conformance Tests / check-schema-compatibility (push) Successful in 10s
Python Package Build Test / build (3.12) (push) Failing after 6s
Python Package Build Test / build (3.13) (push) Failing after 6s
Test Llama Stack Build / build-single-provider (push) Successful in 50s
Vector IO Integration Tests / test-matrix (push) Failing after 56s
Test Llama Stack Build / build (push) Successful in 49s
UI Tests / ui-tests (22) (push) Successful in 1m1s
Test External API and Providers / test-external (venv) (push) Failing after 1m18s
Unit Tests / unit-tests (3.13) (push) Failing after 1m58s
Unit Tests / unit-tests (3.12) (push) Failing after 2m5s
Test Llama Stack Build / build-ubi9-container-distribution (push) Successful in 2m28s
Integration Tests (Replay) / Integration Tests (, , , client=, ) (push) Failing after 2m20s
Test Llama Stack Build / build-custom-container-distribution (push) Successful in 2m37s
Pre-commit / pre-commit (push) Successful in 3m50s
Rename `AWS_BEDROCK_API_KEY` to `AWS_BEARER_TOKEN_BEDROCK` to align with the naming convention used in AWS Bedrock documentation and the AWS web console UI. This reduces confusion when developers compare LLS docs with AWS docs. Closes #4147
This commit is contained in:
parent
acf74cb8df
commit
dc4665af17
11 changed files with 16 additions and 16 deletions
|
|
@ -22,6 +22,6 @@ AWS Bedrock inference provider using OpenAI compatible endpoint.
|
||||||
## Sample Configuration
|
## Sample Configuration
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
api_key: ${env.AWS_BEDROCK_API_KEY:=}
|
api_key: ${env.AWS_BEARER_TOKEN_BEDROCK:=}
|
||||||
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
||||||
```
|
```
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ providers:
|
||||||
- provider_id: bedrock
|
- provider_id: bedrock
|
||||||
provider_type: remote::bedrock
|
provider_type: remote::bedrock
|
||||||
config:
|
config:
|
||||||
api_key: ${env.AWS_BEDROCK_API_KEY:=}
|
api_key: ${env.AWS_BEARER_TOKEN_BEDROCK:=}
|
||||||
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
||||||
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
||||||
provider_type: remote::nvidia
|
provider_type: remote::nvidia
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ providers:
|
||||||
- provider_id: bedrock
|
- provider_id: bedrock
|
||||||
provider_type: remote::bedrock
|
provider_type: remote::bedrock
|
||||||
config:
|
config:
|
||||||
api_key: ${env.AWS_BEDROCK_API_KEY:=}
|
api_key: ${env.AWS_BEARER_TOKEN_BEDROCK:=}
|
||||||
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
||||||
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
||||||
provider_type: remote::nvidia
|
provider_type: remote::nvidia
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ providers:
|
||||||
- provider_id: bedrock
|
- provider_id: bedrock
|
||||||
provider_type: remote::bedrock
|
provider_type: remote::bedrock
|
||||||
config:
|
config:
|
||||||
api_key: ${env.AWS_BEDROCK_API_KEY:=}
|
api_key: ${env.AWS_BEARER_TOKEN_BEDROCK:=}
|
||||||
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
||||||
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
||||||
provider_type: remote::nvidia
|
provider_type: remote::nvidia
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ providers:
|
||||||
- provider_id: bedrock
|
- provider_id: bedrock
|
||||||
provider_type: remote::bedrock
|
provider_type: remote::bedrock
|
||||||
config:
|
config:
|
||||||
api_key: ${env.AWS_BEDROCK_API_KEY:=}
|
api_key: ${env.AWS_BEARER_TOKEN_BEDROCK:=}
|
||||||
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
||||||
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
||||||
provider_type: remote::nvidia
|
provider_type: remote::nvidia
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ providers:
|
||||||
- provider_id: bedrock
|
- provider_id: bedrock
|
||||||
provider_type: remote::bedrock
|
provider_type: remote::bedrock
|
||||||
config:
|
config:
|
||||||
api_key: ${env.AWS_BEDROCK_API_KEY:=}
|
api_key: ${env.AWS_BEARER_TOKEN_BEDROCK:=}
|
||||||
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
||||||
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
||||||
provider_type: remote::nvidia
|
provider_type: remote::nvidia
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ providers:
|
||||||
- provider_id: bedrock
|
- provider_id: bedrock
|
||||||
provider_type: remote::bedrock
|
provider_type: remote::bedrock
|
||||||
config:
|
config:
|
||||||
api_key: ${env.AWS_BEDROCK_API_KEY:=}
|
api_key: ${env.AWS_BEARER_TOKEN_BEDROCK:=}
|
||||||
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
region_name: ${env.AWS_DEFAULT_REGION:=us-east-2}
|
||||||
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
- provider_id: ${env.NVIDIA_API_KEY:+nvidia}
|
||||||
provider_type: remote::nvidia
|
provider_type: remote::nvidia
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@ class BedrockInferenceAdapter(OpenAIMixin):
|
||||||
"""
|
"""
|
||||||
|
|
||||||
config: BedrockConfig
|
config: BedrockConfig
|
||||||
provider_data_api_key_field: str = "aws_bedrock_api_key"
|
provider_data_api_key_field: str = "aws_bearer_token_bedrock"
|
||||||
|
|
||||||
def get_base_url(self) -> str:
|
def get_base_url(self) -> str:
|
||||||
"""Get base URL for OpenAI client."""
|
"""Get base URL for OpenAI client."""
|
||||||
|
|
@ -111,7 +111,7 @@ class BedrockInferenceAdapter(OpenAIMixin):
|
||||||
logger.error(f"AWS Bedrock authentication token expired: {error_msg}")
|
logger.error(f"AWS Bedrock authentication token expired: {error_msg}")
|
||||||
raise ValueError(
|
raise ValueError(
|
||||||
"AWS Bedrock authentication failed: Bearer token has expired. "
|
"AWS Bedrock authentication failed: Bearer token has expired. "
|
||||||
"The AWS_BEDROCK_API_KEY environment variable contains an expired pre-signed URL. "
|
"The AWS_BEARER_TOKEN_BEDROCK environment variable contains an expired pre-signed URL. "
|
||||||
"Please refresh your token by generating a new pre-signed URL with AWS credentials. "
|
"Please refresh your token by generating a new pre-signed URL with AWS credentials. "
|
||||||
"Refer to AWS Bedrock documentation for details on OpenAI-compatible endpoints."
|
"Refer to AWS Bedrock documentation for details on OpenAI-compatible endpoints."
|
||||||
) from e
|
) from e
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@ from llama_stack.providers.utils.inference.model_registry import RemoteInference
|
||||||
|
|
||||||
|
|
||||||
class BedrockProviderDataValidator(BaseModel):
|
class BedrockProviderDataValidator(BaseModel):
|
||||||
aws_bedrock_api_key: str | None = Field(
|
aws_bearer_token_bedrock: str | None = Field(
|
||||||
default=None,
|
default=None,
|
||||||
description="API key for Amazon Bedrock",
|
description="API Key (Bearer token) for Amazon Bedrock",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -27,6 +27,6 @@ class BedrockConfig(RemoteInferenceProviderConfig):
|
||||||
@classmethod
|
@classmethod
|
||||||
def sample_run_config(cls, **kwargs):
|
def sample_run_config(cls, **kwargs):
|
||||||
return {
|
return {
|
||||||
"api_key": "${env.AWS_BEDROCK_API_KEY:=}",
|
"api_key": "${env.AWS_BEARER_TOKEN_BEDROCK:=}",
|
||||||
"region_name": "${env.AWS_DEFAULT_REGION:=us-east-2}",
|
"region_name": "${env.AWS_DEFAULT_REGION:=us-east-2}",
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -40,8 +40,8 @@ def test_api_key_from_header_overrides_config():
|
||||||
"""Test API key from request header overrides config via client property"""
|
"""Test API key from request header overrides config via client property"""
|
||||||
config = BedrockConfig(api_key="config-key", region_name="us-east-1")
|
config = BedrockConfig(api_key="config-key", region_name="us-east-1")
|
||||||
adapter = BedrockInferenceAdapter(config=config)
|
adapter = BedrockInferenceAdapter(config=config)
|
||||||
adapter.provider_data_api_key_field = "aws_bedrock_api_key"
|
adapter.provider_data_api_key_field = "aws_bearer_token_bedrock"
|
||||||
adapter.get_request_provider_data = MagicMock(return_value=SimpleNamespace(aws_bedrock_api_key="header-key"))
|
adapter.get_request_provider_data = MagicMock(return_value=SimpleNamespace(aws_bearer_token_bedrock="header-key"))
|
||||||
|
|
||||||
# The client property is where header override happens (in OpenAIMixin)
|
# The client property is where header override happens (in OpenAIMixin)
|
||||||
assert adapter.client.api_key == "header-key"
|
assert adapter.client.api_key == "header-key"
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ from llama_stack.providers.remote.inference.bedrock.config import BedrockConfig
|
||||||
|
|
||||||
def test_bedrock_config_defaults_no_env(monkeypatch):
|
def test_bedrock_config_defaults_no_env(monkeypatch):
|
||||||
"""Test BedrockConfig defaults when env vars are not set"""
|
"""Test BedrockConfig defaults when env vars are not set"""
|
||||||
monkeypatch.delenv("AWS_BEDROCK_API_KEY", raising=False)
|
monkeypatch.delenv("AWS_BEARER_TOKEN_BEDROCK", raising=False)
|
||||||
monkeypatch.delenv("AWS_DEFAULT_REGION", raising=False)
|
monkeypatch.delenv("AWS_DEFAULT_REGION", raising=False)
|
||||||
config = BedrockConfig()
|
config = BedrockConfig()
|
||||||
assert config.auth_credential is None
|
assert config.auth_credential is None
|
||||||
|
|
@ -35,5 +35,5 @@ def test_bedrock_config_sample():
|
||||||
sample = BedrockConfig.sample_run_config()
|
sample = BedrockConfig.sample_run_config()
|
||||||
assert "api_key" in sample
|
assert "api_key" in sample
|
||||||
assert "region_name" in sample
|
assert "region_name" in sample
|
||||||
assert sample["api_key"] == "${env.AWS_BEDROCK_API_KEY:=}"
|
assert sample["api_key"] == "${env.AWS_BEARER_TOKEN_BEDROCK:=}"
|
||||||
assert sample["region_name"] == "${env.AWS_DEFAULT_REGION:=us-east-2}"
|
assert sample["region_name"] == "${env.AWS_DEFAULT_REGION:=us-east-2}"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue