Spaces:
Runtime error
Runtime error
File size: 2,533 Bytes
cfe3102 477a853 cfe3102 477a853 cfe3102 |
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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
import gradio as gr
from gradio_client import Client
#fusecap_client = Client("https://noamrot-fusecap-image-captioning.hf.space/")
fuyu_client = Client("https://adept-fuyu-8b-demo.hf.space/")
def get_caption(image_in):
fuyu_result = fuyu_client.predict(
image_in, # str representing input in 'raw_image' Image component
True, # bool in 'Enable detailed captioning' Checkbox component
fn_index=2
)
# Find the last occurrence of "."
last_period_index = fuyu_result.rfind('.')
# Truncate the string up to the last period
truncated_caption = fuyu_result[:last_period_index + 1]
# print(truncated_caption)
print(f"\n—\nIMAGE CAPTION: {truncated_caption}")
return truncated_caption
def infer(image_in):
gr.Info("Getting image caption with Fuyu...")
user_prompt = get_caption(image_in)
return user_prompt
title = f"LLM Agent from a Picture",
description = f"Get a LLM system prompt from a picture so you can use it in <a href='https://huggingface.co/spaces/abidlabs/GPT-Baker'>GPT-Baker</a>."
css = """
#col-container{
margin: 0 auto;
max-width: 780px;
text-align: left;
}
"""
with gr.Blocks(css=css) as demo:
with gr.Column(elem_id="col-container"):
gr.HTML(f"""
<h2 style="text-align: center;">Words from a Picture</h2>
<p style="text-align: center;">{description}</p>
""")
with gr.Row():
with gr.Column():
image_in = gr.Image(
label = "Image reference",
type = "filepath",
elem_id = "image-in"
)
submit_btn = gr.Button("Make desciptions of my pic !")
with gr.Column():
result = gr.Textbox(
label ="Suggested System",
lines = 6,
max_lines = 30,
elem_id = "suggested-system-prompt"
)
with gr.Row():
gr.Examples(
examples = [
["examples/ponder.png"],
["examples/ponder2.png"],
],
fn = infer,
inputs = [image_in],
outputs = [result],
cache_examples = True
)
submit_btn.click(
fn = infer,
inputs = [
image_in
],
outputs =[
result
]
)
demo.queue().launch(show_api=False) |