# Technical Inventory Hardware Extraction Protocol Extract ALL relevant hardware items from the image with precise, standardized formatting. ## Filtering Rules - **INCLUDE**: Physical hardware, modules, cables, servers, storage, transceivers - **EXCLUDE**: Generic mounting hardware (screws, brackets, rails), paper licenses, empty packaging - **Multi-item labels**: Treat each SKU/variant as a separate item (e.g., "5m cable" and "7m cable" = 2 items) ## Item Field Format (CRITICAL) [] **Component Rules:** - ``: - **STORAGE CAPACITY - HUMAN READABLE**: Convert to largest unit (TB/MB). - Examples: "1600GB" → "1.6TB", "256GB" → "256GB", "512MB" → "512MB" - Rule: If ≥1000GB, use TB. If ≥1000MB, use GB. Otherwise use MB. - **CABLE/WIRE LENGTH**: Meters only. Examples: "5m", "10m", "50m" - **RAM DIMM**: Capacity in GB. Examples: "128GB", "32GB", "8GB" - ``: Asset class. One of: DDR3/DDR4/DDR5, SSD/HDD/NVMe, SATA/SAS, Patchcord/Fiber/Cable, SFP/Transceiver, DIMM, etc. - ``: Manufacturer (HP, HPE, Dell, Samsung, Cisco, Hynix, Intel, Broadcom) - ``: Physical interface (RJ45, LC-LC, MPO, U.3, SATA, SAS, ST, SC). Omit if N/A. - ``: Part number ONLY if visible. **Omit serial numbers.** **Item Examples (WITH HUMAN-READABLE SIZES):** - `1.6TB NVMe HPE U.3 P66093-002` (not 1600GB) - `256GB SSD Dell SATA SK-8765` (already human-readable) - `5m Patchcord LC-LC` - `128GB DDR4 Hynix` - `512MB Cache Samsung SATA` (stays MB if under 1GB) **Size Conversion Examples:** - 1600GB → 1.6TB - 2048GB → 2TB - 512GB → 512GB (under 1TB threshold) - 256MB → 256MB - 1024MB → 1GB **Restrictions:** - No comments in parenthesis - No measurement units in Item field (e.g., "1.6TB" not "1.6TB Storage") - No secondary vendors - No diameter/mm in Item field - ONE vendor only (primary manufacturer) ## Other Fields - **Type**: Repeat the asset class (DDR4, SSD, NVMe, Patchcord, etc.) - **Description**: Technical summary, max 5 words. Examples: "High-speed fiber optic", "Enterprise Gen4 storage" - **Category**: Memory, Storage, Network, Cabling, Compute, Optical, Transceiver - **Connector**: Interface type from Item field. Examples: "LC-LC", "RJ45", "U.3" - **Size**: **HUMAN-READABLE capacity or length.** Examples: "1.6TB", "256GB", "5m" (NOT "1600GB") - **Color**: Physical color if distinguishing - **PartNr**: Part number only (no serial numbers) - **OCR**: Robust matching key for OCR tolerance ## OCR Field Rules (CRITICAL) Generate a SHORT, clean matching key: - Format: **UPPERCASE space-separated, NO special chars, NO duplicates** - Include ONLY: Type + Size + Primary Vendor + Connector + Part Number - **EXCLUDE**: Serial numbers, secondary vendors, duplicate tokens, EMC/SK labels - **USE HUMAN-READABLE SIZE**: Use TB/GB from Item field, not original notation **OCR Format:** `TYPE SIZE VENDOR CONNECTOR PARTNUMBER` **OCR Examples (WITH HUMAN-READABLE SIZES):** - Item: `1.6TB NVMe HPE U.3 P66093-002` → OCR: `NVME 1.6TB HPE U3 P66093002` - Item: `5m Patchcord LC-LC` → OCR: `PATCHCORD 5M LC LC` - Item: `256GB SSD Samsung SAS SK-8765` → OCR: `SSD 256GB SAMSUNG SAS SK8765` - Item: `128GB DDR4 Hynix` → OCR: `DDR4 128GB HYNIX` **OCR Constraints:** - NO duplicate part numbers - NO secondary vendor names - NO extraneous labels - Each token appears ONE time only - Remove hyphens/special chars for fuzzy matching - Use HUMAN-READABLE sizes (1.6TB not 1600GB) ## Spare-Parts vs Consumables Classification CLASSIFICATION GUIDE - SPARE PARTS vs CONSUMABLES: Spare Parts (replaceable components that plug into or interface with devices): - RAM, DDR memory modules (DDR3, DDR4, DDR5, SODIMM, DIMM) - SSDs, NVMe drives, M.2 modules, SATA drives, hard drives - CPUs, GPUs, processors, discrete graphics cards - Power supply units (PSU), power modules (NOT generic power cords) - Expansion cards (PCIe, PCI, RAID controllers, network cards/NIC) - Cooling solutions (heatsinks, CPU coolers, thermal solutions) - Motherboards, chipsets, BIOS modules NOT Spare Parts (consumables, generic items): - Cables (power, SATA, USB, Ethernet, proprietary cords) - Fasteners (screws, washers, bolts, standoffs) - Thermal paste, thermal pads, adhesive tapes - Connectors, plugs, sockets, generic adapters - Generic cords and utility items Decision Tree: 1. Does the item have a replaceable function in a larger system? 2. Does it have a manufacturer part number and technical specifications? 3. Is it described with model/revision information? If YES to 2+ questions: Mark as SPARE PART If item matches consumable examples exactly: Mark as CONSUMABLE Otherwise: Mark as "uncertain" in the Category field for human review. Examples: ✓ "Kingston Fury 16GB DDR4-3200" → Spare Part (RAM module) ✓ "Samsung 970 EVO 1TB NVMe" → Spare Part (SSD) ✓ "Intel Core i7-12700K" → Spare Part (CPU) ✓ "Corsair RM850x 850W Power Supply" → Spare Part (PSU) ✗ "6ft SATA Cable" → Consumable (cable) ✗ "CPU Mounting Hardware Kit" → Consumable (fasteners) ✗ "Thermal Paste Tube" → Consumable (adhesive material) ## Output Format ```json { "items": [ { "Item": "[size] type vendor connector partnumber", "Type": "type", "Description": "technical details (max 5 words)", "Category": "category", "Connector": "connector_type", "Size": "human_readable_size", "Color": "color", "PartNr": "part_number", "OCR": "TYPE SIZE VENDOR CONNECTOR PARTNUMBER" } ] } Return ONLY JSON. No markdown. No text.