imagedemo2 / app.py
manutej's picture
Added generate_poem
38a85c5
from transformers import pipeline
#from transformers.utils import logging
from langchain import PromptTemplate, LLMChain
import streamlit as st
#logging.set_verbosity_error()
#API KEYS
openai_api_key = st.secrets['OPENAI_API_KEY']
url = st.text_area('enter a url to process')
def img2text(url):
image_to_text = pipeline("image-to-text", model="Salesforce/blip-image-captioning-large")
text = image_to_text(url)[0]["generated_text"]
return text
def generate_poem(scenario, openai_api_key):
template = """
You are a writer and your favorite poet is Emily Dickinson.
You can generate a short poem based on a simple phrase or sentence.
CONTEXT: {scenario}
POEM:
"""
prompt = PromptTemplate(template = template, input_variables = ['scenario'])
# Call LLM Chain with OpenAI's API in LangChain
poem_LLM = LLMChain(llm = ChatOpenAI(
openai_api_key = openai_api_key,
model_name = "gpt-3.5-turbo",
temperature = 0.9,
prompt = prompt,
verbose = True
))
poem = poem_LLM.predict(scenario = scenario)
print(poem)
return poem
if url:
scenario = img2text(url)
poem_output = generate_poem(scenario, openai_api_key)
st.write(poem_output)