Skip to main content

Batch-oriented LLM annotation workflows for tabular datasets with OpenAI Batch support.

Project description

llm-batch-annotate

llm-batch-annotate is a Python package for running reproducible LLM annotation workflows over tabular datasets. It materializes units from source rows, groups them into provider requests, submits them through an execution adapter, parses structured outputs, validates coverage, and writes run artifacts for auditability.

Highlights

  • single-item and grouped annotation workflows
  • provider-agnostic task, builder, parser, and artifact abstractions
  • concrete OpenAI Batch adapter
  • resumable CLI-driven runs with persisted manifests
  • user-owned row ids via source_input.row_id_column
  • per-row parsed outputs in parsed/responses.jsonl
  • example configs, prompts, schemas, and sample data under examples/

Installation

When the package is published:

pip install llm-batch-annotate

From a local checkout:

python3 -m venv .venv
.venv/bin/pip install -e .[test,docs]

Quickstart

Single-item example:

export OPEN_AI_KEY="your-key"
llm-batch-annotate run examples/config/run_config.json --run-id example-single --no-poll-until-terminal
llm-batch-annotate resume examples/config/run_config.json example-single --poll-interval 2m

Grouped example:

export OPEN_AI_KEY="your-key"
llm-batch-annotate run examples/config/run_config_2.json --run-id example-grouped --no-poll-until-terminal
llm-batch-annotate resume examples/config/run_config_2.json example-grouped --poll-interval 2m

Documentation

Project documentation is intended to be hosted on Read the Docs. The Sphinx source lives under docs/.

Release notes for the current series live in CHANGELOG.md and docs/releases.md.

Planned public docs include:

  • installation
  • quickstart
  • CLI reference
  • config reference
  • OpenAI Batch provider guide
  • worked examples
  • API reference
  • development and release notes

Repository layout

  • src/llm_batch_annotate/: package source
  • examples/: tracked example inputs and configs
  • tests/: pytest suite
  • docs/: Sphinx documentation source

Generated example runs are written to examples/runs/ and are intentionally excluded from version control.

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

llm_batch_annotate-0.1.2.tar.gz (60.3 kB view details)

Uploaded Source

Built Distribution

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

llm_batch_annotate-0.1.2-py3-none-any.whl (57.1 kB view details)

Uploaded Python 3

File details

Details for the file llm_batch_annotate-0.1.2.tar.gz.

File metadata

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

File hashes

Hashes for llm_batch_annotate-0.1.2.tar.gz
Algorithm Hash digest
SHA256 9c3a30e79288656b3ce725940c24e3e6a1e8ef267b4cc043ec26bd9c2e2a856d
MD5 7e0b0701c48caaec687cec2df5ebf1ae
BLAKE2b-256 fee08d55a8a85e1d852d603aa1f750dca413c6c57aefe375f10a97368860e522

See more details on using hashes here.

Provenance

The following attestation bundles were made for llm_batch_annotate-0.1.2.tar.gz:

Publisher: release.yml on felipesfpaula/batch_api_annotate

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

File details

Details for the file llm_batch_annotate-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for llm_batch_annotate-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 37da51f858a3530ef518d820c2b54658399fd4320a65abf14df891f907543a73
MD5 b6be535388bba8a7b1afb77ddfd5ea36
BLAKE2b-256 6903f349b76175f52389479635cc3a3fb01b85727c4dd37043ead85ba4058afe

See more details on using hashes here.

Provenance

The following attestation bundles were made for llm_batch_annotate-0.1.2-py3-none-any.whl:

Publisher: release.yml on felipesfpaula/batch_api_annotate

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