[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6FJXD8HGKER30FKVATTY4PX":3,"skill-same:01M6FJXD8HGKER30FKVATTY4PX":61},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":34,"commitSha":35,"skillDirectory":36,"forksCount":37,"repositoryHtmlUrl":38,"repositoryHomepageUrl":6,"ownerHtmlUrl":39,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":40,"install":41,"resources":54},"01M6FJXD8HGKER30FKVATTY4PX","few-shot-examples",null,"Curated few-shot examples for construction AI tasks: classification, extraction, analysis. Domain-specific examples for improved LLM performance.","kbarbel640-del\u002Fskills","kbarbel640-del","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F255315490?v=4","01M6CJPPQGCCESXMG3K7BBGQ5J","01M6CJPPX2PB2BCZERFVM2C2B3",1,"MIT","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdatadrivenconstruction\u002Ffew-shot-examples\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27],"examples","few shot examples","performance","tasks","extraction","analysis","classification","domain","domain-specific","few-shot","2026-11-10 10:12:30",false,"---\r\nslug: \"few-shot-examples\"\r\ndisplay_name: \"Few Shot Examples\"\r\ndescription: \"Curated few-shot examples for construction AI tasks: classification, extraction, analysis. Domain-specific examples for improved LLM performance.\"\r\n---\r\n\r\n# Few-Shot Examples for Construction AI\r\n\r\n## Overview\r\n\r\nCurated few-shot examples for construction industry AI tasks. These examples improve LLM performance by providing domain-specific context for classification, extraction, and analysis tasks.\r\n\r\n## Few-Shot Framework\r\n\r\n### Example Manager\r\n\r\n```python\r\nfrom dataclasses import dataclass, field\r\nfrom typing import List, Dict, Any, Optional\r\nimport json\r\nimport random\r\n\r\n@dataclass\r\nclass FewShotExample:\r\n    input: str\r\n    output: str\r\n    explanation: Optional[str] = None\r\n    tags: List[str] = field(default_factory=list)\r\n    difficulty: str = \"medium\"  # easy, medium, hard\r\n    source: str = \"\"\r\n\r\n@dataclass\r\nclass ExampleSet:\r\n    name: str\r\n    description: str\r\n    task_type: str\r\n    examples: List[FewShotExample]\r\n    version: str = \"1.0\"\r\n\r\n    def get_examples(self, n: int = 3, difficulty: str = None) -> List[FewShotExample]:\r\n        \"\"\"Get n examples, optionally filtered by difficulty.\"\"\"\r\n        filtered = self.examples\r\n        if difficulty:\r\n            filtered = [e for e in self.examples if e.difficulty == difficulty]\r\n        return filtered[:n]\r\n\r\n    def get_random_examples(self, n: int = 3) -> List[FewShotExample]:\r\n        \"\"\"Get n random examples for variety.\"\"\"\r\n        return random.sample(self.examples, min(n, len(self.examples)))\r\n\r\n    def format_for_prompt(self, n: int = 3) -> str:\r\n        \"\"\"Format examples for inclusion in prompt.\"\"\"\r\n        examples = self.get_examples(n)\r\n        formatted = []\r\n\r\n        for i, ex in enumerate(examples, 1):\r\n            formatted.append(f\"Example {i}:\")\r\n            formatted.append(f\"Input: {ex.input}\")\r\n            formatted.append(f\"Output: {ex.output}\")\r\n            if ex.explanation:\r\n                formatted.append(f\"Explanation: {ex.explanation}\")\r\n            formatted.append(\"\")\r\n\r\n        return \"\\n\".join(formatted)\r\n\r\n\r\nclass ConstructionExampleLibrary:\r\n    \"\"\"Library of construction-specific few-shot examples.\"\"\"\r\n\r\n    def __init__(self):\r\n        self.example_sets: Dict[str, ExampleSet] = {}\r\n        self._register_defaults()\r\n\r\n    def register(self, example_set: ExampleSet):\r\n        self.example_sets[example_set.name] = example_set\r\n\r\n    def get(self, name: str) -> Optional[ExampleSet]:\r\n        return self.example_sets.get(name)\r\n\r\n    def _register_defaults(self):\r\n        for example_set in DEFAULT_EXAMPLE_SETS:\r\n            self.register(example_set)\r\n```\r\n\r\n## CSI Classification Examples\r\n\r\n```python\r\nCSI_CLASSIFICATION_EXAMPLES = ExampleSet(\r\n    name=\"csi_classification\",\r\n    description=\"Examples for classifying line items to CSI MasterFormat\",\r\n    task_type=\"classification\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=\"4000 PSI structural concrete for foundations\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"03\",\r\n                \"csi_section\": \"03 30 00\",\r\n                \"csi_title\": \"Cast-in-Place Concrete\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Structural concrete is Division 03, Cast-in-Place section\",\r\n            tags=[\"concrete\", \"structural\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Grade 60 #5 reinforcing steel\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"03\",\r\n                \"csi_section\": \"03 20 00\",\r\n                \"csi_title\": \"Concrete Reinforcing\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Rebar is in Division 03 under reinforcing, not Division 05 Metals\",\r\n            tags=[\"rebar\", \"concrete\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"8\\\" CMU block wall with vertical rebar\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"04\",\r\n                \"csi_section\": \"04 22 00\",\r\n                \"csi_title\": \"Concrete Unit Masonry\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"CMU is concrete masonry, Division 04\",\r\n            tags=[\"masonry\", \"cmu\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"W12x26 structural steel beams\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"05\",\r\n                \"csi_section\": \"05 12 00\",\r\n                \"csi_title\": \"Structural Steel Framing\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Wide flange beams are structural steel, Division 05\",\r\n            tags=[\"steel\", \"structural\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"6\\\" spray foam insulation R-38\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"07\",\r\n                \"csi_section\": \"07 21 00\",\r\n                \"csi_title\": \"Thermal Insulation\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"All insulation types are in Division 07\",\r\n            tags=[\"insulation\", \"thermal\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Hollow metal door frame 3'x7'\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"08\",\r\n                \"csi_section\": \"08 11 00\",\r\n                \"csi_title\": \"Metal Doors and Frames\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Metal doors and frames are in Division 08 Openings\",\r\n            tags=[\"doors\", \"openings\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"5\u002F8\\\" Type X gypsum board on metal studs\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"09\",\r\n                \"csi_section\": \"09 29 00\",\r\n                \"csi_title\": \"Gypsum Board\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Gypsum board (drywall) is in Division 09 Finishes\",\r\n            tags=[\"drywall\", \"finishes\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"VCT flooring in corridors\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"09\",\r\n                \"csi_section\": \"09 65 00\",\r\n                \"csi_title\": \"Resilient Flooring\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"VCT (vinyl composition tile) is resilient flooring in Division 09\",\r\n            tags=[\"flooring\", \"finishes\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Fire sprinkler system - ordinary hazard\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"21\",\r\n                \"csi_section\": \"21 13 00\",\r\n                \"csi_title\": \"Fire-Suppression Sprinkler Systems\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Fire sprinklers are Division 21 Fire Suppression\",\r\n            tags=[\"fire protection\", \"mep\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Domestic water piping - copper type L\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"22\",\r\n                \"csi_section\": \"22 11 00\",\r\n                \"csi_title\": \"Facility Water Distribution\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Domestic water piping is Division 22 Plumbing\",\r\n            tags=[\"plumbing\", \"mep\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"VAV boxes with hot water reheat\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"23\",\r\n                \"csi_section\": \"23 36 00\",\r\n                \"csi_title\": \"Air Terminal Units\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"VAV boxes are air terminal units in Division 23 HVAC\",\r\n            tags=[\"hvac\", \"mep\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"277\u002F480V 3-phase electrical distribution panel\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"26\",\r\n                \"csi_section\": \"26 24 00\",\r\n                \"csi_title\": \"Switchboards and Panelboards\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Electrical panels are in Division 26\",\r\n            tags=[\"electrical\", \"mep\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Site excavation and grading - 5000 CY\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"31\",\r\n                \"csi_section\": \"31 20 00\",\r\n                \"csi_title\": \"Earth Moving\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Excavation and grading is Division 31 Earthwork\",\r\n            tags=[\"sitework\", \"earthwork\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Asphalt paving for parking lot - 3\\\" thick\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"32\",\r\n                \"csi_section\": \"32 12 00\",\r\n                \"csi_title\": \"Flexible Paving\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Asphalt paving is in Division 32 Exterior Improvements\",\r\n            tags=[\"paving\", \"sitework\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"8\\\" DIP water main with fittings\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"33\",\r\n                \"csi_section\": \"33 11 00\",\r\n                \"csi_title\": \"Water Utility Distribution Piping\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Site utilities are in Division 33\",\r\n            tags=[\"utilities\", \"sitework\"],\r\n            difficulty=\"medium\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## RFI Classification Examples\r\n\r\n```python\r\nRFI_CLASSIFICATION_EXAMPLES = ExampleSet(\r\n    name=\"rfi_classification\",\r\n    description=\"Examples for classifying RFI types and urgency\",\r\n    task_type=\"classification\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=\"Drawing A-301 shows a door at grid line 5, but the structural drawing S-102 shows a column at the same location. Please clarify.\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"conflict_clarification\",\r\n                \"disciplines\": [\"architectural\", \"structural\"],\r\n                \"urgency\": \"high\",\r\n                \"impact_areas\": [\"design\", \"schedule\"],\r\n                \"suggested_routing\": \"architect\"\r\n            }),\r\n            explanation=\"Drawing conflict between disciplines requires urgent resolution\",\r\n            tags=[\"conflict\", \"multi-discipline\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Specification section 09 91 00 calls for Benjamin Moore paint, but we would like to submit Sherwin-Williams as an equal. Is this acceptable?\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"substitution_request\",\r\n                \"disciplines\": [\"architectural\"],\r\n                \"urgency\": \"low\",\r\n                \"impact_areas\": [\"cost\"],\r\n                \"suggested_routing\": \"architect\"\r\n            }),\r\n            explanation=\"Substitution request is low urgency, cost-driven\",\r\n            tags=[\"substitution\", \"finishes\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"We encountered rock during excavation at elevation 95.5'. Drawings show bottom of footing at elevation 94.0'. How should we proceed?\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"field_condition\",\r\n                \"disciplines\": [\"structural\", \"geotechnical\"],\r\n                \"urgency\": \"critical\",\r\n                \"impact_areas\": [\"design\", \"cost\", \"schedule\"],\r\n                \"suggested_routing\": \"structural_engineer\"\r\n            }),\r\n            explanation=\"Unforeseen site condition affecting structural design is critical\",\r\n            tags=[\"field condition\", \"foundation\"],\r\n            difficulty=\"hard\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"What is the required fire rating for the corridor walls on Level 2? The drawing notes are unclear.\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"clarification\",\r\n                \"disciplines\": [\"architectural\"],\r\n                \"urgency\": \"medium\",\r\n                \"impact_areas\": [\"design\"],\r\n                \"suggested_routing\": \"architect\"\r\n            }),\r\n            explanation=\"Missing information request, medium urgency\",\r\n            tags=[\"fire rating\", \"clarification\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"The mechanical contractor has proposed routing ductwork through the structural transfer beam. Please confirm this is acceptable.\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"coordination\",\r\n                \"disciplines\": [\"mechanical\", \"structural\"],\r\n                \"urgency\": \"high\",\r\n                \"impact_areas\": [\"design\", \"schedule\"],\r\n                \"suggested_routing\": \"structural_engineer\"\r\n            }),\r\n            explanation=\"MEP penetration through structural element requires SE approval\",\r\n            tags=[\"coordination\", \"mep\", \"structural\"],\r\n            difficulty=\"medium\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## Cost Analysis Examples\r\n\r\n```python\r\nCOST_ANALYSIS_EXAMPLES = ExampleSet(\r\n    name=\"cost_analysis\",\r\n    description=\"Examples for cost analysis and validation\",\r\n    task_type=\"analysis\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"item\": \"Cast-in-place concrete\",\r\n                \"unit_cost\": 850,\r\n                \"unit\": \"CY\",\r\n                \"location\": \"New York City\",\r\n                \"year\": 2026\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"high\",\r\n                \"typical_range\": {\"low\": 400, \"high\": 700},\r\n                \"variance_percent\": 21.4,\r\n                \"likely_causes\": [\"high local labor rates\", \"difficult access\", \"small quantity\"],\r\n                \"recommendation\": \"Review labor productivity assumptions and access conditions\"\r\n            }),\r\n            explanation=\"NYC concrete costs are high, but $850\u002FCY exceeds typical range\",\r\n            tags=[\"concrete\", \"unit cost\", \"validation\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"item\": \"Structural steel erection\",\r\n                \"unit_cost\": 1200,\r\n                \"unit\": \"TON\",\r\n                \"location\": \"Houston, TX\",\r\n                \"year\": 2026\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"reasonable\",\r\n                \"typical_range\": {\"low\": 1000, \"high\": 1500},\r\n                \"variance_percent\": 0,\r\n                \"likely_causes\": [],\r\n                \"recommendation\": \"No action needed - within expected range\"\r\n            }),\r\n            explanation=\"Steel erection cost is within normal Houston range\",\r\n            tags=[\"steel\", \"unit cost\", \"validation\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"item\": \"Gypsum board partition\",\r\n                \"unit_cost\": 3.50,\r\n                \"unit\": \"SF\",\r\n                \"location\": \"Phoenix, AZ\",\r\n                \"year\": 2026\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"low\",\r\n                \"typical_range\": {\"low\": 6, \"high\": 12},\r\n                \"variance_percent\": -41.7,\r\n                \"likely_causes\": [\"missing framing\", \"missing tape\u002Ffinish\", \"labor underestimated\"],\r\n                \"recommendation\": \"Verify scope includes metal studs, insulation, and Level 4 finish\"\r\n            }),\r\n            explanation=\"Very low drywall cost likely missing scope items\",\r\n            tags=[\"drywall\", \"unit cost\", \"validation\"],\r\n            difficulty=\"medium\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## Schedule Analysis Examples\r\n\r\n```python\r\nSCHEDULE_ANALYSIS_EXAMPLES = ExampleSet(\r\n    name=\"schedule_analysis\",\r\n    description=\"Examples for schedule analysis and review\",\r\n    task_type=\"analysis\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"activity\": \"Foundation concrete pour\",\r\n                \"duration\": 45,\r\n                \"duration_unit\": \"days\",\r\n                \"quantity\": 2500,\r\n                \"quantity_unit\": \"CY\"\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"duration_appears_long\",\r\n                \"typical_production\": \"100-150 CY\u002Fday\",\r\n                \"expected_duration_range\": {\"low\": 17, \"high\": 25},\r\n                \"possible_reasons\": [\"phased pours\", \"complex formwork\", \"cure time included\"],\r\n                \"recommendation\": \"Review activity scope - may include formwork and curing\"\r\n            }),\r\n            explanation=\"45 days for 2500 CY seems long unless multiple activities combined\",\r\n            tags=[\"concrete\", \"duration\", \"validation\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"activity\": \"Steel erection\",\r\n                \"duration\": 60,\r\n                \"duration_unit\": \"days\",\r\n                \"quantity\": 500,\r\n                \"quantity_unit\": \"tons\",\r\n                \"resources\": [\"1 erection crew\"]\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"reasonable\",\r\n                \"typical_production\": \"8-12 tons\u002Fday\u002Fcrew\",\r\n                \"expected_duration_range\": {\"low\": 42, \"high\": 63},\r\n                \"possible_reasons\": [],\r\n                \"recommendation\": \"Duration is within expected range for single crew\"\r\n            }),\r\n            explanation=\"500 tons with 1 crew at 8-10 tons\u002Fday = 50-63 days\",\r\n            tags=[\"steel\", \"duration\", \"validation\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"predecessor\": \"Foundation complete\",\r\n                \"successor\": \"Steel erection\",\r\n                \"lag\": -5,\r\n                \"lag_unit\": \"days\"\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"aggressive\",\r\n                \"concern\": \"Steel erection starting 5 days before foundation complete\",\r\n                \"typical_practice\": \"FS+0 to FS+5 lag for concrete cure\",\r\n                \"risk_level\": \"high\",\r\n                \"recommendation\": \"Verify foundation is cured sufficiently before steel loads applied\"\r\n            }),\r\n            explanation=\"Negative lag on foundation to steel is risky\",\r\n            tags=[\"logic\", \"dependency\", \"validation\"],\r\n            difficulty=\"hard\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## BIM Data Examples\r\n\r\n```python\r\nBIM_EXTRACTION_EXAMPLES = ExampleSet(\r\n    name=\"bim_extraction\",\r\n    description=\"Examples for BIM data extraction and interpretation\",\r\n    task_type=\"extraction\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"element_type\": \"IfcWall\",\r\n                \"properties\": {\r\n                    \"Name\": \"Interior Partition\",\r\n                    \"IsExternal\": False,\r\n                    \"FireRating\": \"1 Hour\",\r\n                    \"Pset_WallCommon.Width\": 0.165,\r\n                    \"BaseQuantities.GrossArea\": 45.5,\r\n                    \"BaseQuantities.NetArea\": 42.3\r\n                }\r\n            }),\r\n            output=json.dumps({\r\n                \"classification\": \"Interior wall\",\r\n                \"fire_rated\": True,\r\n                \"fire_rating\": \"1 Hour\",\r\n                \"thickness_mm\": 165,\r\n                \"thickness_in\": 6.5,\r\n                \"gross_area_m2\": 45.5,\r\n                \"gross_area_sf\": 490,\r\n                \"net_area_sf\": 455,\r\n                \"opening_deduction_pct\": 7.0\r\n            }),\r\n            explanation=\"Extract and convert BIM properties to construction quantities\",\r\n            tags=[\"wall\", \"quantities\", \"ifc\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"element_type\": \"IfcDoor\",\r\n                \"properties\": {\r\n                    \"Name\": \"D-01\",\r\n                    \"OverallWidth\": 0.914,\r\n                    \"OverallHeight\": 2.134,\r\n                    \"FireRating\": None,\r\n                    \"Pset_DoorCommon.IsExternal\": False,\r\n                    \"Pset_DoorCommon.HandicapAccessible\": True\r\n                }\r\n            }),\r\n            output=json.dumps({\r\n                \"door_type\": \"D-01\",\r\n                \"size\": \"3'-0\\\" x 7'-0\\\"\",\r\n                \"size_standard\": \"36x84\",\r\n                \"fire_rated\": False,\r\n                \"ada_compliant\": True,\r\n                \"classification\": \"Interior door, ADA\"\r\n            }),\r\n            explanation=\"Interpret door properties for specification compliance\",\r\n            tags=[\"door\", \"ada\", \"ifc\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"element_type\": \"IfcSpace\",\r\n                \"properties\": {\r\n                    \"Name\": \"Conference Room 101\",\r\n                    \"LongName\": \"Large Conference Room\",\r\n                    \"Pset_SpaceCommon.NetFloorArea\": 55.7,\r\n                    \"Pset_SpaceOccupancyRequirements.OccupancyNumber\": 20,\r\n                    \"Pset_SpaceFireSafetyRequirements.FireRiskFactor\": \"Low\"\r\n                }\r\n            }),\r\n            output=json.dumps({\r\n                \"space_name\": \"Conference Room 101\",\r\n                \"net_area_sf\": 600,\r\n                \"occupancy\": 20,\r\n                \"area_per_person_sf\": 30,\r\n                \"occupancy_assessment\": \"typical for conference\",\r\n                \"code_check\": \"IBC allows 15 SF\u002Fperson for assembly, 600 SF \u002F 15 = 40 max\"\r\n            }),\r\n            explanation=\"Validate space programming against code requirements\",\r\n            tags=[\"space\", \"occupancy\", \"code\"],\r\n            difficulty=\"hard\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## Using Examples in Prompts\r\n\r\n```python\r\n# Initialize library\r\nlibrary = ConstructionExampleLibrary()\r\n\r\n# Get example set\r\ncsi_examples = library.get(\"csi_classification\")\r\n\r\n# Format for prompt\r\nexamples_text = csi_examples.format_for_prompt(n=3)\r\n\r\n# Build complete prompt\r\nprompt = f\"\"\"Classify the following line items to CSI MasterFormat.\r\n\r\n{examples_text}\r\n\r\nNow classify these items:\r\n1. Aluminum storefront framing\r\n2. Acoustic ceiling tiles\r\n3. Elevator cab finishes\r\n\"\"\"\r\n\r\n# Or get specific examples\r\neasy_examples = csi_examples.get_examples(n=2, difficulty=\"easy\")\r\nrandom_examples = csi_examples.get_random_examples(n=3)\r\n```\r\n\r\n## Adding Custom Examples\r\n\r\n```python\r\n# Create custom example set for your project\r\nmy_examples = ExampleSet(\r\n    name=\"my_project_classification\",\r\n    description=\"Project-specific classification examples\",\r\n    task_type=\"classification\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=\"Your specific input\",\r\n            output=\"Expected output\",\r\n            explanation=\"Why this classification\",\r\n            tags=[\"custom\"],\r\n            difficulty=\"medium\"\r\n        )\r\n    ]\r\n)\r\n\r\n# Register to library\r\nlibrary.register(my_examples)\r\n```\r\n\r\n## Best Practices\r\n\r\n1. **Diverse Examples**: Include examples across difficulty levels\r\n2. **Edge Cases**: Add examples for ambiguous situations\r\n3. **Explanations**: Include reasoning for complex examples\r\n4. **Regular Updates**: Add new examples as edge cases are discovered\r\n5. **Balance**: Mix easy and hard examples to calibrate model\r\n\r\n## Resources\r\n\r\n- **Few-Shot Learning**: https:\u002F\u002Fwww.promptingguide.ai\u002Ftechniques\u002Ffewshot\r\n- **CSI MasterFormat**: Complete division listings\r\n- **Construction Terminology**: Industry glossaries and standards\r\n","# Few-Shot Examples for Construction AI\r\n\r\n## Overview\r\n\r\nCurated few-shot examples for construction industry AI tasks. These examples improve LLM performance by providing domain-specific context for classification, extraction, and analysis tasks.\r\n\r\n## Few-Shot Framework\r\n\r\n### Example Manager\r\n\r\n```python\r\nfrom dataclasses import dataclass, field\r\nfrom typing import List, Dict, Any, Optional\r\nimport json\r\nimport random\r\n\r\n@dataclass\r\nclass FewShotExample:\r\n    input: str\r\n    output: str\r\n    explanation: Optional[str] = None\r\n    tags: List[str] = field(default_factory=list)\r\n    difficulty: str = \"medium\"  # easy, medium, hard\r\n    source: str = \"\"\r\n\r\n@dataclass\r\nclass ExampleSet:\r\n    name: str\r\n    description: str\r\n    task_type: str\r\n    examples: List[FewShotExample]\r\n    version: str = \"1.0\"\r\n\r\n    def get_examples(self, n: int = 3, difficulty: str = None) -> List[FewShotExample]:\r\n        \"\"\"Get n examples, optionally filtered by difficulty.\"\"\"\r\n        filtered = self.examples\r\n        if difficulty:\r\n            filtered = [e for e in self.examples if e.difficulty == difficulty]\r\n        return filtered[:n]\r\n\r\n    def get_random_examples(self, n: int = 3) -> List[FewShotExample]:\r\n        \"\"\"Get n random examples for variety.\"\"\"\r\n        return random.sample(self.examples, min(n, len(self.examples)))\r\n\r\n    def format_for_prompt(self, n: int = 3) -> str:\r\n        \"\"\"Format examples for inclusion in prompt.\"\"\"\r\n        examples = self.get_examples(n)\r\n        formatted = []\r\n\r\n        for i, ex in enumerate(examples, 1):\r\n            formatted.append(f\"Example {i}:\")\r\n            formatted.append(f\"Input: {ex.input}\")\r\n            formatted.append(f\"Output: {ex.output}\")\r\n            if ex.explanation:\r\n                formatted.append(f\"Explanation: {ex.explanation}\")\r\n            formatted.append(\"\")\r\n\r\n        return \"\\n\".join(formatted)\r\n\r\n\r\nclass ConstructionExampleLibrary:\r\n    \"\"\"Library of construction-specific few-shot examples.\"\"\"\r\n\r\n    def __init__(self):\r\n        self.example_sets: Dict[str, ExampleSet] = {}\r\n        self._register_defaults()\r\n\r\n    def register(self, example_set: ExampleSet):\r\n        self.example_sets[example_set.name] = example_set\r\n\r\n    def get(self, name: str) -> Optional[ExampleSet]:\r\n        return self.example_sets.get(name)\r\n\r\n    def _register_defaults(self):\r\n        for example_set in DEFAULT_EXAMPLE_SETS:\r\n            self.register(example_set)\r\n```\r\n\r\n## CSI Classification Examples\r\n\r\n```python\r\nCSI_CLASSIFICATION_EXAMPLES = ExampleSet(\r\n    name=\"csi_classification\",\r\n    description=\"Examples for classifying line items to CSI MasterFormat\",\r\n    task_type=\"classification\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=\"4000 PSI structural concrete for foundations\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"03\",\r\n                \"csi_section\": \"03 30 00\",\r\n                \"csi_title\": \"Cast-in-Place Concrete\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Structural concrete is Division 03, Cast-in-Place section\",\r\n            tags=[\"concrete\", \"structural\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Grade 60 #5 reinforcing steel\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"03\",\r\n                \"csi_section\": \"03 20 00\",\r\n                \"csi_title\": \"Concrete Reinforcing\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Rebar is in Division 03 under reinforcing, not Division 05 Metals\",\r\n            tags=[\"rebar\", \"concrete\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"8\\\" CMU block wall with vertical rebar\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"04\",\r\n                \"csi_section\": \"04 22 00\",\r\n                \"csi_title\": \"Concrete Unit Masonry\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"CMU is concrete masonry, Division 04\",\r\n            tags=[\"masonry\", \"cmu\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"W12x26 structural steel beams\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"05\",\r\n                \"csi_section\": \"05 12 00\",\r\n                \"csi_title\": \"Structural Steel Framing\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Wide flange beams are structural steel, Division 05\",\r\n            tags=[\"steel\", \"structural\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"6\\\" spray foam insulation R-38\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"07\",\r\n                \"csi_section\": \"07 21 00\",\r\n                \"csi_title\": \"Thermal Insulation\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"All insulation types are in Division 07\",\r\n            tags=[\"insulation\", \"thermal\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Hollow metal door frame 3'x7'\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"08\",\r\n                \"csi_section\": \"08 11 00\",\r\n                \"csi_title\": \"Metal Doors and Frames\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Metal doors and frames are in Division 08 Openings\",\r\n            tags=[\"doors\", \"openings\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"5\u002F8\\\" Type X gypsum board on metal studs\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"09\",\r\n                \"csi_section\": \"09 29 00\",\r\n                \"csi_title\": \"Gypsum Board\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Gypsum board (drywall) is in Division 09 Finishes\",\r\n            tags=[\"drywall\", \"finishes\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"VCT flooring in corridors\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"09\",\r\n                \"csi_section\": \"09 65 00\",\r\n                \"csi_title\": \"Resilient Flooring\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"VCT (vinyl composition tile) is resilient flooring in Division 09\",\r\n            tags=[\"flooring\", \"finishes\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Fire sprinkler system - ordinary hazard\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"21\",\r\n                \"csi_section\": \"21 13 00\",\r\n                \"csi_title\": \"Fire-Suppression Sprinkler Systems\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Fire sprinklers are Division 21 Fire Suppression\",\r\n            tags=[\"fire protection\", \"mep\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Domestic water piping - copper type L\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"22\",\r\n                \"csi_section\": \"22 11 00\",\r\n                \"csi_title\": \"Facility Water Distribution\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Domestic water piping is Division 22 Plumbing\",\r\n            tags=[\"plumbing\", \"mep\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"VAV boxes with hot water reheat\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"23\",\r\n                \"csi_section\": \"23 36 00\",\r\n                \"csi_title\": \"Air Terminal Units\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"VAV boxes are air terminal units in Division 23 HVAC\",\r\n            tags=[\"hvac\", \"mep\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"277\u002F480V 3-phase electrical distribution panel\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"26\",\r\n                \"csi_section\": \"26 24 00\",\r\n                \"csi_title\": \"Switchboards and Panelboards\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Electrical panels are in Division 26\",\r\n            tags=[\"electrical\", \"mep\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Site excavation and grading - 5000 CY\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"31\",\r\n                \"csi_section\": \"31 20 00\",\r\n                \"csi_title\": \"Earth Moving\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Excavation and grading is Division 31 Earthwork\",\r\n            tags=[\"sitework\", \"earthwork\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Asphalt paving for parking lot - 3\\\" thick\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"32\",\r\n                \"csi_section\": \"32 12 00\",\r\n                \"csi_title\": \"Flexible Paving\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Asphalt paving is in Division 32 Exterior Improvements\",\r\n            tags=[\"paving\", \"sitework\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"8\\\" DIP water main with fittings\",\r\n            output=json.dumps({\r\n                \"csi_division\": \"33\",\r\n                \"csi_section\": \"33 11 00\",\r\n                \"csi_title\": \"Water Utility Distribution Piping\",\r\n                \"confidence\": \"high\"\r\n            }),\r\n            explanation=\"Site utilities are in Division 33\",\r\n            tags=[\"utilities\", \"sitework\"],\r\n            difficulty=\"medium\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## RFI Classification Examples\r\n\r\n```python\r\nRFI_CLASSIFICATION_EXAMPLES = ExampleSet(\r\n    name=\"rfi_classification\",\r\n    description=\"Examples for classifying RFI types and urgency\",\r\n    task_type=\"classification\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=\"Drawing A-301 shows a door at grid line 5, but the structural drawing S-102 shows a column at the same location. Please clarify.\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"conflict_clarification\",\r\n                \"disciplines\": [\"architectural\", \"structural\"],\r\n                \"urgency\": \"high\",\r\n                \"impact_areas\": [\"design\", \"schedule\"],\r\n                \"suggested_routing\": \"architect\"\r\n            }),\r\n            explanation=\"Drawing conflict between disciplines requires urgent resolution\",\r\n            tags=[\"conflict\", \"multi-discipline\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"Specification section 09 91 00 calls for Benjamin Moore paint, but we would like to submit Sherwin-Williams as an equal. Is this acceptable?\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"substitution_request\",\r\n                \"disciplines\": [\"architectural\"],\r\n                \"urgency\": \"low\",\r\n                \"impact_areas\": [\"cost\"],\r\n                \"suggested_routing\": \"architect\"\r\n            }),\r\n            explanation=\"Substitution request is low urgency, cost-driven\",\r\n            tags=[\"substitution\", \"finishes\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"We encountered rock during excavation at elevation 95.5'. Drawings show bottom of footing at elevation 94.0'. How should we proceed?\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"field_condition\",\r\n                \"disciplines\": [\"structural\", \"geotechnical\"],\r\n                \"urgency\": \"critical\",\r\n                \"impact_areas\": [\"design\", \"cost\", \"schedule\"],\r\n                \"suggested_routing\": \"structural_engineer\"\r\n            }),\r\n            explanation=\"Unforeseen site condition affecting structural design is critical\",\r\n            tags=[\"field condition\", \"foundation\"],\r\n            difficulty=\"hard\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"What is the required fire rating for the corridor walls on Level 2? The drawing notes are unclear.\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"clarification\",\r\n                \"disciplines\": [\"architectural\"],\r\n                \"urgency\": \"medium\",\r\n                \"impact_areas\": [\"design\"],\r\n                \"suggested_routing\": \"architect\"\r\n            }),\r\n            explanation=\"Missing information request, medium urgency\",\r\n            tags=[\"fire rating\", \"clarification\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=\"The mechanical contractor has proposed routing ductwork through the structural transfer beam. Please confirm this is acceptable.\",\r\n            output=json.dumps({\r\n                \"rfi_type\": \"coordination\",\r\n                \"disciplines\": [\"mechanical\", \"structural\"],\r\n                \"urgency\": \"high\",\r\n                \"impact_areas\": [\"design\", \"schedule\"],\r\n                \"suggested_routing\": \"structural_engineer\"\r\n            }),\r\n            explanation=\"MEP penetration through structural element requires SE approval\",\r\n            tags=[\"coordination\", \"mep\", \"structural\"],\r\n            difficulty=\"medium\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## Cost Analysis Examples\r\n\r\n```python\r\nCOST_ANALYSIS_EXAMPLES = ExampleSet(\r\n    name=\"cost_analysis\",\r\n    description=\"Examples for cost analysis and validation\",\r\n    task_type=\"analysis\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"item\": \"Cast-in-place concrete\",\r\n                \"unit_cost\": 850,\r\n                \"unit\": \"CY\",\r\n                \"location\": \"New York City\",\r\n                \"year\": 2026\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"high\",\r\n                \"typical_range\": {\"low\": 400, \"high\": 700},\r\n                \"variance_percent\": 21.4,\r\n                \"likely_causes\": [\"high local labor rates\", \"difficult access\", \"small quantity\"],\r\n                \"recommendation\": \"Review labor productivity assumptions and access conditions\"\r\n            }),\r\n            explanation=\"NYC concrete costs are high, but $850\u002FCY exceeds typical range\",\r\n            tags=[\"concrete\", \"unit cost\", \"validation\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"item\": \"Structural steel erection\",\r\n                \"unit_cost\": 1200,\r\n                \"unit\": \"TON\",\r\n                \"location\": \"Houston, TX\",\r\n                \"year\": 2026\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"reasonable\",\r\n                \"typical_range\": {\"low\": 1000, \"high\": 1500},\r\n                \"variance_percent\": 0,\r\n                \"likely_causes\": [],\r\n                \"recommendation\": \"No action needed - within expected range\"\r\n            }),\r\n            explanation=\"Steel erection cost is within normal Houston range\",\r\n            tags=[\"steel\", \"unit cost\", \"validation\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"item\": \"Gypsum board partition\",\r\n                \"unit_cost\": 3.50,\r\n                \"unit\": \"SF\",\r\n                \"location\": \"Phoenix, AZ\",\r\n                \"year\": 2026\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"low\",\r\n                \"typical_range\": {\"low\": 6, \"high\": 12},\r\n                \"variance_percent\": -41.7,\r\n                \"likely_causes\": [\"missing framing\", \"missing tape\u002Ffinish\", \"labor underestimated\"],\r\n                \"recommendation\": \"Verify scope includes metal studs, insulation, and Level 4 finish\"\r\n            }),\r\n            explanation=\"Very low drywall cost likely missing scope items\",\r\n            tags=[\"drywall\", \"unit cost\", \"validation\"],\r\n            difficulty=\"medium\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## Schedule Analysis Examples\r\n\r\n```python\r\nSCHEDULE_ANALYSIS_EXAMPLES = ExampleSet(\r\n    name=\"schedule_analysis\",\r\n    description=\"Examples for schedule analysis and review\",\r\n    task_type=\"analysis\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"activity\": \"Foundation concrete pour\",\r\n                \"duration\": 45,\r\n                \"duration_unit\": \"days\",\r\n                \"quantity\": 2500,\r\n                \"quantity_unit\": \"CY\"\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"duration_appears_long\",\r\n                \"typical_production\": \"100-150 CY\u002Fday\",\r\n                \"expected_duration_range\": {\"low\": 17, \"high\": 25},\r\n                \"possible_reasons\": [\"phased pours\", \"complex formwork\", \"cure time included\"],\r\n                \"recommendation\": \"Review activity scope - may include formwork and curing\"\r\n            }),\r\n            explanation=\"45 days for 2500 CY seems long unless multiple activities combined\",\r\n            tags=[\"concrete\", \"duration\", \"validation\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"activity\": \"Steel erection\",\r\n                \"duration\": 60,\r\n                \"duration_unit\": \"days\",\r\n                \"quantity\": 500,\r\n                \"quantity_unit\": \"tons\",\r\n                \"resources\": [\"1 erection crew\"]\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"reasonable\",\r\n                \"typical_production\": \"8-12 tons\u002Fday\u002Fcrew\",\r\n                \"expected_duration_range\": {\"low\": 42, \"high\": 63},\r\n                \"possible_reasons\": [],\r\n                \"recommendation\": \"Duration is within expected range for single crew\"\r\n            }),\r\n            explanation=\"500 tons with 1 crew at 8-10 tons\u002Fday = 50-63 days\",\r\n            tags=[\"steel\", \"duration\", \"validation\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"predecessor\": \"Foundation complete\",\r\n                \"successor\": \"Steel erection\",\r\n                \"lag\": -5,\r\n                \"lag_unit\": \"days\"\r\n            }),\r\n            output=json.dumps({\r\n                \"assessment\": \"aggressive\",\r\n                \"concern\": \"Steel erection starting 5 days before foundation complete\",\r\n                \"typical_practice\": \"FS+0 to FS+5 lag for concrete cure\",\r\n                \"risk_level\": \"high\",\r\n                \"recommendation\": \"Verify foundation is cured sufficiently before steel loads applied\"\r\n            }),\r\n            explanation=\"Negative lag on foundation to steel is risky\",\r\n            tags=[\"logic\", \"dependency\", \"validation\"],\r\n            difficulty=\"hard\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## BIM Data Examples\r\n\r\n```python\r\nBIM_EXTRACTION_EXAMPLES = ExampleSet(\r\n    name=\"bim_extraction\",\r\n    description=\"Examples for BIM data extraction and interpretation\",\r\n    task_type=\"extraction\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"element_type\": \"IfcWall\",\r\n                \"properties\": {\r\n                    \"Name\": \"Interior Partition\",\r\n                    \"IsExternal\": False,\r\n                    \"FireRating\": \"1 Hour\",\r\n                    \"Pset_WallCommon.Width\": 0.165,\r\n                    \"BaseQuantities.GrossArea\": 45.5,\r\n                    \"BaseQuantities.NetArea\": 42.3\r\n                }\r\n            }),\r\n            output=json.dumps({\r\n                \"classification\": \"Interior wall\",\r\n                \"fire_rated\": True,\r\n                \"fire_rating\": \"1 Hour\",\r\n                \"thickness_mm\": 165,\r\n                \"thickness_in\": 6.5,\r\n                \"gross_area_m2\": 45.5,\r\n                \"gross_area_sf\": 490,\r\n                \"net_area_sf\": 455,\r\n                \"opening_deduction_pct\": 7.0\r\n            }),\r\n            explanation=\"Extract and convert BIM properties to construction quantities\",\r\n            tags=[\"wall\", \"quantities\", \"ifc\"],\r\n            difficulty=\"medium\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"element_type\": \"IfcDoor\",\r\n                \"properties\": {\r\n                    \"Name\": \"D-01\",\r\n                    \"OverallWidth\": 0.914,\r\n                    \"OverallHeight\": 2.134,\r\n                    \"FireRating\": None,\r\n                    \"Pset_DoorCommon.IsExternal\": False,\r\n                    \"Pset_DoorCommon.HandicapAccessible\": True\r\n                }\r\n            }),\r\n            output=json.dumps({\r\n                \"door_type\": \"D-01\",\r\n                \"size\": \"3'-0\\\" x 7'-0\\\"\",\r\n                \"size_standard\": \"36x84\",\r\n                \"fire_rated\": False,\r\n                \"ada_compliant\": True,\r\n                \"classification\": \"Interior door, ADA\"\r\n            }),\r\n            explanation=\"Interpret door properties for specification compliance\",\r\n            tags=[\"door\", \"ada\", \"ifc\"],\r\n            difficulty=\"easy\"\r\n        ),\r\n        FewShotExample(\r\n            input=json.dumps({\r\n                \"element_type\": \"IfcSpace\",\r\n                \"properties\": {\r\n                    \"Name\": \"Conference Room 101\",\r\n                    \"LongName\": \"Large Conference Room\",\r\n                    \"Pset_SpaceCommon.NetFloorArea\": 55.7,\r\n                    \"Pset_SpaceOccupancyRequirements.OccupancyNumber\": 20,\r\n                    \"Pset_SpaceFireSafetyRequirements.FireRiskFactor\": \"Low\"\r\n                }\r\n            }),\r\n            output=json.dumps({\r\n                \"space_name\": \"Conference Room 101\",\r\n                \"net_area_sf\": 600,\r\n                \"occupancy\": 20,\r\n                \"area_per_person_sf\": 30,\r\n                \"occupancy_assessment\": \"typical for conference\",\r\n                \"code_check\": \"IBC allows 15 SF\u002Fperson for assembly, 600 SF \u002F 15 = 40 max\"\r\n            }),\r\n            explanation=\"Validate space programming against code requirements\",\r\n            tags=[\"space\", \"occupancy\", \"code\"],\r\n            difficulty=\"hard\"\r\n        )\r\n    ]\r\n)\r\n```\r\n\r\n## Using Examples in Prompts\r\n\r\n```python\r\n# Initialize library\r\nlibrary = ConstructionExampleLibrary()\r\n\r\n# Get example set\r\ncsi_examples = library.get(\"csi_classification\")\r\n\r\n# Format for prompt\r\nexamples_text = csi_examples.format_for_prompt(n=3)\r\n\r\n# Build complete prompt\r\nprompt = f\"\"\"Classify the following line items to CSI MasterFormat.\r\n\r\n{examples_text}\r\n\r\nNow classify these items:\r\n1. Aluminum storefront framing\r\n2. Acoustic ceiling tiles\r\n3. Elevator cab finishes\r\n\"\"\"\r\n\r\n# Or get specific examples\r\neasy_examples = csi_examples.get_examples(n=2, difficulty=\"easy\")\r\nrandom_examples = csi_examples.get_random_examples(n=3)\r\n```\r\n\r\n## Adding Custom Examples\r\n\r\n```python\r\n# Create custom example set for your project\r\nmy_examples = ExampleSet(\r\n    name=\"my_project_classification\",\r\n    description=\"Project-specific classification examples\",\r\n    task_type=\"classification\",\r\n    examples=[\r\n        FewShotExample(\r\n            input=\"Your specific input\",\r\n            output=\"Expected output\",\r\n            explanation=\"Why this classification\",\r\n            tags=[\"custom\"],\r\n            difficulty=\"medium\"\r\n        )\r\n    ]\r\n)\r\n\r\n# Register to library\r\nlibrary.register(my_examples)\r\n```\r\n\r\n## Best Practices\r\n\r\n1. **Diverse Examples**: Include examples across difficulty levels\r\n2. **Edge Cases**: Add examples for ambiguous situations\r\n3. **Explanations**: Include reasoning for complex examples\r\n4. **Regular Updates**: Add new examples as edge cases are discovered\r\n5. **Balance**: Mix easy and hard examples to calibrate model\r\n\r\n## Resources\r\n\r\n- **Few-Shot Learning**: https:\u002F\u002Fwww.promptingguide.ai\u002Ftechniques\u002Ffewshot\r\n- **CSI MasterFormat**: Complete division listings\r\n- **Construction Terminology**: Industry glossaries and standards\r\n",{"slug":5,"description":7,"display_name":33},"Few Shot Examples","main","e7e336ac628c3e3bd771aff1aaa469c93778f94a","skills\u002Fdatadrivenconstruction\u002Ffew-shot-examples",0,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del","2026-08-23 22:39:37",{"source":8,"skillName":5,"commands":42,"prompt":52,"zipAvailable":53},[43,46,49],{"tool":44,"command":45},"npx","npx skills add kbarbel640-del\u002Fskills --skill few-shot-examples",{"tool":47,"command":48},"bunx","bunx skills add kbarbel640-del\u002Fskills --skill few-shot-examples",{"tool":50,"command":51},"pnpm","pnpm dlx skills add kbarbel640-del\u002Fskills --skill few-shot-examples","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdatadrivenconstruction\u002Ffew-shot-examples\u002FSKILL.md",true,[55],{"path":56,"resourceType":57,"resourceTypeDesc":58,"sizeBytes":59,"sourceHtmlUrl":60},"_meta.json","REFERENCE","参考文档",302,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fdatadrivenconstruction\u002Ffew-shot-examples\u002F_meta.json",[62,92,121,142,148,168],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":73,"publishedAt":28},"01M6G8J55967D6281ACMKAKTEQ","crowd-prompting","A marketplace where AI agents improve prompts, system instructions, tool descriptions, and other text-based content with domain expertise from real-world operations — and earn tokens for valuable contributions.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzzadrian\u002Fcrowd-prompting\u002FSKILL.md",[68],{"categoryNo":69,"categoryName":70,"taxonomyType":71,"taxonomyTypeDesc":72},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[74,75,76,77,78,25,79,80,81,82,83,84,85,86,87,88,89,90,91],"crowd prompting","prompting","api","with","tokens","world","prompts","operations","instructions","text","tool","system","improve","productivity","marketplace","https","content","ai agents",{"skillNo":93,"name":94,"nameZh":6,"description":95,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":96,"categories":97,"keywords":103,"publishedAt":28},"01M6G8J0PKPAYVET6BWE8W4C26","dilemm-ai","Compete in DilemmAI, the prisoner's dilemma AI arena at dilemm.ai. Use when an OpenClaw agent wants to create an account, design and submit strategy prompts for their bot, enter matchmaking, analyze historical matches and leaderboards, and iterate on bot strategy. Requires headless browser automation (no API available yet).","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzyori\u002Fdilemm-ai\u002FSKILL.md",[98],{"categoryNo":99,"categoryName":100,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[104,76,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,80,120],"dilemm ai","arena","analyze","browser","openclaw agent","create","automation","browser automation","bot","openclaw","design","strategy","headless","compete","submit","matchmaking","use",{"skillNo":122,"name":123,"nameZh":6,"description":124,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":125,"categories":126,"keywords":130,"publishedAt":28},"01M6G8HWAF3K9SW7NP3Z83CPJ6","arxiv-paper-reviews","Interact with arXiv Crawler API to fetch papers, read reviews, and submit comments. Use when working with arXiv papers, fetching paper lists by date\u002Fcategory\u002Finterest, viewing paper details with comments, or submitting paper reviews via API at http:\u002F\u002F150.158.152.82:8000.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Fweak-accept\u002FSKILL.md",[127],{"categoryNo":128,"categoryName":129,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000021","资料检索与研究",[131,132,133,134,135,136,137,77,138,118,120,139,76,140,141],"arxiv paper reviews","reviews","arxiv","paper","crawler","papers","comments","fetch","read","http","via",{"skillNo":143,"name":123,"nameZh":6,"description":124,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":144,"categories":145,"keywords":147,"publishedAt":28},"01M6G8HQJ7N7WMY6YV7D7SSJ16","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Farxiv-paper-reviews\u002FSKILL.md",[146],{"categoryNo":128,"categoryName":129,"taxonomyType":101,"taxonomyTypeDesc":102},[134,133,132,131,141,136,137,77,135,118,120,138,139,76,140],{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":28},"01M6G8HM95Y64JNVFC2HN4E2BG","git-summary","Get a quick summary of the current Git repository including status, recent commits, branches, and contributors.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzweack\u002Fgit-summary\u002FSKILL.md",[],[155,156,157,158,159,160,161,162,163,164,165,166,167],"git","summary","git summary","commits","repository","win32","status","linux","contributors","true","quick","get","branches",{"skillNo":169,"name":170,"nameZh":6,"description":171,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":172,"categories":173,"keywords":178,"publishedAt":28},"01M6G8HGEGF05CNEJCGVYFSC4R","agent-constitution","Interact with AgentConstitution governance contracts on Base Sepolia. Check compliance, read rules, log actions, query governance state.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fztsalexey\u002Fagent-constitution\u002FSKILL.md",[174,175],{"categoryNo":99,"categoryName":100,"taxonomyType":101,"taxonomyTypeDesc":102},{"categoryNo":176,"categoryName":177,"taxonomyType":71,"taxonomyTypeDesc":72},"01JBSEEDCAT000000000000037","律师与法务",[179,180,181,182,77,183,184,34,185,139,186,187,188,189,190,89,191,192,193],"agent constitution","constitution","contracts","tree","query","base","log","check","Rules","projects","compliance","actions","state","governance","github"]