Broomva commited on
Commit
28af321
·
1 Parent(s): 565ec0d
Files changed (1) hide show
  1. app.py +14 -1
app.py CHANGED
@@ -174,4 +174,17 @@ async def init():
174
  async def main(message):
175
  chain = cl.user_session.get("chain") # type: RetrievalQAWithSourcesChain
176
 
177
- await chain.acall(message.content, callbacks=[cl.AsyncLangchainCallbackHandler()])
 
 
 
 
 
 
 
 
 
 
 
 
 
 
174
  async def main(message):
175
  chain = cl.user_session.get("chain") # type: RetrievalQAWithSourcesChain
176
 
177
+ cb = cl.AsyncLangchainCallbackHandler(
178
+ stream_final_answer=True, answer_prefix_tokens=["FINAL", "ANSWER"]
179
+ )
180
+ cb.answer_reached = True
181
+
182
+ res = await chain.acall(message.content, callbacks=[cb])
183
+
184
+ if cb.has_streamed_final_answer:
185
+ await cb.final_stream.update()
186
+ else:
187
+ answer = res["answer"]
188
+ await cl.Message(
189
+ content=answer,
190
+ ).send()