test / app.py
helloway's picture
Update app.py
da9f688
raw
history blame
2.21 kB
import os
import requests
import numpy as np
from PIL import Image
import gradio as gr
from io import BytesIO
def gen_image(desc: str):
"""generate the image from the wukong huahua model of ascend server in Wuhan AICC
Args:
desc(str): the input description text
"""
if not desc:
return
access_token = os.environ['token']
headers = {'content-type': "application/json", 'X-Subject-Token': access_token}
# url = f"https://a2f051d4cabf45f885d7b0108edc9b9c.infer.ovaijisuan.com/v1/infers/dce9ad51-7cde-4eeb-8291-ae29f267ed2c/wukong_hf"
url = f"https://a2f051d4cabf45f885d7b0108edc9b9c.infer.ovaijisuan.com/v1/infers/975eedfd-6e15-4571-8ca9-b945da0da24b/wukong_hf"
body = {
"desc": desc,
"style": ""
}
resp_data = requests.post(url, json=body, headers=headers)
if resp_data['status'] != 200:
return []
# img_np = np.array(resp_data['output_image_list'][0])
# image = Image.fromarray(np.uint8(img_np))
img_rep = requests.get(resp_data['output_image_url'][0])
image = Image.open(BytesIO(img_rep.content))
return [image]
examples = [
'天空之城 赛博朋克 动漫',
'秋水共长天一色',
'海滩 蓝天 美景',
'教堂 巴洛克风格',
'落日 莫奈',
'来自深渊 雪山飞狐'
]
block = gr.Blocks()
with block:
with gr.Group():
with gr.Box():
with gr.Row().style(mobile_collapse=False, equal_height=True):
text = gr.Text(
placeholder="输入中文,生成图片",
).style(
border=(True, False, True, True),
rounded=(True, False, False, True),
container=False,
)
btn = gr.Button("Generate image").style(
margin=False,
rounded=(False, True, True, False),
)
gallery = gr.Gallery(
label="Generated images", show_label=False, elem_id="gallery"
).style(grid=[1, 1], height="auto")
gr.Examples(examples=examples, fn=gen_image, inputs=text, outputs=gallery)
block.queue(concurrency_count=3).launch(debug=True)