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
- 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.