Deep Research with File Search (Interactions)

Ground Deep Research on your own documents with a File Search store and file_search_store_names.

Ground the Deep Research agent on your own documents. Create a File Search store, upload documents, then pass the store name to file_search_store_names. The example explicitly enables web search and URL context alongside the private store. Its sample document contains fictional company data for testing.

In production, create and populate the store once offline and reference it by name at query time.

Code

import tempfile
import time
from pathlib import Path

from agno.agent import Agent
from agno.models.google import GeminiInteractions
from google import genai

client = genai.Client()

store = client.file_search_stores.create(
    config={"display_name": "agno-deep-research-demo"}
)
print(f"Created store: {store.name}")

sample = Path(tempfile.gettempdir()) / "agno_fy2025_summary.txt"
sample.write_text(
    "FICTIONAL DEMO: ExampleCo FY2025 internal summary.\n"
    "Revenue grew 240% year over year, driven by AgentOS adoption.\n"
    "Headcount doubled. The flagship launch was a document assistant.\n"
)

operation = client.file_search_stores.upload_to_file_search_store(
    file_search_store_name=store.name,
    file=str(sample),
    config={"display_name": "fy2025-summary"},
)
print("Uploading + indexing document...")
while not operation.done:
    time.sleep(3)
    operation = client.operations.get(operation)
if operation.error:
    raise RuntimeError(f"Document indexing failed: {operation.error}")
print("Document indexed.")

agent = Agent(
    model=GeminiInteractions(
        agent="deep-research-preview-04-2026",
        thinking_summaries="auto",
        file_search_store_names=[store.name],
        search=True,
        url_context=True,
    ),
    markdown=True,
)

if __name__ == "__main__":
    agent.print_response(
        "Using our internal FY2025 summary, compare our reported growth drivers "
        "against current public news about the AI agent framework market."
    )

Usage

Set up your virtual environment

uv venv --python 3.12
source .venv/bin/activate

Set your API key

export GOOGLE_API_KEY=xxx

Install dependencies

uv pip install -U "google-genai>=2.3" agno

Run Agent

Save the code above as deep_research_file_search.py, then run:

python deep_research_file_search.py