Spaces:
Sleeping
Sleeping
import streamlit as st | |
import google.generativeai as genai | |
import os | |
from streamlit_chat import message | |
gemini_api_key = os.getenv("GEMINI_API_KEY") | |
genai.configure(api_key = gemini_api_key) | |
model = genai.GenerativeModel('gemini-pro') | |
# prompt = st.chat_input("Say something") | |
# if prompt: | |
# st.write(f"User has sent the following prompt: {prompt}") | |
# else: | |
# prompt = "who are you?" | |
# response = model.generate_content(prompt) | |
# message = st.chat_message("ai") | |
# message.write(response.text) | |
def chat_actions(): | |
st.session_state["chat_history"].append( | |
{"role": "user", "content": st.session_state["chat_input"]}, | |
) | |
response = model.generate_content(st.session_state["chat_input"]) | |
st.session_state["chat_history"].append( | |
{ | |
"role": "assistant", | |
"content": response.text, | |
}, # This can be replaced with your chat response logic | |
) | |
if "chat_history" not in st.session_state: | |
st.session_state["chat_history"] = [] | |
st.chat_input("Enter your message", on_submit=chat_actions, key="chat_input") | |
for i in st.session_state["chat_history"]: | |
with st.chat_message(name=i["role"]): | |
st.write(i["content"]) | |
# img_file_buffer = st.file_uploader('Upload a PNG image', type='png') | |
import numpy as np | |
from PIL import Image | |
def uploader_callback(): | |
print('Uploaded file') | |
img_file_buffer = st.file_uploader('Upload a PNG image', on_change=uploader_callback, type=['png','jpg']) | |
if img_file_buffer is not None: | |
image = Image.open(img_file_buffer) | |
img_array = np.array(image) | |