https://github.com/yjg30737/streamlit-chatbot
ChatGPT-like Streamlit chatbot & Simple image generator (DALLE3)
https://github.com/yjg30737/streamlit-chatbot
chatbot image-generator streamlit streamlit-ai streamlit-chatbot streamlit-example streamlit-image-generator
Last synced: 4 months ago
JSON representation
ChatGPT-like Streamlit chatbot & Simple image generator (DALLE3)
- Host: GitHub
- URL: https://github.com/yjg30737/streamlit-chatbot
- Owner: yjg30737
- License: mit
- Created: 2024-05-01T11:01:13.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-17T07:28:16.000Z (6 months ago)
- Last Synced: 2025-01-17T08:32:06.516Z (6 months ago)
- Topics: chatbot, image-generator, streamlit, streamlit-ai, streamlit-chatbot, streamlit-example, streamlit-image-generator
- Language: Python
- Homepage:
- Size: 41 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# streamlit-chatbot
[](https://discord.gg/cHekprskVE)ChatGPT-like Streamlit chatbot & Simple image generator (DALLE3) OpenAI
Using supabase as database.## Requirements
* streamlit
* openai
* st-supabase-connection## How to Install
Type below:```
>>> git clone [THE_REPO_URL]
>>> pip install -r requirements.txt
>>> streamlit hello
```Then, make .streamlit directory and put secrets.toml into it and copy below:
```toml
# .streamlit/secrets.toml
OPENAI_API_KEY=[connections.supabase]
SUPABASE_URL =
SUPABASE_KEY =
```Also, run this query in supabase:
```sql
create table
public.chat (
id bigint generated by default as identity not null,
created_at timestamp with time zone not null default now(),
content text null,
role text null,
constraint chat_pkey primary key (id)
) tablespace pg_default;
```If the error "new row violates row-level security policy for table" in Supabase occurs, this is because the **Row-Level Security (RLS)** policy is not set for the table.
**Workaround:**
1. **Enable RLS policy for the table in the Supabase dashboard and set the appropriate policy.**
2. **Add a policy that grants access to the required CRUD operations (e.g. `SELECT`, `INSERT`, `UPDATE`, `DELETE`).**This will allow authenticated users to access the table.
### Finally
Type `streamlit run main.py` to show the result. Browser will pop up and you can play it.## Preview
https://youtu.be/8pHC8mKl3VI## Documentation
It is good practice to read following docs and articles to know the basic of using and making streamlit app.These help me a lot to develop streamlit application.
### For this application
* Get Started
* Connect Streamlit to Supabase### For making Streamlit application
* API Reference (Elements and widgets)
* Make and manage "secrets.toml" file for configuration### For making your chatbot and your image generator
* Build a basic LLM chat app
* Creating an image generator with streamlit and replicate api by arjunaraneta## Troubleshooting
If this error shows:```
httpcore.ConnectError: [Errno 11001] getaddrinfo failed
```That means you need to restore your database. Go to the supabase dashboard to restore it, then it will work like a charm as usual!
If you don't use Supabase a couple of days, you can't connect with it because it suspends the project. Of course, if you are using the Supabase in free, as i am.