streaming
Browse files
app.py
CHANGED
|
@@ -180,8 +180,21 @@ async def start():
|
|
| 180 |
async def handle(message: cl.Message):
|
| 181 |
graph = cl.user_session.get("graph")
|
| 182 |
state = {"messages": [HumanMessage(content=message.content)]}
|
| 183 |
-
|
|
|
|
|
|
|
|
|
|
| 184 |
async for partial_state in graph.astream(state):
|
| 185 |
-
|
| 186 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 187 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 180 |
async def handle(message: cl.Message):
|
| 181 |
graph = cl.user_session.get("graph")
|
| 182 |
state = {"messages": [HumanMessage(content=message.content)]}
|
| 183 |
+
|
| 184 |
+
msg = cl.Message(content="") # Crear un mensaje vacío para el streaming
|
| 185 |
+
await msg.send() # Enviar el mensaje vacío inicial
|
| 186 |
+
|
| 187 |
async for partial_state in graph.astream(state):
|
| 188 |
+
# Verificar si "messages" está en el estado antes de acceder a él
|
| 189 |
+
if "messages" in partial_state and partial_state["messages"]:
|
| 190 |
+
last_message = partial_state["messages"][-1]
|
| 191 |
+
await msg.update(content=last_message.content)
|
| 192 |
+
|
| 193 |
+
|
| 194 |
|
| 195 |
+
# @cl.on_message
|
| 196 |
+
# async def handle(message: cl.Message):
|
| 197 |
+
# graph = cl.user_session.get("graph")
|
| 198 |
+
# state = {"messages" : [HumanMessage(content=message.content)]}
|
| 199 |
+
# response = await graph.ainvoke(state)
|
| 200 |
+
# await cl.Message(content=response["messages"][-1].content).send()
|