Claude
Skills
Sign in
Back

few-shot-examples

Included with Lifetime
$97 forever

Curated few-shot examples for construction AI tasks: classification, extraction, analysis. Domain-specific examples for improved LLM performance.

AI Agents

What this skill does

# Few-Shot Examples for Construction AI

## Overview

Curated few-shot examples for construction industry AI tasks. These examples improve LLM performance by providing domain-specific context for classification, extraction, and analysis tasks.

## Few-Shot Framework

### Example Manager

```python
from dataclasses import dataclass, field
from typing import List, Dict, Any, Optional
import json
import random

@dataclass
class FewShotExample:
    input: str
    output: str
    explanation: Optional[str] = None
    tags: List[str] = field(default_factory=list)
    difficulty: str = "medium"  # easy, medium, hard
    source: str = ""

@dataclass
class ExampleSet:
    name: str
    description: str
    task_type: str
    examples: List[FewShotExample]
    version: str = "1.0"

    def get_examples(self, n: int = 3, difficulty: str = None) -> List[FewShotExample]:
        """Get n examples, optionally filtered by difficulty."""
        filtered = self.examples
        if difficulty:
            filtered = [e for e in self.examples if e.difficulty == difficulty]
        return filtered[:n]

    def get_random_examples(self, n: int = 3) -> List[FewShotExample]:
        """Get n random examples for variety."""
        return random.sample(self.examples, min(n, len(self.examples)))

    def format_for_prompt(self, n: int = 3) -> str:
        """Format examples for inclusion in prompt."""
        examples = self.get_examples(n)
        formatted = []

        for i, ex in enumerate(examples, 1):
            formatted.append(f"Example {i}:")
            formatted.append(f"Input: {ex.input}")
            formatted.append(f"Output: {ex.output}")
            if ex.explanation:
                formatted.append(f"Explanation: {ex.explanation}")
            formatted.append("")

        return "\n".join(formatted)


class ConstructionExampleLibrary:
    """Library of construction-specific few-shot examples."""

    def __init__(self):
        self.example_sets: Dict[str, ExampleSet] = {}
        self._register_defaults()

    def register(self, example_set: ExampleSet):
        self.example_sets[example_set.name] = example_set

    def get(self, name: str) -> Optional[ExampleSet]:
        return self.example_sets.get(name)

    def _register_defaults(self):
        for example_set in DEFAULT_EXAMPLE_SETS:
            self.register(example_set)
```

## CSI Classification Examples

```python
CSI_CLASSIFICATION_EXAMPLES = ExampleSet(
    name="csi_classification",
    description="Examples for classifying line items to CSI MasterFormat",
    task_type="classification",
    examples=[
        FewShotExample(
            input="4000 PSI structural concrete for foundations",
            output=json.dumps({
                "csi_division": "03",
                "csi_section": "03 30 00",
                "csi_title": "Cast-in-Place Concrete",
                "confidence": "high"
            }),
            explanation="Structural concrete is Division 03, Cast-in-Place section",
            tags=["concrete", "structural"],
            difficulty="easy"
        ),
        FewShotExample(
            input="Grade 60 #5 reinforcing steel",
            output=json.dumps({
                "csi_division": "03",
                "csi_section": "03 20 00",
                "csi_title": "Concrete Reinforcing",
                "confidence": "high"
            }),
            explanation="Rebar is in Division 03 under reinforcing, not Division 05 Metals",
            tags=["rebar", "concrete"],
            difficulty="medium"
        ),
        FewShotExample(
            input="8\" CMU block wall with vertical rebar",
            output=json.dumps({
                "csi_division": "04",
                "csi_section": "04 22 00",
                "csi_title": "Concrete Unit Masonry",
                "confidence": "high"
            }),
            explanation="CMU is concrete masonry, Division 04",
            tags=["masonry", "cmu"],
            difficulty="easy"
        ),
        FewShotExample(
            input="W12x26 structural steel beams",
            output=json.dumps({
                "csi_division": "05",
                "csi_section": "05 12 00",
                "csi_title": "Structural Steel Framing",
                "confidence": "high"
            }),
            explanation="Wide flange beams are structural steel, Division 05",
            tags=["steel", "structural"],
            difficulty="easy"
        ),
        FewShotExample(
            input="6\" spray foam insulation R-38",
            output=json.dumps({
                "csi_division": "07",
                "csi_section": "07 21 00",
                "csi_title": "Thermal Insulation",
                "confidence": "high"
            }),
            explanation="All insulation types are in Division 07",
            tags=["insulation", "thermal"],
            difficulty="easy"
        ),
        FewShotExample(
            input="Hollow metal door frame 3'x7'",
            output=json.dumps({
                "csi_division": "08",
                "csi_section": "08 11 00",
                "csi_title": "Metal Doors and Frames",
                "confidence": "high"
            }),
            explanation="Metal doors and frames are in Division 08 Openings",
            tags=["doors", "openings"],
            difficulty="easy"
        ),
        FewShotExample(
            input="5/8\" Type X gypsum board on metal studs",
            output=json.dumps({
                "csi_division": "09",
                "csi_section": "09 29 00",
                "csi_title": "Gypsum Board",
                "confidence": "high"
            }),
            explanation="Gypsum board (drywall) is in Division 09 Finishes",
            tags=["drywall", "finishes"],
            difficulty="easy"
        ),
        FewShotExample(
            input="VCT flooring in corridors",
            output=json.dumps({
                "csi_division": "09",
                "csi_section": "09 65 00",
                "csi_title": "Resilient Flooring",
                "confidence": "high"
            }),
            explanation="VCT (vinyl composition tile) is resilient flooring in Division 09",
            tags=["flooring", "finishes"],
            difficulty="medium"
        ),
        FewShotExample(
            input="Fire sprinkler system - ordinary hazard",
            output=json.dumps({
                "csi_division": "21",
                "csi_section": "21 13 00",
                "csi_title": "Fire-Suppression Sprinkler Systems",
                "confidence": "high"
            }),
            explanation="Fire sprinklers are Division 21 Fire Suppression",
            tags=["fire protection", "mep"],
            difficulty="medium"
        ),
        FewShotExample(
            input="Domestic water piping - copper type L",
            output=json.dumps({
                "csi_division": "22",
                "csi_section": "22 11 00",
                "csi_title": "Facility Water Distribution",
                "confidence": "high"
            }),
            explanation="Domestic water piping is Division 22 Plumbing",
            tags=["plumbing", "mep"],
            difficulty="medium"
        ),
        FewShotExample(
            input="VAV boxes with hot water reheat",
            output=json.dumps({
                "csi_division": "23",
                "csi_section": "23 36 00",
                "csi_title": "Air Terminal Units",
                "confidence": "high"
            }),
            explanation="VAV boxes are air terminal units in Division 23 HVAC",
            tags=["hvac", "mep"],
            difficulty="medium"
        ),
        FewShotExample(
            input="277/480V 3-phase electrical distribution panel",
            output=json.dumps({
                "csi_division": "26",
                "csi_section": "26 24 00",
                "csi_title": "Switchboards and Panelboards",
                "confidence": "high"
         

Related in AI Agents