Beyond CAD: ChatGPT’s Experiment Paves the Way for AI-Designed 3D Parts

By on February 16th, 2024 in news, Software

Tags: , , , , , ,

3D part design generated through ChatGPT [Source: Hackster]

Can you design any 3D printable part using ChatGPT? That’s the claim of a new experiment.

In fact, that’s the title of the story: “Design any part with ChatGPT for 3D printing”, recently published in Hackster.

This intrigued me, as I’ve been on the watch for AI infiltrations into the 3D print space. We all spend considerable time working with expensive and tricky CAD tools to make designs, but could this eventually be replaced by AI tools?

That’s largely been accomplished with images, and 3D models are just another form of data, just like images. It should be theoretically possible, but no one has yet developed a truly usable system.

We’ve seen a couple of tools attempt to do this. These include OpenAI’s Point-E system, LUMA AI, DreamFusion and others.

However, while all of these and similar systems produce 3D models, they aren’t always what you wanted, and have questionable details. Your elephant might have two trunks, or similar bizarre mistakes. It’s much like the early days of AI image generation where there were always too many fingers.

The models these systems made were not usable as mechanical parts because there were no measurements possible, and no precise edges or surfaces.

It was beginning to look like there would not be a path towards true part generation, but then this experiment showed up on Hackster.

Instead of having the AI “visualize” a 3D model in entirety, the new approach is quite different. ChatGPT is used to generate a Python program that, when executed, produces a STEP file.

They’ve created a custom GPT for this purpose. These are ChatGPT sessions that are primed with a considerable amount of information. This would include, for example, “act as a 3D CAD designer”, and a great deal more.

The custom GPT is then prompted with a mostly-English description of the part. Here’s an example that was used to generate the part above:

Create a U-shaped bracket “ubracket” :

  • create a outer cube 40 x 30 x 20 mm
  • create a inner cube 30 x 30 x 20 mm
  • shift the inner cube 5 mm up and right
  • subtract the inner cube from the outer cube
  • drill a hole of radius 3 mm at position (0,20,10) with length 10 mm in x direction (1,0,0)
  • visualize the bracket
  • export ubracket to a STEP file “ubracket.stp”
  • create the executable script “ubracket.py” for download

At first this might seem quite usable, but I gave it a try. It’s not nearly as easy as it looks.

There is usually a considerable amount of iteration on the prompt to get what you want, and there’s no guarantee you will even get there.

The second issue is that Python program may or may not execute. There could even be issues where the program doesn’t actually generate what was expected.

Does this mean there’s no point to this approach? By no means so! I think this approach is very promising — it’s just that I believe it requires a lot more work to refine the process.

I could imagine a fully developed system of this style that could work far better. It’s possible that increased training and configuration could make the GPT “smarter” and more capable of generating code to create 3D models. This would be easier if focused on specific types of 3D models, and perhaps there may be multiple GPTs: choose the right one for your application.

Via Hackster

By Kerry Stevenson

Kerry Stevenson, aka "General Fabb" has written over 8,000 stories on 3D printing at Fabbaloo since he launched the venture in 2007, with an intention to promote and grow the incredible technology of 3D printing across the world. So far, it seems to be working!

Leave a comment

Your email address will not be published. Required fields are marked *