patrickvonplaten commited on
Commit
e0b42cf
1 Parent(s): 80f48e5
Files changed (2) hide show
  1. __pycache__/app.cpython-310.pyc +0 -0
  2. app.py +21 -0
__pycache__/app.cpython-310.pyc CHANGED
Binary files a/__pycache__/app.cpython-310.pyc and b/__pycache__/app.cpython-310.pyc differ
 
app.py CHANGED
@@ -29,7 +29,28 @@ sorted_dict = dict(sorted(downloads.items(), key=lambda item: item[1], reverse=T
29
  # Convert the sorted dictionary to a DataFrame
30
  df = pd.DataFrame(list(sorted_dict.items()), columns=['Pipeline class', 'Downloads'])
31
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  with gr.Blocks() as demo:
 
33
  gr.DataFrame(df)
34
 
35
  demo.launch()
 
29
  # Convert the sorted dictionary to a DataFrame
30
  df = pd.DataFrame(list(sorted_dict.items()), columns=['Pipeline class', 'Downloads'])
31
 
32
+ NOTE = """
33
+ This table shows the **total** number of downloads **per pipeline class** of `diffusers`.
34
+ The pipeline classes are retrieved from the `_class_name` attribute of `model_index.json` or
35
+ `config.json` depending on whether the diffusers repo is a pipeline repo or a model repo.
36
+
37
+ **Note**: It's important to excatly understand how downloads are measured here. One should use this graph
38
+ to figure out if a *"type"* of pipeline is used, not a specific pipeline is used. More specifically, we
39
+ know from this graph that `stable-diffusion` checkpoints are highly used, **but** we don't know exactly which stable diffusion
40
+ class is highly used.
41
+
42
+ => So what conclusions can we draw from this graph?
43
+ - 1.) `stable-diffusion` checkpoints are highly used and account for most downloads.
44
+ - 2.) All `stable-diffusion` checkpoints are compatible with `StableDiffusionPipeline`, `StableDiffusionImg2ImgPipeline`, `StableDiffusionInpaintPipeline`, `StableDiffusionControlNetPipeline`, `StableDiffusionImg2ImgControlNetPipeline` or `StableDiffusionInpaintControlNetPipeline`, but all downloads contribute only to `StableDiffusionPipeline` here. This means we don't really know which pipeline class is used when the checkpoints are downloaded.
45
+ - 3.) ControlNet is used a lot - it accounts for > 10% of all downloads
46
+ - 4.) If a pipeline class **and** no compatible pipeline class shows up in the graph, we know that the pipeline class is not used a lot. For example:
47
+ - `VersatileDiffusionPipeline` can only be used with "VersatileDiffusion" checkpoints and so here we no that all VersatileDiffusion classes combined have less than <2k monthly downloads.
48
+ - `ConsistencyPipeline` can only be used with exactly this pipeline and here we're at < 100 monthly downloads
49
+ - 5.) All LoRA and Textual Inversion downloads are grouped together in "other" for now.
50
+ """
51
+
52
  with gr.Blocks() as demo:
53
+ gr.Markdown(NOTE)
54
  gr.DataFrame(df)
55
 
56
  demo.launch()