In such systems, producing code is the easy part, verification is hard. Verification via test cases just feels like the same agent validating its own assumptions.
Wondering what the actual verification loop looks like once you start taking these systems to production.
I've had an idea for an automated verification for a while, but too busy to implement it.
For every property of the system, implement a mock that simulates a system that works, and multiple variations with forseeable bugs (models are fairly good at predicting possible bugs). Then, write a unit tests that pass on the working simulation and fail on the buggy simulations.
This way model ensures reasonably well that the unit tests test what they're supposed to. Then, you use those tests as a verification to guide the model to implement the functionality.
This approach relies on the assumption that the model can design a reasonable architecture composed of independently-testable modules. In my experience, frontier models should be able to do that.
We’re actually working on this problem. It’s an interesting space to be in. Initially started with static code verification, but now we’re expanding into the area of behavioral verification (does design intent match behavior) across the application lifecycle. Currently working on getting some open source stuff ready. Check us out (https://bohmian.ai - don’t mean for those to be a plug, it’s just relevant)
It's really funny. I would read HN headlines about PhD research in the area of https://en.wikipedia.org/wiki/Correctness_(computer_science) and it always seemed really boring
Now it is obvious to me how important this work is
Some people have alternative models review each other's output.
The future might be parallel attempts and selecting the best-of-N solutions.
[flagged]
I just wrote a Twitter thread about how LLMs are like chainsaws [0]
In short:
- they are very powerful
- beginners feel like they are just as good as experts
- but they can cause a LOT of damage if you don't know what you are doing
- experts will get way more done and beginners may cut off a limb or drop a tree on their car
0 - https://x.com/alexpotato/status/2090872063464509912?s=20