Spaces:
Running
Running
Upload folder using huggingface_hub
Browse files- .gitattributes +1 -0
- .gitignore +3 -1
- app.py +12 -8
- articles_db.csv +60 -60
- chroma_store/11a56aaa-a850-4b98-a3f8-c059e49a501b/link_lists.bin +0 -3
- chroma_store/chroma.sqlite3 +0 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
chroma_store/chroma.sqlite3 filter=lfs diff=lfs merge=lfs -text
|
.gitignore
CHANGED
|
@@ -127,4 +127,6 @@ dmypy.json
|
|
| 127 |
|
| 128 |
# Pyre type checker
|
| 129 |
.pyre/
|
| 130 |
-
.idea
|
|
|
|
|
|
|
|
|
| 127 |
|
| 128 |
# Pyre type checker
|
| 129 |
.pyre/
|
| 130 |
+
.idea
|
| 131 |
+
|
| 132 |
+
test1.ipynb
|
app.py
CHANGED
|
@@ -1,4 +1,3 @@
|
|
| 1 |
-
import gradio
|
| 2 |
from langchain_openai import OpenAIEmbeddings
|
| 3 |
from langchain_openai import ChatOpenAI
|
| 4 |
from langchain_chroma import Chroma
|
|
@@ -17,7 +16,6 @@ from langchain_core.exceptions import OutputParserException
|
|
| 17 |
from langchain_core.prompts import MessagesPlaceholder
|
| 18 |
import os
|
| 19 |
import uuid
|
| 20 |
-
import uuid
|
| 21 |
import hashlib
|
| 22 |
|
| 23 |
from langchain_community.chat_message_histories import ChatMessageHistory
|
|
@@ -86,8 +84,6 @@ def format_docs_xml(docs: List[Document]) -> str:
|
|
| 86 |
]
|
| 87 |
return f"\n\n<sources>\n{chr(10).join(formatted_docs)}\n</sources>"
|
| 88 |
|
| 89 |
-
|
| 90 |
-
|
| 91 |
rag_chain_from_docs = (
|
| 92 |
RunnablePassthrough.assign(context=(lambda x: format_docs_xml(x["context"])))
|
| 93 |
| xml_prompt
|
|
@@ -132,15 +128,20 @@ def get_session_history(session_id: str) -> BaseChatMessageHistory:
|
|
| 132 |
store[session_id] = ChatMessageHistory()
|
| 133 |
return store[session_id]
|
| 134 |
|
| 135 |
-
|
| 136 |
def generate_unique_string():
|
|
|
|
| 137 |
mac = uuid.getnode()
|
|
|
|
| 138 |
mac_str = f'{mac:012x}'
|
|
|
|
|
|
|
| 139 |
try:
|
| 140 |
with open('/proc/cpuinfo') as f:
|
| 141 |
cpu_info = f.read()
|
| 142 |
except FileNotFoundError:
|
| 143 |
-
cpu_info = str(uuid.getnode())
|
|
|
|
|
|
|
| 144 |
unique_string = hashlib.sha256((mac_str + cpu_info).encode()).hexdigest()
|
| 145 |
return unique_string
|
| 146 |
|
|
@@ -149,6 +150,7 @@ def llm_response(query):
|
|
| 149 |
unique_id = generate_unique_string()
|
| 150 |
config = {"configurable": {"thread_id": unique_id }}
|
| 151 |
try:
|
|
|
|
| 152 |
filtered_history = trim_messages(get_session_history(unique_id).messages, strategy="last", token_counter=len, max_tokens=5,
|
| 153 |
start_on="human", end_on=("human", "tool"), include_system=True,)
|
| 154 |
modified_query = runnable.invoke({"input": query, "chat_history": filtered_history}).content
|
|
@@ -183,6 +185,7 @@ def llm_response(query):
|
|
| 183 |
citations_section = "\n\nCitations:\n" + "\n".join(
|
| 184 |
[f"[{i}]: [{title}]({link})" for i, (title, link) in enumerate(zip(titles, links), start=1)]
|
| 185 |
)
|
|
|
|
| 186 |
# Combine answer and citations for final markdown output
|
| 187 |
markdown_list = f"{answer_with_citations}{citations_section}"
|
| 188 |
markdown_list += f"\n\n\nHere is a list of resources that can provide more information about your inquiry:\n"
|
|
@@ -194,7 +197,7 @@ def llm_response(query):
|
|
| 194 |
|
| 195 |
|
| 196 |
|
| 197 |
-
with gr.Blocks() as
|
| 198 |
gr.Markdown("## FORTIFIED AI Assistant!")
|
| 199 |
gr.Markdown("### I'll try to answer any questions related to FORTIFIED program. Tell me what's on your mind?")
|
| 200 |
with gr.Row():
|
|
@@ -206,6 +209,7 @@ with gr.Blocks() as fortified:
|
|
| 206 |
def user(user_message, history: list):
|
| 207 |
return "", history + [{"role": "user", "content": user_message}]
|
| 208 |
|
|
|
|
| 209 |
def bot(history: list):
|
| 210 |
bot_message = llm_response(history[-1]['content'])
|
| 211 |
history.append({"role": "assistant", "content": ""})
|
|
@@ -218,4 +222,4 @@ with gr.Blocks() as fortified:
|
|
| 218 |
send.click(user, [msg, chatbot], [msg, chatbot], queue=False).then(bot, chatbot, chatbot)
|
| 219 |
|
| 220 |
if __name__ == "__main__":
|
| 221 |
-
|
|
|
|
|
|
|
| 1 |
from langchain_openai import OpenAIEmbeddings
|
| 2 |
from langchain_openai import ChatOpenAI
|
| 3 |
from langchain_chroma import Chroma
|
|
|
|
| 16 |
from langchain_core.prompts import MessagesPlaceholder
|
| 17 |
import os
|
| 18 |
import uuid
|
|
|
|
| 19 |
import hashlib
|
| 20 |
|
| 21 |
from langchain_community.chat_message_histories import ChatMessageHistory
|
|
|
|
| 84 |
]
|
| 85 |
return f"\n\n<sources>\n{chr(10).join(formatted_docs)}\n</sources>"
|
| 86 |
|
|
|
|
|
|
|
| 87 |
rag_chain_from_docs = (
|
| 88 |
RunnablePassthrough.assign(context=(lambda x: format_docs_xml(x["context"])))
|
| 89 |
| xml_prompt
|
|
|
|
| 128 |
store[session_id] = ChatMessageHistory()
|
| 129 |
return store[session_id]
|
| 130 |
|
|
|
|
| 131 |
def generate_unique_string():
|
| 132 |
+
# Get the MAC address
|
| 133 |
mac = uuid.getnode()
|
| 134 |
+
# Convert the MAC address to a hexadecimal string
|
| 135 |
mac_str = f'{mac:012x}'
|
| 136 |
+
|
| 137 |
+
# Get the CPU info as a unique identifier for the machine
|
| 138 |
try:
|
| 139 |
with open('/proc/cpuinfo') as f:
|
| 140 |
cpu_info = f.read()
|
| 141 |
except FileNotFoundError:
|
| 142 |
+
cpu_info = str(uuid.getnode()) # Fallback to MAC if CPU info is not accessible
|
| 143 |
+
|
| 144 |
+
# Combine the MAC and CPU info, and hash it for uniqueness
|
| 145 |
unique_string = hashlib.sha256((mac_str + cpu_info).encode()).hexdigest()
|
| 146 |
return unique_string
|
| 147 |
|
|
|
|
| 150 |
unique_id = generate_unique_string()
|
| 151 |
config = {"configurable": {"thread_id": unique_id }}
|
| 152 |
try:
|
| 153 |
+
# modified_query = runnable.invoke({"input": query, "chat_history": history.messages}).content
|
| 154 |
filtered_history = trim_messages(get_session_history(unique_id).messages, strategy="last", token_counter=len, max_tokens=5,
|
| 155 |
start_on="human", end_on=("human", "tool"), include_system=True,)
|
| 156 |
modified_query = runnable.invoke({"input": query, "chat_history": filtered_history}).content
|
|
|
|
| 185 |
citations_section = "\n\nCitations:\n" + "\n".join(
|
| 186 |
[f"[{i}]: [{title}]({link})" for i, (title, link) in enumerate(zip(titles, links), start=1)]
|
| 187 |
)
|
| 188 |
+
|
| 189 |
# Combine answer and citations for final markdown output
|
| 190 |
markdown_list = f"{answer_with_citations}{citations_section}"
|
| 191 |
markdown_list += f"\n\n\nHere is a list of resources that can provide more information about your inquiry:\n"
|
|
|
|
| 197 |
|
| 198 |
|
| 199 |
|
| 200 |
+
with gr.Blocks() as demo:
|
| 201 |
gr.Markdown("## FORTIFIED AI Assistant!")
|
| 202 |
gr.Markdown("### I'll try to answer any questions related to FORTIFIED program. Tell me what's on your mind?")
|
| 203 |
with gr.Row():
|
|
|
|
| 209 |
def user(user_message, history: list):
|
| 210 |
return "", history + [{"role": "user", "content": user_message}]
|
| 211 |
|
| 212 |
+
|
| 213 |
def bot(history: list):
|
| 214 |
bot_message = llm_response(history[-1]['content'])
|
| 215 |
history.append({"role": "assistant", "content": ""})
|
|
|
|
| 222 |
send.click(user, [msg, chatbot], [msg, chatbot], queue=False).then(bot, chatbot, chatbot)
|
| 223 |
|
| 224 |
if __name__ == "__main__":
|
| 225 |
+
demo.launch()
|
articles_db.csv
CHANGED
|
@@ -1,60 +1,60 @@
|
|
| 1 |
-
id,Title,Link,SourceType,FileName
|
| 2 |
-
1,2020 FORTIFIED Standard,https://fortifiedhome.org/wp-content/uploads/2020-FORTIFIED-Home-Standard.pdf,file,2020_fortified_standard.pdf
|
| 3 |
-
2,Sealed Roof Deck Supplemental Deck Attachment,https://fortifiedhome.org/wp-content/uploads/2015-04_technical-bulletin_sealed-roof-deck-supplemental-deck-attachment.pdf,file,sealed_roof_deck_supplemental_deck_attachment.pdf
|
| 4 |
-
3,Roof Flashing,https://fortifiedhome.org/wp-content/uploads/2017-01_technical-bulletin_flashing.pdf,file,roof_flashing.pdf
|
| 5 |
-
4,Metal Panel Roof Covering Guidance,https://fortifiedhome.org/wp-content/uploads/2019-01_technical-bulletin_metal-roof-panel-selection_revised.pdf,file,metal_panel_roof_covering_guidance.pdf
|
| 6 |
-
5,Design Pressure Guidance for Roof Coverings,https://fortifiedhome.org/wp-content/uploads/2020-01_technical-bulletin_design-pressure-guidance-for-roof-coverings_revised.pdf,file,design_pressure_guidance_for_roof_coverings.pdf
|
| 7 |
-
6,Garage Door Requirements,https://fortifiedhome.org/wp-content/uploads/2021-01_technical-bulletin_garage-door-requirements.pdf,file,garage_door_requirements.pdf
|
| 8 |
-
7,PA - Vycor Product Advisory,https://fortifiedhome.org/wp-content/uploads/Vycor_Product_Advisory.pdf,file,pa_vycor_product_advisory.pdf
|
| 9 |
-
8,Corrosion Resistant Fasteners,https://fortifiedhome.org/wp-content/uploads/TB_FH_2021-02.pdf,file,corrosion_resistant_fasteners.pdf
|
| 10 |
-
9,Sealed Roof Deck for Wood Shake and Shingle Roof Systems,https://fortifiedhome.org/wp-content/uploads/TB-FH-2021-03_SRD_options_for_wood_shake.pdf,file,sealed_roof_deck_for_wood_shake_and_shingle_roof_systems.pdf
|
| 11 |
-
10,IBHS Guidance Choosing the Right Tape,https://fortifiedhome.org/wp-content/uploads/Choosing-the-Right-Tape_FINAL.pdf,file,ibhs_guidance_choosing_the_right_tape.pdf
|
| 12 |
-
11,Roof Sheathing Nail Pattern Documentation Requirements,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022_01-Roof-Sheathing-Attachment-Documentation.pdf,file,roof_sheathing_nail_pattern_documentation_requirements.pdf
|
| 13 |
-
12,FORTIFIED Roof Identification,https://fortifiedhome.org/wp-content/uploads/FORTIFIED-ROOF-IDENTIFICATIONR10.pdf,file,fortified_roof_identification.pdf
|
| 14 |
-
13,The FORTIFIED Definition of Roof,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022-02-Definition-of-Roof.pdf,file,the_fortified_definition_of_roof.pdf
|
| 15 |
-
14,FORTIFIED Home Requirements for Elevated Roof-Mounted Decks,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022-03-Elevated-Rooftop-Decks.pdf,file,fortified_home_requirements_for_elevated_roof_mounted_decks.pdf
|
| 16 |
-
15,Product Substitution Due to Supply Chain Issues and Product Availability,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022_04-Supply-Chain-Issues.pdf,file,product_substitution_due_to_supply_chain_issues_and_product_availability.pdf
|
| 17 |
-
16,Requirements for Re-Roofing Over Existing Self-Adhered Membranes,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022-05-Reroofing-Over-Self-Adhered-Membranes.pdf,file,requirements_for_re_roofing_over_existing_self_adhered_membranes.pdf
|
| 18 |
-
17,Foundation Requirements for FORTIFIED Home Eligibility,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022-06-Foundation-Requirements-FORTIFIED-Home.pdf,file,foundation_requirements_for_fortified_home_eligibility.pdf
|
| 19 |
-
18,Removal of Egress Requirement for Entry Doors,https://fortifiedhome.org/wp-content/uploads/TB-Update-Removal-of-Egress-Requirement.pdf,file,removal_of_egress_requirement_for_entry_doors.pdf
|
| 20 |
-
19,Product Advisory FH Eligibility of Existing Fiberglass Resin Deck Coatings as Roof Covers,https://fortifiedhome.org/wp-content/uploads/PA_FH_2023-01-Fiberglass-resin-deck-coatings-as-roof-covers.pdf,file,product_advisory_fh_eligibility_of_existing_fiberglass_resin_deck_coatings_as_roof_covers.pdf
|
| 21 |
-
20,Fastener Type Requirements for Asphalt Shingles and Drip Edge,https://fortifiedhome.org/wp-content/uploads/TB-Update-Fastener-Requirements-for-Asphalt-Shingles-and-Drip-Edge.pdf,file,fastener_type_requirements_for_asphalt_shingles_and_drip_edge.pdf
|
| 22 |
-
21,Eligibility and Compliance of Accessory Roof Structures,https://fortifiedhome.org/wp-content/uploads/TB-2023-03_Eligibility-and-Compliance-Accessory-Roof-Structures.pdf,file,eligibility_and_compliance_of_accessory_roof_structures.pdf
|
| 23 |
-
22,Use of Factory Seconds or Unlabeled Material in FORTIFIED,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-04-Factory-Seconds-or-Unlabeled-Materials.pdf,file,use_of_factory_seconds_or_unlabeled_material_in_fortified.pdf
|
| 24 |
-
23,FORTIFIED Requirements for Cement and Clay Hip and Ridge Tile Installed Over Asphalt Shingle Roof Cover,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-05-Ridge-or-Hip-Tiles-with-Asphalt-Shingles.pdf,file,fortified_requirements_for_cement_and_clay_hip_and_ridge_tile_installed_over_asphalt_shingle_roof_cover.pdf
|
| 25 |
-
24,2-ply Synthetic Underlayment is an Approved Sealed Roof Deck Option on Asphalt Shingle and Metal Roofs,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-06-2-Ply-Synthetic-SRD-Method.pdf,file,2_ply_synthetic_underlayment_is_an_approved_sealed_roof_deck_option_on_asphalt_shingle_and_metal_roofs.pdf
|
| 26 |
-
25,FORTIFIED Home Requirements for Homes with Excessive Gaps Between Wood Decking Boards,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023_07-Gapped-Decking.pdf,file,fortified_home_requirements_for_homes_with_excessive_gaps_between_wood_decking_boards.pdf
|
| 27 |
-
26,Eligibility Requirements for Homes Constructed to the HUD Code,https://fortifiedhome.org/wp-content/uploads/TB_2023_08-Eligibility-of-HUD-Homes.pdf,file,eligibility_requirements_for_homes_constructed_to_the_hud_code.pdf
|
| 28 |
-
27,FORTIFIED Guidance on Leaf Guards and Gutters,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-09-Leaf-Guards-and-Gutters.pdf,file,fortified_guidance_on_leaf_guards_and_gutters.pdf
|
| 29 |
-
28,Redesignation Policy Update,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-10-Redesignation-Policy-Update.pdf,file,redesignation_policy_update.pdf
|
| 30 |
-
29,Companion Details for Roll Widths Greater than 36 Inches,https://fortifiedhome.org/wp-content/uploads/Fastening-Synthetic-Underlayment.pdf,file,companion_details_for_roll_widths_greater_than_36_inches.pdf
|
| 31 |
-
30,Underlayment Fastening for Taped Seams and Underlayment Sealed Roof Deck Installations Using Rolls Wider Than 36 Inches,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-11-Underlayment-Fastening.pdf,file,underlayment_fastening_for_taped_seams_and_underlayment_sealed_roof_deck_installations_using_rolls_wider_than_36_inches.pdf
|
| 32 |
-
31, FORTIFIED Home Requirements for Elevated Roof-Mounted HVAC Units,https://fortifiedhome.org/wp-content/uploads/TB_FH_2024-01-Elevated-Roof-Mounted-HVAC-Units.pdf,file,fortified_home_requirements_for_elevated_roof_mounted_hvac_units.pdf
|
| 33 |
-
32,FORTIFIED Guidance – Rain Diverters,https://fortifiedhome.org/wp-content/uploads/TB_FH_2024-02-Rain-Diverters.pdf,file,fortified_guidance_rain_diverters.pdf
|
| 34 |
-
33,Dog Doors in FORTIFIED Homes,https://fortifiedhome.org/wp-content/uploads/FH-2024-03-Dog-Doors-in-FORTIFIED-Homes.pdf,file,dog_doors_in_fortified_homes.pdf
|
| 35 |
-
34,Modular Home Starter Kit – Full Set,https://fortifiedhome.org/wp-content/uploads/Modular-Home-Toolkit-2024.pdf,file,modular_home_starter_kit_full_set.pdf
|
| 36 |
-
35,Post Storm Audit Processes,https://fortifiedhome.org/wp-content/uploads/Post-Storm-Audit-Processes.pdf,file,post_storm_audit_processes.pdf
|
| 37 |
-
36,FORTIFIED Roofing Contractor Handbook,https://fortifiedhome.org/wp-content/uploads/FORTIFIED_Roof_Contractor_Handbook.pdf,file,fortified_roofing_contractor_handbook.pdf
|
| 38 |
-
37,FORTIFIED Evaluator Handbook,https://fortifiedhome.org/wp-content/uploads/FORTIFIED_Home_Evaluator_Handbook.pdf,file,fortified_evaluator_handbook.pdf
|
| 39 |
-
38,FORTIFIED Professional Handbook,https://fortifiedhome.org/wp-content/uploads/FORTIFIED-Home-Professional-Handbook.pdf,file,fortified_professional_handbook.pdf
|
| 40 |
-
39,Certified FORTIFIED Roofing Contractor Agreement,https://fortifiedhome.org/wp-content/uploads/FORTIFIED-Roofing-Contractor-Agreement_5-25-22.pdf,file,certified_fortified_roofing_contractor_agreement.pdf
|
| 41 |
-
40,Certified FORTIFIED Evaluator Agreement,https://fortifiedhome.org/wp-content/uploads/FORTIFIED_Home_Evaluator-Agreement.pdf,file,certified_fortified_evaluator_agreement.pdf
|
| 42 |
-
41,FORTIFIED Professional Agreement,https://fortifiedhome.org/wp-content/uploads/FORTIFIED-Professional-Agreement.pdf,file,fortified_professional_agreement.pdf
|
| 43 |
-
42,What to Do After a Hurricane,https://fortifiedhome.org/article/what-to-do-after-a-hurricane/,web,
|
| 44 |
-
43,Extend the Life of Your Roof,https://fortifiedhome.org/article/extend-the-life-of-your-roof/,web,
|
| 45 |
-
44,How to Select a Roofing Contractor,https://fortifiedhome.org/article/how-to-select-a-roofing-contractor/,web,
|
| 46 |
-
45,The Next Line of Defense,https://fortifiedhome.org/article/the-next-line-of-defense/,web,
|
| 47 |
-
46,9 Questions You Should Absolutely Ask your Roofer,https://fortifiedhome.org/article/9-questions-you-should-absolutely-ask-your-roofer/,web,
|
| 48 |
-
47,Strengthen Your Home Against Hurricanes and Severe Weather,https://fortifiedhome.org/article/strengthen-your-home-against-hurricanes-and-severe-weather/,web,
|
| 49 |
-
48,8 Ways to Know If You Need a New Roof,https://fortifiedhome.org/article/8-ways-to-know-if-you-need-a-new-roof/,web,
|
| 50 |
-
49,Defend Against Frozen Pipes,https://fortifiedhome.org/article/preventing-frozen-pipes/,web,
|
| 51 |
-
50,Hail Protection That Works,https://fortifiedhome.org/article/hail-protection-that-works/,web,
|
| 52 |
-
51,Shut the Door,https://fortifiedhome.org/article/shut-the-door/,web,
|
| 53 |
-
52,Don t Jeopardize Your Home s Resilience,https://fortifiedhome.org/article/dont-jeopardize-your-homes-resilience/,web,
|
| 54 |
-
53, Resilience gains ground as storms increase in frequency and intensity,https://fortifiedhome.org/article/resilience-gains-ground-as-storms-increase-in-frequency-and-intensity/,web,
|
| 55 |
-
54,Reinforce Your Property Against Hurricanes,https://fortifiedhome.org/article/reinforce-your-property-against-hurricanes/,web,
|
| 56 |
-
55,Can You Weather the Cost of The Next Storm?,https://fortifiedhome.org/article/can-you-weather-the-cost-of-the-next-storm/,web,
|
| 57 |
-
56,Is Your Building Code Leaving You Vulnerable to Severe Weather?,https://fortifiedhome.org/article/is-your-building-code-leaving-you-vulnerable-to-severe-weather/,web,
|
| 58 |
-
57,Renewing Your Designation,https://fortifiedhome.org/renew-your-designation/,web,
|
| 59 |
-
58,How to Become a FORTIFIED Certified Service Provider,https://fortifiedhome.org/how-to-become-fortified-certified/,web,
|
| 60 |
-
59,Frequently Asked Questions,https://fortifiedhome.org/frequently-asked-questions/,web,
|
|
|
|
| 1 |
+
id,Title,Link,Context,Category,SourceType,FileName,Description
|
| 2 |
+
1,2020 FORTIFIED Standard,https://fortifiedhome.org/wp-content/uploads/2020-FORTIFIED-Home-Standard.pdf,Re-Roofing and Roof,Construction Standards,file,2020_fortified_standard.pdf,Short description …
|
| 3 |
+
2,Sealed Roof Deck Supplemental Deck Attachment,https://fortifiedhome.org/wp-content/uploads/2015-04_technical-bulletin_sealed-roof-deck-supplemental-deck-attachment.pdf,Sealed Roof Deck,Technical Bulletin,file,sealed_roof_deck_supplemental_deck_attachment.pdf,Short description …
|
| 4 |
+
3,Roof Flashing,https://fortifiedhome.org/wp-content/uploads/2017-01_technical-bulletin_flashing.pdf,Roof Flashing,Technical Bulletin,file,roof_flashing.pdf,Short description …
|
| 5 |
+
4,Metal Panel Roof Covering Guidance,https://fortifiedhome.org/wp-content/uploads/2019-01_technical-bulletin_metal-roof-panel-selection_revised.pdf,Metal Panel and Roof,Technical Bulletin,file,metal_panel_roof_covering_guidance.pdf,Short description …
|
| 6 |
+
5,Design Pressure Guidance for Roof Coverings,https://fortifiedhome.org/wp-content/uploads/2020-01_technical-bulletin_design-pressure-guidance-for-roof-coverings_revised.pdf,Roof and Sealed Roof Deck,Technical Bulletin,file,design_pressure_guidance_for_roof_coverings.pdf,Short description …
|
| 7 |
+
6,Garage Door Requirements,https://fortifiedhome.org/wp-content/uploads/2021-01_technical-bulletin_garage-door-requirements.pdf,General,Technical Bulletin,file,garage_door_requirements.pdf,Short description …
|
| 8 |
+
7,PA - Vycor Product Advisory,https://fortifiedhome.org/wp-content/uploads/Vycor_Product_Advisory.pdf,General,Technical Bulletin,file,pa_vycor_product_advisory.pdf,Short description …
|
| 9 |
+
8,Corrosion Resistant Fasteners,https://fortifiedhome.org/wp-content/uploads/TB_FH_2021-02.pdf,"New Roof, Re-Roofing, Retrofit, and Roof",Technical Bulletin,file,corrosion_resistant_fasteners.pdf,Short description …
|
| 10 |
+
9,Sealed Roof Deck for Wood Shake and Shingle Roof Systems,https://fortifiedhome.org/wp-content/uploads/TB-FH-2021-03_SRD_options_for_wood_shake.pdf,"Re-Roofing, Retrofit, and Roof",Technical Bulletin,file,sealed_roof_deck_for_wood_shake_and_shingle_roof_systems.pdf,Short description …
|
| 11 |
+
10,IBHS Guidance Choosing the Right Tape,https://fortifiedhome.org/wp-content/uploads/Choosing-the-Right-Tape_FINAL.pdf,Roof,Technical Bulletin,file,ibhs_guidance_choosing_the_right_tape.pdf,Short description …
|
| 12 |
+
11,Roof Sheathing Nail Pattern Documentation Requirements,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022_01-Roof-Sheathing-Attachment-Documentation.pdf,Roof,Technical Bulletin,file,roof_sheathing_nail_pattern_documentation_requirements.pdf,Short description …
|
| 13 |
+
12,FORTIFIED Roof Identification,https://fortifiedhome.org/wp-content/uploads/FORTIFIED-ROOF-IDENTIFICATIONR10.pdf,Roof,Technical Bulletin,file,fortified_roof_identification.pdf,Short description …
|
| 14 |
+
13,The FORTIFIED Definition of Roof,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022-02-Definition-of-Roof.pdf,Roof,Technical Bulletin,file,the_fortified_definition_of_roof.pdf,Short description …
|
| 15 |
+
14,FORTIFIED Home Requirements for Elevated Roof-Mounted Decks,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022-03-Elevated-Rooftop-Decks.pdf,Roof and Sealed Roof Deck,Technical Bulletin,file,fortified_home_requirements_for_elevated_roof_mounted_decks.pdf,Short description …
|
| 16 |
+
15,Product Substitution Due to Supply Chain Issues and Product Availability,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022_04-Supply-Chain-Issues.pdf,Roof,Technical Bulletin,file,product_substitution_due_to_supply_chain_issues_and_product_availability.pdf,Short description …
|
| 17 |
+
16,Requirements for Re-Roofing Over Existing Self-Adhered Membranes,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022-05-Reroofing-Over-Self-Adhered-Membranes.pdf,General,Technical Bulletin,file,requirements_for_re_roofing_over_existing_self_adhered_membranes.pdf,Short description …
|
| 18 |
+
17,Foundation Requirements for FORTIFIED Home Eligibility,https://fortifiedhome.org/wp-content/uploads/TB_FH_2022-06-Foundation-Requirements-FORTIFIED-Home.pdf,Roof,Technical Bulletin,file,foundation_requirements_for_fortified_home_eligibility.pdf,Short description …
|
| 19 |
+
18,Removal of Egress Requirement for Entry Doors,https://fortifiedhome.org/wp-content/uploads/TB-Update-Removal-of-Egress-Requirement.pdf,Roof,Technical Bulletin,file,removal_of_egress_requirement_for_entry_doors.pdf,Short description …
|
| 20 |
+
19,Product Advisory FH Eligibility of Existing Fiberglass Resin Deck Coatings as Roof Covers,https://fortifiedhome.org/wp-content/uploads/PA_FH_2023-01-Fiberglass-resin-deck-coatings-as-roof-covers.pdf,General,Technical Bulletin,file,product_advisory_fh_eligibility_of_existing_fiberglass_resin_deck_coatings_as_roof_covers.pdf,Short description …
|
| 21 |
+
20,Fastener Type Requirements for Asphalt Shingles and Drip Edge,https://fortifiedhome.org/wp-content/uploads/TB-Update-Fastener-Requirements-for-Asphalt-Shingles-and-Drip-Edge.pdf,Roof,Technical Bulletin,file,fastener_type_requirements_for_asphalt_shingles_and_drip_edge.pdf,Short description …
|
| 22 |
+
21,Eligibility and Compliance of Accessory Roof Structures,https://fortifiedhome.org/wp-content/uploads/TB-2023-03_Eligibility-and-Compliance-Accessory-Roof-Structures.pdf,General,Technical Bulletin,file,eligibility_and_compliance_of_accessory_roof_structures.pdf,Short description …
|
| 23 |
+
22,Use of Factory Seconds or Unlabeled Material in FORTIFIED,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-04-Factory-Seconds-or-Unlabeled-Materials.pdf,General,Technical Bulletin,file,use_of_factory_seconds_or_unlabeled_material_in_fortified.pdf,Short description …
|
| 24 |
+
23,FORTIFIED Requirements for Cement and Clay Hip and Ridge Tile Installed Over Asphalt Shingle Roof Cover,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-05-Ridge-or-Hip-Tiles-with-Asphalt-Shingles.pdf,General,Technical Bulletin,file,fortified_requirements_for_cement_and_clay_hip_and_ridge_tile_installed_over_asphalt_shingle_roof_cover.pdf,Short description …
|
| 25 |
+
24,2-ply Synthetic Underlayment is an Approved Sealed Roof Deck Option on Asphalt Shingle and Metal Roofs,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-06-2-Ply-Synthetic-SRD-Method.pdf,General,Technical Bulletin,file,2_ply_synthetic_underlayment_is_an_approved_sealed_roof_deck_option_on_asphalt_shingle_and_metal_roofs.pdf,Short description …
|
| 26 |
+
25,FORTIFIED Home Requirements for Homes with Excessive Gaps Between Wood Decking Boards,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023_07-Gapped-Decking.pdf,General,Technical Bulletin,file,fortified_home_requirements_for_homes_with_excessive_gaps_between_wood_decking_boards.pdf,Short description …
|
| 27 |
+
26,Eligibility Requirements for Homes Constructed to the HUD Code,https://fortifiedhome.org/wp-content/uploads/TB_2023_08-Eligibility-of-HUD-Homes.pdf,General,Technical Bulletin,file,eligibility_requirements_for_homes_constructed_to_the_hud_code.pdf,Short description …
|
| 28 |
+
27,FORTIFIED Guidance on Leaf Guards and Gutters,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-09-Leaf-Guards-and-Gutters.pdf,General,Technical Bulletin,file,fortified_guidance_on_leaf_guards_and_gutters.pdf,Short description …
|
| 29 |
+
28,Redesignation Policy Update,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-10-Redesignation-Policy-Update.pdf,General,Technical Bulletin,file,redesignation_policy_update.pdf,Short description …
|
| 30 |
+
29,Companion Details for Roll Widths Greater than 36 Inches,https://fortifiedhome.org/wp-content/uploads/Fastening-Synthetic-Underlayment.pdf,General,Technical Bulletin,file,companion_details_for_roll_widths_greater_than_36_inches.pdf,Short description …
|
| 31 |
+
30,Underlayment Fastening for Taped Seams and Underlayment Sealed Roof Deck Installations Using Rolls Wider Than 36 Inches,https://fortifiedhome.org/wp-content/uploads/TB_FH_2023-11-Underlayment-Fastening.pdf,General,Technical Bulletin,file,underlayment_fastening_for_taped_seams_and_underlayment_sealed_roof_deck_installations_using_rolls_wider_than_36_inches.pdf,Short description …
|
| 32 |
+
31, FORTIFIED Home Requirements for Elevated Roof-Mounted HVAC Units,https://fortifiedhome.org/wp-content/uploads/TB_FH_2024-01-Elevated-Roof-Mounted-HVAC-Units.pdf,Sealed Roof Deck,Technical Bulletin,file,fortified_home_requirements_for_elevated_roof_mounted_hvac_units.pdf,Short description …
|
| 33 |
+
32,FORTIFIED Guidance ‚Äì Rain Diverters,https://fortifiedhome.org/wp-content/uploads/TB_FH_2024-02-Rain-Diverters.pdf,Sealed Roof Deck,Technical Bulletin,file,fortified_guidance_rain_diverters.pdf,Short description …
|
| 34 |
+
33,Dog Doors in FORTIFIED Homes,https://fortifiedhome.org/wp-content/uploads/FH-2024-03-Dog-Doors-in-FORTIFIED-Homes.pdf,General,Technical Bulletin,file,dog_doors_in_fortified_homes.pdf,Short description …
|
| 35 |
+
34,Modular Home Starter Kit ‚Äì Full Set,https://fortifiedhome.org/wp-content/uploads/Modular-Home-Toolkit-2024.pdf,General,Modular Home,file,modular_home_starter_kit_full_set.pdf,Short description …
|
| 36 |
+
35,Post Storm Audit Processes,https://fortifiedhome.org/wp-content/uploads/Post-Storm-Audit-Processes.pdf,list_only,Technical Bulletin,file,post_storm_audit_processes.pdf,Short description …
|
| 37 |
+
36,FORTIFIED Roofing Contractor Handbook,https://fortifiedhome.org/wp-content/uploads/FORTIFIED_Roof_Contractor_Handbook.pdf,General,Hankbook,file,fortified_roofing_contractor_handbook.pdf,Short description …
|
| 38 |
+
37,FORTIFIED Evaluator Handbook,https://fortifiedhome.org/wp-content/uploads/FORTIFIED_Home_Evaluator_Handbook.pdf,General,Hankbook,file,fortified_evaluator_handbook.pdf,Short description …
|
| 39 |
+
38,FORTIFIED Professional Handbook,https://fortifiedhome.org/wp-content/uploads/FORTIFIED-Home-Professional-Handbook.pdf,General,Hankbook,file,fortified_professional_handbook.pdf,Short description …
|
| 40 |
+
39,Certified FORTIFIED Roofing Contractor Agreement,https://fortifiedhome.org/wp-content/uploads/FORTIFIED-Roofing-Contractor-Agreement_5-25-22.pdf,General,Agreement,file,certified_fortified_roofing_contractor_agreement.pdf,Short description …
|
| 41 |
+
40,Certified FORTIFIED Evaluator Agreement,https://fortifiedhome.org/wp-content/uploads/FORTIFIED_Home_Evaluator-Agreement.pdf,General,Agreement,file,certified_fortified_evaluator_agreement.pdf,Short description …
|
| 42 |
+
41,FORTIFIED Professional Agreement,https://fortifiedhome.org/wp-content/uploads/FORTIFIED-Professional-Agreement.pdf,General,Agreement,file,fortified_professional_agreement.pdf,Short description …
|
| 43 |
+
42,What to Do After a Hurricane,https://fortifiedhome.org/article/what-to-do-after-a-hurricane/,General,Article,web,,Short description …
|
| 44 |
+
43,Extend the Life of Your Roof,https://fortifiedhome.org/article/extend-the-life-of-your-roof/,General,Article,web,,Short description …
|
| 45 |
+
44,How to Select a Roofing Contractor,https://fortifiedhome.org/article/how-to-select-a-roofing-contractor/,General,Article,web,,Short description …
|
| 46 |
+
45,The Next Line of Defense,https://fortifiedhome.org/article/the-next-line-of-defense/,General,Article,web,,Short description …
|
| 47 |
+
46,9 Questions You Should Absolutely Ask your Roofer,https://fortifiedhome.org/article/9-questions-you-should-absolutely-ask-your-roofer/,General,Article,web,,Short description …
|
| 48 |
+
47,Strengthen Your Home Against Hurricanes and Severe Weather,https://fortifiedhome.org/article/strengthen-your-home-against-hurricanes-and-severe-weather/,General,Article,web,,Short description …
|
| 49 |
+
48,8 Ways to Know If You Need a New Roof,https://fortifiedhome.org/article/8-ways-to-know-if-you-need-a-new-roof/,General,Article,web,,Short description …
|
| 50 |
+
49,Defend Against Frozen Pipes,https://fortifiedhome.org/article/preventing-frozen-pipes/,General,Article,web,,Short description …
|
| 51 |
+
50,Hail Protection That Works,https://fortifiedhome.org/article/hail-protection-that-works/,General,Article,web,,Short description …
|
| 52 |
+
51,Shut the Door,https://fortifiedhome.org/article/shut-the-door/,General,Article,web,,Short description …
|
| 53 |
+
52,Don t Jeopardize Your Home s Resilience,https://fortifiedhome.org/article/dont-jeopardize-your-homes-resilience/,General,Article,web,,Short description …
|
| 54 |
+
53, Resilience gains ground as storms increase in frequency and intensity,https://fortifiedhome.org/article/resilience-gains-ground-as-storms-increase-in-frequency-and-intensity/,General,Article,web,,Short description …
|
| 55 |
+
54,Reinforce Your Property Against Hurricanes,https://fortifiedhome.org/article/reinforce-your-property-against-hurricanes/,General,Article,web,,Short description …
|
| 56 |
+
55,Can You Weather the Cost of The Next Storm?,https://fortifiedhome.org/article/can-you-weather-the-cost-of-the-next-storm/,General,Article,web,,Short description …
|
| 57 |
+
56,Is Your Building Code Leaving You Vulnerable to Severe Weather?,https://fortifiedhome.org/article/is-your-building-code-leaving-you-vulnerable-to-severe-weather/,General,Article,web,,Short description …
|
| 58 |
+
57,Renewing Your Designation,https://fortifiedhome.org/renew-your-designation/,General,Article,web,,Short description …
|
| 59 |
+
58,How to Become a FORTIFIED Certified Service Provider,https://fortifiedhome.org/how-to-become-fortified-certified/,General,Article,web,,Short description …
|
| 60 |
+
59,Frequently Asked Questions,https://fortifiedhome.org/frequently-asked-questions/,General,FAQ,web,,Short description …
|
chroma_store/11a56aaa-a850-4b98-a3f8-c059e49a501b/link_lists.bin
CHANGED
|
@@ -1,3 +0,0 @@
|
|
| 1 |
-
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
| 3 |
-
size 0
|
|
|
|
|
|
|
|
|
|
|
|
chroma_store/chroma.sqlite3
CHANGED
|
Binary files a/chroma_store/chroma.sqlite3 and b/chroma_store/chroma.sqlite3 differ
|
|
|