Build a Streamlit Chatbot FAST 🤯
👉 DOWNLOAD MY EXCEL ADD-IN: pythonandvba.com/mytoolbelt
In this video, I demonstrate how to use the new chat feature in Streamlit to build a ChatGPT clone. Beginning with a simple chat application, we explore Streamlit's "chat_message" and "chat_input" features, adjust user roles, and customize avatars.
I also explain how to use the session state feature to retain conversation history, similar to a regular browsing session. Later in the video, we enhance our application by integrating the OpenAI library and Streamlit's secrets manager to securely manage API keys.
All code used in this video is sourced from the Streamlit documentation which can be found here: docs.streamlit.io/knowledge-b...
⭐ 𝗧𝗜𝗠𝗘𝗦𝗧𝗔𝗠𝗣𝗦:
0:00 - Intro
0:30 - Simple Example
1:39 - Echo Bot
4:10 - ChatGPT Clone
7:44 - Outro
◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️
𝗖𝗢𝗡𝗡𝗘𝗖𝗧 𝗪𝗜𝗧𝗛 𝗠𝗘:
🌎 Website: pythonandvba.com
📝 GitHub: github.com/Sven-Bo
⭐ Discord: pythonandvba.com/discord
📷 Instagram: / codingisfun_official
▶️ Subscribe: kzhead.info?sub...
📚 𝗥𝗲𝘀𝗼𝘂𝗿𝗰𝗲𝘀 𝗳𝗼𝗿 𝗹𝗲𝗮𝗿𝗻𝗶𝗻𝗴 𝗩𝗕𝗔 & 𝗣𝘆𝘁𝗵𝗼𝗻
Check out my recommendations: pythonandvba.com/resources
☕ 𝗕𝘂𝘆 𝗺𝗲 𝗮 𝗰𝗼𝗳𝗳𝗲𝗲❓
If you want to support this channel, you can buy me a coffee here:
pythonandvba.com/coffee-donation
*Here is the link to the written tutorial, incl. the code:* ⤵ docs.streamlit.io/knowledge-base/tutorials/build-conversational-apps
You have an amazing teaching style! Really love it and wish you could produce more content
Thanks for the kind words! I am glad you enjoyed it. ♥
love it, great video as always🙌
Happy to hear that you enjoyed this one too! Thanks for the comment! 🙏
This is awesome, thanks for the content.
My pleasure! Appreciate you taking the time to watch and leave a comment. 👍
Cool!! Thanks for this.
Glad you liked it. Thanks for watching and taking the time to leave a comment!
i just love you man
Thank you ❤️
thanks man, this helped me a lot 🙌
Glad I could help! Thanks for watching and for the kind words. Cheers, Sven ✌️
Great video - thank you
Glad to hear you liked it! Thank you for commenting and watching.
It was really great. Please provide a tutorial on deploy app in streamlit that we can make public and always available. I don't want it to go to sleep after 7 days.
Thanks for watching. Here you are: kzhead.info/sun/Z7eIY6eNjoKPmWg/bejne.html
Hi. Thank you for an amazing video once again. What other models can I use that will be free or is this only for paid OpenAI accounts?
As always, thanks for watching. As far as I know, there are no free APIs offered by OpenAI
Super Awesome video. which editor do you use ?
Thanks for watching. Glad you liked it. For that video, I used "Atom"
Thank you.. I have exhausted the openai api key usage... Are there any free options?
Thanks for watching. Not that I know of.
Hi that was a great session, could you please give me the complete path for this file which you had uploaded in Github Repo? thankyou!!
Thanks. As I am mentioned, I took the code from the streamlit docs: docs.streamlit.io/knowledge-base/tutorials/build-conversational-apps
Thanks! I have a question, is it possible to do chat_input disabled till we get full response, and enable back again after we get it
Thank you very much for watching the video and your comment. Your requirements are well noted. Yet, I receive many requests for creating individual solutions. As much as I want to help, I simply do not find the time in my daily schedule to develop & test all the different requests. I hope you can understand. Thank you! Cheers, Sven ✌️
Where was this last week! I was hired to make a chatgpt clone and was stuck thanks to you I can continue it
This feature is fresh out of the oven and was just released on June 27. Good luck with your project! 🍀
@@CodingIsFun Thanks for the tutorial, I'll try my best.
Hey, I need an Excel formula that can apply comma before an entirely uppercase word but without VBA cuz using VBA is not allowed in my company. Could you pls help me?
Thanks so much for watching the video and leaving a comment! Your request is definitely noted. However, I get a ton of requests for custom solutions and, as much as I'd love to help everyone out, I just don't have the time in my schedule to develop and test all of them. I hope you can understand. Happy Coding!
@@CodingIsFun okayy thankss
🎉 can you create a sample projects calculator of Solar system
Thank you very much for watching the video and your comment. Your requirements are well noted. Yet, I receive many requests for creating individual solutions. As much as I want to help, I simply do not find the time in my daily schedule to develop & test all the different requests. I hope you can understand. Thank you!
This video is very interesting. The only issue is this requires Open API (Secret Key).
Thanks for watching! 👍
You can do it with gemini or any other open model from hugging face, for free
Im trying to make code in such a way that if my input in streamlit chat is some specific questions then user get s options as buttons and on clicking that thing gets input in chat . I tried doing it but the buttons only work outside the if prompt loop seperately and not inside the prompt loop. Any solution?
Thank you very much for watching the video and your comment. Your requirements are well noted. Yet, I receive many requests for creating individual solutions. As much as I want to help, I simply do not find the time in my daily schedule to develop & test all the different requests. I hope you can understand. Thank you! Cheers, Sven ✌️
Great video. However, I'm getting an error: "RateLimitError: You have exceeded your quota" and I haven't even generated a conversation using the API. Or are OpenAI APIs just whack
Thanks for watching. Have a look here: help.openai.com/en/articles/6891831-error-code-429-you-exceeded-your-current-quota-please-check-your-plan-and-billing-details I hope it helps! Cheers, Sven ✌️
Great tutorial, but I have one small issue. From asking second question onwards, I find that all of the previous "assistant" content will display twice on the screen. Example of asking up to 3rd question and stop: User: Hi! Assistant: Hi, how can I help you? Assistant: Hi, how can I help you? User: Do you know CodingIsFun channel? Assistant: Yes, he teaches many Streamlit tutorials in his channel Assistant: Yes, he teaches many Streamlit tutorials in his channel User: Where is he from? Assistant: He is from Germany
Thanks for watching. Hard to tell from a distance why you are facing an issue
@@CodingIsFun I solved it 10 minutes ago 😂 I didn't notice that my program saved the assistant response twice in the session.state.messages
does this still work? i think open ai upfated and it says outdated.
Thanks for watching. Yes, it works
@@CodingIsFunNo, I've tried it and it updates. Mine is an error, please make a new tutorial video 😢🙏
@@Aynay27 My example is staight from the docs: docs.streamlit.io/knowledge-base/tutorials/build-conversational-apps If you think, there is a bug in the Streamlit docs, you might want to raise a Github issue.
@@CodingIsFun I don't think @tanyyu and @Aynay27 are referring to Streamlit, that part is fine! What doesn't work is the way you interact with the OpenAI API which indeed has updated and it doesn't work like it's showing on the video anymore as that is considered deprecated. The solution could be to either to downgrade the version of the OpenAI lib with `pip install` or to update the code to reflect the new OpenAI API on chat completions which would be something like: ``` for response in OpenAI().chat.completions.create( model=st.session_state["openai_model"], messages=[ { "role": m["role"], "content": m["content"], } for m in st.session_state[MESSAGES] ], stream=True, ): full_response += response.choices[0].delta.content or "" message_placeholder.write(full_response) ```
@@Nuno_Reis_Official Thanks, that's a good point. Regarding my previous answer, I simply cannot give any advice without knowing the error message
Please address my query, how to deploy a chatbot on our website?
Ok, but please do not spam
I hate that thing I can't use chatgpt api with out a billing address. Maybe it's free but I need to give my bank details. I hate this about chatgpt api.
Thanks for watching. Yes, unfortunately there is no free lunch in life :(
@@CodingIsFun 🙂
Can we share streamlit url to anyone?
Yes, after you have deployed your app, you can also share the url. I already have tutorials here on my channel on how to deploy a Streamlit app. Cheers, Sven ✌️
@@CodingIsFun thanks 😊
Bro I’m aspiring data analyst but I am worried and really depressed because of gpt 4
Don't worry. I suggest you get to know these tools well. Use them to help you work better and faster. I might actually make a separate video on this topic.
Good job. Cool videos
Thank you! Happy to hear that you're enjoying the videos! :)
What is difference st.secrets vs os.getenv?
The key difference is that os.getenv reads environment variables from the operating system, while streamlit.secrets provides a secure way to store and access sensitive data specifically within Streamlit applications, adding an extra layer of security when sharing or deploying these apps.