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()