Spaces:
Runtime error
Runtime error
| def parse_damage_description(text: str): | |
| """ | |
| Converts vision-language description into structured damage info. | |
| Defensive by design (never crashes on unexpected text). | |
| """ | |
| t = text.lower() | |
| # Default values | |
| part = "Vehicle Body" | |
| damage = "Visible Damage" | |
| severity = "Medium" | |
| confidence = 70 | |
| # Part detection | |
| if "rear bumper" in t or "back bumper" in t: | |
| part = "Rear Bumper" | |
| elif "front bumper" in t: | |
| part = "Front Bumper" | |
| elif "door" in t: | |
| part = "Door Panel" | |
| elif "fender" in t: | |
| part = "Fender" | |
| elif "hood" in t or "bonnet" in t: | |
| part = "Hood" | |
| elif "trunk" in t or "boot" in t: | |
| part = "Trunk" | |
| # Damage type | |
| if "dent" in t: | |
| damage = "Panel Dent" | |
| severity = "Medium" | |
| confidence = 88 | |
| elif "scratch" in t: | |
| damage = "Paint Scratch" | |
| severity = "Low" | |
| confidence = 75 | |
| elif "crack" in t or "broken" in t: | |
| damage = "Structural Crack" | |
| severity = "High" | |
| confidence = 92 | |
| # Severity refinement | |
| if "severe" in t or "major" in t: | |
| severity = "High" | |
| confidence = min(confidence + 5, 95) | |
| return { | |
| "part": part, | |
| "report": damage, | |
| "severity": severity, | |
| "confidence": confidence | |
| } | |