Skip to main content

An open-source prompt engineering framework.

Project description

Lilypad

[!WARNING] Project is in alpha phase

This means that things like the user interface, database schemas, etc. are still subject to change. We do not yet recommend fully relying on this project in production, but we've found it works quite well for local development in its current stage.

An open-source prompt engineering framework built on these principles:

  • Prompt engineering is an optimization process, which requires...
  • Automatic versioning and tracing
  • Developer-centric prompt template editor
  • Proper syncing between prompts and code

[!IMPORTANT] We're looking for early design partners!

We are also working on tooling for improved collaboration between technical and non-technical team members. This is particularly important for involving domain experts who may not have the technical chops to contribute to a code base.

If you're interested, join our community and DM William Bakst :)

There are limited spots.

30 Second Quickstart

Install Lilypad, specifying the provider(s) you intend to use, and set your API key:

pip install "python-lilypad[openai]"

export OPENAI_API_KEY=XXXXX

Create your first synced prompt to recommend a book.

For example, you could use the prompt Recommend a fantasy book:

lilypad start                  # initialize local project
lilypad create recommend_book  # creates a synced LLM function
lilypad run recommend_book     # runs the function (and opens editor)

Once you hit "Submit" you'll see the function run in your shell. Follow the link to see the version and trace in an interactive UI.

Next, try editing the function signature to take a genre: str argument. When you run the function again it will open the editor and give you access to the {genre} template variable (with autocomplete).

Usage

We are actively working on this library and it's documentation, which you can find here

Versioning

Lilypad uses Semantic Versioning

License

This project uses a dual-license model:

Open-Source License (MIT)

Except for the contents and code contained in any /ee directory, which is covered by a commercial license (see below), all code in this repository is licensed under the terms of the MIT License.

Enterprise Edition License

The contents of any /ee directory are licensed under the Enterprise Edition License. This code is only available to users with a valid enterprise license. See lilypad/ee/LICENSE for the full terms.

Enterprise Features:

Stay tuned...

Obtaining An Enterprise License:

To purchase an enterprise license, please contact william@mirascope.io

License Validation:

Enterprise features require a valid license key for activation. Self-hosted installations will validate licenses against using offline activation.

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

python_lilypad-0.0.9.tar.gz (543.3 kB view details)

Uploaded Source

Built Distribution

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

python_lilypad-0.0.9-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file python_lilypad-0.0.9.tar.gz.

File metadata

  • Download URL: python_lilypad-0.0.9.tar.gz
  • Upload date:
  • Size: 543.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.5.6

File hashes

Hashes for python_lilypad-0.0.9.tar.gz
Algorithm Hash digest
SHA256 683a0f494058915438b5d359f22081622e54ac7864962623285feb51bced01db
MD5 2b817155e8fcfc855bf8a601b0e4d6d4
BLAKE2b-256 efa01371909ec0223ce63dbd7194781f3e8937e7bceb220ebc68f9e0d9b2c0d2

See more details on using hashes here.

File details

Details for the file python_lilypad-0.0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for python_lilypad-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 d67f5bcc6934791c71577b77743e6264b90c0152f5a30ef2d7dcf73f49da3b77
MD5 1632440da3c3d6e6e78ea3f53524f23f
BLAKE2b-256 2e273080fc9e894cb1a889ca8d270beb271d692375e2cabe6980e517d06f49f8

See more details on using hashes here.

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