19 comments

[ 3.9 ms ] story [ 59.2 ms ] thread
As an engineer I just wanted to pipe in and say that this AI removes the part of design that isn’t actually the difficult part.

The difficult part is the manufacturing, also coming up with the plausible load paths and deciding on the geometry of the parts according to the actual loads.

> Given an image or a 3D mesh, SGS-1 can generate CAD B-Rep parts in STEP format. Unlike all other existing generative models, SGS-1 outputs are accurate and can be edited easily in traditional CAD software

This is a game changer, all the models before that output meshes were a toy at best. Super excited to see where they can take this.

I wander if the next step is for a step -> proprietary format (SolidWork, NX etc) model that can infer constraints.

Thanks for this! We are actively considering this in our next model. What did you have in mind specifically?
Depending on pricing, this could be a boon for 3D printing. The really hard part for hobbyists creating novel models has been the CAD. If they can price this appropriately I can see it selling really well.
this doesn't make sense from a theoretical pov at least to me. like is it also defining tolerances etc?
I tried one of the samples and it wasn't watertight, with spurious little holes in the corners. Still mind-boggling though, and that can be healed easily enough.
I think the demo is cool, but the single most important question is how good it is at converting written constraints into the design.

Designing something that has the right features is easy, the hard part is creating a design that is manufacturable, fits inside the allocated space, has the desired mechanical properties (e.g. rigidity) at the desired cost (uses less material, is easy to manufacture).

As an example, parts for 3D printing have various design constraints, as you want to avoid support material and want to print the part in a certain orientation. Being able to verbally tell an AI model to incorporate these constraints would be very beneficial.

I wonder where they'd get the training data for something like that.
I think there is a market for AI that would clean up the goo imports of 3D scanners. Imagine how beneficial that would be.

Also to generate clean 3D meshes from points cloud, while identifying the various objects via the colours/lighting. That would be also really interesting. It could as well describe the world, and the object's meta data.

As for something like this, it removes the fun of CAD design more than solve a problem, I think we best focus AI for repetitive boring tasks, rather than design. This may wow investors, and may save professional minutes, but it does not really solve the bigger problems.

<Insert meme about AI doing arts while we still do the dishes />

Neat to see the parent article. In the early months of ChatGPT4, I had it produce an open markup standard to support LLM-mediated mechatronic design. Basically I felt that human-readable markup language was needed for an LLN to train on many examples (or for an imagined highly capable LLM to absorb the logic of the markup language de novo), so that it could be used to rapidly iterate subsequent mechatronic designs posed by users. Mostly as a demonstration-of-concept so others could build on it or be inspired to roll their own.

https://github.com/ricksher/ASimpleMechatronicMarkupLanguage

In any case, hopefully it anticipated some future company’s would-be IP thereby ensuring Freedom-to-Operate for future open source hardware tinkerers.

> can generate fully [...] parametric 3D geometry.

This is obviously a lie without even testing it. STEP files do not have any sort of support for parametric features.

> SGS-1 outputs are accurate and can be edited easily in traditional CAD software.

I tested this on their own demo file to give it its best chance at working correctly and this claim they've made is just a complete lie. I've included the input and output for comparison below next to a correct part I modelled myself[1][2] and a list of errors. These aren't just incorrect dimensions but broken features that make these very hard to edit.

I don't know why they'd lie about this and them provide a demo the shows they're lying with their own input files, and even text on their own page which makes a claim that can not be true based solely on the information further down that page. Is it to get news headlines? Do they want to sell this to people that don't know any better? Is this simply just another case of CS people thinking they've solved a problem without having any domain knowledge to know their claims are nonsense?

- Every dimension is wrong aside from the one that I corrected to get the same scale (there doesn't appear to be any correct relative to each-other which is why I just picked one at random)

- One hole doesn't go all the way through

- The closest hole isn't round (it's two holes with slightly different diameters that overlap with a sum larger than either hole)

- The fillets are not fillets

- The top hole is offset

- The front chamfer goes down past the base

- The not-fillets don't have the same radius

- The two top holes are offset from each other in Z

