Skip to main content

Prompt engineering framework for humans

Project description

Promplate

</Promplate/> = <template> // prompt

Promplate is a prompting framework focusing on developing experience. However, it can also be a super-convenient SDK for simple LLM calls. Promplate progressively enhance your prompting workflow. And it values flexibility as well as perfect conventions. Try online

Installation

pip install promplate

Promplate supports both CPython and PyPy, from 3.8 to 3.12. It even supports running in browsers through wasm implementations of python.

Documentation

You can visit our official docs site at docs.py.promplate.dev.

IDE Support 🌹

Promplate is fully typed, which means static type checker will find bugs correctly (if you use pyright for type checking).

We recommend using VS Code as your IDE when coding with promplate, because it natively uses pyright.

The language design of promplate is similar to Jinja2. So you can use the .j2 file extension for template files for syntax highlight.

Development

  • use poetry to manage dependencies.
  • use isort to sort import statements.
  • use black to format code.
  • use pyright to check type annotations.

Development should be done on dev branch, using >=3.10 language features. The master branch is used for py3.8 compatible releases.

Promplate is well tested with pytest. GitHub Actions are used to run tests and linting. And there are test results continually generated on Vercel(py3.9) and Netlify(py3.8). There is a coverage report too.

Future Features (or TODOs?)

  • more documentation
  • javascript implementation
  • improved error handling
    • display compiled code when error occurs through linecache or tempfile (default)

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

promplate-0.3.4.9.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

promplate-0.3.4.9-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file promplate-0.3.4.9.tar.gz.

File metadata

  • Download URL: promplate-0.3.4.9.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for promplate-0.3.4.9.tar.gz
Algorithm Hash digest
SHA256 aa4bae2d21256240fdacccb116def2e2376be1aa0790b09eaa8eb89d2557344d
MD5 3e59778e8b85635487efc3438d882ecc
BLAKE2b-256 b9559d60a099ebdc01c4d6925e4a1c014cda20b9b407127a0b0594364a343e17

See more details on using hashes here.

File details

Details for the file promplate-0.3.4.9-py3-none-any.whl.

File metadata

  • Download URL: promplate-0.3.4.9-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for promplate-0.3.4.9-py3-none-any.whl
Algorithm Hash digest
SHA256 77b64e7873566c48e9ac55bbf9ff565fbc69980b97808167162ba44e9c8828ab
MD5 44bab34fe5029b21ecafa0d5f15b8c60
BLAKE2b-256 ce044b684dfaf355885e276346d7ee72ba713f515a2b5f61c74a345128b02990

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page