lindsay-qu commited on
Commit
8ae747a
·
1 Parent(s): 75cfec7

Update core/chatbot/retrieval_chatbot.py

Browse files
Files changed (1) hide show
  1. core/chatbot/retrieval_chatbot.py +16 -7
core/chatbot/retrieval_chatbot.py CHANGED
@@ -58,7 +58,7 @@ class RetrievalChatbot(BaseChatbot):
58
 
59
  def response(self, message: str, image_path=None, return_logs=False) -> str:
60
  print("Query: {message}".format(message=message))
61
- question = self.decomposer.refine(message,image_path)
62
  print(question)
63
  question = question.replace('"', "'").replace("', '", "','").lstrip("['").rstrip("']")
64
  sub_questions = question.split("','")
@@ -76,7 +76,11 @@ class RetrievalChatbot(BaseChatbot):
76
  # context = self.memory.messages + [{"role": "user", "content": "References: {references}\nQuestion: {question}".format(references=reference, question=sub_question)}]
77
  # sub_answer = self.model.respond(context)
78
  sub_answerer_context = "Sub Question References: {sub_retrieve_reference}\nQuestion: {question}\n".format(sub_retrieve_reference=sub_retrieve_reference, question=sub_question)
79
- sub_answer = self.answerer.refine(sub_answerer_context,image_path)
 
 
 
 
80
 
81
  print(f"Subanswer: {sub_answer}")
82
 
@@ -87,13 +91,18 @@ class RetrievalChatbot(BaseChatbot):
87
  references += "Related research for the user query: {ref}\n".format(ref=ref)
88
 
89
  summarizer_context = "Question References: {references}\nQuestion: {message}\n".format(references=references, message=message)
90
- answer = self.summarizer.refine(summarizer_context,image_path)
91
 
92
  #todo 记忆管理
93
- self.memory.append([{"role": "user", "content": [
94
- {"type": "text", "text": f"{message}"},
95
- {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{encode_image(image_path)}"}},
96
- ]}, {"role": "assistant", "content": answer}])
 
 
 
 
 
97
  print("="*20)
98
  print(f"Final answer: {answer}".format(answer=answer))
99
 
 
58
 
59
  def response(self, message: str, image_path=None, return_logs=False) -> str:
60
  print("Query: {message}".format(message=message))
61
+ question = self.decomposer.refine(message, None, image_path)
62
  print(question)
63
  question = question.replace('"', "'").replace("', '", "','").lstrip("['").rstrip("']")
64
  sub_questions = question.split("','")
 
76
  # context = self.memory.messages + [{"role": "user", "content": "References: {references}\nQuestion: {question}".format(references=reference, question=sub_question)}]
77
  # sub_answer = self.model.respond(context)
78
  sub_answerer_context = "Sub Question References: {sub_retrieve_reference}\nQuestion: {question}\n".format(sub_retrieve_reference=sub_retrieve_reference, question=sub_question)
79
+
80
+ print(sub_answerer_context)
81
+ print(self.memory)
82
+ print(image_path)
83
+ sub_answer = self.answerer.refine(sub_answerer_context, self.memory, image_path)
84
 
85
  print(f"Subanswer: {sub_answer}")
86
 
 
91
  references += "Related research for the user query: {ref}\n".format(ref=ref)
92
 
93
  summarizer_context = "Question References: {references}\nQuestion: {message}\n".format(references=references, message=message)
94
+ answer = self.summarizer.refine(summarizer_context, None, image_path)
95
 
96
  #todo 记忆管理
97
+ if image_path is None:
98
+ self.memory.append([{"role": "user", "content": [
99
+ {"type": "text", "text": f"{message}"},
100
+ ]}, {"role": "assistant", "content": answer}])
101
+ else:
102
+ self.memory.append([{"role": "user", "content": [
103
+ {"type": "text", "text": f"{message}"},
104
+ {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{encode_image(image_path)}"}},
105
+ ]}, {"role": "assistant", "content": answer}])
106
  print("="*20)
107
  print(f"Final answer: {answer}".format(answer=answer))
108