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 INFRA-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.

Where is the extracted ordinance data?

The National Laboratories of the Rockies (NLR) typically runs the INFRA-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.19.0.tar.gz (701.2 kB 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.19.0-py3-none-any.whl (701.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for infra_compass-0.19.0.tar.gz
Algorithm Hash digest
SHA256 af1b16d233331504e55feb7bde49de5017666d6b0e9d9ceda25c4ccd5f2e37f6
MD5 de4758a1733dfbd098c23eebe697f1c2
BLAKE2b-256 5bf9808b5a17c5b821cec20252db3c81487d437b1cfe6412c14f88d47524a38b

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: infra_compass-0.19.0-py3-none-any.whl
  • Upload date:
  • Size: 701.4 kB
  • 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.19.0-py3-none-any.whl
Algorithm Hash digest
SHA256 33fe8902123add3c03a9f937bffa0cf73fdd7b6a0d7092cb3415e1f009a88024
MD5 e3ce0eae1b74aa7eccba1654410b56df
BLAKE2b-256 601f9ed1527cc009ba73a2bbcc412c5e4d0598d80812c8059b92cde29163a4ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for infra_compass-0.19.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