|
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, style: 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 = "https://a2f051d4cabf45f885d7b0108edc9b9c.infer.ovaijisuan.com/v1/infers/975eedfd-6e15-4571-8ca9-b945da0da24b/wukong_hf" |
|
body = { |
|
"user_name": 'huggingface', |
|
"desc": desc, |
|
"style": style |
|
} |
|
|
|
resp_data = requests.post(url, json=body, headers=headers) |
|
print(resp_data['status']) |
|
if resp_data['status'] != 200: |
|
return |
|
|
|
|
|
img_rep = requests.get(resp_data['output_image_url'][0]) |
|
image = Image.open(BytesIO(img_rep.content)) |
|
image_np = np.asarray(image) |
|
|
|
return image_np |
|
|
|
|
|
demo = gr.Interface( |
|
fn=gen_image, |
|
inputs=["text", "text"], |
|
outputs=gr.outputs.Image(type='numpy'), |
|
) |
|
demo.launch() |