5 ms·
Show HN: Rivet – open-source AI Agent dev env with real-world applications
We just launched Rivet, the open-source visual AI programming environment! We built Rivet, because we were building complex AI Agent applications at Ironclad. It unlocked our abilities here, and we're excited to make available to the entire community.
Backstory: A few months ago, inspired by things like LangChain and LlamaIndex, we started building an AI agent that could work with legal contracts. Unfortunately, we couldn't just use retrieval augmented generation (RAG), because a lot of contracts are basically identical (many chunks with near-identical embeddings), except for a few key details. So, we turned to things like ReAct and AutoGPT for inspiration.
At first, things went great. We were adding agent capabilities, doing chain-of-thought prompting.
But then we hit a wall.
The agent became too complex. We had debugger breakpoints on almost every line of code, but we still had no idea where the agent was breaking. Every change we made destabilized something else. After two weeks of fumbling, I decided to end the project.
But one of my teammates, Andy, didn't give up.
The following week, he showed me v0 of Rivet. He'd used it to refactor and improve our existing agent. I was skeptical... it just seemed like a visual programming environment, and I was not a fan. But I gave it a shot, and suddenly found myself able to add new skills to the agent, debug brittle areas with ease, and update prompts with confidence.
Rivet is a game-changer. And more than that, it makes building with LLMs super fun.
What exactly makes it different?
First, the debugger is incredible. You have to experience it to believe it. You can update a graph, and then immediately run it, and see where it succeeded or failed. Even better: you can attach Rivet as a remote debugger, and watch your agent graphs execute in your app.
Second, visual programming is actually a game-changer for prompting LLMs. I don't know why exactly, but it's way easier to understand and organize your work when you have an extra dimension to work with.
Finally, Rivet is built to be embedded into a larger application (TypeScript for now, but we've also found a way to run it in Python). Beyond importing Rivet as a dependency, you can also define "external functions" dynamically at run-time. It feels pretty sketchy to give a LLM a key and unfettered access to an API. With Rivet, you can give it access to a specific set of defined functions, potentially pre-scoped to the access level you want.
...Sorry that was long. If you read this whole thing, thank you!
We're really excited to hear what you think! We just launched our first Rivet-based application at Ironclad, and we've been working with companies like Sourcegraph, Attentive, AssemblyAI, Bento, and Willow to make Rivet useful for others.
- denidoman 3y agoNice app, and thank you for OSS! Am I right, that the following 2 services solve the same product in a similar way: https://github.com/logspace-ai/langflow https://github.com/logspace-ai/langflow , https://github.com/FlowiseAI/Flowise https://github.com/FlowiseAI/Flowise ? It's absolutely ok if the answer is "Yes", I think that in this hot market each product will find a place. And competition is also motivate :) It would be also nice to add Rivet here: https://github.com/kyrolabs/awesome-langchain#low-code https://github.com/kyrolabs/awesome-langchain#low-code
- gogwilt 3y agoThanks! Yes, I think Rivet, langflow, and flowise all came to the idea of visual programming for LLMs in parallel. I like to think it's a good sign that visual programming is a powerful paradigm here :) I do think Rivet hits a pretty different use-case. Beyond being in the TypeScript ecosystem, Rivet's remote debugging and embedability are pretty unique, and super critical!
- emwang 3y agofiguring out how to iterate rapidly with our AI efforts was poking around in the dark until we got Rivet set up and could start to isolate variables. So this has been really exciting to see.
- gogwilt 3y agoThanks! Super impressed by your team's application of AI!
- bbischof 3y agoSuper interesting. I haven’t seen much chain support tech for ts folk which is a hard requirement for more production applications.
- gogwilt 3y agoThanks! 100%. I think the TS support has also helped us innovate on the UX side of things much more quickly.