cross-language prompt engineering framework
Project description
Promplate
</Promplate/> = /prompt/ + <template>
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
IDE Support 🌹
I try to make the syntax compatible with Jinja2
.
Future Features (or TODOs?)
- (lazy) template compiling
- support any evaluatable expression inside template like
{{ [ i for i in range(n) ] }}
- create documentation
- javascript implementation
- support chains and agents
- error handling
- template rich printing
- implement component syntax
{% Component * arg1 arg2 kwarg1=1 kwarg2=2 **kwargs %}
- allow more corner cases for the component syntax
-
{% Componnet arg=" * " %}
-
{% Componnet arg = " * " %}
-
{% Componnet arg = await f()
-
- if the outer context is a
defaultdict
, the context passing to component should be?- or maybe this should be determined by the component itself
- because a component could be a
Node
and aNode
can have preprocesses
- support while loop and isolated variable declaration
-
else
andelif
tag - directory based routing
- caching (and cache-controls maybe?)
- implement more loaders
- for now you can load template from local filesystem or web urls
- but component syntax only support variables from the context
- multi-file chat template
- using components
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.1.9.8.tar.gz
(7.9 kB
view details)
Built Distribution
File details
Details for the file promplate-0.1.9.8.tar.gz
.
File metadata
- Download URL: promplate-0.1.9.8.tar.gz
- Upload date:
- Size: 7.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.11.5 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd55cf65001eefc64e38826aa68eb320576eee2d6eb8470f567f9c338c4aca66 |
|
MD5 | 400f1913933fcfecd2f41d5c88b1df48 |
|
BLAKE2b-256 | 390ba26320c76c53b12e6a85a4bf757dbf86bd5fec2da4f84d67fbde707c9ef1 |
File details
Details for the file promplate-0.1.9.8-py3-none-any.whl
.
File metadata
- Download URL: promplate-0.1.9.8-py3-none-any.whl
- Upload date:
- Size: 10.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.6.1 CPython/3.11.5 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b19ab1e2a00c4737d8f52b08b27eae19d600871baf7369924d31d5e3cb3b897 |
|
MD5 | d79a11334ee540c21e06fe2fea0b28b7 |
|
BLAKE2b-256 | 36c9b099c91d6d6e97775c4e301d2d5787cc728a299753b17f7758f7c9974e14 |