File size: 665 Bytes
ec9c941
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
30
31
def retrieve(state):

    question = state["question"]

    current_db = state["vector_db"]

    results = current_db.similarity_search_with_relevance_scores(
        question,
        k=10
    )

    docs = []
    scores = []

    for doc, score in results:
        docs.append(doc)
        scores.append(score)

    best_score = max(scores) if scores else 0

    print("\n========== RETRIEVAL ==========")
    print("Question:", question)
    print("Retrieved docs:", len(docs))
    print("Best score:", best_score)

    return {
        "question": question,
        "documents": docs,
        "retrieval_score": best_score,
        "vector_db": current_db
    }