Cmpnd has released dspy-wsp, a prototype DSPy optimizer that lets a frontier AI model edit a smaller model's weights without gradients, the company said in a blog post1.

Cmpnd reports accuracy gains of 1.9 to 16.1 points on five small decision models from the edits alone, and 6.5 to 20.0 points when combined with a second DSPy optimizer. Every figure comes from Cmpnd's own tests, and the gains vary widely with the choice of writer model and with how much access the writer gets.

How it works

The technique is called weight-space programming. Cmpnd's blog post says Rikiya Takehi, Jayden Teoh, Alex Zhang and Omar Khattab showed "last week" that frontier models can edit smaller models' weights directly. The GitHub repository2 credits them with the paper "Sparks of Weight-Space Programming" (MIT CSAIL, 2026). The paper was not among the documents reviewed, so its review status is unknown and its claims are as Cmpnd describes them.

According to the repository, the paper's Experiment 8 had a frontier model edit 0.016% of Qwen3.5-0.8B's weights, raising MATH-500 from 7.9% to 48.1% by removing a direction that drove the model's looping. Cmpnd's blog post gives the same figures without the detail about the direction.

In dspy-wsp, a "writer" LLM works in turns inside a sandboxed Python kernel. It reads and edits the student model's weights, and tests edits through a forward-pass tool that draws on a fixed budget. When the budget runs out, the writer's best edit becomes the patch, according to the blog post.

Per the PyPI page3, the patch stores only changed tensors plus SHA-256 hashes of the base and edited versions. It can also be written out as a full checkpoint. The kernel has no GPU and, under the sandbox, no network. Saving edits to embeddings, the output layer or the final norm is refused, as are edits that only rescale a whole tensor.

On Linux the sandbox relies on bubblewrap. For Ubuntu 24.04, the README tells users to set kernel.apparmor_restrict_unprivileged_userns=0 with sysctl. On macOS it uses the built-in sandbox-exec.

What Cmpnd's tests show

Cmpnd tested five open decision models, from 0.6B to 9B parameters, on the Typed Decisions benchmark. The writer was GPT-6-Astra at maximum reasoning effort, with 25 forward passes per model. Each edited model was scored on 400 held-out test cases, with standard errors of 0.7 to 1.4 points, per the repository.

The blog says WeightSpace alone added 1.9 to 16.1 points. Combined with ReAnchor, which refits each question's decision thresholds and changes no weights, the gain was 6.5 to 20.0 points.

The repository gives these model-level results:

  • d1-omni-600M: +16.1 points from WeightSpace alone.
  • Strands Decider 2B: ReAnchor alone gained 13.7 points and WeightSpace alone 10.4. Together they gained 20.0, the largest of the five.
  • Clef-Flash (9B): WeightSpace alone gained 1.9 points on returned answers. With ReAnchor the total was 6.5.

A social post by Marktechpost4 summarizing the release adds figures for d1-omni-600M: 50.9% before editing, 66.9% with WeightSpace and 69.1% (+18.3) with ReAnchor stacked. The retrieved Cmpnd pages do not state these.

Each run took 68 to 167 minutes and cost $5.42 to $10.78 in writer calls, per the repository. The Marktechpost post gives a narrower range of $5.42 to $7.63 and 78 to 167 minutes. The blog says about $5 to $10 per model.

Limits and caveats

The results depend heavily on the writer. With GPT-6.1-sol, WeightSpace alone gained 5.8, 12.1 and −0.6 points on d1-omni-600M, NanoJev and d1-2B. With GPT-6-Astra the gains were 16.1, 13.3 and 13.4, according to the repository.

The access the writer gets also matters. In Cmpnd's runs the writer could recompute the decision head in its kernel. The paper's writer could run the network only through the forward-pass tool. Cmpnd reran d1-omni-600M under the paper's rule, and the edit gained 2.8 ± 0.7 points alone and added nothing on top of ReAnchor.

Cmpnd's unoptimized scores also differ from the benchmark's public leaderboard. The repository lists d1-2B at 60.6% against the leaderboard's 63.7%, and Clef-Flash at 68.8% against 71.0%. Cmpnd attributes the gap to its different request format and to scoring the program's returned answer rather than the most likely option.

The repository adds that an edited model has practiced on the benchmark's train split. It therefore belongs with the leaderboard's fitted models, not its zero-shot table.

The blog calls dspy-wsp "very experimental" and says it has been tested in only a handful of environments and model families. It also says editing runs on text-generating LLMs are long and costly and "may not produce compelling results." Cmpnd asks users to report problems and suggest model families through GitHub issues or the DSPy Discord.

Version 0.2.0 is on PyPI and requires Python 3.11 or later and an API key for the writer model. According to the blog, it works with DSPy 3.5. The Marktechpost post says the license is MIT, which the retrieved Cmpnd pages do not state.