Back to blog
Articles
Articles
September 27, 2023
·
5 min read

Rivet Is An Open-Source Visual AI Programming Environment

September 27, 2023
|
5 min read

Latest content

Tutorials
5 min read

Optimizing RAG with Knowledge Base Maintenance

How to find gaps between knowledge base content and real user questions.
April 23, 2024
Tutorials
4 min read

Scaling Quality Assurance with HumanFirst and Google Cloud

How to use HumanFirst with Vertex AI to test, improve, and trust agent performance.
March 14, 2024
Announcements
2 min read

Full Circle: HumanFirst Welcomes Maeghan Smulders as COO

Personal and professional history might not repeat, but it certainly rhymes. I’m thrilled to join the team at HumanFirst, and reconnect with a team of founders I not only trust, but deeply admire.
February 13, 2024
Tutorials
4 min read

Accelerating Data Analysis with HumanFirst and Google Cloud

How to use HumanFirst with CCAI-generated data to accelerate data analysis.
January 24, 2024
Tutorials
4 min read

Exploring Contact Center Data with HumanFirst and Google Cloud

How to use HumanFirst with CCAI-generated data to streamline topic modeling.
January 11, 2024
Articles
5 min

Building In Alignment: The Role of Observability in LLM-Led Conversational Design

Building In Alignment: The Role of Observability in LLM-Led Conversational Design
December 6, 2023
Articles
6 min read

What Is The Future Of Prompt Engineering?

The skill of Prompt Engineering has been touted as the ultimate skill of the future. But, will prompt engineering be around in the near future? In this article I attempt to decompose how the future LLM interface might look like…considering it will be conversational.
September 26, 2023
Articles
4 min read

LLM Drift

A recent study coined the term LLM Drift. LLM Drift is definite changes in LLM responses and behaviour, over a relatively short period of time.
September 25, 2023
Articles
5 min read

LangChain Hub

A few days ago LangChain launched the LangChain Hub…
September 21, 2023
Tutorials
5 min read

Optimizing RAG with Knowledge Base Maintenance

How to find gaps between knowledge base content and real user questions.
April 23, 2024
Tutorials
4 min read

Scaling Quality Assurance with HumanFirst and Google Cloud

How to use HumanFirst with Vertex AI to test, improve, and trust agent performance.
March 14, 2024
Announcements
2 min read

Full Circle: HumanFirst Welcomes Maeghan Smulders as COO

Personal and professional history might not repeat, but it certainly rhymes. I’m thrilled to join the team at HumanFirst, and reconnect with a team of founders I not only trust, but deeply admire.
February 13, 2024

Let your data drive.

Articles

Rivet Is An Open-Source Visual AI Programming Environment

COBUS GREYLING
September 27, 2023
.
5 min read

Rivet is suited for building complex agents with LLM Prompts, and it was Open Sourced recently.

In essence Rivet is a no code to low code prompt chaining GUI which is focussed on building complex flows, which can split (run processes in parallel) and converge again.

Data handling and transformation plays a big part in the Rivet UI, together with vector stores and KNN. Together with conditions, and numerous conditional nodes. Rivet refers to flows as graphs, as opposed to a chain, application or flow. Rivet does not have a vast array of choices in terms of vector stores, LLMs and the like.

It does seem like Rivet’s focus is more on building complex flows, which can be optimised and re-used as components.

Rivet does not have any autonomous agent implementation tools like the LangChain tools.

Considering the current LLM tooling landscape

Rivet is joining a host of OpenSourced LLM-based, visual, flow builders; in the form of Flowise, LangFlow and Botpress. Then there are a number of commercial offerings like Voiceflow, Stack, Dust and others.

LLM API Build Frameworks

And below you see a collection of Chatbot Development Frameworks and a list of these frameworks which has included LLM-based functionality in their offering.

Back to Rivet…

Below is a matrix with all the various node categories and the sub-nodes available within Rivet. there is significant focus on data handling, logic and vector store functionality.

Interesting Functionality

Split

Within the settings sections of a node, there is a toggle option to switch Spliton or off for a node. Splitting a node is a tool to enable parallel execution.

For example, when a directory of files is read, the files can be read in a parallel fashion as apposed to in series. Parallel execution of chains can also be enabled; splitting chains make for parallel processing and more complex implementations.

Joining

Joining of multiple flows into one is also possible via the following nodes:

  • Chat Node, Extract Object Path, Pop Node and Code Node.

Trivet

I did not look at this in detail, but Trivet is a library for running tests on Rivet applications. Tests can be run via the GUI and programatically.

The Trivet tab is at the top of the Rivet GUI and fully integrated from a UI perspective.

General Observations

What would be convenient is, when hovering over a input or output point for a node, a list of possible or most likely nodes to connect would be convenient.

Input and output tokens are shown continuously, considering that cost (together with latency) is one of the biggest concerns, this is helpful.

Unlike other open-sourced offerings like LangFlow and Flowise, Rivet does not make provision for third party commercial products. For instances an array of vector stores are not offered, or LLMs.

Rivet uses OpenAI’s LLMs as a base for generative applications, and Pinecone is also used as a vector store and a KNN node. As the critical mass of users build, more features and plugins are sure to be added.

Built-in plug-ins exist in the form of Anthropic, AssemblyAI and Autoevals.

Areas of the documentation are not populated, I would argue that Revit will challenge more basic workflow builders like Vellum. But lacks the absolute feature rich environments like LangChain based GUI builders.

The subgraphs functionality allows for a graph to be used as a function in another graph. This principle is analogous to functions or sub-dialogs in VoiceXML 2.0.

I’m currently the Chief Evangelist @ HumanFirst. I explore & write about all things at the intersection of AI & language; ranging from LLMs, Chatbots, Voicebots, Development Frameworks, Data-Centric latent spaces & more.

Subscribe to HumanFirst Blog

Get the latest posts delivered right to your inbox