Merged in bugfix/exhibit-linking (pull request #581)

Bugfix/exhibit linking

* Crosswalk updates

* Merge branch 'main' into bugfix/dynamic-primary-issues

* dont include section information in Exhibit Header

* Add Molina Health Benefit Exchange to Product-LOB mapping

* PPO-POS separate mapping

* Prevent inference of LOB from Program or Product

* Add SoonerSelect

* Update mapping rules to allow for direct values

* update prompts

* Prep for run

* Merged main into bugfix/dynamic-primary-issues

* Update unit tests

* Update Moda Product mappings

* Remove Care1st as Product for Centene

* testing

* Mapping update

* Mapping updates

* prep for merge

* Merged main into bugfix/dynamic-primary-issues

* update prompt template

* remove debugs

* Remove prints

* Merge branch 'bugfix/dynamic-primary-issues' into bugfix/exhibit-linking

* Merged main into bugfix/exhibit-linking

* Merge branch 'main' into bugfix/exhibit-linking


Approved-by: Alex Galarce
This commit is contained in:
Katon Minhas
2025-06-19 18:31:00 +00:00
parent d460b899e3
commit 97281d8ff8
@@ -259,18 +259,28 @@ class FieldSet:
def EXHIBIT_HEADER(context):
return f"""Analyze the following contract excerpt and extract the full header found.
Include ALL text that appears to be part of the exhibit/attachment header. Include all of the following when present:
* Full Attachment names and numbers (e.g., "Attachment C: Commercial-Exchange")
* Complete Exhibit numbers/letters with full titles (e.g., "Exhibit 1 - Medicare")
* Any other relevant subtitles and identifiers, including but not limited to 'Article', 'Amendment', 'Schedule', 'Addendum', 'Appendix', or similar.
Capture the complete hierarchy of document identifiers present in the text. The following keywords and phrases should be considered as exhibit/attachment headers:
* EXHIBIT
* ATTACHMENT
* ARTICLE
* AMENDMENT
* SCHEDULE
* ADDENDUM
* APPENDIX
Include the following when present:
* Full header names and numbers/letters (e.g., "Attachment C: Commercial-Exchange")
* Any other relevant subtitles and identifiers
* Any words in the header that may specify what type of information is contained, such as "Compensation Schedule" or "Definitions".
* Provider/Entity names when listed with exhibit information
Here are some very important rules:
* Do NOT abbreviate or summarize any part of the exhibit names
* Do NOT include page numbers
* Do NOT include any Section language from your extraction of the header, even if it appears to be a part of the header. Sections are not considered part of the header.
* Do NOT include docusign IDs and other metadata. These do not constitute a header.
- Rules for inclusion:
* Do NOT abbreviate or summarize any part of the exhibit names
* Do NOT include page numbers
* Do NOT cherry-pick only certain parts - capture the complete hierarchy
* Do NOT include docusign IDs and other metadata
* Include ALL text that appears to be part of the header
* Keep exact capitalization and formatting as shown in document
If there is no Exhibit Header present, return |N/A|. Do not fill in values from the examples above, these are only examples.
@@ -279,7 +289,7 @@ Here is the text to analyze:
Before returning any output, ensure that all instructions for inclusion were followed.
Briefly explain your answer, then enclose your final answer in |pipes|.
Enclose your final answer in |pipes|, followed by a brief explanation.
"""
def EXHIBIT_LINKAGE(header1, header2):