atlas

Research map / Large language models / Agents, code and math

CRITIC: Large Language Models Can Self-Correct with Tool-Interactive Critiquing

ICLR 2024 · Large language models › Agents, code and math · approach: Execution-based code verification · 57 citations (OpenAlex)

Read the paperCheck your idea against 108,967 papers

AI-extracted summary. Written by AI from the paper's full text. Numbers and claims can be wrong or missing context, so check the paper before you cite or build on it.

Introduces CRITIC, a training-free framework where frozen LLMs verify their outputs by calling external tools (Google search, Python interpreter, Perspective API) and iteratively correct them via in-context learning.

Problem

LLMs produce hallucinated facts, flawed code, and toxic text, and existing fixes need costly human annotation or task-specific training; self-correction without external feedback is unreliable.

Approach

Interleave LLM-generated verification queries with tool API results (search engine, code interpreter, toxicity scorer) in few-shot prompts, so the model critiques its own initial output using tool feedback and then revises it, repeating verify-then-correct loops without any weight updates.

Key results

Measured effects reported in the paper

What was changedWhereMeasuredEffect
add search-tool verification and correction to CoTChatGPT · AmbigNQF1: 64.3 -> 74.9Helped
add search-tool verification and correction to CoTChatGPT · TriviaQAF1: 79.2 -> 81.7Helped
add search-tool verification and correction to CoTChatGPT · HotpotQAF1: 42.8 -> 52.9Helped
remove search API and use LLM-generated evidence instead (ablation)ChatGPT CRITIC · AmbigNQF1: 74.9 -> 67.3Hurt
remove search API and use LLM-generated evidence instead (ablation)ChatGPT CRITIC · TriviaQAF1: 81.7 -> 79.9Hurt
remove search API and use LLM-generated evidence instead (ablation)ChatGPT CRITIC · HotpotQAF1: 52.9 -> 46.1Hurt
add interpreter execution feedback to program correction (ablation)ChatGPT CRITIC · GSM8Kexact match: 77.0 (+4.5) -> 78.2Helped
add interpreter execution feedback to program correction (ablation)ChatGPT CRITIC · SVAMPexact match: 82.0~ -> 83.3Helped
add interpreter execution feedback to program correction (ablation)ChatGPT CRITIC · TabMWPexact match: 87.0~ -> 89.0Helped
add Perspective API toxicity feedback to correctionChatGPT · RealToxicityPromptsToxicity Prob.: 0.192 -> 0.040Helped
replace Perspective API feedback with LLM toxicity scoring (ablation)ChatGPT CRITIC · RealToxicityPromptsToxicity Prob.: 0.040 -> 0.223Hurt
add Perspective API toxicity feedback to correctionText-Davinci-003 · RealToxicityPromptsToxicity Prob.: 0.210 -> 0.045Helped

Surprising findings

Limitations

Experimental setup

Datasets: AmbigNQ TriviaQA HotpotQA GSM8k SVAMP TabMWP RealToxicityPrompts

Benchmarks: AmbigNQ TriviaQA HotpotQA GSM8k SVAMP TabMWP RealToxicityPrompts

Metrics: EM F1 exact match maximum toxicity toxicity probability perplexity dist-2 dist-3 AUROC

Baselines: Vanilla prompting CoT Self-Consistency ReAct Rejection Sampling PoT Self-Refine PPLM GeDi DExperts PPO Quark

Builds on: ReAct Program-of-Thought Chain-of-thought prompting Self-Consistency Self-Correct

Closest papers by meaning

Writing a paper in this area? scime draft is a free LaTeX editor with AI included, real-time co-authors and a check of your references and venue rules before you submit. It also imports OpenAI Prism projects.

Open scime draft

Get the next scime Dispatch and a monthly field update

Free. We send a confirmation link first; every email has a one-click unsubscribe. Privacy