Exa

Searching the Past to Test What Agents Actually Solved

Exa Snapshot lets you query the web as of any date, so you can backtest agents and models without answer leakage.

Searching the Past to Test What Agents Actually Solved — article cover

Testing an agent against tasks written in June, but running the eval in September, creates a hidden failure mode: the answers may already be on the web. A paper, a GitHub PR, or a blog post could contain the solution, and an agent with search access can copy it instead of solving it. Graders can’t tell the difference, and may even reward the copier for efficiency.

Exa Snapshot, launched September 18, 2026, addresses this by letting you search the web as it existed on a past date. The capability is powered by over 400 billion webpage snapshots spanning two decades, according to the Exa announcement. Set a snapshotAsOf parameter, and results come from that point in time—not from today’s web.

Why hindsight changes evaluation

The core use case is preventing web leakage in reinforcement learning and agent evaluations. If you train on tasks written in June but run the training in September, some solutions will have leaked online by then. Agents with search tools will find and submit those answers, making it impossible to distinguish genuine problem-solving from retrieval.

With Snapshot, you set the search date to May—before the solutions were published. The agent sees only what was available then, so a correct answer is more likely to reflect real capability. This matters for reproducible evaluations, a concern that also shows up when choosing a web search API for agents, where retrieval quality and temporal control directly affect agent performance.

Backtesting financial signals without months of data collection

Quantitative researchers face a similar problem. A backtest checks how a prediction model would have performed on a given day using only information available as of that day. Point-in-time datasets exist for stock prices and fundamentals, but nothing comparable exists for the web. Trading signals derived from web page insights would normally require months of careful data collection to test.

Snapshot changes that: you can backtest on a versioned web immediately. The announcement frames this as a way to test trading signals without the usual data engineering overhead.

How to query the past

Snapshot works through the existing /search and /contents API endpoints. You pass a snapshot_as_of timestamp in ISO 8601 format. Here’s a search example from the announcement:

from exa_py import Exa

exa = Exa()
result = exa.search(
    "latest stable Python release notes",
    num_results=3,
    contents={
        "snapshot_as_of": "2026-05-01T00:00:00Z",
        "highlights": True,
    },
)
for r in result.results:
    print(r.title, r.url)

You can also fetch a specific URL as it appeared on a past date:

result = exa.get_contents(
    ["https://docs.python.org/3/whatsnew/changelog.html"],
    snapshot_as_of="2026-05-01T00:00:00Z",
    text=True,
)
print(result.results[0].text[:300])

The feature is a research preview with ongoing development. The announcement notes that full index coverage, rate limits, and zero data retention options require contacting the Exa team.

What this means for your eval pipeline

If you’re building agents that use web search, temporal control should be part of your evaluation design. Without it, you’re measuring retrieval luck as much as reasoning. Snapshot gives you a dial to turn: set the date before your task’s answer was published, and you get a cleaner signal.

The tradeoff is coverage. Snapshot spans two decades, but the announcement doesn’t specify how complete the index is for every date. For recent dates, coverage is likely strong; for older dates, gaps may exist. Test with your own task distribution before relying on it for high-stakes evals.

Sources

AI-assisted summary compiled from the sources above, reviewed by a human before publishing.

SHAREXEMAIL