Skip to main content

AI-powered academic paper reviewer

Project description

OpenAIReview

PyPI version

Our goal is provide thorough and detailed reviews to help researchers conduct the best research. See more examples here.

Example

Installation

uv venv && uv pip install openaireview
# or: pip install openaireview

For development:

git clone https://github.com/ChicagoHAI/OpenAIReview.git
cd OpenAIReview
uv venv && uv pip install -e .
# or: pip install -e .

PDF math support (optional)

For math-heavy PDFs, install Marker separately to get accurate LaTeX extraction. Without Marker, PDFs are processed with PyMuPDF which cannot extract math symbols correctly.

# Install Marker CLI in an isolated environment (avoids dependency conflicts)
uv tool install marker-pdf --with psutil

Marker is used automatically when available on PATH. It is most useful for math-heavy PDFs, but runs very slowly without a GPU. For papers with math, we recommend using .tex source, .md, or arXiv HTML URLs instead of PDF when possible — these always produce correct output without needing Marker.

Quick Start

First, set your OpenRouter API key (get one at openrouter.ai/keys):

export OPENROUTER_API_KEY=your_key_here

Or create a .env file in your working directory:

OPENROUTER_API_KEY=your_key_here

Then review a paper and visualize results:

# Review a local file
openaireview review paper.pdf

# Or review directly from an arXiv URL
openaireview review https://arxiv.org/html/2602.18458v1

# Visualize results
openaireview serve
# Open http://localhost:8080

CLI Reference

openaireview review <file_or_url>

Review an academic paper for technical and logical issues. Accepts a local file path or an arXiv URL.

Option Default Description
--method progressive Review method: zero_shot, local, progressive, progressive_full
--model anthropic/claude-opus-4-6 Model to use
--output-dir ./review_results Directory for output JSON files
--name (from filename) Paper slug name

openaireview serve

Start a local visualization server to browse review results.

Option Default Description
--results-dir ./review_results Directory containing result JSON files
--port 8080 Server port

Supported Input Formats

  • PDF (.pdf) — uses Marker for high-quality extraction with LaTeX math; falls back to PyMuPDF if Marker is not installed
  • DOCX (.docx) — via python-docx
  • LaTeX (.tex) — plain text with title extraction from \title{}
  • Text/Markdown (.txt, .md) — plain text
  • arXiv HTML — fetch and parse directly from https://arxiv.org/html/<id> or https://arxiv.org/abs/<id>

Environment Variables

Variable Default Description
OPENROUTER_API_KEY (required) Your OpenRouter API key
MODEL anthropic/claude-opus-4-6 Default model

These can be set as environment variables or in a .env file. See .env.example for a template.

Supported Models & Pricing

All models available on OpenRouter are supported — use any model ID via --model. The following models have built-in pricing for accurate cost tracking in the visualization:

Model Input ($/1M tokens) Output ($/1M tokens)
anthropic/claude-opus-4-6 $5.00 $25.00
anthropic/claude-opus-4-5 $5.00 $25.00
openai/gpt-5.2-pro $21.00 $168.00
google/gemini-3.1-pro-preview $2.00 $12.00

For models not listed above, a default rate of $5.00/$25.00 per 1M tokens is used.

Review Methods

  • zero_shot — single prompt asking the model to find all issues
  • local — deep-checks each chunk with surrounding window context (no filtering)
  • progressive — sequential processing with running summary, then consolidation
  • progressive_full — same as progressive but returns all comments before consolidation

Claude Code Skill

A deep-review skill is bundled with the package. It runs a multi-agent pipeline — one sub-agent per paper section plus cross-cutting agents — and produces severity-tiered findings (major / moderate / minor).

Install once:

pip install openaireview
openaireview install-skill

Then in any Claude Code project:

/openaireview paper.pdf
/openaireview https://arxiv.org/abs/2602.18458

Finally, run openaireview serve to see results.

Development

Install with dev dependencies (includes pytest):

uv pip install -e ".[dev]"

Run tests:

pytest tests/

Integration tests that call the API require OPENROUTER_API_KEY and are skipped automatically when it's not set.

Benchmarks

Benchmark data and experiment scripts are in benchmarks/. See benchmarks/REPORT.md for results.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openaireview-0.1.9.tar.gz (43.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openaireview-0.1.9-py3-none-any.whl (50.1 kB view details)

Uploaded Python 3

File details

Details for the file openaireview-0.1.9.tar.gz.

File metadata

  • Download URL: openaireview-0.1.9.tar.gz
  • Upload date:
  • Size: 43.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for openaireview-0.1.9.tar.gz
Algorithm Hash digest
SHA256 04df8ddc44316937b28cee5618bbf98acb3a06fccaa09d767ca17e34ec43112f
MD5 eec5cb411be445f0967043e0fc3fd4f8
BLAKE2b-256 e1d75a94aab1547a2eadb313eeebb89da3f804fc8bf9c2327d6fce0d7afa3e29

See more details on using hashes here.

Provenance

The following attestation bundles were made for openaireview-0.1.9.tar.gz:

Publisher: publish.yml on ChicagoHAI/OpenAIReview

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file openaireview-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: openaireview-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 50.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for openaireview-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 4b9358ffcb7d880ab19cc09b55135519c2803c4ed35c128fa266e900997dbb8c
MD5 31caf8042f8113599636f6ff620ac78c
BLAKE2b-256 9f41edcb0da215a6d5f148c3c0b1c818817054b181c19f6ec048e4f2e661549b

See more details on using hashes here.

Provenance

The following attestation bundles were made for openaireview-0.1.9-py3-none-any.whl:

Publisher: publish.yml on ChicagoHAI/OpenAIReview

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page