Spaces:
Sleeping
Sleeping
File size: 2,584 Bytes
c942010 fcf7272 c942010 fcf7272 c942010 fcf7272 c942010 6d17ad7 ba72ecb 6d17ad7 ba72ecb 6d17ad7 c942010 ba72ecb c942010 ba72ecb c942010 ba72ecb 9ad6428 ba72ecb 6d17ad7 c942010 9ad6428 ba72ecb 9ad6428 ba72ecb 9ad6428 ba72ecb c942010 ba72ecb c942010 6d17ad7 |
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 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
import gradio as gr
from gradio_client import Client
DEBUG_MODE = True
MESAGE_HEADER = """
# 🔌👩🏻💻 2nd API Demo (Client component) 🔌👩🏻💻
Welcome to my simple demonstration of the gradio potential as an API.
This is an evolution of the first API demo. (Nuno-Tome/aPI_demo_client)
It is made of 2 components: An client that requests to a introduced server. This server should respont whith a JSON to a given text.
* Exemple Server: 🔌🌐 [Nuno-Tome/API_demo_server](Nuno-Tome/aPI_demo_server)
**Just write you message and watch it be returned by the server.**
"""
INPUT_TEXT_DEFAULT = """
Não sou nada.
Nunca serei nada.
Não posso querer ser nada.
À parte isso, tenho em mim todos os sonhos do mundo.
(...)
- Alvaro de Campos, in Tabacaria (Fernando Pessoa)
"""
INPUT_SERVER_DEFAULT = "Nuno-Tome/API_demo_server"
def get_bmc_markdown():
bmc_link = "https://www.buymeacoffee.com/nuno.tome"
image_url = "https://helloimjessa.files.wordpress.com/2021/06/bmc-button.png" # Image URL
image_size = "150" # Image size
image_url_full = image_url + "?w=" + image_size
image_link_markdown = f"[]({bmc_link})"
full_text = """
### If you like this project, please consider liking it or buying me a coffee. It will help me to keep working on this and other projects. Thank you!
# """ + image_link_markdown
return full_text
def send_request(input_text, input_server):
server = Client(input_server)
result = server.predict(
input_text,
api_name = "/predict"
)
return result
with gr.Blocks() as demo:
gr.Markdown(MESAGE_HEADER)
gr.DuplicateButton()
gr.Markdown(get_bmc_markdown())
with gr.Row():
with gr.Column():
input_text = gr.TextArea(
placeholder = INPUT_TEXT_DEFAULT,
label = "**Type your message:**",
lines = 8,
value = INPUT_TEXT_DEFAULT
)
input_server = gr.Textbox(
lines = 1,
placeholder = INPUT_SERVER_DEFAULT,
label = "**Type the server to call:**",
value= INPUT_SERVER_DEFAULT
)
with gr.Column():
gr.Markdown("**This is your gradio api request response:**")
out = gr.JSON()
btn = gr.Button("Send request to server")
btn.click(fn = send_request, inputs = [input_text, input_server], outputs = out)
demo.launch(share = True) |