Another try
Browse files
app.py
CHANGED
|
@@ -85,54 +85,54 @@ async def on_chat_start():
|
|
| 85 |
cl.user_session.set("runnable_chain", runnable_chain)
|
| 86 |
|
| 87 |
|
| 88 |
-
@cl.on_message
|
| 89 |
-
async def on_message(message: cl.Message):
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
| 94 |
-
|
| 95 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
| 100 |
-
|
| 101 |
|
| 102 |
@cl.on_message
|
| 103 |
async def on_message(message: cl.Message):
|
| 104 |
runnable = cl.user_session.get("runnable_chain")
|
| 105 |
msg = cl.Message(content="")
|
| 106 |
|
| 107 |
-
class PostMessageHandler(BaseCallbackHandler):
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
-
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
|
| 129 |
|
| 130 |
async with cl.Step(type="run", name="Movie Assistant"):
|
| 131 |
async for chunk in runnable.astream(
|
| 132 |
message.content,
|
| 133 |
config=RunnableConfig(callbacks=[
|
| 134 |
cl.LangchainCallbackHandler(),
|
| 135 |
-
PostMessageHandler(msg)
|
| 136 |
]),
|
| 137 |
):
|
| 138 |
await msg.stream_token(chunk)
|
|
|
|
| 85 |
cl.user_session.set("runnable_chain", runnable_chain)
|
| 86 |
|
| 87 |
|
| 88 |
+
# @cl.on_message
|
| 89 |
+
# async def on_message(message: cl.Message):
|
| 90 |
+
# runnable_chain = cl.user_session.get("runnable_chain")
|
| 91 |
+
#
|
| 92 |
+
# msg = cl.Message(content="")
|
| 93 |
+
#
|
| 94 |
+
# async for chunk in runnable_chain.astream(
|
| 95 |
+
# message.content,
|
| 96 |
+
# config=RunnableConfig(callbacks=[cl.LangchainCallbackHandler()]),
|
| 97 |
+
# ):
|
| 98 |
+
# await msg.stream_token(chunk)
|
| 99 |
+
#
|
| 100 |
+
# await msg.send()
|
| 101 |
|
| 102 |
@cl.on_message
|
| 103 |
async def on_message(message: cl.Message):
|
| 104 |
runnable = cl.user_session.get("runnable_chain")
|
| 105 |
msg = cl.Message(content="")
|
| 106 |
|
| 107 |
+
# class PostMessageHandler(BaseCallbackHandler):
|
| 108 |
+
# """
|
| 109 |
+
# Callback handler for handling the retriever and LLM processes.
|
| 110 |
+
# Used to post the sources of the retrieved documents as a Chainlit element.
|
| 111 |
+
# """
|
| 112 |
+
#
|
| 113 |
+
# def __init__(self, msg: cl.Message):
|
| 114 |
+
# BaseCallbackHandler.__init__(self)
|
| 115 |
+
# self.msg = msg
|
| 116 |
+
# self.sources = set() # To store unique pairs
|
| 117 |
+
#
|
| 118 |
+
# def on_retriever_end(self, documents, *, run_id, parent_run_id, **kwargs):
|
| 119 |
+
# for d in documents:
|
| 120 |
+
# source_page_pair = (d.metadata['source'], d.metadata['page'])
|
| 121 |
+
# self.sources.add(source_page_pair) # Add unique pairs to the set
|
| 122 |
+
#
|
| 123 |
+
# def on_llm_end(self, response, *, run_id, parent_run_id, **kwargs):
|
| 124 |
+
# if len(self.sources):
|
| 125 |
+
# sources_text = "\n".join([f"{source}#page={page}" for source, page in self.sources])
|
| 126 |
+
# self.msg.elements.append(
|
| 127 |
+
# cl.Text(name="Sources", content=sources_text, display="inline")
|
| 128 |
+
# )
|
| 129 |
|
| 130 |
async with cl.Step(type="run", name="Movie Assistant"):
|
| 131 |
async for chunk in runnable.astream(
|
| 132 |
message.content,
|
| 133 |
config=RunnableConfig(callbacks=[
|
| 134 |
cl.LangchainCallbackHandler(),
|
| 135 |
+
# PostMessageHandler(msg)
|
| 136 |
]),
|
| 137 |
):
|
| 138 |
await msg.stream_token(chunk)
|