Spaces:
Runtime error
Runtime error
File size: 1,422 Bytes
3e2f324 b110be1 3e2f324 19599cb 3e2f324 ec24a25 1d7d4dd b110be1 3e2f324 d8cb756 3e2f324 2341d95 ec24a25 2341d95 3e2f324 2341d95 3e2f324 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
from langchain.llms import HuggingFacePipeline
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline, AutoModelForSeq2SeqLM
from components import caption_chain, tag_chain
from components import pexels, utils
import os
import gradio as gr
model = AutoModelForSeq2SeqLM.from_pretrained("declare-lab/flan-alpaca-gpt4-xl")
tokenizer = AutoTokenizer.from_pretrained("declare-lab/flan-alpaca-gpt4-xl")
pipe = pipeline(
'text2text-generation',
model=model,
tokenizer= tokenizer,
max_length=120
)
local_llm = HuggingFacePipeline(pipeline=pipe)
llm_chain = caption_chain.chain(llm=local_llm)
sum_llm_chain = tag_chain.chain(llm=local_llm)
pexels_api_key = os.getenv('pexels_api_key')
def pred(product_name, orientation):
folder_name, sentences = pexels.generate_videos(product_name, pexels_api_key, orientation, llm_chain, sum_llm_chain)
utils.combine_videos(folder_name)
return {
'video':folder_name,
'captions':"\n".join(sentences)
}
with gr.Blocks() as demo:
dimension = gr.Dropdown(
["Potrait", "Landscape", "Square"], label="Video Dimension", info="Choose orientation"
)
product_name = gr.Textbox(placeholder="Product Name")
captions = gr.Textbox()
video = gr.Video()
btn = gr.Button("Submit")
btn.click(pred, inputs=[product_name, dimension], outputs=[captions,video])
demo.launch() |