如何在gradio使用多进程,并且使用进度条显示多进程

发布时间 2023-09-14 18:11:10作者: 海_纳百川

直接上代码:

def method_a(progress = gr.Progress(track_tqdm=True)):
    pool = multiprocessing.Pool(multiprocessing.cpu_count())

    param_v = range(10)
    pbar = tqdm(total=len(param_v))
    resy = []
    for p in param_v:
        pool.apply_async(task_deal, callback=lambda _: pbar.update(1))
        # resy.append(res)
    pool.close()
    pool.join()
    pbar.close()

主要步骤就是设置gr.Progress(track_tqdm=True),用于追踪tqdm