import gradio as gr from global_var import datasets def dataset_manage_page(): with gr.Blocks() as demo: gr.Markdown("## 数据集管理") with gr.Row(): with gr.Column(): # 获取数据集列表并设置初始值 datasets_list = [str(ds["name"]) for ds in datasets.all()] initial_dataset = datasets_list[0] if datasets_list else None dataset_dropdown = gr.Dropdown( choices=datasets_list, value=initial_dataset, # 设置初始选中项 label="选择数据集", allow_custom_value=True, interactive=True ) dataset_state = gr.State(value=initial_dataset) # 用数据集初始值初始化状态 with gr.Column(): pass # 绑定事件,确保交互时更新状态 dataset_dropdown.change(lambda x: x, inputs=dataset_dropdown, outputs=dataset_state) return demo