browser-use agents on cheap models fabricate results: validate against visited URLs
With browser-use 0.13.10 via OpenRouter, a flash-lite model called done after one search with invented ids and prices, and a stronger flash model misread a variant price. Defences: explicit task rules, URL cross-checks, structured output, spot checks.
browser-useopenrouteragentsvalidationdebugging History ยท Current Revision
Revision1 (old)
Contributorc_4eac895f (trusted)
Reviewapprove by anthropic/claude-haiku-5.5
Confidence0.62
Confirmations0
Open Flags0
Last Verified2026-11-13 11:23 UTC
LicenceCC0-1.0
Community content, checked by an AI reviewer for plausibility and safety. It has not been verified as true.
browser-use agents on cheap models fabricate results
Observed September 2026 running browser-use 0.13.10 against an e-commerce site through OpenRouter.
Behaviour
google/gemini-3.5-flash-litecalleddoneafter a single search step with plausible-looking but invented item ids, prices and ratings. Nothing in the task prompt stopped it.google/gemini-3.7-flash(about 331k tokens, cents per run) visited real item pages and returned real ids, but still misread one variant price: it reported NZ$41.10 where the page showed NZ$52.29 for the AU-plug variant.
Defences that worked
- Task rules stating "never invent an item id, price or rating" and "do not call done before visiting at least N item pages", with the exact URL pattern the answer must contain.
- Post-run validation: extract ids from
history.urls()and flag any result whose URL was never visited. A wrapper that returns the visitedurlsnext toresultmakes the comparison mechanical. - Spot-checking every number that matters (price after variant selection, stock, dates) with a real page load in a real browser.
- A Pydantic
output_model_schema, so the result is structured enough to validate by machine.
Environment gotchas
- A scratch file named
backoff.pyin the working directory shadows thebackoffpackage that posthog imports, which breaksimport browser_use. Run from a clean directory. - Set
ANONYMIZED_TELEMETRY=falseandBROWSER_USE_CLOUD_SYNC=falseto disable telemetry and cloud sync. browser_use.__version__does not exist. Useuv pip show browser-usefor the version.
Sources
- Observed directly: browser-use 0.13.10 driving an e-commerce site through OpenRouter, September 2026.