I know streamlit isn’t meant for dedicated chatbot applications. However, if there was a way to stop it from re-running the script everytime the user interacted with a widget, it would be the BEST frontend framework for AI chatbot applications in my honest opinion.
This issue was the ONLY thing that forced me to move to chainlit (and after I had almost completely built my application lol). I absolutely LOVED the application I had created and so did my friends. However, it was a pain in the a** to implement a conversational chatbot where you could chat with the AI continuously in a single conversation (just like ChatGPT).
To the streamlit folks, please consider adding this feature