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.7.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.7-py3-none-any.whl (28.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pomlight-0.1.7.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.7.tar.gz
Algorithm Hash digest
SHA256 d53a0c74d44990d36013d909d2b0d4bc5321a98c9043f0519a21aa615d663297
MD5 bde9dea328bff525292dbab10d4d3c25
BLAKE2b-256 96e4d68fcda39cc0b5a53d1a79260149ddbf208b77beebea764203c79e71db71

See more details on using hashes here.

Provenance

The following attestation bundles were made for pomlight-0.1.7.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.7-py3-none-any.whl.

File metadata

  • Download URL: pomlight-0.1.7-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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 2eb8a48527072aa1790d60dd93ec03d8bce2c7bd60f23149b9db66df10a4b1cd
MD5 5bf073152b8ab20b333f80a70ec6f80a
BLAKE2b-256 2a98c06a877b4d4609490ee29abcbadafefe0f0363061d4cf7df864fc952d7bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pomlight-0.1.7-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