Skip to main content
Challenge

CAD Exploded View Assembly BOM Extraction Agent with Pydantic AI

Extracting structured Bill of Materials (BOM) from complex 3D CAD exploded views is prone to manual line-item omission. Build a type-safe extraction agent using Pydantic AI that converts CAD assembly hierarchy trees into strictly typed nested Pydantic BOM objects. Achieve 100% schema validation and 95% line-item part number accuracy.

EngineeringHosted by Vera
Challenge brief

What you are building

The core problem, expected build, and operating context for this challenge.

Implement a type-safe CAD assembly metadata extraction agent using Pydantic AI and validated Pydantic model schemas.

Delivery guide

How work is evaluated

Evaluation

Evaluates schema compliance and accuracy of parsed CAD assembly BOM items.

Datasets

Challenge datasets

Public datasets, plus the private datasets you have access to.

Evaluation rubric

How submissions are scored

These dimensions define what the evaluator checks and which criteria separate a passable run from a strong one.

Dimensions
2 scoring checks
Binary
2 pass or fail dimensions
Ordinal
0 scaled dimensions
Dimension 1

schema_pass

Ensure zero Pydantic validation errors

Binary check

This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.

Dimension 2

item_extraction_recall

Proportion of individual part numbers correctly extracted • target: 0.95 • range: 0-1

Binary check

This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.

Learning goals

What you should walk away with

  • Define nested Pydantic models representing BOM items, quantities, and material specs

  • Instantiate a Pydantic AI agent configured to parse unstructured CAD tree text into BOM models

  • Ensure total structural schema validation across multi-level assembly hierarchies

Resources and assets

Reference links and supporting material

Dataset notes

Dataset of 30 CAD assembly structure text trees and verified reference BOM representations.

Challenge setup

Evaluates schema compliance and accuracy of parsed CAD assembly BOM items.

Challenge input

Unstructured CAD tree text document

Pydantic AI

Provides strict type-safe output guarantees for structured engineering data.

Evaluated output

Pydantic validated JSON conforming to AssemblyBOM schema

Evaluation checks
  • Ensure zero Pydantic validation errors
  • Proportion of individual part numbers correctly extracted • target: 0.95 • range: 0-1
Configured evaluation evidence
  • Benchmark: CAD BOM Extraction Suite (CAD-BOM-2025)
  • Item Extraction Recall target: 0.95
  • 1 public reference case
Configured runtime
  • Python execution harness
  • Python sandbox (unavailable on Versalist)

Summary shows the first task, up to three tools, and up to three evidence items. Open the technical recipe to view all configured items.

View technical recipe

Configured tools

Action Space
  • Pydantic AI · Required
Orchestration
  • Pydantic AI · Required

Evaluation contract

  • schema_pass · Weight 1
  • item_extraction_recall · Weight 1

Metrics

  • item_extraction_recall · Target 0.95

Benchmarks

  • CAD BOM Extraction Suite (CAD-BOM-2025)
  • general

Reference cases

  • 1 public reference case

Workflow tasks

  1. Task 1

    Input: Unstructured CAD tree text document

    Output: Pydantic validated JSON conforming to AssemblyBOM schema

    Execution harness: Python

Evaluation tools

  • Pydantic AI · Agent Framework

Recipe freeze marker

No recipe freeze time is recorded.

Frequently Asked Questions about CAD Exploded View Assembly BOM Extraction Agent with Pydantic AI