Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| disable_btn = gr.Button(interactive=False, visible=False) | |
| def get_ip(request: gr.Request) -> str: | |
| """ | |
| Retrieve the IP address from an incoming HTTP request. | |
| Args: | |
| request (gr.Request): | |
| The incoming HTTP request from which the IP address will be extracted. | |
| Returns: | |
| str: | |
| The IP address as a string. | |
| """ | |
| if "cf-connecting-ip" in request.headers: | |
| ip = request.headers["cf-connecting-ip"] | |
| elif "x-forwarded-for" in request.headers: | |
| ip = request.headers["x-forwarded-for"] | |
| if "," in ip: | |
| ip = ip.split(",")[0] | |
| else: | |
| ip = request.client.host | |
| return ip | |
| def natural_vote1_last_response(request: gr.Request): | |
| """ | |
| Handle a user vote for naturalness as "Very Natural". | |
| Args: | |
| request (gr.Request): | |
| The Gradio request object providing access to HTTP headers and metadata. | |
| Returns: | |
| tuple: | |
| A tuple containing: | |
| ("Very Natural", <ip_address>, (disable_btn,) * 4) | |
| - "Very Natural": The selected vote or label. | |
| - <ip_address>: The IP address of the client retrieved from the request. | |
| - disable_btn: An object repeated four times, | |
| to disable natural vote buttons. | |
| """ | |
| ip_address1 = get_ip(request) | |
| print(f"Very Natural (voted). ip: {ip_address1}") | |
| return ( | |
| "Very Natural", | |
| ip_address1, | |
| ) + (disable_btn,) * 4 | |
| def natural_vote2_last_response(request: gr.Request): | |
| """ | |
| Handle a user vote for naturalness as "Somewhat Awkward". | |
| Args: | |
| request (gr.Request): | |
| The Gradio request object providing access to HTTP headers and metadata. | |
| Returns: | |
| tuple: | |
| A tuple containing: | |
| ("Somewhat Awkward", <ip_address>, (disable_btn,) * 4) | |
| - "Somewhat Awkward": The selected vote or label. | |
| - <ip_address>: The IP address of the client retrieved from the request. | |
| - disable_btn: An object repeated four times, | |
| to disable natural vote buttons. | |
| """ | |
| ip_address1 = get_ip(request) | |
| print(f"Somewhat Awkward (voted). ip: {ip_address1}") | |
| return ( | |
| "Somewhat Awkward", | |
| ip_address1, | |
| ) + (disable_btn,) * 4 | |
| def natural_vote3_last_response(request: gr.Request): | |
| """ | |
| Handle a user vote for naturalness as "Very Awkward". | |
| Args: | |
| request (gr.Request): | |
| The Gradio request object providing access to HTTP headers and metadata. | |
| Returns: | |
| tuple: | |
| A tuple containing: | |
| ("Very Awkward", <ip_address>, (disable_btn,) * 4) | |
| - "Very Awkward": The selected vote or label. | |
| - <ip_address>: The IP address of the client retrieved from the request. | |
| - disable_btn: An object repeated four times, | |
| to disable natural vote buttons. | |
| """ | |
| ip_address1 = get_ip(request) | |
| print(f"Very Awkward (voted). ip: {ip_address1}") | |
| return ( | |
| "Very Awkward", | |
| ip_address1, | |
| ) + (disable_btn,) * 4 | |
| def natural_vote4_last_response(request: gr.Request): | |
| """ | |
| Handle a user vote for naturalness as "Unnatural". | |
| Args: | |
| request (gr.Request): | |
| The Gradio request object providing access to HTTP headers and metadata. | |
| Returns: | |
| tuple: | |
| A tuple containing: | |
| ("Unnatural", <ip_address>, (disable_btn,) * 4) | |
| - "Unnatural": The selected vote or label. | |
| - <ip_address>: The IP address of the client retrieved from the request. | |
| - disable_btn: An object repeated four times, | |
| to disable natural vote buttons. | |
| """ | |
| ip_address1 = get_ip(request) | |
| print(f"Unnatural (voted). ip: {ip_address1}") | |
| return ( | |
| "Unnatural", | |
| ip_address1, | |
| ) + (disable_btn,) * 4 | |
| def relevant_vote1_last_response(request: gr.Request): | |
| """ | |
| Handle a user vote for relevance as "Highly Relevant". | |
| Args: | |
| request (gr.Request): | |
| The Gradio request object providing access to HTTP headers and metadata. | |
| Returns: | |
| tuple: | |
| A tuple containing: | |
| ("Highly Relevant", <ip_address>, (disable_btn,) * 4) | |
| - "Highly Relevant": The selected vote or label. | |
| - <ip_address>: The IP address of the client retrieved from the request. | |
| - disable_btn: An object repeated four times, | |
| to disable relevance vote buttons. | |
| """ | |
| ip_address1 = get_ip(request) | |
| print(f"Highly Relevant (voted). ip: {ip_address1}") | |
| return ( | |
| "Highly Relevant", | |
| ip_address1, | |
| ) + (disable_btn,) * 4 | |
| def relevant_vote2_last_response(request: gr.Request): | |
| """ | |
| Handle a user vote for relevance as "Partially Relevant". | |
| Args: | |
| request (gr.Request): | |
| The Gradio request object providing access to HTTP headers and metadata. | |
| Returns: | |
| tuple: | |
| A tuple containing: | |
| ("Partially Relevant", <ip_address>, (disable_btn,) * 4) | |
| - "Partially Relevant": The selected vote or label. | |
| - <ip_address>: The IP address of the client retrieved from the request. | |
| - disable_btn: An object repeated four times, | |
| to disable relevance vote buttons. | |
| """ | |
| ip_address1 = get_ip(request) | |
| print(f"Partially Relevant (voted). ip: {ip_address1}") | |
| return ( | |
| "Partially Relevant", | |
| ip_address1, | |
| ) + (disable_btn,) * 4 | |
| def relevant_vote3_last_response(request: gr.Request): | |
| """ | |
| Handle a user vote for relevance as "Slightly Irrelevant". | |
| Args: | |
| request (gr.Request): | |
| The Gradio request object providing access to HTTP headers and metadata. | |
| Returns: | |
| tuple: | |
| A tuple containing: | |
| ("Slightly Irrelevant", <ip_address>, (disable_btn,) * 4) | |
| - "Slightly Irrelevant": The selected vote or label. | |
| - <ip_address>: The IP address of the client retrieved from the request. | |
| - disable_btn: An object repeated four times, | |
| to disable relevance vote buttons. | |
| """ | |
| ip_address1 = get_ip(request) | |
| print(f"Slightly Irrelevant (voted). ip: {ip_address1}") | |
| return ( | |
| "Slightly Irrelevant", | |
| ip_address1, | |
| ) + (disable_btn,) * 4 | |
| def relevant_vote4_last_response(request: gr.Request): | |
| """ | |
| Handle a user vote for relevance as "Completely Irrelevant". | |
| Args: | |
| request (gr.Request): | |
| The Gradio request object providing access to HTTP headers and metadata. | |
| Returns: | |
| tuple: | |
| A tuple containing: | |
| ("Completely Irrelevant", <ip_address>, (disable_btn,) * 4) | |
| - "Completely Irrelevant": The selected vote or label. | |
| - <ip_address>: The IP address of the client retrieved from the request. | |
| - disable_btn: An object repeated four times, | |
| to disable relevance vote buttons. | |
| """ | |
| ip_address1 = get_ip(request) | |
| print(f"Completely Irrelevant (voted). ip: {ip_address1}") | |
| return ( | |
| "Completely Irrelevant", | |
| ip_address1, | |
| ) + (disable_btn,) * 4 | |