It's wild to me that this is even a question, because of how AI brained the entire world has become. I mean, you have a tool that you know works, and a tool that you know doesn't, but you still feel the need to find a way to make the square peg fit into the round hole.
I'm sure there are ways to "correct the spatial reasoning of LLMs" (whatever that even means) but I'd question whether you even need an LLM to begin with. I know that isn't the answer you're looking for, I'm just a slack-jawed knuckle-dragging Luddite. But this seems like the kind of simple, common problem for which established solutions already existed, like "talk to an actual engineer and not a chatbot that can't even do basic math."
And if it's a matter of not wanting to pay someone, consider that if you're already paying for an inadequate simulation of knowledge, you should be willing to pay for actual knowledge.
I'm with you here, the same slack-jawed knuckle-dragging Luddite. I'm not happy about the state of the world, but it is what it is.
I am working on it alone and don't have access or extra money to pay an actual engineer. If I can squeeze 10% of what an actual engineer would've told me, for $20/month I'm in.
And it's not an either-or game, I can have some rough, potentially totally stupid ideas and then validate them with an engineer, instead of paying $10k to make it from scratch.
Agree with asking a human, that seems like a simple question for someone in that space. I'd only use the chatbot to research the web for both professional and DIY active forums, discords, and other niche online communities in the following categories: [type-of?] engineering, 3d printing, weightlifting, and body-building
Once you have that list browse through them to find which ones seem friendly to new users asking a one off engineering question to probably never being heard from again; then post your technical question about the thing and wait, probably for much longer than an LLM but if an answer comes back it's probably more useful. I included weightlifting/body building since its barbell related -- there is a level of technical detail and precision many users in those spaces have when it comes to anything workout related, including equipment and modifications.
Other than that, set your llm to gacha-game agent-mode and connect it to some cad tools (I assume they exist, not my area). Then have it iterate on multiple approaches to the specs until it meets the requirements for each of them and spilts outs paragraphs of verbose self-congratulations and a cache of files for you to review. Maybe it will reward you with the solution you are looking for the first time (w/ the added rare chance it completes all the technical work to your standard, including all of the proper working files to feed a 3d printer)
I would consider asking it to model its proposed designs in openscad or build123d (ideally something query-able). Then have it render and examine plausibility / suitability from different angles. Get it to render the part in use also and give instructions to think about forces and motion.
Recommend doing this in a coding harness not a chat box.
The reason I think you might have more success with this is that the model is mostly thinking about the part in words, which it can convert to a part design in CAD in code. LLMs are really good at coding. Also means it can use relative positioning and relationships.
You will be able to iterate more easily, compare things, compute properties, commit to git etc. The process is more reproducible and steerable than generative production of images.
When the LLM can look at renders of the geometry it generated, it’s easier for it to discriminate when it’s producing nonsense like misaligned parts, things that don’t fit, etc. It’s still going to kind of suck, but it will be better. The whole process of code -> render -> inspect forces the model to put up or shut up and provides grounding. Meshes > bloviating.
As far as I know today's LLMs don't have a "visual imagination" but a process like this could be a slow approximation of one. They clearly do have SOME spatial understanding (pelican tests show us that!) but it feels really non-human.
One thing missing from this is kinesthetics. Personally I am mostly not thinking in accurate visuals in mechanical design. I am imagining how the parts feel and kind of how they move and what slips first and what bends and what feels heavy. Imagining what my hands would feel. But I don't think I trust LLMs to evaluate that stuff by writing simulation code yet.
Since it's the morning I thought I would ask Claude to create an example. This is just a first pass; it will be totally wrong but demonstrates the general idea. I don't know anything about barbells or your sensor: https://claude.ai/code/artifact/1f1a8a12-e5b2-4ee8-b20c-7da0...
I'm not sure from your description if you control the geometry of the sensor part (i.e, can the clamp be integral to the sensor housing or does it need to be a separate part) also ignores the internals, etc etc.
One thing I noticed is that off the bat, it did think about the assembly in general terms but would need guidance to think harder about FDM limitations and layer orientation etc. These are not good designs for printing. A good dev loop and git history help with these kinds of revisions.
The general principle is that if your domain is verifiable at all, give the model tools and a workflow that constrain and check its output. You want the LLM arguing with the geometry kernel instead of you.
To fully close the loop you print parts as fast and possible and concretely see where they suck.
I guess my v0 would be notches around the mating end to allow for compression, and a hose clamp. Maybe split shaft collars off aliexpress for a fancier look. The design space of barbell collars is a big set of worked solutions to a very similar problem.
Everybody is working on (or waiting for) world models. Language models are not sufficient for doing work in the meatspace.
It's wild to me that this is even a question, because of how AI brained the entire world has become. I mean, you have a tool that you know works, and a tool that you know doesn't, but you still feel the need to find a way to make the square peg fit into the round hole.
I'm sure there are ways to "correct the spatial reasoning of LLMs" (whatever that even means) but I'd question whether you even need an LLM to begin with. I know that isn't the answer you're looking for, I'm just a slack-jawed knuckle-dragging Luddite. But this seems like the kind of simple, common problem for which established solutions already existed, like "talk to an actual engineer and not a chatbot that can't even do basic math."
And if it's a matter of not wanting to pay someone, consider that if you're already paying for an inadequate simulation of knowledge, you should be willing to pay for actual knowledge.
I'm with you here, the same slack-jawed knuckle-dragging Luddite. I'm not happy about the state of the world, but it is what it is.
I am working on it alone and don't have access or extra money to pay an actual engineer. If I can squeeze 10% of what an actual engineer would've told me, for $20/month I'm in.
And it's not an either-or game, I can have some rough, potentially totally stupid ideas and then validate them with an engineer, instead of paying $10k to make it from scratch.
Agree with asking a human, that seems like a simple question for someone in that space. I'd only use the chatbot to research the web for both professional and DIY active forums, discords, and other niche online communities in the following categories: [type-of?] engineering, 3d printing, weightlifting, and body-building
Once you have that list browse through them to find which ones seem friendly to new users asking a one off engineering question to probably never being heard from again; then post your technical question about the thing and wait, probably for much longer than an LLM but if an answer comes back it's probably more useful. I included weightlifting/body building since its barbell related -- there is a level of technical detail and precision many users in those spaces have when it comes to anything workout related, including equipment and modifications.
Other than that, set your llm to gacha-game agent-mode and connect it to some cad tools (I assume they exist, not my area). Then have it iterate on multiple approaches to the specs until it meets the requirements for each of them and spilts outs paragraphs of verbose self-congratulations and a cache of files for you to review. Maybe it will reward you with the solution you are looking for the first time (w/ the added rare chance it completes all the technical work to your standard, including all of the proper working files to feed a 3d printer)
I would consider asking it to model its proposed designs in openscad or build123d (ideally something query-able). Then have it render and examine plausibility / suitability from different angles. Get it to render the part in use also and give instructions to think about forces and motion.
Recommend doing this in a coding harness not a chat box.
The reason I think you might have more success with this is that the model is mostly thinking about the part in words, which it can convert to a part design in CAD in code. LLMs are really good at coding. Also means it can use relative positioning and relationships.
You will be able to iterate more easily, compare things, compute properties, commit to git etc. The process is more reproducible and steerable than generative production of images.
When the LLM can look at renders of the geometry it generated, it’s easier for it to discriminate when it’s producing nonsense like misaligned parts, things that don’t fit, etc. It’s still going to kind of suck, but it will be better. The whole process of code -> render -> inspect forces the model to put up or shut up and provides grounding. Meshes > bloviating.
As far as I know today's LLMs don't have a "visual imagination" but a process like this could be a slow approximation of one. They clearly do have SOME spatial understanding (pelican tests show us that!) but it feels really non-human.
One thing missing from this is kinesthetics. Personally I am mostly not thinking in accurate visuals in mechanical design. I am imagining how the parts feel and kind of how they move and what slips first and what bends and what feels heavy. Imagining what my hands would feel. But I don't think I trust LLMs to evaluate that stuff by writing simulation code yet.
Since it's the morning I thought I would ask Claude to create an example. This is just a first pass; it will be totally wrong but demonstrates the general idea. I don't know anything about barbells or your sensor: https://claude.ai/code/artifact/1f1a8a12-e5b2-4ee8-b20c-7da0...
I'm not sure from your description if you control the geometry of the sensor part (i.e, can the clamp be integral to the sensor housing or does it need to be a separate part) also ignores the internals, etc etc.
One thing I noticed is that off the bat, it did think about the assembly in general terms but would need guidance to think harder about FDM limitations and layer orientation etc. These are not good designs for printing. A good dev loop and git history help with these kinds of revisions.
The general principle is that if your domain is verifiable at all, give the model tools and a workflow that constrain and check its output. You want the LLM arguing with the geometry kernel instead of you.
To fully close the loop you print parts as fast and possible and concretely see where they suck.
I guess my v0 would be notches around the mating end to allow for compression, and a hose clamp. Maybe split shaft collars off aliexpress for a fancier look. The design space of barbell collars is a big set of worked solutions to a very similar problem.