Skip to main content

LLM prompt/context preparation utility

Project description

contextualize

contextualize is a package to quickly retrieve and format file contents for use with LLMs.

Installation

You can install the package using pip:

pip install contextualize

Usage (reference.py)

Define FileReference objects for specified file paths and optional ranges.

  • set range to a tuple of line numbers to include only a portion of the file, e.g. range=(1, 10)
  • set format to "md" or "xml" to wrap file contents in Markdown code blocks or <file> tags
  • set label to "relative" (default), "name", or "ext" to determine what label is affixed to the enclosing Markdown/XML string
    • "relative" will use the relative path from the current working directory
    • "name" will use the file name only
    • "ext" will use the file extension only

Retrieve wrapped contents from the output attribute.

CLI

A CLI (cli.py) is provided to print file contents to the console from the command line.

  • cat: Prepare and concatenate file references
    • paths: Positional arguments for target file(s) or directories
    • --ignore: File(s) to ignore (optional)
    • --format: Output format (md or xml, default is md)
    • --label: Label style (relative for relative file path, name for file name only, ext for file extension only; default is relative)
  • Example usage:
    • contextualize cat README.md will print the wrapped contents of README.md to the console with default settings (Markdown format, relative path label).
    • contextualize cat README.md --format xml will print the wrapped contents of README.md to the console with XML format.
    • contextualize cat contextualize/ dev/ README.md --format xml will prepare file references for files in the contextualize/ and dev/ directories and README.md, and print each file's contents (wrapped in corresponding XML tags) to the console.

Related projects

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

contextualize-0.0.1.tar.gz (15.7 kB view details)

Uploaded Source

Built Distribution

contextualize-0.0.1-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

File details

Details for the file contextualize-0.0.1.tar.gz.

File metadata

  • Download URL: contextualize-0.0.1.tar.gz
  • Upload date:
  • Size: 15.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.6

File hashes

Hashes for contextualize-0.0.1.tar.gz
Algorithm Hash digest
SHA256 1767fc6ae3c621c00c2747edde3d3611a6e3634b358fe2694e8c7058d0108a12
MD5 e9d95adb33b0146840d206691a1342eb
BLAKE2b-256 3c701b580347ce0c8dd3ce7c1ac4d702bcf882246a46237408d54a51a94a267c

See more details on using hashes here.

File details

Details for the file contextualize-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: contextualize-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 16.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.6

File hashes

Hashes for contextualize-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 989e217adb04174d8b662488660fccb69862570aa83cb3779ab04fc454c914ad
MD5 8e738b58d197e8bf9ba39c0eae82141b
BLAKE2b-256 ec179654fedecaa90676f2910034d6725e686f4588bfa0b2ab083e49968223f9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page