BerriAI/litellm · error · ImportError

Missing boto3 to call bedrock. Run 'pip install boto3'.

Error message

Missing boto3 to call bedrock. Run 'pip install boto3'.

What it means

Error "Missing boto3 to call bedrock. Run 'pip install boto3'." thrown in BerriAI/litellm.

Source

Thrown at litellm/llms/bedrock/files/transformation.py:954

    def _sign_s3_request(
        self,
        content: str,
        api_base: str,
        optional_params: dict,
        s3_encryption_key_id: str | None = None,
    ) -> tuple[dict, str]:
        """
        Sign S3 PUT request using the same proven logic as S3Logger.
        Reuses the exact pattern from litellm/integrations/s3_v2.py
        """
        try:
            import hashlib

            import requests
            from botocore.auth import S3SigV4Auth
            from botocore.awsrequest import AWSRequest
        except ImportError:
            raise ImportError("Missing boto3 to call bedrock. Run 'pip install boto3'.")

        # Get AWS credentials using existing methods
        aws_region_name: Final = self._get_aws_region_name(optional_params=optional_params, model="")
        credentials: Final = self.get_credentials(
            aws_access_key_id=optional_params.get("aws_access_key_id"),
            aws_secret_access_key=optional_params.get("aws_secret_access_key"),
            aws_session_token=optional_params.get("aws_session_token"),
            aws_region_name=aws_region_name,
            aws_session_name=optional_params.get("aws_session_name"),
            aws_profile_name=optional_params.get("aws_profile_name"),
            aws_role_name=optional_params.get("aws_role_name"),
            aws_web_identity_token=optional_params.get("aws_web_identity_token"),
            aws_sts_endpoint=optional_params.get("aws_sts_endpoint"),
        )

        # Calculate SHA256 hash of the content (REQUIRED for S3)
        content_hash: Final = hashlib.sha256(content.encode("utf-8")).hexdigest()

View on GitHub (pinned to 6c2dcb801b)

Solutions

  1. Install boto3: pip install boto3.

When it happens

Trigger: Thrown at litellm/llms/bedrock/files/transformation.py:954 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BerriAI/litellm@6c2dcb801b (2026-08-15). Data as JSON: /api/errors/c03c6566690c018c. Report an issue: GitHub.