Skip to main content

INFRA-COMPASS is a tool that leverages Large Language Models (LLMs) to create and maintain an inventory of state and local codes and ordinances applicable to energy infrastructure.

Project description

License Zenodo PythonV PyPI Ruff Pixi Static Badge

What is COMPASS?

COMPASS (formally the Infrastructure Continuous Ordinance Mapping for Planning and Siting Systems, or “INFRA-COMPASS”) is an innovative software tool that harnesses the power of Large Language Models (LLMs) to automate the compilation and continued maintenance of an inventory of state and local codes and ordinances pertaining to energy infrastructure.

At a high level, COMPASS does two things: it retrieves the right ordinance documents for each jurisdiction you ask about, and then extracts structured data from those documents into a versioned database that downstream users can query as a CSV, Excel workbook, or GeoPackage.

High-level overview of the COMPASS pipeline

What makes COMPASS different from simply asking ChatGPT for ordinance data is the architecture around the LLM call:

  • Structured, downstream-ready output — consistent CSV rows with stable column names, units, and feature labels that drop straight into siting and capacity-modeling tools like reV, GIS workflows, or any pipeline that needs setbacks, height limits, and noise thresholds as numbers rather than prose.

  • Hallucination guardrails — cleaned text is checked against the source and dropped if it drifts too far, so fabricated values never reach the database.

  • Source-URL traceability — every record carries a URL back to the original ordinance document, so any value can be audited or spot-checked.

  • Cost control — cheap heuristic filters reject obviously irrelevant text before any LLM call runs, making it tractable to extract data across hundreds of jurisdictions.

Read more about the tool in the documentation, or check out summaries of the validation results in the validation report.

Where is the extracted ordinance data?

The National Laboratories of the Rockies (NLR) typically runs the COMPASS pipeline annually and publishes refreshed datasets to OpenEI. The latest published ordinance datasets are available here:

Installing COMPASS

The quickest way to install COMPASS for users is from PyPI:

pip install infra-compass

If you would like to install and run COMPASS from source, we recommend using pixi:

git clone git@github.com:NatLabRockies/COMPASS.git; cd COMPASS
pixi run compass

For detailed instructions and troubleshooting, see the installation documentation.

Quickstart

To run a quick COMPASS demo, set up a personal OpenAI API key and run:

pixi run openai-solar-demo <your API key>

This will run a full extraction pipeline for two counties using gpt-4o-mini (costs ~$0.45). For more information on configuring a COMPASS run, see the execution basics example.

Development

Please see the Development Guidelines if you wish to contribute code to this repository.

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

infra_compass-0.21.0.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

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

infra_compass-0.21.0-py3-none-any.whl (1.0 MB view details)

Uploaded Python 3

File details

Details for the file infra_compass-0.21.0.tar.gz.

File metadata

  • Download URL: infra_compass-0.21.0.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for infra_compass-0.21.0.tar.gz
Algorithm Hash digest
SHA256 59af4581b39e8d4926021923718b88a9706a637191aa2a8edd0fc443990e038e
MD5 b2269565aaaa5a1471473e71f58d3001
BLAKE2b-256 c6ae8ca9e60022b37ab200664b9ee86d21ac8fb8ffb12c3b24a2889aa777d1f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for infra_compass-0.21.0.tar.gz:

Publisher: publish_to_pypi.yml on NatLabRockies/COMPASS

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

File details

Details for the file infra_compass-0.21.0-py3-none-any.whl.

File metadata

  • Download URL: infra_compass-0.21.0-py3-none-any.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for infra_compass-0.21.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4a2fda2b685cfef99d3e3a31cbe9fedc9368992320abb75e9199c00fd35f1672
MD5 c891cd32007e37fcbf143ba1793cd33a
BLAKE2b-256 f6cae8373ec644075f5b6c30d7daf208652389d57e396d6b929fbc22133e1fbc

See more details on using hashes here.

Provenance

The following attestation bundles were made for infra_compass-0.21.0-py3-none-any.whl:

Publisher: publish_to_pypi.yml on NatLabRockies/COMPASS

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