Dash and Standard Webapp
Hi community,
I am currently using 13.4V of Dataiku where I don’t have access to the API services.
About my Agent Code:
I have created a multi-agent system in Python where each agent performs a specific task sequentially:
Agent 1 – Searches for relevant content based on user input.
Agent 2 – Extracts the required context from the searched data.
Agent 3 – Summarizes the extracted context.
Agent 5 – Validates the response for quality.
Each agent runs one after another, and I want to show progress updates in real-time on the frontend (like a progress bar or message saying “Agent 1 working...” etc.).
Example:
While Agent 1 is working, I want the UI to show: Agent 1 is working... [25%]
Then, once it completes, the progress bar should update: Agent 1 completed.
I tried implementing a live progress bar using a Dash Webapp, but I ran into limitations. Since Dash doesn't fully support asynchronous mechanisms, I attempted workarounds using Interval, dcc.Store, and Python threading, but none gave me the desired result. I'm not sure what’s going wrong.
Now, I am exploring the Standard Webapp instead. But since I can't use backend APIs(like @app.route or dataiku.webapp), I’m struggling to show these updates live in the UI. Currently, the frontend only shows the final result after all agents finish.
My question is:
- Is it possible to implement a live progress bar in a Standard Webapp without using API services? Or do we absolutely need backend API support (e.g., dataiku.webapp or @app.route) to achieve this?
- In Dash webapp - is it possible to use live progress bar?
- Any other ways?
I'd love to hear if anyone has achieved something similar without relying on APIs. Any insights or alternate approaches are welcome!
Thanks in advance
Answers
-
Alexandru Dataiker, Dataiku DSS Core Designer, Dataiku DSS ML Practitioner, Dataiku DSS Adv Designer, Registered Posts: 1,362 DataikerHi,
Implementing a true progress bar without backend API support is unlikely; you can only simulate one using front-end JavaScript, like this example: W3Schools Progress Bar.
For Dash, you can simulate live progress by usingdcc.Intervalto poll anddcc.Storeto track updates, letting the frontend reflect progress in real time.
Is there specific reason you are trying to build custom web apps for this? Does perhaps the release Agent Hub help?https://blog.dataiku.com/introducing-agent-hub