Apply to my task
arXiv:2610.29812 ★ 88 Oct 21, 2026

A Claim-Verification Harness: Let the Model Write Its Own Search Queries, and Check Citations for Relevance, Not Existence

Key result

Of 327 existing PubMed citations, only 3 were relevant. A model without search names real paper IDs, but the paper is about eyeglasses for kids while the claim is about cytokines. The method lets you verify scientific claims and get citations that are actually on topic: with a search agent about 67% of citations are relevant, versus about 1% for a model without search. The trick: the agent turns the claim into a short query of 2–6 terms on its own and cites only what it found. Then a separate request checks not "does the link exist?" but "is the paper even about the same thing?" The agent finds the right paper three times as often as a search using the claim text.

01

TL;DR

This study compares four ways to have an LLM verify scientific claims: no search, a single search using the claim text, an agent that writes its own queries (up to 4), and an "oracle" that's handed the right papers up front. The agent turned out to be the best of the realistic options. It turns the claim into a short query of key terms on its own, and it finds the right paper three times as often as a brute-force search.

The real pain point is elsewhere: a model without search cites real but completely irrelevant papers. The PubMed IDs exist, but the paper is about eyeglasses for kids while the claim is about cytokines. Of 327 existing citations, only 3 were relevant. So a "the link exists" check guarantees nothing. With a search-enabled agent, about 67% of citations are relevant. In that case the model doesn't hunt for confirmation in its memory — it takes papers from what it actually found.

The method is simple: let the agent reformulate the query, explain the search rules, require it to cite only what it found, and then check the citations with a separate request: "does this paper study exactly these entities and the relationship in the claim?" The bottleneck isn't reasoning, it's search: when the model was given the right papers, accuracy rose from ~60% to 79–86%.

Want this for your own case? Apply this study to your task: AI adapts its method to what you are working on and writes the prompt.

02

Method Blueprint

STEP 1: The model gets the claim + search rules → a short query (2–6 key terms)
STEP 2: Search → show only new results → the model decides: search more or answer
        (limit of 4 searches; after the limit, a forced answer)
STEP 3: Verdict → JSON: label (SUPPORT / CONTRADICT / NEI), cited_pmids, rationale
        (it may only cite what the search returned)
STEP 4: A separate judge request: for each citation, "does the paper study exactly these entities and this relationship?" → yes/no

Steps 1–3 are one agent loop. Step 4 is a separate request, ideally in a different model.

03

Example

Task: You run content for a supplement brand on Amazon. A marketer brings you a product listing: "Collagen capsules restore joint cartilage in people over 40." You need to know whether the claim has any backing in the literature — without getting pretty but empty citations from the model.

Prompt (for an agent with search access: Claude with web search, ChatGPT Search, Perplexity, etc.):

You are an assistant for verifying medical claims. Decide whether the scientific literature SUPPORTS the claim (SUPPORT), CONTRADICTS it (CONTRADICT), or there is NOT ENOUGH INFORMATION (NEI). Use NEI if the evidence you find doesn't directly address the claim.

Claim: "Oral collagen restores joint cartilage in people over 40."

You can search PubMed and scientific sources. Search works by keywords (terms are joined with AND), so short queries of 2–6 key terms work best. You can use OR. Don't paste the whole claim in as a query. Write the queries yourself: extract the entities (substance, condition, population) and fix typos. You have a maximum of 4 searches.

At each step, choose: either a new search query or an answer.
Base your verdict only on the papers you found. Cite only papers the search actually returned, and never name papers "from memory."

Response format — JSON:
{"label": "...", "cited_pmids": [...], "rationale": "..."}

Result: The model will run a few searches with short term-based queries (substance, joint, age). Then it outputs JSON with a verdict, a list of the papers it found, and a rationale. All citations should come from the search results. If there's no direct evidence, expect NEI rather than a confident "yes" or "no." With a second request (template below), run the citations through a relevance check, and open 2–3 sources yourself before publishing.

04

Why It Works

The weakness. If you feed the whole claim into search, the keywords don't match the text of the papers. A typo in a substance name kills the match. Without search, the model recalls plausible-looking paper IDs: the format is right, the IDs exist, but there's no connection to the claim. The model guesses what a citation looks like; it doesn't remember what's in it.

