Source-linked AI summary
NURBGen: High-Fidelity Text-to-CAD Generation through LLM-Driven NURBS Modeling
Muhammad Usama, Mohammad Sadil Khan, Didier Stricker, Muhammad Zeshan Afzal
TL;DR
Text-to-CAD methods largely rely on design-history representations and small datasets of low-complexity parts, while natural-language generation with NURBS remains underexplored. NURBGen fine-tunes an LLM to produce structured NURBS CAD using a hybrid representation, and outperforms prior baselines in geometric and visual alignment.
Problem
Most text-to-CAD methods rely on design-history representations trained on small datasets of low-complexity parts, while NURBS-based text generation and high-quality ABC captions are lacking.
Source: Introduction · pp. 1–2Method
NURBGen fine-tunes an LLM to generate structured NURBS representations from text and combines untrimmed NURBS with analytic primitives in a hybrid representation.
Source: Introduction · p. 2, Conclusion · p. 7Results
NURBGen outperforms prior baselines in geometric and visual alignment, with 60.8% top-1 preference in human evaluation and 63.7% in GPT-4o evaluation.
Source: Experimental Results · p. 7Takeaways & Limitations
The captioned 300k-part partABC dataset is presented as a resource for future NURBS-based CAD research.
Source: §3 · p. 6, Conclusion · p. 7NURBGen struggles with fine-grained architectural structure and engraving text, and can produce rare self-intersections or topological inconsistencies.
Source: Limitation · p. 7
Abstract
from arXiv · showhide
Generating editable 3D CAD models from natural language remains challenging, as existing text-to-CAD systems either produce meshes or rely on scarce design-history data. We present NURBGen, the first framework to generate high-fidelity 3D CAD models directly from text using Non-Uniform Rational B-Splines (NURBS). To achieve this, we fine-tune a large language model (LLM) to translate free-form texts into JSON representations containing NURBS surface parameters (\textit{i.e}, control points, knot vectors, degrees, and rational weights) which can be directly converted into BRep format using Python. We further propose a hybrid representation that combines untrimmed NURBS with analytic primitives to handle trimmed surfaces and degenerate regions more robustly, while reducing token complexity. Additionally, we introduce partABC, a curated subset of the ABC dataset consisting of individual CAD components, annotated with detailed captions using an automated annotation pipeline. NURBGen demonstrates strong performance on diverse prompts, surpassing prior methods in geometric fidelity and dimensional accuracy, as confirmed by expert evaluations. Code and dataset will be released publicly.
Introduction · Related Work
NURBGen frames text-to-CAD as LLM generation of structured NURBS surfaces that can be converted to BRep, supported by a curated CAD-parts dataset and a hybrid representation. Its related-work discussion contrasts this approach with design-history-based CAD generation and prior NURBS modeling.
Introduction
- Prior text-to-CAD methods largely use design-history sequences, but their training data are small and often simple, limiting generalization to real-world scenarios.DeepCAD mainly contains low-complexity parts; related public datasets include DeepCAD-170k (Wu, Xiao, and Zheng 2021), Fusion360-8k (Willis et al. 2021), and CADParser-50k (Zhou, Tang, and Zhou 2023).Source: Introduction · p. 1, Related Work · p. 2
- NURBGen is presented as the first LLM-driven framework to generate editable BRep CAD models from text using structured, symbolic NURBS surface parameters.The parameters are serialized as JSON tokens encoding control points, degrees, weights, and knot vectors, then mapped from descriptions by fine-tuning Qwen3-4B.Source: Introduction · p. 2
- partABC contains more than 300k part-level ABC CAD models with NURBS annotations and automatically generated high-quality captions for fine-tuning.Models are serialized with context lengths of at most 8k tokens.Source: Introduction · p. 2
- The hybrid representation uses untrimmed NURBS by default and analytic primitives where fitting fails, addressing trimmed and degenerate faces while retaining LLM-compatible structure.Examples of primitives include lines, arcs, B-splines, circles, and other analytic curves.Source: Introduction · p. 2, Related Work · p. 2
Related Work
- Earlier CAD-generation research addressed fitting, classification, segmentation, and BRep structure prediction; BrepGen (Xu et al. 2024b) instead generates BRep topology with hierarchical latent diffusion.NURBGen represents BReps as structured NURBS surface sequences, enabling text-to-CAD as language generation on partABC.Source: Related Work · p. 2
- NeuroNURBS (Fan et al. 2024) encodes untrimmed NURBS for reconstruction or segmentation, but does not generate from text and cannot accurately represent all trimmed CAD geometry.The paper identifies trimming complexity, knot-vector non-differentiability, and high parameter variability as obstacles to learning-based NURBS modeling.Source: Related Work · p. 2, Introduction · p. 2
- LLM-based 3D generation includes LLaMA-Mesh (Wang et al. 2024), which generates mesh vertices and faces as text, while prior LLM text-to-CAD methods primarily use design-history representations.NURBGen instead uses symbolic surface-level NURBS generation and partABC’s larger, more geometrically diverse data.Source: Related Work · p. 3
Background
NURBS are a standard CAD representation for curves and surfaces, combining weighted control points with compactness, smoothness, and precise parametric control. Their parameters define curves and, through a tensor product in u and v, surfaces.
- NURBS extend B-splines with weights on control points, enabling both free-form and analytic shapes such as circles and ellipses.Their compactness, smoothness, and precise parametric control make them central to modern CAD systems.Source: Background · p. 3
- A NURBS curve is defined by control points, corresponding positive weights, a knot vector, degree, and recursively defined basis functions.The basis functions are defined using the Cox-de Boor formula.Source: Background · p. 3
- A NURBS surface is the tensor product of two NURBS curves in parameters u and v, using control points, weights, knot vectors, and degrees in both directions.Its u- and v-direction basis functions are the B-spline basis functions defined for the corresponding curve parameters.Source: Background · p. 3
Data Preparation
The data-preparation pipeline aims to pair JSON NURBS surface representations of BRep models with high-quality captions as supervision for fine-tuning an LLM for editable text-to-CAD generation. It also constructs partABC from the unlabeled, assembly-level ABC dataset.
Data Preparation
- The pipeline targets paired JSON NURBS surface representations and high-quality captions as supervision for fine-tuning an LLM for precise, editable text-to-CAD generation.The section introduces the NURBS representation format and the processing steps used to build partABC.Source: Data Preparation · p. 4
- partABC is a new dataset derived from the unlabeled, assembly-level ABC dataset.Source: Data Preparation · p. 4
1. CAD Representation · 2. Annotation Pipeline
NURBGen converts BRep faces into editable parametric representations, combining NURBS and analytic primitives when needed for robust reconstruction. Its annotation pipeline pairs six rendered views with geometric metadata to generate detailed captions for CAD models.
1. CAD Representation
- BRep faces are normalized to a 2 × 2 × 2 bounding box, converted to untrimmed NURBS, and parameterized for exact reconstruction.The extracted parameters include control points, knot vectors and multiplicities, degrees, rational weights, and periodicity flags.Source: §1 · p. 4
- A hybrid representation substitutes analytic primitives when NURBS reconstruction is poor, addressing artifacts in thin or hole-like regions.Faces are evaluated by Chamfer Distance against ground truth; with threshold ϵ = 6 × 10^-4, about 70% use NURBS and 30% analytic primitives.Source: §1 · p. 4, Figure 3 · p. 4
- Combining NURBS and analytic primitives preserves free-form flexibility while reducing parameter count and token complexity for simpler shapes.The structured JSON representation is described as more expressive and compact than the purely NURBS-based format in NeuroNURBS (Fan et al. 2024).Source: §1 · p. 4
2. Annotation Pipeline
- The annotation pipeline renders each BRep as a textureless triangular mesh from six 512 × 512 Blender viewpoints, with silhouettes and edge contours overlaid.Four views follow the orientation strategy in (Sinha and Khan et al. 2025), and two capture top and bottom perspectives.Source: §2 · pp. 4–5
- Geometric metadata supplies dimensions, surface area, volume, and topological hole count to guide captions beyond simple object naming.Dimensions come from an axis-aligned bounding box, area and volume from OpenCascade mass properties, and genus from a watertight mesh using χ = V − E + F and g = 0.5 × (2 − χ). Prior captioning approaches include Text2CAD and MAR-VEL (Sinha and Khan et al. 2025).Source: §2 · p. 5
- InternVL3-13B (Zhu et al. 2025) processes the six views and metadata-augmented prompt together to generate coherent, geometry-aware, shape-centric captions.Captions emphasize structural characteristics and use dimensional metadata and hole counts to ground precise geometric descriptions.Source: §2 · p. 5
3. partABC Dataset
partABC is built by extracting coherent individual components from a 200k-model subset of ABC, then filtering and sampling them by geometric complexity. The resulting dataset contains approximately 300k samples, with captions generated by an automated pipeline.
3. partABC Dataset
- partABC captions are generated using an automated captioning pipeline.Figure 5 shows examples of captions from the dataset.Source: Figure 5 · p. 6
- PythonOCC extracts 3M self-contained, geometrically coherent parts from 200k processed ABC assemblies, avoiding oversized assembly-level JSON representations.The full ABC dataset contains 1M models, but processing all of them was computationally expensive; some assembly representations exceeded 100k tokens.Source: §3 · pp. 5–6
- A complexity-aware weighted scoring strategy prioritizes geometrically rich and structurally diverse parts to reduce bias toward trivial shapes.The scoring weights were selected empirically on 100 samples; its criteria include token count, through-hole count, and bounding-box diagonal.Source: §3 · p. 6
- ∼300k part-level CAD samples form partABC, selected from 3M extracted parts with 10% simple, 50% moderate, and 40% complex models.Complexity tiers are simple (≤0.12), moderate (0.12–0.23), and complex (>0.23).Source: §3 · p. 6
Experimental Results
NURBGen is reported to outperform the evaluated baselines in geometric and visual alignment, with strong human and GPT-4o preference scores and a low invalidity ratio. The paper also reports an estimated 85% accuracy for its automatically generated captions.
Experimental Setup
- NURBGen is fine-tuned on partABC using a 95%–2.5%–2.5% train-validation-test split, with Qwen3-4B trained for 180k steps on four H200 GPUs.Training uses AdamW at a 5×10^-5 learning rate with LoRA rank 64 and α=128; coordinates are rounded to six decimal places and weights compressed for token efficiency.Source: Experimental Results · p. 6
Baselines
- The comparison uses Text2CAD, DeepCAD (Wu, Xiao, and Zheng 2021), and GPT-4o because the cited recent systems are unavailable and no open-source text-to-NURBS model was known.Text2CAD uses official pretrained weights, DeepCAD is retrained for 100 epochs under the Text2CAD protocol, and GPT-4o is evaluated with 2-shot prompting.Source: Experimental Results · p. 6
Metrics
- Geometry is evaluated on 7,500 test samples using CD, HD, JSD, and MMD, while visual prompt fidelity is assessed through human and GPT-4o preference studies.The human study uses five CAD designers and majority-vote Top-1 accuracy; the studies cover 1,000 human-evaluation samples and 5,000 GPT-4o-evaluation samples.Source: Experimental Results · p. 6
Results
- 60.8% human Top-1 preference, 63.7% GPT-4o preference, and an invalidity ratio of 0.01 are reported for NURBGen, which outperforms the prior baselines in geometric and visual alignment.Text2CAD ranks second, followed by DeepCAD and GPT-4o; DeepCAD's invalidity ratio is 0.3.Source: Table 1 · p. 7, Experimental Results · p. 7
Caption Quality
- The captioning pipeline achieves an estimated accuracy of approximately 85% in GPT-4o verification of 1,000 sampled captions.GPT-4o checked captions against six rendered views and associated CAD metadata.Source: Experimental Results · p. 7
Ablation Study
The ablation evaluates hybrid representation by comparing it with a NURBS-only model trained without analytic-primitive fallback. The NURBS-only model exhibits reconstruction artifacts, while the hybrid model receives positive human and GPT-4o evaluation scores.
Ablation Study
- The ablation fine-tunes Qwen3-4B using only the untrimmed NURBS-based representation, without analytic-primitive fallback.Source: Ablation Study · p. 7
- The hybrid-representation model scores 72% in human evaluation and 79% in GPT-4o evaluation.Evaluations use the same strategy mentioned earlier in the paper.Source: Ablation Study · p. 7
- Without analytic-primitive fallback, the NURBS-only model produces artifacts and reconstruction errors near holes, sharp transitions, and imprecisely fitted regions.Figure 8 compares the NURBS-only model with the hybrid model, showing improved handling of thin and hole-adjacent regions for the latter.Source: Ablation Study · p. 7, Figure 8 · p. 7
Limitation · Conclusion
NURBGen generates editable NURBS-based CAD from text and surpasses existing state-of-the-art methods in geometric fidelity, but it struggles with complex architectural prompts, rare geometric artifacts, and engraving text. The conclusion presents partABC and a hybrid representation, while identifying the 8192-token context window as a constraint for future work.
Limitation
- NURBGen struggles to capture fine-grained architectural structure in complex prompts, such as a two-story house with a gabled roof.Figure 7 illustrates representative failure cases.Source: Limitation · p. 7
- Rare failure cases include geometric artifacts such as self-intersections or topological inconsistencies.These artifacts appear in the second example in Figure 7.Source: Limitation · p. 7
- NURBGen has difficulty reconstructing prompts that include engraving text.This issue is illustrated by the third example in Figure 7.Source: Limitation · p. 7
Conclusion
- NURBGen surpasses existing state-of-the-art methods in geometric fidelity, as confirmed by expert evaluators.The conclusion reports no specific metric values or benchmark table.Source: Conclusion · p. 7
- The framework uses a fine-tuned LLM to generate structured, editable NURBS representations from text that can be converted directly into B-Rep format.Source: Conclusion · p. 7
- The authors introduce partABC, a dataset of 300k part-level ABC models with NURBS annotations and generated captions.They hope it will be a resource for future research.Source: Conclusion · p. 7
- The hybrid representation combines untrimmed NURBS with analytic primitives to address trimming artifacts while improving geometric robustness and token efficiency.Source: Conclusion · p. 7
- The current model is constrained by an 8192-token context window; future work will explore long-context training and multimodal extensions for more complex assemblies.The authors also envision NURBS-based representations as an alternative to design-history-based methods.Source: Conclusion · p. 7
Appendix CAD Representation … 4. Ellipse
The CAD representation models a BRep solid as faces containing either NURBS surfaces or analytical primitives, with parameter fields specified for the surface and primitive types.
Appendix CAD Representation
- A BRep solid is represented as a sequence of faces, each either a NURBS surface or a face containing analytical primitives.The representation includes primitives such as lines, circles, and B-splines.Source: Appendix CAD Representation · p. 10
- NURBS surfaces encode their control net as 2D arrays of 3D poles and associated real-valued weights, which are optional for non-rational surfaces.Source: Appendix CAD Representation · p. 10
- NURBS surfaces specify non-decreasing u and v knot sequences, integer knot multiplicities, basis-function degrees, and periodicity flags for each direction.Source: Appendix CAD Representation · p. 10
2. Line
- A line is parameterized by the (x, y, z) coordinates of its starting and ending points.Source: §2 · p. 10
3. Circle
- A circle is parameterized by its center, plane normal, radius, and first and last arc angles in radians.A semicircle uses first = 0.0 and last = π.Source: §3 · p. 10
4. Ellipse
- An ellipse is parameterized by its center, plane normal, major and minor radii, and first and last arc angles in radians.A full ellipse uses first = 0.0 and last = 2π.Source: §4 · p. 10
5. Bezier Curve · 6. B-spline Curve · Impact of Metadata on Caption Quality
Bezier curves are represented by control points, degree, and a parameter range, while B-spline curves add knot and multiplicity data plus optional rational and periodic settings. Structural metadata such as dimensions and hole count improves caption quality by grounding descriptions in geometry.
5. Bezier Curve
- A Bezier curve is specified by its control-point poles and degree.Source: §5 · p. 10
- A Bezier curve also records the first and last values of its parametric domain.Source: §5 · p. 10
6. B-spline Curve
- A B-spline curve includes control-point poles, degree, a non-decreasing knot vector, and corresponding knot multiplicities.Source: §6 · p. 10
- B-spline curves may also specify rational weights, periodicity, and the first and last values of their parametric range.Source: §6 · p. 10
Impact of Metadata on Caption Quality
- InternVL3-13B produces precise, geometry-grounded descriptions when given structural metadata such as dimensions and hole count.Source: Impact of Metadata on Caption Quality · p. 10
- Without metadata, GPT-4o often overlooks or misstates critical geometric features such as dimensions and hole count.Source: Impact of Metadata on Caption Quality · p. 10
More Qualitative Results
Additional NURBGen examples include shapes that existing design-history-based text-to-CAD approaches cannot currently generate because their training datasets lack certain CAD operations.
- Examples in Figures 12 and 13 include shapes existing design-history-based text-to-CAD approaches cannot currently generate because their training datasets lack loft, sweep, and revolution operations.Source: More Qualitative Results · p. 10, Figure 12 · p. 14, Figure 13 · p. 15