Aleksey Matsarski
update response format
2ef7125
import gradio as gr
from workflow.agents_workflow import build_agents_workflow
from workflow.graph_state import GraphState
app = build_agents_workflow(llm_model_name="gpt-4o-mini")
def run_user_query(ticker, history):
QUERY = f"Produce investor-ready insights for {ticker}."
init_state: GraphState = {
"ticker": ticker,
"query": QUERY,
"news_summary": None,
"earnings_summary": None,
"market_summary": None,
"completed": [],
"final_recommendation": None,
}
final_state = app.invoke(init_state)
# Update the Gradio chat history
recommendations = (f'### NEWS SUMMARY\n{final_state["news_summary"]}\n '
f'### EARNINGS SUMMARY\n{final_state["earnings_summary"]}\n '
f'### MARKET SUMMARY\n{final_state["market_summary"]}\n '
f'### FINAL RECOMMENDATION\n{final_state["final_recommendation"]}\n')
history.append((QUERY, recommendations))
return "", history
with gr.Blocks() as demo:
chatbot = gr.Chatbot()
msg = gr.Textbox()
clear = gr.Button("Clear")
msg.submit(run_user_query, [msg, chatbot], [msg, chatbot], queue=False)
clear.click(lambda: None, None, chatbot, queue=False)
if __name__ == "__main__":
demo.launch(share=True, show_api=False)