feat: add first-class Bedrock Runtime support (SDK-290) - #866
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 644f4b0a7a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e45ecd2543
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Summary
BedrockEndpoint.RUNTIMEsupport to the existing optionalopenai-java-bedrockartifact and idiomaticBedrockOpenAIOkHttpClient.builder().endpoint(...), while preserving Mantle as the default.bedrock; preserve bearer-token authentication, default AWS credentials, named profiles, refreshable providers, static/session credentials, credential precedence, per-attempt refresh/re-signing, redirects, origin isolation, and secret redaction.bedrock.md; add a runnable Chat/streaming example and an opt-in live inference-profile matrix.Why
Implements the Java workstream for SDK-290 with endpoint and authentication behavior aligned with the Node reference implementation in openai/openai-node#2348. Runtime targets
bedrock-runtime.<region>.<partition-suffix>and signs withbedrock, whereas the existing Mantle endpoint signs withbedrock-mantle.Verification
./gradlew :openai-java-bedrock:compileKotlin :openai-java-bedrock:compileTestKotlin :openai-java-example:compileJava./gradlew :openai-java-bedrock:format :openai-java-example:format./gradlew :openai-java-bedrock:test :openai-java-bedrock:lint :openai-java-example:compileJava :openai-java-example:lintBEDROCK_LIVE_TEST=1is set.Compatibility and rollout
BedrockEndpoint.MANTLEorBedrockEndpoint.RUNTIMEso its SigV4 service cannot be ambiguous.openai-java-bedrock; generated README files are unchanged.