import torch import re from PIL import Image import requests import streamlit as st from transformers import AutoTokenizer, ViTFeatureExtractor, VisionEncoderDecoderModel from PIL import Image import requests from langchain.indexes import VectorstoreIndexCreator from langchain.document_loaders import ImageCaptionLoader st.set_page_config(page_title="Captionize") st.title("🤖 Captionize") st.subheader("Generate Captions for your Image...") st.sidebar.image('./csv_analysis.png',width=300, use_column_width=True) # Applying Styling st.markdown(""" """, unsafe_allow_html=True) #pic = st.file_uploader(label="Please upload any Image here 😎",type=['png', 'jpeg', 'jpg'], help="Only 'png', 'jpeg' or 'jpg' formats allowed") examples = [f"example{i}.jpg" for i in range(1,7)] #Image.open(requests.get(pic, stream=True).raw).convert("RGB") loader = ImageCaptionLoader(path_images=examples) list_docs = loader.load() index = VectorstoreIndexCreator().from_loaders([loader]) button = st.button("Generate Caption") query = st.text_area("Enter your query 🔍") if button: Image.open(requests.get(examples[0], stream=True).raw).convert("RGB") # Get Response caption = index.query(query) st.write(caption)