rivet icon indicating copy to clipboard operation
rivet copied to clipboard

[Feature]: Retrieval Augmented Generation for function calling

Open andraz opened this issue 2 years ago • 2 comments

Feature Request

As demonstrated in this video https://youtu.be/QMaWfbosR_E there is a potential to use Retrieval Augmented Generation to redirect LLM calls to our own functions for specific use cases, where LLM could fail to respond correctly (for example a web search, a hard math calculation or a fresh summary of URL contents)

How could we achieve this feature in the spirit of Rivet?

We could have a block for:

  • text to train alternative RAG paths on LLM (with cached output) - input and output nodes are both LLM

routed into block for:

  • calling text on new model with applied training (new exit nodes appear for distinct functions trained in previous block)

routed into multiple blocks for:

  • function calls (these are tiny python code snippets to be executed when called)

Code of Conduct

  • [X] I agree to follow this project's Code of Conduct

andraz avatar Sep 14 '23 09:09 andraz

Extra video for RAG use on Llama 2: https://youtu.be/ypzmPwLH_Q4

andraz avatar Sep 14 '23 09:09 andraz

Hey @andraz, RAG should be supported in Rivet with the existing nodes - you just have to set up the chains yourself is all.

By "a block for text to train alternative RAG paths on LLM" do you mean like the Vector KNN node that find the KNN given an input vector?

routed into multiple blocks for function calls

This should be achievable using the Match node right now.

abrenneke avatar Sep 14 '23 17:09 abrenneke