- Complete Fastify gateway with 8-stage pipeline - Circuit breaker (opossum) per model tier - Rate limiting per caller - Ban list validation (EN/DE/auto-detected) - TIP validator (SFF-8024, part numbers, wavelengths) - Prometheus metrics - pg-boss async queue - PostgreSQL audit log + review queue - 9 prompt templates (TIP, LinkedIn, ShieldX) - Learning engine scaffolding - Auto-learning: ban-list, few-shot, routing, prompt optimizer
134 lines
5.2 KiB
YAML
134 lines
5.2 KiB
YAML
id: tip_compatibility_parse
|
|
version: "1.0.0"
|
|
task_type: tip_compatibility_parse
|
|
description: Parse transceiver compatibility tables from HTML, Excel exports, or prose into normalized entries. Critical — compatibility errors directly affect customers.
|
|
model_preference: qwen2.5:14b
|
|
model_minimum: qwen2.5:14b
|
|
temperature: 0.1
|
|
max_tokens: 4096
|
|
output_format: json
|
|
|
|
system_prompt: |
|
|
You are a compatibility data specialist for the Transceiver Intelligence Platform (TIP).
|
|
Your task is to parse transceiver compatibility information from vendor compatibility tables, spreadsheets, or prose descriptions and normalize them into structured entries.
|
|
|
|
CRITICAL: Compatibility errors directly affect customer purchasing decisions. Never guess or infer compatibility. Only record what is explicitly stated.
|
|
|
|
Return ONLY valid JSON array:
|
|
[
|
|
{
|
|
"transceiver_part_number": "string",
|
|
"transceiver_vendor": "string or null",
|
|
"switch_vendor": "Cisco|Juniper|Arista|Nokia|Huawei|Dell|HPE|Extreme|Brocade|Ericsson|other",
|
|
"switch_model": "string",
|
|
"switch_platform": "string or null",
|
|
"switch_port_type": "SFP+|QSFP+|QSFP28|QSFP-DD|OSFP|null",
|
|
"ios_version_min": "string or null",
|
|
"ios_version_max": "string or null",
|
|
"tested": true|false,
|
|
"certification_level": "certified|compatible|community-tested|vendor-claimed|unknown",
|
|
"notes": "string or null",
|
|
"source_table": "string"
|
|
}
|
|
]
|
|
|
|
Parsing rules:
|
|
- Each row in a compatibility table becomes one JSON entry.
|
|
- If a table header says "Tested with Nexus 9300/9500" — that is switch_model.
|
|
- "Plug and Play" or "Certified" → certification_level: "certified", tested: true
|
|
- "Compatible" without test evidence → certification_level: "compatible", tested: false
|
|
- Community reports → certification_level: "community-tested"
|
|
- If a row covers multiple switch models, split into separate entries.
|
|
- Port type: derive from transceiver form factor if not explicitly stated.
|
|
- Do NOT add entries for untested combinations that seem plausible.
|
|
- source_table: brief identifier of where this entry came from (e.g., "Cisco TMG matrix row 42").
|
|
|
|
{{few_shot_examples}}
|
|
|
|
user_template: |
|
|
Parse compatibility data from this source:
|
|
|
|
Source type: {{source_type}}
|
|
Source description: {{source_description}}
|
|
Transceiver vendor context: {{vendor_context}}
|
|
|
|
Raw compatibility data:
|
|
{{compatibility_data}}
|
|
|
|
Return JSON array only:
|
|
|
|
few_shot_examples:
|
|
- user: |
|
|
Source type: HTML table
|
|
Source description: Cisco Transceiver Module Group (TMG) compatibility page for SFP-10G-SR
|
|
Transceiver vendor context: Cisco OEM
|
|
|
|
Raw compatibility data:
|
|
<table>
|
|
<thead><tr><th>Transceiver</th><th>Switch Platform</th><th>Switch Model</th><th>Port</th><th>IOS Version</th><th>Status</th><th>Notes</th></tr></thead>
|
|
<tbody>
|
|
<tr><td>SFP-10G-SR</td><td>Nexus 9000</td><td>N9K-C9300-EX</td><td>SFP+</td><td>7.0(3)I7(1)+</td><td>Certified</td><td>Requires DOM enabled</td></tr>
|
|
<tr><td>SFP-10G-SR</td><td>Nexus 9000</td><td>N9K-C9500</td><td>SFP+</td><td>7.0(3)I4(1)+</td><td>Certified</td><td></td></tr>
|
|
<tr><td>SFP-10G-SR</td><td>Catalyst 9000</td><td>C9300-48P</td><td>SFP+</td><td>16.9.1+</td><td>Certified</td><td></td></tr>
|
|
</tbody>
|
|
</table>
|
|
assistant: |
|
|
[
|
|
{
|
|
"transceiver_part_number": "SFP-10G-SR",
|
|
"transceiver_vendor": "Cisco",
|
|
"switch_vendor": "Cisco",
|
|
"switch_model": "N9K-C9300-EX",
|
|
"switch_platform": "Nexus 9000",
|
|
"switch_port_type": "SFP+",
|
|
"ios_version_min": "7.0(3)I7(1)",
|
|
"ios_version_max": null,
|
|
"tested": true,
|
|
"certification_level": "certified",
|
|
"notes": "Requires DOM enabled",
|
|
"source_table": "Cisco TMG SFP-10G-SR compatibility matrix"
|
|
},
|
|
{
|
|
"transceiver_part_number": "SFP-10G-SR",
|
|
"transceiver_vendor": "Cisco",
|
|
"switch_vendor": "Cisco",
|
|
"switch_model": "N9K-C9500",
|
|
"switch_platform": "Nexus 9000",
|
|
"switch_port_type": "SFP+",
|
|
"ios_version_min": "7.0(3)I4(1)",
|
|
"ios_version_max": null,
|
|
"tested": true,
|
|
"certification_level": "certified",
|
|
"notes": null,
|
|
"source_table": "Cisco TMG SFP-10G-SR compatibility matrix"
|
|
},
|
|
{
|
|
"transceiver_part_number": "SFP-10G-SR",
|
|
"transceiver_vendor": "Cisco",
|
|
"switch_vendor": "Cisco",
|
|
"switch_model": "C9300-48P",
|
|
"switch_platform": "Catalyst 9000",
|
|
"switch_port_type": "SFP+",
|
|
"ios_version_min": "16.9.1",
|
|
"ios_version_max": null,
|
|
"tested": true,
|
|
"certification_level": "certified",
|
|
"notes": null,
|
|
"source_table": "Cisco TMG SFP-10G-SR compatibility matrix"
|
|
}
|
|
]
|
|
|
|
variables:
|
|
- source_type
|
|
- source_description
|
|
- vendor_context
|
|
- compatibility_data
|
|
- few_shot_examples
|
|
|
|
validation_rules:
|
|
tip_validator: true
|
|
min_confidence: 8.5
|
|
required_fields: ["transceiver_part_number", "switch_vendor", "switch_model", "tested", "certification_level"]
|
|
output_must_be_json: true
|
|
note: "Critical — compatibility errors hurt customers. Only record explicitly stated compatibility."
|