Olmocr License: Apache 2.0 Terms and Usage Rights Explained

The olmocr codebase is released under the Apache License 2.0, a permissive open-source license that allows commercial use, modification, and redistribution provided you retain the original copyright notice and include a copy of the license text.

The olmocr repository by Allen AI provides a modular OCR pipeline framework designed for large-scale scientific document processing. Understanding the specific olmocr licensing terms ensures you remain compliant when integrating this toolkit into production workflows, research projects, or derivative applications.

Apache License 2.0 Permissions and Requirements

The LICENSE file located at the repository root contains the full Apache License, Version 2.0 text. This permissive license framework grants you specific rights while imposing minimal restrictions.

What You Can Do

Under the Apache 2.0 license governing olmocr, you are permitted to:

  • Use the software for any purpose, including commercial applications
  • Modify the source code and create derivative works
  • Redistribute the original or modified versions
  • Sublicense the code under different terms

Attribution Requirements

When distributing olmocr or derivative works, you must:

  • Include a copy of the Apache License 2.0
  • Preserve copyright notices found in the original source files
  • State any significant changes made to the codebase

Repository Structure and Licensed Components

The olmocr license applies to all source files in the repository, including the pipeline orchestration, training modules, and utility functions.

Core Pipeline Components

The main orchestration logic resides in olmocr/pipeline.py, which defines the end-to-end flow from raw PDF loading through OCR processing to output generation. This file, like all others in the repository, falls under the Apache 2.0 license terms.

Data and Training Modules

Training and data preparation utilities are located in:

Evaluation and Post-Processing

Benchmark and filtering components include:

Supporting Utilities

Additional licensed files include olmocr/s3_utils.py for Amazon S3 operations and olmocr/version.py for version metadata management.

Practical Code Examples

The following examples demonstrate typical usage patterns of the licensed codebase.

Check Library Version

from olmocr.version import __version__

print(f"OLM-OCR version: {__version__}")

Run OCR Pipeline

from olmocr.pipeline import run_pipeline

result = run_pipeline(pdf_path="sample.pdf", output_dir="out")
print("Extracted text:", result["text"][:200])

Build Training Batch

from olmocr.data.build_openai_batch_from_olmocrmix import build_batch

batch = build_batch(
    pdf_dir="data/pdfs",
    model="gpt-4o-mini",
    max_tokens=2048,
)
print(f"Created batch with {len(batch)} entries")

Evaluate OCR Accuracy

from olmocr.bench.report import generate_report

report = generate_report(
    predictions_dir="preds",
    ground_truth_dir="gt",
    metrics=["rouge", "wer", "bleu"],
)
print(report.summary())

Summary

  • Olmocr uses Apache License 2.0, a permissive open-source license found in the repository's LICENSE file
  • Commercial use is permitted without requiring payment or additional permissions
  • Modification and redistribution allowed provided you include the license and copyright notices
  • All source files are covered, including pipeline, training, bench, and filter modules
  • Patent rights are explicitly granted to users by contributors

Frequently Asked Questions

Is olmocr free for commercial use?

Yes. The Apache License 2.0 explicitly permits commercial use, including integrating olmocr into proprietary applications or using it to process documents for commercial purposes. You do not need to pay royalties or obtain additional permissions from Allen AI.

Do I need to open-source my modifications to olmocr?

No. Unlike copyleft licenses, Apache 2.0 does not require you to distribute your modifications or derivative works under the same license. You can modify the code for private use or distribute your changes under different terms, provided you include the original Apache license and copyright notices.

Where can I find the complete license text?

The full Apache License 2.0 text is located in the LICENSE file at the repository root. This file contains the exact legal wording and copyright attribution required for compliance. You should include this file verbatim when redistributing the olmocr source code.

Does the olmocr license cover pre-trained model weights?

The license analysis applies to the codebase in the Allen AI repository. While the Apache 2.0 license typically covers code and documentation, you should verify the specific licensing terms for any pre-trained model weights or datasets separately, as these may have different usage restrictions.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →