Skip to main content
Curator is an open-source Python library from Bespoke Labs. You use it to generate synthetic data with LLMs and to run LLM inference over large datasets. You can then use the data to fine-tune a model or to extract structured data.

What Curator does

  • You describe each step of a pipeline as a Python class with a prompt method and a parse method.
  • You can ask for structured output with a Pydantic model.
  • Curator sends requests in parallel, respects rate limits, and retries failed requests.
  • Curator caches every response. If a run stops, you can start it again and Curator continues from where it stopped.
  • Curator works with many providers and with local models through vLLM and Ollama. See the backend list.
  • You can use the batch APIs of OpenAI, Anthropic, Gemini, Mistral, and Azure OpenAI by setting one flag.
  • You can watch your data in the hosted Curator Viewer while Curator generates it.
  • You can run code that an LLM wrote with the code executor.

Next steps

Quickstart

Install Curator and run your first prompt.

Key concepts

Learn how prompt and parse turn one dataset into another.

Batch inference

Send large jobs to provider batch APIs at a lower price.

Source code

Read the code and the examples on GitHub.
If you have a question, ask in the Bespoke Labs Discord or email company@bespokelabs.ai.