File size: 1,681 Bytes
74c8ddc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
from transformers import AutoConfig, AutoModel
import gradio as gr
import spaces

model_path = "turing-motors/Heron-NVILA-Lite-15B"

# or directly from_pretrained
model = AutoModel.from_pretrained(model_path, trust_remote_code=True, device_map="auto")

# examples generate using generation_config
from PIL import Image
import requests
from transformers import GenerationConfig
generation_config = {
    "max_new_tokens": 2048,
    "temperature": 0.5,
    "do_sample": True,
}
generation_config = GenerationConfig(**generation_config)

DESCRIPTION = '''
<div>
<h1 style="text-align: center;">้žๅ…ฌๅผHeron-NVILA-Lite-15B</h1>
<p>Heron-NVILA-Lite-15Bใฎ้žๅ…ฌๅผใƒ‡ใƒขใ ใ‚ˆใ€‚ <a href="https://huggingface.co/turing-motors/Heron-NVILA-Lite-15B"><b>turing-motors/Heron-NVILA-Lite-15B</b></a>.</p>
</div>
'''

@spaces.GPU()
def infer(image):
    response = model.generate_content(
        [image, "็”ปๅƒใ‚’ๅฏ่ƒฝใช้™ใ‚Š่ฉณ็ดฐใซ่ชฌๆ˜Žใ—ใฆใใ ใ•ใ„ใ€‚"],
        generation_config=generation_config
    )

    return response

css = """
h1 {
  text-align: center;
  display: block;
}
#col-container {
    margin: 0 auto;
    max-width: 520px;
}
"""

with gr.Blocks(fill_height=True, css=css) as demo:
    with gr.Column(elem_id="col-container"):
        gr.Markdown(DESCRIPTION)
        image_input=gr.Image(type="pil", label="็”ปๅƒใ‚’ใ‚ขใƒƒใƒ—ใƒญใƒผใƒ‰")
        run_button = gr.Button("็”ปๅƒใฎ่ชฌๆ˜Žๆ–‡ใ‚’็”Ÿๆˆใ™ใ‚‹", scale=0)
        text_output=gr.Textbox(label="็”Ÿๆˆใ•ใ‚ŒใŸใƒ†ใ‚ญใ‚นใƒˆ")
    run_button.click(
        fn = infer,
        inputs = image_input,
        outputs = text_output,
    )
    
if __name__ == "__main__":
    demo.launch(mcp_server=True)