标记
Gradio Interface 包含一个“标记”按钮,该按钮显示在输出下方。默认情况下,单击“标记”按钮会将输入和输出数据发送回运行 gradio 演示的机器,并将其保存到 CSV 日志文件中。但是,可以更改此默认行为。要设置单击“标记”按钮时发生的情况,请将 FlaggingCallback 子类的实例传递给 Interface 构造函数中的 flagging_callback 参数。您可以使用下面列出的 FlaggingCallback 子类之一,也可以创建自己的子类,这样您就可以对标记的数据执行任何操作。
SimpleCSVLogger
gradio.SimpleCSVLogger(···)
为了说明目的,提供的 FlaggingCallback 抽象类的简化实现。每个标记的样本(输入和输出数据)都记录到运行 gradio 应用程序的机器上的 CSV 文件中。
import gradio as gr
def image_classifier(inp):
return {'cat': 0.3, 'dog': 0.7}
demo = gr.Interface(fn=image_classifier, inputs="image", outputs="label",
flagging_callback=SimpleCSVLogger())
CSVLogger
gradio>=5.0 中 FlaggingCallback 抽象类的默认实现。每个标记的样本(输入和输出数据)都记录到运行 gradio 应用程序的机器上的 CSV 文件中,并带有标题。与 ClassicCSVLogger 不同,此实现是并发安全的,并且每次 CSV 的标题(从组件的标签派生)更改时,它都会创建一个新的数据集文件。此外,仅当分别提供 flag_option 和 username 时,它才会为“username”和“flag”创建列。
import gradio as gr
def image_classifier(inp):
return {'cat': 0.3, 'dog': 0.7}
demo = gr.Interface(fn=image_classifier, inputs="image", outputs="label",
flagging_callback=CSVLogger())
🔗 simplify_file_data: bool
默认 = True
如果为 True,文件数据将在写入 CSV 文件之前简化。如果 CSVLogger 用于缓存示例,则将其设置为 False 以保留原始 FileData 类
🔗 verbose: bool
默认 = True
如果为 True,则在控制台中打印有关数据集文件创建的消息
🔗 dataset_file_name: str | None
默认 = None
要创建的数据集文件的名称(应以“.csv”结尾)。如果为 None,则数据集文件将命名为“dataset1.csv”或下一个可用数字。