Skip to main content

LLM-facing prompt rendering for a semql Catalog: the four-role planner/router/presenter/drilldown fragments, cacheable prompt segments, tool-description projection, and prompt-token budgeting.

Project description

semql-prompt

LLM-facing prompt rendering for a semql Catalog.

semql's compiler is pure — it turns a SemanticQuery into SQL and never renders a prompt. This package is the rendering layer on top:

  • Four-role prompt fragmentsbuild_planner_prompt_fragment, build_router_prompt_fragment, build_presenter_prompt_fragment, build_drilldown_prompt_fragment, build_query_generator_prompt_fragment.
  • Cacheable segmentsCatalogPrompt (viewer-invariant static + per-viewer overlay) for prompt-cache breakpoints, plus prompt_hash.
  • Tool-description projectionto_openai_tools / to_langchain_tools / to_openai_function for function-calling clients.
  • Prompt-token budgetingPromptBudget, apply_budget, estimate_tokens.

Install

pip install semql-prompt

Quick start

The catalog-level conveniences take the catalog as their first argument:

from semql import Catalog
from semql_prompt import planner_prompt, planner_prompt_segments, prompt_hash, to_openai_tools

text = planner_prompt(catalog, viewer=viewer)
segs = planner_prompt_segments(catalog)
key  = prompt_hash(catalog)
tools = to_openai_tools(catalog, viewer=viewer)

For the lower-level per-role fragment builders, see API reference.

License

BSD-3-Clause.

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

semql_prompt-0.5.0.tar.gz (23.4 kB view details)

Uploaded Source

Built Distribution

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

semql_prompt-0.5.0-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

Details for the file semql_prompt-0.5.0.tar.gz.

File metadata

  • Download URL: semql_prompt-0.5.0.tar.gz
  • Upload date:
  • Size: 23.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for semql_prompt-0.5.0.tar.gz
Algorithm Hash digest
SHA256 1a52ca14a294b5f2e9b338762c3908cd8ade7f44753d7d27837d998067198072
MD5 114f0eb6b92b528424c609f4dabb4c09
BLAKE2b-256 03a34da8507eb18cc8299b983870d4bdcbac726fc7ab5c4f4926c1a47e6669e6

See more details on using hashes here.

File details

Details for the file semql_prompt-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: semql_prompt-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 26.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for semql_prompt-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 67281b3e707c47c8322b49822c6f57f7736e7b74c5eee5afe0c0195519b48f6c
MD5 1bb09245f7590c690f200314359d71bb
BLAKE2b-256 ef819f7990cb429510895d8b8de2e4687e91a9c996082680d483e840f1025c62

See more details on using hashes here.

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