- The front chamfer is joined to the circle in different ways on each side (to be fair the drawing is nonsensical here, I just went for a tangent with the circle on my part)

- Much more that I've probably missed

[1]: https://files.catbox.moe/mzb9bb.png

[2]: https://files.catbox.moe/5xkna1.png

Glad to see this is utter BS. Moving along.
If this really works, in conjunction with a 3D printer and a robotic arm, the implications will be huge…
Hey! I'm a cofounder and the CTO of this company. Want to lead with saying its an absolute privilege to be on the front page of this site and have all of you try this model and give us your feedback. Your time and attention is valuable and is absolutely not taken for granted. Our model is SGS-1, and it will continue to improve in future versions. Want to address a few points made by others here.

> can generate fully [...] parametric 3D geometry. >> This is obviously a lie without even testing it. STEP files do not have any sort of support for parametric features.

This is a simple misunderstanding/semantic issue. We aren't trying to misrepresent anything, we (and some others in the research community) interpret parametric as "being composed of primitives with parameters". We have an internal representation we don't expose to users, and we convert that to a B-Rep STEP file which we do expose.

>> Every dimension is wrong aside from the one that I corrected to get the same scale (there doesn't appear to be any correct relative to each-other which is why I just picked one at random)

Visually this output looks close. There are some gaps, but looking at your screenshot, features like the main hole going all the way through are underdetermined. It's very hard for a model to know because even if the hole did not go through the input would look the same. All of this can be fixed by having richer input conditions, and we are actively working on this for SGS-2

>Yes, this is also confusing me to no end. How can they make such a claim? They even explicitly state that they generate a B-rep (boundary representation) output only, then in their roller example they say "as the output is parametric, dimensions can easily be adjusted." Erm, no? I'd rather model it again with the proper feature history tree and constraints instead of fiddling with a step file.

SGS-2 will include a feature tree representation, so this should be more easily editable than this (which should already be easily editable in many cases as well with direct modeling). Several engineers already work with STEP files in their work for to the best of my knowledge.

Thanks once again for all the feedback! We are incorporating all this into our next model.

Oh man! The sketch into CAD is going to be huge for the restoration market! Holy crap!

There’s tons of old drawings but lacking measurements or something. The engineer knows how tall it is or what the overall dimensions are so they can easily use that to create a box and tell AI, make this part that fits this thing. This is going to change everything.

3D printing, restorative, imagineering, part manufacturing, everywhere where there is CAD…

as a founder working on a direct competitor to this product, I am happy to see there's so many opinions and interest. this means we are on to something. I am totally behind the idea, so I am super excited for Pranav to get this in the wild.

however, the output of the current SGS-1 model leaves a lot to be desired in terms of usability and manufacturability.

as sir liam powell so explained, the STEP generated is indeed a STEP file in the fact that it will load on your CAD of choice (CATIA, NX) but it's not even close to being useful for the designer/engineer/fabricator much less a factory or even a 3d printer.

Most importantly: -Surfaces are not G1, G2, or even G0 (un-CAE-able and un-manufacturable) -simple shapes are hyper overcomplicated (a fillet turns into 10++ surfaces mashed together) -and most unfortunately in one part I generated, the output was a collection of separate STEP child parts (meaning, when importing, your single "part" is actually a product containing 10000+ child parts)

looking forward to V2, keep it coming

shameless plug: my entire career has been in CAD and that is why I started Transfigure. to eliminate my own job as a CAD monkey: and get on with the engineering. already having anticipated the limitations which SGS-1 is dealing with, Transfigure's AI architecture is approaching the problem from the perspective of a mechanical engineer whose customers rely on clean data, ready for simulation and manufacturing. because if I submitted data generated by SGS-1 to our fab shop... I would be fired.

yo@xfgr.ai

Related: All LLMs have struggled helping me generate OpenSCAD models for 3D printing. They can’t seem to reason through XYZ space and 3D math. It’s my current litmus test for LLM performance.

I have had moderate success describing things as geometric primitives. I.e. making a simple phone stand is hard to one shot. Had to do it in steps as make a plane with XYZ dimensions, rotate it X degrees up, calculate the height using trig, create another plane with that height, translate to X position. Etc.