Skip to main content

Dataset Foundry

A toolkit for building validated datasets.

Dataset Foundry uses the concept of data pipelines to load, generate or validate datasets. A pipeline is a sequence of actions executed either against the dataset itself or the individual items in the dataset.

For details on which actions are supported, see the actions documentation.

Installation

  1. Install the package:

    pip install dataset-foundry
    
  2. Create a .env file in the project root:

    # Provider API keys
    OPENAI_API_KEY=
    ANTHROPIC_API_KEY=
    
    # Command-line defaults
    DF_MODEL=anthropic/claude-sonnet-4-20250514
    
    # Keep full display open after finishing so you can browse the results
    # DF_NO_EXIT=true
    

Default Settings

  • Default Model: gpt-4o-mini
  • Default Temperature: 0.7
  • Default Number of Samples: 10
  • Dataset Directory: ./datasets
  • Logs Directory: ./logs

Project Structure

dataset-foundry/
├── src/
│   └── dataset_foundry/
│       ├── actions/       # Actions for processing datasets and items within those datasets
│       ├── cli/           # Command-line interface tools
│       ├── core/          # Core functionality
│       └── utils/         # Utility functions
├── datasets/              # Generated datasets
├── examples/              # Example pipelines
│   └── refactorable_code/ # Example pipelines to build a dataset of code requiring refactoring
└── logs/                  # Operation logs

Running Pipelines

Pipelines can be run from the command line using the dataset-foundry command.

dataset-foundry <pipeline_module> <dataset_name>

For example, to run the generate_spec pipeline to create specs for a dataset saved to datasets/dataset1, you would use:

dataset-foundry examples/refactorable_code/generate_spec/pipeline.py dataset1

Use dataset-foundry --help to see available arguments.

Running Examples

To generate a set of specs for a dataset named o3v5, you would use:

dataset-foundry examples/refactorable_code/generate_spec/pipeline.py samples --num-samples=2

To generate a set of functions and unit testsfrom the specs, you would use:

dataset-foundry examples/refactorable_code/generate_all_from_spec/pipeline.py samples

To run the unit tests for the generated functions, you would use:

dataset-foundry examples/refactorable_code/regenerate_unit_tests/pipeline.py samples

If some of the unit tests fail, you can regenerate them by running:

dataset-foundry examples/refactorable_code/regenerate_unit_tests/pipeline.py samples

Variable Substitutions

Variable substitutions allows you to use variables in your prompts and in certain parameters passed into pipeline actions.

Prompt templates and certain parameters are parsed as f-strings, with the following enhancements:

  • Dotted references are supported and resolve both dictionary keys or object attributes. For instance, {spec.name} will return the value of spec['name'] if spec is a dictionary, or the value of spec.name if spec is an object.
  • Formatters can be specified after a colon. For example, {spec:yaml} will return the spec object formatted as a YAML string. Supported formatters include: yaml, json, upper, lower.

For instance, if an item is being processed with an id of 123 and a spec dictionary with a name key of my_function, the following will save the code property of the item as a file named item_123_my_function.py:

   ...
   save_item(contents=Key("code"), filename="item_{id}_{spec.name}.py"),
   ...

License

This project is licensed under the MIT License - see the LICENSE file for details.

Metadata

Release files for dataset-foundry 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dataset-foundry 0.5.0
File Size Uploaded Provenance Actions
dataset_foundry-0.5.0.tar.gz 138.8 kB With provenance Details for dataset_foundry-0.5.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for dataset-foundry 0.5.0
File Interpreter ABI Platform Actions
dataset_foundry-0.5.0-py3-none-any.whl Python 3 none any Details for dataset_foundry-0.5.0-py3-none-any.whl

Total release size: 242.4 kB

Release files / dataset_foundry-0.5.0.tar.gz

Download URL dataset_foundry-0.5.0.tar.gz
Size 138.8 kB
Tags Source
SHA-256 checksum
How to use checksums
0c4d1e33b45dfcdb539bfb5f3c2a2d7d7c111c26d73b00ebb0f4d3e86b1094b3
BLAKE2b-256 checksum
How to use checksums
3b9cdf3722cc034775eeb247bdc56d25c2f2ca056636a59ed31e534235eb724d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 27, 2026.

Transparency log

Release files / dataset_foundry-0.5.0-py3-none-any.whl

Download URL dataset_foundry-0.5.0-py3-none-any.whl
Size 103.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3c6245fc34a9d97757393c6fb1cfae5c5751055ed1118a9018284eb2221b0ac5
BLAKE2b-256 checksum
How to use checksums
781f190e2d79d3cb7a3e37854f2b0ade62fedb2faf0b41b605ea324a18649b1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 27, 2026.

Transparency log

Security for dataset-foundry 0.5.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for dataset_foundry-0.5.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 27, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page