MCPcopy
hub / github.com/openai/openai-python / copy

Method copy

src/openai/lib/bedrock.py:511–614  ·  view source on GitHub ↗
(
        self,
        *,
        api_key: str | BedrockTokenProvider | None = None,
        admin_api_key: str | None = None,
        workload_identity: WorkloadIdentity | None = None,
        provider: _Provider | None | NotGiven = NOT_GIVEN,
        bedrock_token_provider: BedrockTokenProvider | None = None,
        aws_region: str | None = None,
        aws_profile: str | None = None,
        aws_access_key_id: str | None = None,
        aws_secret_access_key: str | None = None,
        aws_session_token: str | None = None,
        aws_credentials_provider: AwsCredentialsProvider | None = None,
        organization: str | None = None,
        project: str | None = None,
        webhook_secret: str | None = None,
        websocket_base_url: str | httpx.URL | None = None,
        base_url: str | httpx.URL | None = None,
        timeout: float | Timeout | None | NotGiven = NOT_GIVEN,
        http_client: httpx.Client | None = None,
        max_retries: int | NotGiven = NOT_GIVEN,
        default_headers: Mapping[str, str] | None = None,
        set_default_headers: Mapping[str, str] | None = None,
        default_query: Mapping[str, object] | None = None,
        set_default_query: Mapping[str, object] | None = None,
        _enforce_credentials: bool | None = None,
        _extra_kwargs: Mapping[str, Any] = {},
    )

Source from the content-addressed store, hash-verified

509
510 @override
511 def copy(
512 self,
513 *,
514 api_key: str | BedrockTokenProvider | None = None,
515 admin_api_key: str | None = None,
516 workload_identity: WorkloadIdentity | None = None,
517 provider: _Provider | None | NotGiven = NOT_GIVEN,
518 bedrock_token_provider: BedrockTokenProvider | None = None,
519 aws_region: str | None = None,
520 aws_profile: str | None = None,
521 aws_access_key_id: str | None = None,
522 aws_secret_access_key: str | None = None,
523 aws_session_token: str | None = None,
524 aws_credentials_provider: AwsCredentialsProvider | None = None,
525 organization: str | None = None,
526 project: str | None = None,
527 webhook_secret: str | None = None,
528 websocket_base_url: str | httpx.URL | None = None,
529 base_url: str | httpx.URL | None = None,
530 timeout: float | Timeout | None | NotGiven = NOT_GIVEN,
531 http_client: httpx.Client | None = None,
532 max_retries: int | NotGiven = NOT_GIVEN,
533 default_headers: Mapping[str, str] | None = None,
534 set_default_headers: Mapping[str, str] | None = None,
535 default_query: Mapping[str, object] | None = None,
536 set_default_query: Mapping[str, object] | None = None,
537 _enforce_credentials: bool | None = None,
538 _extra_kwargs: Mapping[str, Any] = {},
539 ) -> Self:
540 if callable(api_key):
541 raise OpenAIError("Pass refreshable Bedrock credentials via `bedrock_token_provider`, not `api_key`.")
542 if not isinstance(provider, NotGiven):
543 raise OpenAIError("Configure `provider` on `OpenAI`, not on `BedrockOpenAI.with_options()`.")
544 if admin_api_key is not None or workload_identity is not None:
545 raise OpenAIError("BedrockOpenAI only supports Bedrock bearer token or AWS credential authentication.")
546 if default_headers is not None and set_default_headers is not None:
547 raise ValueError("The `default_headers` and `set_default_headers` arguments are mutually exclusive")
548 if default_query is not None and set_default_query is not None:
549 raise ValueError("The `default_query` and `set_default_query` arguments are mutually exclusive")
550
551 headers = self._custom_headers
552 if default_headers is not None:
553 headers = {**headers, **default_headers}
554 elif set_default_headers is not None:
555 headers = set_default_headers
556 params = self._custom_query
557 if default_query is not None:
558 params = {**params, **default_query}
559 elif set_default_query is not None:
560 params = set_default_query
561
562 provider_kwargs, inherited_provider, inherited_state = _copy_configuration(
563 self,
564 api_key=api_key,
565 token_provider=bedrock_token_provider,
566 aws_region=aws_region,
567 aws_profile=aws_profile,
568 aws_access_key_id=aws_access_key_id,

Callers

nothing calls this directly

Calls 7

OpenAIErrorClass · 0.85
_copy_configurationFunction · 0.85
is_givenFunction · 0.85
__class__Method · 0.80
updateMethod · 0.45
itemsMethod · 0.45

Tested by

no test coverage detected