Agentic_flow / dev_ui.py
disLodge's picture
Backend custom for Render deployment
b27c48d
raw
history blame contribute delete
976 Bytes
import gradio as gr
from agent import graph
THREAD_CONFIG = {"configurable": {"thread_id": "default-thread"}}
def chat(user_message: str, history: list):
events = graph.stream(
{"messages": [{"role": "user", "content": user_message}]},
config=THREAD_CONFIG,
stream_mode="values",
)
last_ai_text = ""
for event in events:
if "__interrupt__" in event:
interrupt_val = event["__interrupt__"][0].value
if interrupt_val.get("type") == "auth_required":
return f"{interrupt_val['message']}\n\n{interrupt_val['auth_url']}"
msgs = event.get("messages", [])
for msg in reversed(msgs):
if hasattr(msg, "content") and msg.type == "ai":
last_ai_text = msg.content
break
return last_ai_text
with gr.Blocks() as demo:
gr.Markdown("## 🤖 AI Agent")
gr.ChatInterface(fn=chat)
if __name__ == "__main__":
demo.launch()