Skip to content

Test and deploy your LLM prompts in a data-driven way on an open-source and self-hostable platform

License

Notifications You must be signed in to change notification settings

mesur-io/OpenPipe

 
 

Repository files navigation

logo

OpenPipe

Turn expensive prompts into cheap fine-tuned models.

License Apache-2.0 PRs Welcome GitHub commit activity GitHub closed issues

Hosted App - Running Locally - Experiments


Use powerful but expensive LLMs to fine-tune smaller and cheaper models suited to your exact needs. Evaluate model and prompt combinations in the playground. Query your past requests and export optimized training data. Try it out at https://app.openpipe.ai or run it locally.

🪛 Features

  • Experiment

    • Bulk-test wide-reaching scenarios using code templating.
    • Seamlessly translate prompts across different model APIs.
    • Tap into autogenerated scenarios for fresh test perspectives.
  • Fine-Tune (Beta)

    • Easy integration with OpenPipe's SDK in both Python and JS.
    • Swiftly query logs using intuitive built-in filters.
    • Export data in multiple training formats, including Alpaca and ChatGPT, with deduplication.

fine-tune demo

Sample Experiments

These are sample experiments users have created that show how OpenPipe works. Feel free to fork them and start experimenting yourself.

Supported Models

OpenAI

Llama2

Llama2 Fine-Tunes

Anthropic

Running Locally

  1. Install Postgresql.
  2. Install NodeJS 20 (earlier versions will very likely work but aren't tested).
  3. Install pnpm: npm i -g pnpm
  4. Clone this repository: git clone https://github.com/openpipe/openpipe
  5. Install the dependencies: cd openpipe && pnpm install
  6. Create a .env file (cp .env.example .env) and enter your OPENAI_API_KEY.
  7. Update DATABASE_URL if necessary to point to your Postgres instance and run pnpm prisma migrate dev to create the database.
  8. Create a GitHub OAuth App and update the GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET values. (Note: a PR to make auth optional when running locally would be a great contribution!)
  9. Start the app: pnpm dev.
  10. Navigate to http://localhost:3000

Testing Locally

  1. Copy your .env file to .env.test.
  2. Update the DATABASE_URL to have a different database name than your development one
  3. Run DATABASE_URL=[your new datatase url] pnpm prisma migrate dev --skip-seed --skip-generate
  4. Run pnpm test

About

Test and deploy your LLM prompts in a data-driven way on an open-source and self-hostable platform

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 87.0%
  • Python 10.4%
  • JavaScript 1.6%
  • Other 1.0%