Spaces:
Runtime error
Runtime error
Update kadiApy_ragchain.py
Browse files- kadiApy_ragchain.py +7 -26
kadiApy_ragchain.py
CHANGED
|
@@ -2,23 +2,21 @@ class KadiApyRagchain:
|
|
| 2 |
|
| 3 |
def __init__(self, llm, vector_store):
|
| 4 |
"""
|
| 5 |
-
Initialize the RAGChain with an LLM instance, a vector store
|
| 6 |
"""
|
| 7 |
self.llm = llm
|
| 8 |
self.vector_store = vector_store
|
| 9 |
-
self.conversation = []
|
| 10 |
|
| 11 |
|
| 12 |
def process_query(self, query, chat_history):
|
| 13 |
"""
|
| 14 |
Process a user query, handle history, retrieve contexts, and generate a response.
|
| 15 |
"""
|
| 16 |
-
|
| 17 |
-
self.add_to_conversation(user_query=query)
|
| 18 |
|
| 19 |
# Rewrite query
|
| 20 |
rewritten_query = self.rewrite_query(query)
|
| 21 |
-
print("
|
| 22 |
# Predict library usage
|
| 23 |
print("Start prediction:")
|
| 24 |
code_library_usage_prediction = self.predict_library_usage(query)
|
|
@@ -26,10 +24,10 @@ class KadiApyRagchain:
|
|
| 26 |
# Retrieve contexts
|
| 27 |
print("Start retrieving:")
|
| 28 |
#doc_contexts = self.retrieve_contexts(query, k=2, filter={"dataset_category": "kadi_apy_docs"})
|
| 29 |
-
|
| 30 |
-
code_contexts = self.retrieve_contexts(query, k=2)
|
| 31 |
|
| 32 |
-
query_formulated_question= self.formulate_question(code_contexts)
|
| 33 |
print("question:", query_formulated_question)
|
| 34 |
doc_contexts = self.retrieve_contexts(query_formulated_question, k=2, filter={"dataset_category": "kadi_apy_docs"})
|
| 35 |
|
|
@@ -50,26 +48,9 @@ class KadiApyRagchain:
|
|
| 50 |
print("Start generatin repsonsse:")
|
| 51 |
response = self.generate_response(query, chat_history, formatted_doc_contexts, formatted_code_contexts)
|
| 52 |
#response = self.generate_response(query, chat_history, formatted_contexts)
|
| 53 |
-
|
| 54 |
-
# Add the response to the existing query in the conversation history
|
| 55 |
-
#self.add_to_conversation(llm_response=response)
|
| 56 |
-
|
| 57 |
return response
|
| 58 |
|
| 59 |
-
|
| 60 |
-
def add_to_conversation(self, user_query=None, llm_response=None):
|
| 61 |
-
"""
|
| 62 |
-
Add either the user's query, the LLM's response, or both to the conversation history.
|
| 63 |
-
"""
|
| 64 |
-
if user_query and llm_response:
|
| 65 |
-
# Add a full query-response pair
|
| 66 |
-
self.conversation.append({"query": user_query, "response": llm_response})
|
| 67 |
-
elif user_query:
|
| 68 |
-
# Add a query with no response yet
|
| 69 |
-
self.conversation.append({"query": user_query, "response": None})
|
| 70 |
-
elif llm_response and self.conversation:
|
| 71 |
-
# Add a response to the most recent query
|
| 72 |
-
self.conversation[-1]["response"] = llm_response
|
| 73 |
|
| 74 |
def get_history(self):
|
| 75 |
"""
|
|
|
|
| 2 |
|
| 3 |
def __init__(self, llm, vector_store):
|
| 4 |
"""
|
| 5 |
+
Initialize the RAGChain with an LLM instance, a vector store
|
| 6 |
"""
|
| 7 |
self.llm = llm
|
| 8 |
self.vector_store = vector_store
|
|
|
|
| 9 |
|
| 10 |
|
| 11 |
def process_query(self, query, chat_history):
|
| 12 |
"""
|
| 13 |
Process a user query, handle history, retrieve contexts, and generate a response.
|
| 14 |
"""
|
| 15 |
+
|
|
|
|
| 16 |
|
| 17 |
# Rewrite query
|
| 18 |
rewritten_query = self.rewrite_query(query)
|
| 19 |
+
print("Rewritten Query: ",rewritten_query)
|
| 20 |
# Predict library usage
|
| 21 |
print("Start prediction:")
|
| 22 |
code_library_usage_prediction = self.predict_library_usage(query)
|
|
|
|
| 24 |
# Retrieve contexts
|
| 25 |
print("Start retrieving:")
|
| 26 |
#doc_contexts = self.retrieve_contexts(query, k=2, filter={"dataset_category": "kadi_apy_docs"})
|
| 27 |
+
code_contexts = self.retrieve_contexts(rewritten_query, k=3, filter={"usage": code_library_usage_prediction})
|
| 28 |
+
#code_contexts = self.retrieve_contexts(query, k=2)
|
| 29 |
|
| 30 |
+
#query_formulated_question= self.formulate_question(code_contexts)
|
| 31 |
print("question:", query_formulated_question)
|
| 32 |
doc_contexts = self.retrieve_contexts(query_formulated_question, k=2, filter={"dataset_category": "kadi_apy_docs"})
|
| 33 |
|
|
|
|
| 48 |
print("Start generatin repsonsse:")
|
| 49 |
response = self.generate_response(query, chat_history, formatted_doc_contexts, formatted_code_contexts)
|
| 50 |
#response = self.generate_response(query, chat_history, formatted_contexts)
|
|
|
|
|
|
|
|
|
|
|
|
|
| 51 |
return response
|
| 52 |
|
| 53 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 54 |
|
| 55 |
def get_history(self):
|
| 56 |
"""
|