Repository navigation
chore: add sagemaker provider config to helm chart and config schemas - #9003
Conversation
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Provider configuration schema transports/config.schema.json |
Registers SageMaker as a provider and adds its key and provider schemas. The key schema requires a region and allows AWS credentials, role-assumption settings, and an optional runtime host override. |
Helm chart configuration helm-charts/bifrost/values.schema.json, helm-charts/bifrost/values.yaml |
Adds the SageMaker key schema to the Helm values schema and a commented endpoint example. The example includes a model, weight, region, and environment-referenced credentials. Its comments describe using the default AWS credential chain when explicit credentials are omitted. |
Priority:
Estimated code review effort: 2 (Simple) | ~10 minutes
Possibly related PRs
- maximhq/bifrost#9004: Adds SageMaker key-management tests and documents the key configuration contract in OpenAPI.
- maximhq/bifrost#9002: Implements the SageMaker provider and consumes the configuration fields declared here.
- maximhq/bifrost#8952: Provisions SageMaker endpoints and emits provider configuration that these schemas define.
Merge Risk: 
Low · previous review 0d81e
-
SageMaker configuration does not expose a model-name override. Confirm whether that capability is intended before depending on it.
Pre-merge checks: 
4
-
Full details: Description check
-
Explanation
The description is complete and aligned with the template. It explains the purpose, changes, affected areas, testing steps, security considerations, and breaking-change status. It includes expected validation outcomes, although it does not report completed test results.
-
Finishing Touches: 💡 1
-
🛠️ Fix failing CI checks: 💡
-
- Commit to this branch
- Create a new PR
📝 Generate docstrings
-
- Commit to this branch
- Create a new PR
🧪 Generate unit tests (beta)
-
- Commit to this branch
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Comment @coderabbitai help to get the list of available commands.
6dff398 to
523e7d4
Compare
1e5c84e to
4309a25
Compare
523e7d4 to
2ec4f35
Compare
4309a25 to
98232f2
Compare
98232f2 to
dace9d0
Compare
2ec4f35 to
dd5a44b
Compare
dd5a44b to
9e3f9ad
Compare
dace9d0 to
66774bc
Compare
8544549 to
b9f2196
Compare
e9bbf7b to
18dc59a
Compare
18dc59a to
cd224a5
Compare
b9f2196 to
56dd8e7
Compare
cd224a5 to
5dc4a20
Compare
56dd8e7 to
0d81e11
Compare
Merge activity
|
0d81e11 to
fd13e0a
Compare
5dc4a20 to
aca2846
Compare
The base branch was changed.
fd13e0a to
28e6a17
Compare

Summary
Adds config schema and Helm chart support for AWS SageMaker real-time endpoints as a provider. Users can now declare a
sagemakerprovider with asagemaker_key_configblock inconfig.schema.jsonand the Helm chart'svalues.schema.json. Without this, the provider block is rejected by schema validation.Changes
sagemakerprovider entry totransports/config.schema.json, backed by a newprovider_with_sagemaker_configdefinition. It supports the same provider-level options as the other providers:network_config,concurrency_and_buffer_size,proxy_config, raw request/response flags,ignore_provider_cost,injected_tools,passthrough, andcustom_provider_config. At least one key is required.sagemaker_keydefinition that extendsbase_keywith asagemaker_key_configobject. Its fields:regionis required.access_key,secret_keyandsession_tokenare optional. If the access key and secret key are left empty, the default AWS credential chain is used.role_arn,external_idandsession_nameconfigure AssumeRole.model_namesets the value sent as the bodymodelto the container. Empty sends"", because SageMaker routes by endpoint name and vLLM rejects any other name.endpoints.runtimeoverrides the runtime host, for example an interface VPC endpoint or a FIPS or dual-stack host. It must contain a.. Region is still required because it sets the token's credential scope.sagemaker_key_configin the Helm chart'svalues.schema.json.values.yaml. It shows models as endpoint names in the formsagemaker/<endpoint>[/<inference-component>], and shows using the default AWS credential chain (IRSA or instance role) by omitting the keys.valueis sent verbatim as a pre-mintedsagemaker-api-key-...token.sagemaker/us-west-2/my-endpoint.additionalProperties: false, so unknown fields are rejected.Type of change
Affected areas
How to test
Validate a config that uses the new provider against the schema, and lint the Helm chart with an example values file.
Example config to validate against
transports/config.schema.json(or via Helm values):Expected outcomes:
sagemaker_key_configmissingregionfails validation.sagemaker_key_configfails validation.endpoints.runtimevalue without a.fails validation.Screenshots/Recordings
N/A
Breaking changes
Related issues
N/A
Security considerations
access_key,secret_key,session_token,role_arn,external_id,session_name, and the runtime host) can be supplied through theenv.prefix, so secrets need not be stored in config files.valueis sent verbatim as a pre-minted token, so it should be handled like any other secret.Checklist
docs/contributing/README.mdand followed the guidelines