cross-language prompt engineering framework
Reason this release was yanked:
forget `await` in llm.openai
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 kwarg1=1, kwarg2=2, **kwargs %}
- allow more corner cases for the component syntax
-
{% Component arg=" * " %}
-
{% Component arg = " * " %}
-
{% Component 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.3.0a1.tar.gz
(8.9 kB
view hashes)
Built Distribution
Close
Hashes for promplate-0.3.0a1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb39807e5b2984f95af5cef88cb119fd12c6da7f4b19fb87b2f0129ce3c779dd |
|
MD5 | e2268be923199bd635c3357af509b468 |
|
BLAKE2b-256 | f2d4b81b57225e8fc1fd63ef9e69f36c627f4a3641ac08ed1342c5f34d11c028 |