Introducing Gradio Clients


New to Gradio? Start here: Getting Started

See the Release History


import gradio as gr with gr.Blocks() as demo: gr.CheckboxGroup(["First Choice", "Second Choice", "Third Choice"]) demo.launch()


Creates a set of checkboxes. Can be used as an input to pass a set of values to a function or as an output to display values, a subset of which are selected.


As input component: Passes the list of checked checkboxes as a list[str | int | float] or their indices as a list[int] into the function, depending on type.

Your function should accept one of these types:
def predict(
	value: list[str | int | float] | list[int | None]

As output component: Expects a list[str | int | float] of values or a single str | int | float value, the checkboxes with these values are checked.

Your function should return one of these types:
def predict(ยทยทยท) -> list[str | int | float] | str | int | float | None
	return value




Class Interface String Shortcut Initialization



Uses default values


import gradio as gr def sentence_builder(quantity, animal, countries, place, activity_list, morning): return f"""The {quantity} {animal}s from {" and ".join(countries)} went to the {place} where they {" and ".join(activity_list)} until the {"morning" if morning else "night"}""" demo = gr.Interface( sentence_builder, [ gr.Slider(2, 20, value=4, label="Count", info="Choose between 2 and 20"), gr.Dropdown( ["cat", "dog", "bird"], label="Animal", info="Will add more animals later!" ), gr.CheckboxGroup(["USA", "Japan", "Pakistan"], label="Countries", info="Where are they from?"), gr.Radio(["park", "zoo", "road"], label="Location", info="Where did they go?"), gr.Dropdown( ["ran", "swam", "ate", "slept"], value=["swam", "slept"], multiselect=True, label="Activity", info="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nisl eget ultricies aliquam, nunc nisl aliquet nunc, eget aliquam nisl nunc vel nisl." ), gr.Checkbox(label="Morning", info="Did they do it in the morning?"), ], "text", examples=[ [2, "cat", ["Japan", "Pakistan"], "park", ["ate", "swam"], True], [4, "dog", ["Japan"], "zoo", ["ate", "swam"], False], [10, "bird", ["USA", "Pakistan"], "road", ["ran"], False], [8, "cat", ["Pakistan"], "zoo", ["ate"], True], ] ) if __name__ == "__main__": demo.launch()

Event Listeners


Event listeners allow you to respond to user interactions with the UI components you've defined in a Gradio Blocks app. When a user interacts with an element, such as changing a slider value or uploading an image, a function is called.

Supported Event Listeners

The CheckboxGroup component supports the following event listeners. Each event listener takes the same parameters, which are listed in the Event Parameters table below.

Listener Description

CheckboxGroup.change(fn, ยทยทยท)

Triggered when the value of the CheckboxGroup changes either because of user input (e.g. a user types in a textbox) OR because of a function update (e.g. an image receives a value from the output of an event trigger). See .input() for a listener that is only triggered by user input.

CheckboxGroup.input(fn, ยทยทยท)

This listener is triggered when the user changes the value of the CheckboxGroup., ยทยทยท)

Event listener for when the user selects or deselects the CheckboxGroup. Uses event data gradio.SelectData to carry value referring to the label of the CheckboxGroup, and selected to refer to state of the CheckboxGroup. See EventData documentation on how to use this event data

Event Parameters