Spaces:
Running
Running
import streamlit as st | |
from llm import Model | |
from image_engine import ImageGenerator | |
import io | |
# Instantiate the models | |
gemini_model = Model() | |
image_generator = ImageGenerator() | |
# Streamlit interface | |
st.title("AI Artist🎨") | |
art_idea = st.text_input("Enter your drawing idea:") | |
if st.button("Generate Art"): | |
if art_idea: | |
with st.spinner("Enhancing your idea..."): | |
enhanced_idea = gemini_model.enhance_idea(art_idea) | |
st.write("Enhanced Idea:", enhanced_idea) | |
with st.spinner("Geneating an image..."): | |
image = image_generator.generate_image(enhanced_idea) | |
st.image(image, caption="Generated Art") | |
# Add a download button for the generated image | |
img_byte_arr = io.BytesIO() | |
image.save(img_byte_arr, format='PNG') | |
img_byte_arr = img_byte_arr.getvalue() | |
st.download_button( | |
label="Download", | |
data=img_byte_arr, | |
file_name="generated_art.png", | |
mime="image/png" | |
) | |
else: | |
st.error("Please enter an art idea!") |