|
## Generative Representational Instruction Tuning (GRIT) Example |
|
[gritlm] a model which can generate embeddings as well as "normal" text |
|
generation depending on the instructions in the prompt. |
|
|
|
* Paper: https://arxiv.org/pdf/2402.09906.pdf |
|
|
|
### Retrieval-Augmented Generation (RAG) use case |
|
One use case for `gritlm` is to use it with RAG. If we recall how RAG works is |
|
that we take documents that we want to use as context, to ground the large |
|
language model (LLM), and we create token embeddings for them. We then store |
|
these token embeddings in a vector database. |
|
|
|
When we perform a query, prompt the LLM, we will first create token embeddings |
|
for the query and then search the vector database to retrieve the most |
|
similar vectors, and return those documents so they can be passed to the LLM as |
|
context. Then the query and the context will be passed to the LLM which will |
|
have to _again_ create token embeddings for the query. But because gritlm is used |
|
the first query can be cached and the second query tokenization generation does |
|
not have to be performed at all. |
|
|
|
### Running the example |
|
Download a Grit model: |
|
```console |
|
$ scripts/hf.sh --repo cohesionet/GritLM-7B_gguf --file gritlm-7b_q4_1.gguf --outdir models |
|
``` |
|
|
|
Run the example using the downloaded model: |
|
```console |
|
$ ./llama-gritlm -m models/gritlm-7b_q4_1.gguf |
|
|
|
Cosine similarity between "Bitcoin: A Peer-to-Peer Electronic Cash System" and "A purely peer-to-peer version of electronic cash w" is: 0.605 |
|
Cosine similarity between "Bitcoin: A Peer-to-Peer Electronic Cash System" and "All text-based language problems can be reduced to" is: 0.103 |
|
Cosine similarity between "Generative Representational Instruction Tuning" and "A purely peer-to-peer version of electronic cash w" is: 0.112 |
|
Cosine similarity between "Generative Representational Instruction Tuning" and "All text-based language problems can be reduced to" is: 0.547 |
|
|
|
Oh, brave adventurer, who dared to climb |
|
The lofty peak of Mt. Fuji in the night, |
|
When shadows lurk and ghosts do roam, |
|
And darkness reigns, a fearsome sight. |
|
|
|
Thou didst set out, with heart aglow, |
|
To conquer this mountain, so high, |
|
And reach the summit, where the stars do glow, |
|
And the moon shines bright, up in the sky. |
|
|
|
Through the mist and fog, thou didst press on, |
|
With steadfast courage, and a steadfast will, |
|
Through the darkness, thou didst not be gone, |
|
But didst climb on, with a steadfast skill. |
|
|
|
At last, thou didst reach the summit's crest, |
|
And gazed upon the world below, |
|
And saw the beauty of the night's best, |
|
And felt the peace, that only nature knows. |
|
|
|
Oh, brave adventurer, who dared to climb |
|
The lofty peak of Mt. Fuji in the night, |
|
Thou art a hero, in the eyes of all, |
|
For thou didst conquer this mountain, so bright. |
|
``` |
|
|
|
[gritlm]: https://github.com/ContextualAI/gritlm |
|
|