Skip to main content

cross-language prompt engineering framework

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. Learn more

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
  • improve error handling
    • possible ways would be similar to Jinja2

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.3.2.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

promplate-0.3.3.2-py3-none-any.whl (15.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: promplate-0.3.3.2.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.0 Windows/11

File hashes

Hashes for promplate-0.3.3.2.tar.gz
Algorithm Hash digest
SHA256 2e72c9a30688fb3759ce50857d3cc7a62e80e91816dbf3e9c6cfa1b6aa6312b4
MD5 75e57c52fabc332b80a9fb7d28d482a0
BLAKE2b-256 6920d8b78bd51eca8145937da626a7096e7efdf057b9f23d70720baf1bd57764

See more details on using hashes here.

File details

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

File metadata

  • Download URL: promplate-0.3.3.2-py3-none-any.whl
  • Upload date:
  • Size: 15.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.0 Windows/11

File hashes

Hashes for promplate-0.3.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d8a30c532ab1c7cd92640648567cd842967abd125a12e4e8f9c0ff4f54f8ebd3
MD5 9052a29af1ad1164e839979f9f365416
BLAKE2b-256 6b1240f021185a318acf76a830d4577d4ebe288b86b3f0320e67df900b8c6f0a

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