<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>partforge</title><description>What&apos;s new in partforge, and what we are working on.</description><link>https://www.partforge.ai/</link><language>en</language><item><title>New model day: we tested both of them</title><link>https://www.partforge.ai/blog/2026-09-23-new-model-day/</link><guid isPermaLink="true">https://www.partforge.ai/blog/2026-09-23-new-model-day/</guid><description>Anthropic and OpenAI both shipped a new model yesterday. We ran them through our hard cases overnight. Here is what changed, and why partforge is still on Gemini.</description><pubDate>Wed, 23 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;&lt;a href=&quot;https://www.partforge.ai/evals&quot;&gt;&lt;img src=&quot;https://limvzaiojtxngpvgcsog.supabase.co/storage/v1/object/public/blog-images/53bdd235-19a8-4913-b784-66cc96d25b0a.jpg&quot; alt=&quot;LLM CAD Harness Evals&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Anthropic released Opus 5.5 yesterday. A few hours later OpenAI released
GPT-6 Sol and GPT-6 Luna. Yay &amp;#39;new model day!&amp;#39; Two frontier labs, one afternoon.&lt;/p&gt;
&lt;p&gt;We have a standing set of hard CAD tasks we run every model through for partforge, so we started a run yesterday evening. This is what came back.&lt;/p&gt;
&lt;p&gt;The short version: Opus 5.5 is dramatically faster and cheaper than the Opus before it, GPT-6 Sol gives you more for the same money, Opus 5.5 is the closest anything has come to beating our default, and we are still shipping Gemini 3.8 Flash as the default anyway.&lt;/p&gt;
&lt;h2&gt;What we actually test&lt;/h2&gt;
&lt;p&gt;This eval was 26 hard modeling tasks. Things like a bearing seat with a
counterbore, or a part described only by a photo. Each model tries each task
three times, and every attempt is checked three ways: does the geometry
measure correctly, did the model work sensibly to get there, and does it look
right to a pair of independent reviewer models. Then a human (I) go through the results
by hand, look at the renders, and rank the models against each other on every
one of the 26 tasks.&lt;/p&gt;
&lt;p&gt;It is a small set on purpose. Easy tasks stopped telling us anything useful
months ago. All the frontier models pass them every time.&lt;/p&gt;
&lt;p&gt;You can read the whole run, every attempt and every render, at
&lt;a href=&quot;https://www.partforge.ai/evals&quot;&gt;partforge.ai/evals&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Opus 5.5 got dramatically better&lt;/h2&gt;
&lt;p&gt;This is the headline. On the same tasks, compared to Opus 5 two weeks ago:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;About 40% cheaper per task.&lt;/li&gt;
&lt;li&gt;Roughly a third of the time. Opus 5 averaged four and a half minutes of
model time per task. Opus 5.5 averaged a minute and a half.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Anthropic also cut the list price about 20%, so some of that is the price tag
and the rest is Opus 5.5 simply doing less thrashing to get to an answer.&lt;/p&gt;
&lt;p&gt;It also posted the best overall score in this run, narrowly ahead of Gemini.
It is not the best we have ever measured on these tasks (Fable 5.1 scored
higher two weeks ago, and was not in this run), but it is the strongest
showing from a model we would consider making the default.&lt;/p&gt;
&lt;p&gt;One of our harder evals is one that asks the model to &lt;a href=&quot;https://www.partforge.ai/evals/tasks/create-photo-motor-bell-unstated&quot;&gt;generate a motor spoke assembly&lt;/a&gt; based on complicated photo with only half the motor in the frame. Opus 5.5 got the closest to the actual geometry yet in all the models we&amp;#39;ve tested.&lt;/p&gt;
&lt;h2&gt;GPT-6 Sol quietly got better value&lt;/h2&gt;
&lt;p&gt;Sol is the interesting one, because on the surface almost nothing changed.&lt;/p&gt;
&lt;p&gt;OpenAI cut the price about 20% on the way in and a third on the way out. But GPT-6 Sol also does more work per task than GPT-5.6 Sol did. It reads about half as much again, takes an extra step or two, and thinks a little harder on the tasks it finds difficult.&lt;/p&gt;
&lt;p&gt;Those two cancel out almost exactly. A hard task cost us 25.7 cents on the old Sol and 25.2 cents on the new one. Call it the same.&lt;/p&gt;
&lt;p&gt;What you get for that same quarter is a slightly better part. The score nudged up, and the share of attempts that built and ran cleanly held steady at 92%. So the honest summary is not &amp;quot;cheaper&amp;quot;, it is &amp;quot;more model for your money&amp;quot;, which is usually the better trade anyway.&lt;/p&gt;
&lt;p&gt;Worth one piece of context: over the same two weeks, Gemini, which did not change at all, got 16% more expensive on these exact tasks as our test set and prompts moved around it. Holding flat in that window is better than it sounds.&lt;/p&gt;
&lt;h2&gt;So why are we still on Gemini?&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Cost.&lt;/strong&gt; The number we care about is not price per task, it is price per task
that actually came out right. Gemini 3.8 Flash costs about $0.34 per solved
task. GPT-6 Sol is about $0.48. Opus 5.5 is about $0.72, a bit over double
Gemini. When you are iterating on a part, you do not run one prompt, you run
fifteen, and that gap compounds fast.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;It is still the most reliable.&lt;/strong&gt; Opus 5.5 wins our overall score, but Gemini
wins the two measures that matter most day to day: how often a part passes
every single check with nothing wrong (64% versus 58%), and how often it
builds and runs at all. In my own ranking pass the two were a hair apart, with
Gemini barely ahead. Opus 5.5 is close enough that this could flip next month.
It has not flipped yet.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;And it feels faster, even when it is not.&lt;/strong&gt; This one surprised us. Opus 5.5
finishes a task in less total time than Gemini does. It still feels slower to
use.&lt;/p&gt;
&lt;p&gt;Gemini works in lots of small steps, around eight per task, averaging 17
seconds each. Opus works in about four big ones, averaging 23 seconds each,
and its slowest steps run past two minutes. Worse, Anthropic&amp;#39;s models often
send us no visible thinking at all during those stretches, so there is nothing
to show you. You sit watching a still screen for two minutes and then the part
changes all at once. We could improve that with an animating asterisk but we think showing real thinking and clues to what&amp;#39;s going on is a real benefit to the user experience.&lt;/p&gt;
&lt;p&gt;With Gemini, something on screen moves every fifteen or twenty seconds. You
can see it working, and you can tell early when it has misunderstood you and
stop it. A model that is quicker on paper but silent while it works does not
feel quick and hurts the experience.&lt;/p&gt;
&lt;h2&gt;Try them yourself&lt;/h2&gt;
&lt;p&gt;None of this has to be our call. Every model here is selectable in partforge,
including Opus 5.5 and both new GPT-6 models. Turn on advanced models in the settings, open the model picker next to the chat box and switch.&lt;/p&gt;
&lt;p&gt;If you bring your own API key from Anthropic, OpenAI or OpenRouter, those runs
go on your key and your bill, and we do not meter them at all.&lt;/p&gt;
&lt;p&gt;We will run this again the next time somebody ships something. Which, at the
current rate probably has already happened.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;One honest caveat on the numbers above: the two runs we are comparing are two
weeks apart, and our own test harness changed between them. Gemini, which did
not change at all, came out 16% pricier and slower on the second run. So treat
the before and after figures as a general trend rather than exact measurements. The head to head numbers within the new run are directly
comparable.&lt;/em&gt;&lt;/p&gt;
</content:encoded><author>Scott Sykora</author></item><item><title>Three forges worth taking apart</title><link>https://www.partforge.ai/blog/2026-09-19-three-forges-worth-taking-apart/</link><guid isPermaLink="true">https://www.partforge.ai/blog/2026-09-19-three-forges-worth-taking-apart/</guid><description>An altoids organizer, hexagonal chainmail and a milk crate for your sd cards.</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;h2&gt;A cute little toolbox for your mints tin&lt;/h2&gt;
&lt;p&gt;[Tackle box](&lt;a href=&quot;https://www.partforge.ai/parts/mint-tin-toolbox--5f078467e06e&quot;&gt;https://www.partforge.ai/parts/mint-tin-toolbox--5f078467e06e&lt;/a&gt; — a toolbox for your Altoids tin. This cute little box acts as an organizer for your tiniest things. And best of all, you can change the arrangement of the compartments to fit exactly what you want to keep sorted.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://limvzaiojtxngpvgcsog.supabase.co/storage/v1/object/public/blog-images/ca919e94-5904-4f49-a8aa-17c5586c4cbe.jpg&quot; alt=&quot;Print-in-place hexagonal chain mail, interlocking rings laid out flat&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;&lt;/p&gt;
&lt;h2&gt;Chain mail, printed in place&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;https://www.partforge.ai/parts/hexagonal-chain-mail--ffacb618e314&quot;&gt;Hexagonal chain mail&lt;/a&gt;
is interlocking torus rings on polygonal hubs, laid out flat and printed in one
go. Nothing is assembled afterwards. It is also the clearest argument for
parametric geometry in the library — the ring count is a number, not a week of
modelling.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://limvzaiojtxngpvgcsog.supabase.co/storage/v1/object/public/blog-images/6e8b5590-a992-4616-9bc1-5fb0438edc6a.jpg&quot; alt=&quot;A miniature milk crate holding full-size SD cards upright&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;&lt;/p&gt;
&lt;h2&gt;A milk crate for SD cards&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;https://www.partforge.ai/parts/mini-milk-crate-sd-card-holder--7dab99790dff&quot;&gt;Mini milk crate SD card holder&lt;/a&gt;
— a dense 45-degree diamond lattice, reinforced corners and handholds, at a size
that holds full-size cards upright. A joke that had to be engineered.&lt;/p&gt;
</content:encoded><author>Scott Sykora</author></item><item><title>A forge is a program, not a mesh</title><link>https://www.partforge.ai/blog/2026-09-16-a-forge-is-a-program/</link><guid isPermaLink="true">https://www.partforge.ai/blog/2026-09-16-a-forge-is-a-program/</guid><description>Why the thing you get back is source code that produces geometry — what that buys you, and the one thing it costs.</description><pubDate>Wed, 16 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;A forge is not a 3D model. It is a small program that builds one.&lt;/p&gt;
&lt;p&gt;That sounds like a minor detail until you want to change something. With a
normal 3D file, making the wall 2mm thicker means opening it up and modelling
it again. With a program, it is a number. You change the number and everything
that depends on it moves too. The part was never a frozen shape, it
was a set of rules for making that shape.&lt;/p&gt;
&lt;p&gt;Here is what that actually gets you.&lt;/p&gt;
&lt;h2&gt;The source is yours, and it runs without us&lt;/h2&gt;
&lt;p&gt;Every forge is code, and you can take it. Published forges can be cloned with
plain git, no account and no special tool:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;git clone https://www.partforge.ai/git/your-part.git
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;What you get is a folder of readable JavaScript. It runs on
&lt;a href=&quot;https://github.com/pixiteapps/partforge&quot;&gt;partforge&lt;/a&gt;, which is MIT licensed and
on npm, and the geometry underneath it is open source too. There is no hidden
format, no license server, and nothing that stops working if we do. You can
host the result yourself on any static web host, and a few people already have.&lt;/p&gt;
&lt;p&gt;This is the part we care most about. You should not have to trust us to keep
owning the thing you made.&lt;/p&gt;
&lt;h2&gt;Any agent can pick it up where you left off&lt;/h2&gt;
&lt;p&gt;Because a forge is ordinary code, it is not tied to the assistant that wrote
it. Clone it, point Claude Code or any other coding agent at the folder, and
ask for changes. It reads the same source ours did.&lt;/p&gt;
&lt;p&gt;That works in the other direction too. The part is described in plain
JavaScript, so an agent can translate it. If your workshop runs on OpenSCAD, or
Python, or something in-house, you can ask for a version in that language and
get something a person on your team can actually maintain. The geometry is
written down as intent (a bore of this diameter, a fillet of this radius),
which is the kind of thing that survives a translation. A mesh is not, because
by the time a shape is a pile of triangles, the reasons are gone.&lt;/p&gt;
&lt;h2&gt;Changes stay small&lt;/h2&gt;
&lt;p&gt;This is the quiet one, and it might be the biggest.&lt;/p&gt;
&lt;p&gt;When you ask for a tweak, the assistant does not rebuild your part from
scratch. It edits the lines that need to change, the same way a developer would
patch a file. The rest of your part stays exactly as it was.&lt;/p&gt;
&lt;p&gt;That matters more than it sounds. It means the twelfth change does not undo the
third one. It means asking for a bigger bore does not quietly restyle the
flange you spent twenty minutes getting right. And it means you can keep going
for as long as you like, because each step is a small edit to something real,
not a fresh roll of the dice.&lt;/p&gt;
&lt;h2&gt;Some numbers become dials&lt;/h2&gt;
&lt;p&gt;A forge can hand you specific numbers to play with. The
&lt;a href=&quot;https://www.partforge.ai/parts/printable-nut-bolt-with-configurable-knob--88a8c24c63f4&quot;&gt;printable nut and bolt&lt;/a&gt;
in our library offers a few head styles: a classic hex, a smooth knob, knobs
with vertical ribs. Those are not three separate models. They are one model
with a choice in it.&lt;/p&gt;
&lt;p&gt;When a forge exposes controls like that, they show up beside the viewer. Move
one and the part rebuilds in front of you. Keep the value and it gets written
back into the source, so the next person to open it starts where you finished.&lt;/p&gt;
&lt;p&gt;You can ask for this directly. &amp;quot;Make the wall thickness adjustable&amp;quot; or &amp;quot;let me
change the bolt size from the panel&amp;quot; is a normal thing to say, and it is often
the most useful thing to say right before you share a part with someone else.&lt;/p&gt;
&lt;h2&gt;What it costs&lt;/h2&gt;
&lt;p&gt;One honest downside: a program can fail to build, and a plain 3D file cannot.
Every so often you will get an error where you expected a shape.&lt;/p&gt;
&lt;p&gt;That is the trade. Geometry that stays editable has to be computed fresh every
time, from rules that have to hold together. When it breaks you can ask for a
fix, and usually the error says what went wrong. But it is a real cost and we
would rather name it than pretend it away.&lt;/p&gt;
&lt;h2&gt;Exports are still just exports&lt;/h2&gt;
&lt;p&gt;None of this makes what you print exotic. Export an STL for your printer, or a
STEP file if you need exact surfaces for CAD. They are the same files you would
have got by modelling the part by hand.&lt;/p&gt;
&lt;p&gt;The difference is what you still have afterwards.&lt;/p&gt;
</content:encoded><author>Scott Sykora</author></item><item><title>Introducing Partforge</title><link>https://www.partforge.ai/blog/welcome/</link><guid isPermaLink="true">https://www.partforge.ai/blog/welcome/</guid><description>Why we made partforge, how it works, and the experiments we ran along the way.</description><pubDate>Sat, 12 Sep 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;We want to tell you about partforge, and we want to be concise (because attention spans), but comprehensive (because the details are actually pretty cool).&lt;/p&gt;
&lt;p&gt;So, here’s the TLDR: our company, Pixite, is a small team that typically makes creative apps for broad audiences. But when our lead developer, Scott, started dabbling with making robotic arms in his free time (yes, we know, he is very cool), he got frustrated with the learning curve for the CAD needed in 3D printing, and he decided to make a user-friendly webtool that allows you to design and adjust parts in real time, using AI.&lt;/p&gt;
&lt;p&gt;Basically, if you have a part in mind, you can type what you want, and partforge will generate an adjustable 3D rendering. Something look off? Tell it what you want, and it’ll tweak it. You can also upload a photo or sketch. When it’s ready, you can print it. &lt;/p&gt;
&lt;p&gt;That’s not all: Your project becomes its own “forge” and joins partforge’s collection of open source forges that can be iterated upon in the community – license permitting.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Which agent is the best at 3D rendering? We’ve got numbers for ya&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;While creating partforge, Scott ran a bunch (like, a bunch) of &lt;a href=&quot;https://https://partforge.ai/evals&quot;&gt;tests&lt;/a&gt; to see which agent handled vision, tool use and 3D geometry the best. He ran 54 tasks through five agents with 675 attempts in all. Each attempt was graded on whether it successfully built, on measured geometry, and on a checklist an AI judge answered from the renders. &lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://partforge.ai/evals&quot;&gt;&lt;img src=&quot;https://limvzaiojtxngpvgcsog.supabase.co/storage/v1/object/public/blog-images/d4bcfdae-a839-4f2d-88f2-7d76ddf6e94f.jpg&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The winner…Gemini 3.8 Flash. Gemini 3.8 Flash was ranked highest by the human judges (yes, there were some human-AI judge disagreements) – it’s fast, affordable, and produces solid results. We got pretty deep into the experiment, and you can read more about that &lt;a href=&quot;https://partforge.ai/evals&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Come play&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Come &lt;a href=&quot;https://partforge.ai&quot;&gt;try partforge out&lt;/a&gt;! Make something cool, without spending a ton of time wrangling CAD.&lt;/p&gt;
</content:encoded><author>Siobhan Stewart</author></item></channel></rss>