Skip to main content

Lightweight Python library for parsing and rendering POML prompts

Project description

Pomlight (Python)

Lightweight Python library for parsing and rendering POML prompts.

Install

pip install pomlight

Usage

from pomlight import poml

messages = poml("""<poml>
  <system>You are a helpful assistant.</system>
  <user>What is 2 + 2?</user>
</poml>""")

print(messages[0]["content"])  # "You are a helpful assistant."
print(messages[1]["content"])  # "What is 2 + 2?"

Use with OpenAI SDK

from openai import OpenAI
from pomlight import poml

client = OpenAI()

params = poml("""<poml>
  <runtime model="gpt-4o-mini" />
  <system>You are a helpful assistant. Reply in one short sentence.</system>
  <user>What is the capital of France?</user>
</poml>""", format="openai_chat")

response = client.chat.completions.create(**params)
print(response.choices[0].message.content)

Feature Coverage

See FeatureCoverage.md for supported components, template features, and what is not implemented.

Development

pip install -e .[dev]
pytest tests/

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

pomlight-0.1.2.tar.gz (61.4 kB view details)

Uploaded Source

Built Distribution

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

pomlight-0.1.2-py3-none-any.whl (28.0 kB view details)

Uploaded Python 3

File details

Details for the file pomlight-0.1.2.tar.gz.

File metadata

  • Download URL: pomlight-0.1.2.tar.gz
  • Upload date:
  • Size: 61.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pomlight-0.1.2.tar.gz
Algorithm Hash digest
SHA256 a3151c42a3c67e11852b2d01f3ff6f1f90c39e68d3b9cfab4f90e255ee8aea00
MD5 a859dc23695cb08c25908addc9740bb1
BLAKE2b-256 a09f131bdd2c1135e8d0108509383c21b5246df61681ae6f758a391c0685f694

See more details on using hashes here.

Provenance

The following attestation bundles were made for pomlight-0.1.2.tar.gz:

Publisher: publish-python.yml on gfauchart/pomlight

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pomlight-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: pomlight-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 28.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pomlight-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fcd21179f1db54ee178711679b49920571253a56300f02cfa69e57b5dc6550d2
MD5 f8529ebb644ea21440e9bdc0c5379583
BLAKE2b-256 252cd963d3d5b806735e91672f1e8643626c552fdf6500cb2f9722fca508622d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pomlight-0.1.2-py3-none-any.whl:

Publisher: publish-python.yml on gfauchart/pomlight

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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