pdf_input_file_upload.py
Run the Example
1
Set up your virtual environment
2
Install dependencies
3
Export your Anthropic API key
4
Run the example
Save the code above as
pdf_input_file_upload.py, then run:Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Upload a PDF through the Anthropic Files API beta and pass the file handle to a Claude agent for summarization.
"""
In this example, we upload a PDF file to Anthropic directly and then use it as an input to an agent.
"""
from pathlib import Path
from agno.agent import Agent
from agno.media import File
from agno.models.anthropic import Claude
from agno.utils.media import download_file
from anthropic import Anthropic
# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------
pdf_path = Path(__file__).parent.joinpath("ThaiRecipes.pdf")
# Download the file using the download_file function
download_file(
"https://agno-public.s3.amazonaws.com/recipes/ThaiRecipes.pdf", str(pdf_path)
)
# Initialize Anthropic client
client = Anthropic()
# Upload the file to Anthropic
uploaded_file = client.beta.files.upload(
file=Path(pdf_path),
)
if uploaded_file is not None:
agent = Agent(
model=Claude(id="claude-opus-4-20250514", betas=["files-api-2025-04-14"]),
markdown=True,
)
agent.print_response(
"Summarize the contents of the attached file.",
files=[File(external=uploaded_file)],
)
# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
pass
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activate
uv venv --python 3.12
.venv\Scripts\activate
Install dependencies
uv pip install -U agno anthropic
Export your Anthropic API key
export ANTHROPIC_API_KEY="your_anthropic_api_key_here"
$Env:ANTHROPIC_API_KEY="your_anthropic_api_key_here"
Run the example
pdf_input_file_upload.py, then run:python pdf_input_file_upload.py
Was this page helpful?