Spaces:
Sleeping
Sleeping
File size: 2,086 Bytes
9c7f230 4dd54ba 1ffb5a3 2bbae9c 4dd54ba 2bbae9c 4dd54ba b1fcdf1 4dd54ba 2bbae9c 4dd54ba 1ffb5a3 9c7f230 4dd54ba 2bbae9c b1fcdf1 2bbae9c 9c7f230 1ffb5a3 9c7f230 |
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 |
import gradio as gr
import requests
import os
# 使用 Dreamlike 模型來生成圖像
API_URL = "https://api-inference.huggingface.co/models/dreamlike-art/dreamlike-photoreal-2.0"
HF_API_TOKEN = os.getenv("HF_API_TOKEN")
headers = {"Authorization": f"Bearer {HF_API_TOKEN}"}
def query(payload):
response = requests.post(API_URL, headers=headers, json=payload)
if response.status_code != 200:
print(f"Request failed with status code {response.status_code}")
print(f"Error details: {response.text}")
return f"Error: {response.status_code}, {response.text}"
return response.content # 返回圖片的二進位數據
def generate_dinner_image(hint):
# 使用繁體中文提示對應的晚餐描述
dinner_hints = {
"這是一個有很多起司的東西,通常切成片狀。": "a pizza with lots of cheese",
"這是一道義大利麵,通常搭配奶油醬。": "a plate of creamy spaghetti",
"這是一個烤的東西,有些人喜歡加上烤肉醬。": "grilled chicken with barbecue sauce",
"這通常在一個麵包中,裡面有生菜和番茄。": "a hamburger with lettuce and tomato",
"這是亞洲常見的食物,通常搭配醬油。": "sushi with soy sauce"
}
description = dinner_hints.get(hint, "delicious food")
# 調用 API 生成圖像
output = query({"inputs": description})
if isinstance(output, str) and output.startswith("Error:"):
return output # 返回錯誤訊息
# 保存生成的圖像到文件
with open("generated_dinner.png", "wb") as f:
f.write(output)
return "generated_dinner.png"
# 創建 Gradio 介面
interface = gr.Interface(
fn=generate_dinner_image,
inputs=gr.Textbox(lines=2, placeholder="輸入提示內容來生成晚餐圖片...(例如:這是一個有很多起司的東西,通常切成片狀。)"),
outputs="image",
title="最強第一組",
description="根據您的描述生成晚餐圖片!"
)
# 啟動 Gradio 應用
interface.launch()
|