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
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.
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file infra_compass-0.20.0.tar.gz.
File metadata
- Download URL: infra_compass-0.20.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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6e433ca995726e792f2ca2acd5a9b5ac8f8dbca0f93ecb39f7849ebbd727d0b
|
|
| MD5 |
92dcffc1a4f8c07def39af0c2e515d99
|
|
| BLAKE2b-256 |
e817184658dbe59b4abd2d230337e506f673369386f92a0cf172b549e7ac927f
|
Provenance
The following attestation bundles were made for infra_compass-0.20.0.tar.gz:
Publisher:
publish_to_pypi.yml on NatLabRockies/COMPASS
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
infra_compass-0.20.0.tar.gz -
Subject digest:
b6e433ca995726e792f2ca2acd5a9b5ac8f8dbca0f93ecb39f7849ebbd727d0b - Sigstore transparency entry: 1972830777
- Sigstore integration time:
-
Permalink:
NatLabRockies/COMPASS@3e48144bfc723f5766eef741719f5b2602b6f8b6 -
Branch / Tag:
refs/tags/v0.20.0 - Owner: https://github.com/NatLabRockies
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@3e48144bfc723f5766eef741719f5b2602b6f8b6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file infra_compass-0.20.0-py3-none-any.whl.
File metadata
- Download URL: infra_compass-0.20.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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f3d21e89fc588dcbd710f64c63a9b4c55d9731a214401e3b3b84682903d8b39
|
|
| MD5 |
70747511f5a3f19760c67f325375b71a
|
|
| BLAKE2b-256 |
77d7046785006957c1a63bc618769b31f75bd63197a6a81a212c1693be22abb9
|
Provenance
The following attestation bundles were made for infra_compass-0.20.0-py3-none-any.whl:
Publisher:
publish_to_pypi.yml on NatLabRockies/COMPASS
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
infra_compass-0.20.0-py3-none-any.whl -
Subject digest:
2f3d21e89fc588dcbd710f64c63a9b4c55d9731a214401e3b3b84682903d8b39 - Sigstore transparency entry: 1972830874
- Sigstore integration time:
-
Permalink:
NatLabRockies/COMPASS@3e48144bfc723f5766eef741719f5b2602b6f8b6 -
Branch / Tag:
refs/tags/v0.20.0 - Owner: https://github.com/NatLabRockies
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_to_pypi.yml@3e48144bfc723f5766eef741719f5b2602b6f8b6 -
Trigger Event:
release
-
Statement type: