| import gradio as gr |
| from gradio_client import Client |
| import spaces |
|
|
| def text_to_image(prompt): |
| from gradio.context import LocalContext |
| request = LocalContext.request.get(None) |
| print(f"Request available in text_to_image: {request is not None} {request}") |
| print("x-ip", request.headers["x-ip-token"]) |
| client = Client("hysts/SDXL") |
| img = client.predict(prompt, api_name="/predict") |
| return img |
|
|
| @spaces.GPU |
| def generate(prompt): |
| from gradio.context import LocalContext |
| request = LocalContext.request.get(None) |
| print(f"Request available in generate: {request is not None} {request}") |
| print("x-ip", request.headers["x-ip-token"]) |
| return text_to_image(prompt) |
|
|
| with gr.Blocks() as demo: |
| image = gr.Image() |
| prompt = gr.Textbox(max_lines=1) |
| button = gr.Button("Chain") |
| prompt.submit(generate, [prompt], [image]) |
| button.click(lambda x:x+x, button, button).then(generate, [prompt], [image]) |
|
|
| demo.launch() |
|
|