File size: 1,018 Bytes
1e4288a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
0308e6e
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from QdrantU import QdrantU
from Processing import TextEmbedder 
import cohere
from Helpers import generate_prompt, llama, get_docs_by_indices , query_rewriter


def run_rag(query, history=None):
    embedding_model = TextEmbedder()
    uploader = QdrantU(collection_name='News_source')
    try: 
        query = query_rewriter(query) 
        print("Query after rewriting: ", query)
    except:
        print("Error in query rewriting")
        pass
    search_results = uploader.search(query, embedding_model, limit=1000)
    docs = list(set([result.payload['content'] for result in search_results]))

    apiKey = 'Q21IIAUkTtt1jk9WUgJg0XiCvaU2K73cFbq0djhM' # API key for Cohere
    co = cohere.Client(apiKey)
    rerank_docs = co.rerank(
        query=query, documents=docs, top_n=2, model="rerank-english-v3.0"
    )

    indices = [result.index for result in rerank_docs.results]
    documents = get_docs_by_indices(docs, indices)
    prompt = generate_prompt(documents, query, history)

    return query , prompt