The strength. The model is good at two things. First, turning a long sentence into a short query of entities and fixing typos (that's what tripled search success). Second, reasoning over text that's right in front of it. With the right papers, accuracy reached 79–86%. The model's reasoning is fine; it's the material that's missing.

How the method uses this. It hands the model the part where it's strong: writing the query. It forbids the part where it lies: citing from memory. The "cite only what you found" rule nearly eliminated "outside" citations for agents (0–2.6%). A separate relevance check catches what an existence check can't see.

Levers: - Search limit (4 in the study). Agents used an average of 1.4–1.7 out of 4. Raising the limit is pointless until you make them use it. - Query rules ("2–6 terms, OR, field tags"): tune them to your source: Google Scholar, the Census Bureau, your own database. - NEI strictness. The agent says "not enough information" less often than it should (33–42% correct NEI versus 72–81% for brute-force search). If a false "supported" costs you more, strengthen the NEI requirement. - Judge criterion. "Only if the paper studies the specific entities and relationship" is strict. Loosen it and you'll let through more "close to the topic" papers.

05

Prompt Template

These are the prompts from the study's appendix.

Search agent:

You are an assistant for verifying scientific claims in the field of {field}.
Decide whether the literature SUPPORTS the claim (SUPPORT), CONTRADICTS it (CONTRADICT), or there is NOT ENOUGH INFORMATION (NEI). Use NEI if the evidence you find doesn't directly address the claim.

Claim: "{claim}"

You can search {search_source}. Search works by keywords (terms are joined with AND), so short queries of 2–6 key terms work best. You can use OR{and_field_tags}. You have a maximum of {number} searches.

At each step, choose one: a search query or an answer.
Base your verdict only on the papers you found. Cite only what the search actually returned.

Response format — JSON:
{"label": "SUPPORT | CONTRADICT | NEI", "cited_pmids": [...], "rationale": "..."}

Citation check (a separate request, ideally in a different model):

Claim: "{claim}"
Cited paper: {title_and_abstract}

Answer "yes" only if the paper studies exactly the entities and the relationship described in the claim (that is, it could plausibly support or refute it). Answer "no" if it's off-topic or only loosely related.

What to fill in: {field} — medicine, nutrition science, finance, etc. {search_source} — the tool the agent has. {number} — the search limit (4 in the study). {claim} — a single checkable statement. For the citation check, take the title and abstract from the search results, not from the model's answer.

🚀 Quick start — paste into the chat:

Here's a template for a claim-verification agent and a citation check. Adapt it to my task: [your task].
Ask me questions to fill in the fields.

[paste the template above]

The LLM will ask what search tool you have, how it handles queries (AND/OR, language, tags), what your field is, and which costs you more: missing an error or playing it too safe. That way the query rules match your source. It'll take the rest from the template.

06

Limitations

⚠️ A pilot study: on 100 claims, none of the differences between the realistic options (agent, brute-force search, no search) reached statistical significance. The direction was the same for both models, but it's a trend, not a proven fact.

⚠️ Small models from one provider: only fast lightweight models were tested. Results may differ on more powerful models and other model families.

⚠️ The agent still finds little: the right paper was found in only ~20% of cases. The 3x gain is meaningful as a ratio, but the absolute level is low.

⚠️ The agent is lazy about searching: it barely searches beyond the first query and says "not enough information" less often than it should. The authors suggest "forcing a minimum number of searches," but didn't test it.

⚠️ The relevance judge is a single model: it was validated on only 50 control examples (it discriminated well, but the sample is small). It's no substitute for human review of critical citations.

⚠️ "Errors" aren't always errors: the dataset labels are tied to specific abstracts, while the agent searched all of PubMed as of 2026. Some "misses" may have been newer evidence.

07

How They Tested It

The author used the SciFact dataset: scientific claims labeled by experts as "supports," "refutes," or "not enough information." They randomly picked 100 claims and ran them through four verification setups on two lightweight Gemini models, with searches running against the real PubMed. The model, answer format, and temperature were identical; only the "harness" around the model changed. That made it possible to separate the effect of search from the effect of the model itself.

The four modes: no search, a single query made from the claim itself, an agent writing its own queries (up to 4), and an "oracle" given the correct papers. The oracle served as the ceiling: it showed what the models can do with perfect search. Citations were checked separately: does the cited ID exist, does it match the reference paper, and is it relevant to the claim. Relevance was judged by a model from a different family (Qwen). It was validated on controls: it rated 21 of 25 correct papers as relevant and 0 of 25 decoys.

The main results. Brute-force search found the right paper in only 6% of cases and didn't improve accuracy. It turned confident errors into "not enough information." The agent tripled the hit rate (to 19–20%) and gave the best accuracy (62%), but the difference isn't significant. The oracle gave 79–86%, so that 17–24 point gap is significant, and the bottleneck really is search. The most striking result: 3 relevant out of 327 existing citations for the no-search model versus ~67% for the agent. The practical takeaway: "the link exists" is not a safeguard.

08

Adaptations and Extrapolations

🔧 Technique: require a minimum of evidence before answering → fewer lazy answers after a single search

The authors propose this step as an idea (untested). Add to the agent's prompt:

Don't answer after the first search. Run at least 2 different queries (for example, using another name for the substance or a synonym), and answer only if you've found at least one paper that directly addresses the claim. If there's no such paper after all searches, answer NEI.

You'll need to test the effect on your own sample: compare the share of correct NEI answers before and after.

🔧 Technique: a judge filter on the output → only relevant citations make it into the report

An extrapolation of the principle: before submitting a report, run each citation through a relevance check and keep only the "yes" ones:

For each citation in the list below, answer "yes" or "no" by this criterion: the paper studies exactly the entities and the relationship in the claim. Return only the citations marked "yes"; for the rest, explain why they don't fit.
Claim: "{claim}"
Citations: {list_of_titles_and_abstracts}

This carries the study's judge idea over to any report with citations: market reviews, legal memos. The effect outside biomedicine wasn't tested in the paper.

09

Resources

  • Paper: Real PMIDs, Wrong Papers: Harness Design for Biomedical Claim-Verification Agents — Mohammed Saqlain (independent researcher, Bengaluru).
  • Code, prompts, and call cache: github.com/saqlain2204/real-pmids-wrong-papers
  • Dataset: SciFact (Wadden et al., 2020).
  • Related work: ReAct (Yao et al., 2023), PaperQA/PaperQA2 (Lála et al., 2023; Skarlinski et al., 2024), MedRAG (Xiong et al., 2024), GeneGPT (Jin et al., 2024), an analysis of ChatGPT citation fabrication (Walters & Wilder, 2023).

Research digest

Key result

Of 327 existing PubMed citations, only 3 were relevant. A model without search names real paper IDs, but the paper is about eyeglasses for kids while the claim is about cytokines. The method lets you verify scientific claims and get citations that are actually on topic: with a search agent about 67% of citations are relevant, versus about 1% for a model without search. The trick: the agent turns the claim into a short query of 2–6 terms on its own and cites only what it found. Then a separate request checks not "does the link exist?" but "is the paper even about the same thing?" The agent finds the right paper three times as often as a search using the claim text.

Principle

Two checks instead of one. The old way: the ID is in the database, so the citation is good. The new way: the paper must study the same entities and the same relationship as the claim. Here's how it goes. The agent gets the claim and the search rules. It writes a short query. It sees only new results. It decides: search more or answer (up to 4 searches). Then it returns a JSON verdict with the IDs of the papers it found. After that, a separate judge reads the title and abstract of each citation and answers "yes" or "no." It's like checking not "does this book exist in the library" but "does the right page actually say what was quoted to you."

Why it works

If you feed the whole claim into search, the words don't match the text of the papers. One typo in a substance name and the search comes back empty. The model is great at turning a long sentence into a query of entities and fixing typos. That's what produced the 3x gain. Without search, the model guesses what a citation looks like; it doesn't remember what's in it. The format is right, the ID is real, the meaning is missing. The model can reason; it's short on material: when given the right papers, accuracy rose from ~60% to 79–86%. The "cite only what you found" rule nearly eliminated made-up citations: 0–2.6% for agents. There's a weak spot, too. The agent is lazy: on average 1.4–1.7 searches out of 4. It finds the right paper in only ~20% of cases. Three times better than brute-force search, but still a low level.

When to apply

Fact-checking (medicine, nutrition, supplements, popular science) → specifically for product listings, articles, and reports where a claim needs to be backed by sources, especially when the model produces pretty but empty citations. NOT a replacement for a human on critical citations: the judge was validated on only 50 examples. The agent also says "not enough information" less often than it should (33–42% correct answers versus 72–81% for brute-force search). If a false "supported" is worse for you, strengthen the requirement for that answer. The study is a pilot: on 100 claims, the differences between the options didn't reach statistical significance, and only lightweight models from one provider were tested. It's a trend, not a proven fact.

Mini recipe

1. Give a role and three outcomes: supports (SUPPORT), refutes (CONTRADICT), or not enough information (NEI). Say: NEI if what's found doesn't directly address the claim. 2. Explain the search rules: 2–6 key terms, OR allowed, don't paste the whole claim into the query. Have it extract entities (substance, condition, age) and fix typos. 3. Set a limit: 4 searches max. The authors also suggest requiring at least 1–2 searches, because the agent is lazy. But they didn't test that advice. 4. Forbid memory: it may cite only what the search returned. Naming papers "from memory" is off-limits. 5. Require JSON: verdict, list of paper IDs, rationale. 6. Run the judge as a separate request: ideally in a different model. Plug in the title and abstract from the search results, not from the model's answer. 7. Check by hand: before publishing, open 2–3 sources yourself.

Examples

[BAD]: `Check this claim: collagen restores cartilage. Give PubMed links` [GOOD]: `You are an assistant for verifying medical claims. Verdict: SUPPORT (supports), CONTRADICT (refutes), or NEI (not enough information). Use NEI if what you find doesn't directly address the claim. Claim: "Oral collagen restores joint cartilage in people over 40." Search PubMed with short queries of 2–6 terms, don't paste the whole claim, fix typos. Maximum 4 searches. Base the verdict only on papers you found. Don't name papers from memory. Answer in JSON: {"label": "...", "cited_pmids": [...], "rationale": "..."}` Then a second request for each citation, ideally in a different model: `Claim: "Oral collagen restores joint cartilage in people over 40." Paper: {title and abstract from the search results}. Answer "yes" only if the paper studies exactly these entities and this relationship. If it's off-topic or loosely related, answer "no."`

In plain words

Models can't fact-check from memory: they just generate plausible-sounding garbage. Ask a model about a scientific fact without search, and it'll hand you a real paper ID (PMID), but inside will be total nonsense with no connection to the topic. And if you feed the raw claim into a search engine as-is, the keywords simply won't match, and you'll come away with a big fat zero.

It's like sending an intern to the library with the task "find proof that cucumbers cure joint pain". Unable to find the exact phrase, the lazy intern just copies random numbers off dusty folders and brings them back with a knowing look. Technically the job is done, the references are real — but open one and it's a paper on penguin breeding.

The researchers compared four approaches and found a working solution: a search agent. Instead of a dumb brute-force query, the model first strips away the fluff, pulls out the key terms, and writes up to four short queries on its own. This agent finds the right papers three times as often as searching with the whole sentence, and it flat-out crushes the no-search baselines.

It was tested on biomedicine, but it's the same trap everywhere. The principle is critical for fact-checking supplement ads, lawyers verifying case law, or analyzing reports. Without a dedicated search query generator, any AI assistant you build will be feeding clients confident hallucinations hiding behind real links.

Bottom line: never take a model's citations at face value, and don't shove long text straight into search. Make the LLM break the task down first and work like an autonomous librarian agent. Otherwise you'll ship outright nonsense to production with beautiful but completely bogus proof.

AI lab assistant

Apply this study to your task

Describe what you're working on. AI takes the method and the measured results from this paper and adapts them to your case, or writes a ready prompt built on them.

Based on A Claim-Verification Harness: Let the Model Write Its Own Search Queries, and Check Citations for Relevance, Not Existence arXiv:2610.29812

Sign in to apply this study New accounts get 50 free credits.