File size: 9,986 Bytes
2dfc950
 
 
 
 
 
 
 
 
7669bdf
2dfc950
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7669bdf
2dfc950
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7669bdf
2dfc950
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<!DOCTYPE html>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Evolution of the Hugging Face Hub | Observable HuggingFace</title>
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="preload" as="style" href="./_observablehq/theme-air,near-midnight.css">
<link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=Source+Serif+Pro:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&amp;display=swap" crossorigin>
<link rel="stylesheet" type="text/css" href="./_observablehq/theme-air,near-midnight.css">
<link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css2?family=Source+Serif+Pro:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&amp;display=swap" crossorigin>
<link rel="modulepreload" href="./_import/components/timeline.js?sha=fdf0b776497c18f544654d687434fe24d6af70ead65fac52fedca5ffd0e06aba">
<link rel="modulepreload" href="./_import/components/tree.js?sha=5f6427efaf21e77626c828a46aaa2fe5cd74a645f8d000e978ba8a7d16b4ab84">
<link rel="modulepreload" href="./_observablehq/client.js">
<link rel="modulepreload" href="./_observablehq/runtime.js">
<link rel="modulepreload" href="./_observablehq/stdlib.js">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/@observablehq/plot@0.6.13/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/binary-search-bounds@2.0.5/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-array@3.2.4/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-axis@3.0.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-brush@3.0.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-chord@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-color@3.1.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-contour@4.0.2/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-delaunay@6.0.4/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-dispatch@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-drag@3.0.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-dsv@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-ease@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-fetch@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-force@3.0.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-format@3.1.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-geo@3.1.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-hierarchy@3.1.2/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-interpolate@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-path@3.1.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-polygon@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-quadtree@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-random@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-scale-chromatic@3.0.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-scale@4.0.2/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-selection@3.0.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-shape@3.2.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-time-format@4.1.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-time@3.1.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-timer@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-transition@3.0.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3-zoom@3.0.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/d3@7.8.5/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/delaunator@5.0.0/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/internmap@2.0.3/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/interval-tree-1d@1.0.4/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/isoformat@0.2.1/+esm">
<link rel="modulepreload" href="https://cdn.jsdelivr.net/npm/robust-predicates@3.0.2/+esm">
<script type="module">

import {define} from "./_observablehq/client.js";

define({id: "e7d66736", outputs: ["timeline"], body: async () => {
const {timeline} = await import("./_import/components/timeline.js?sha=fdf0b776497c18f544654d687434fe24d6af70ead65fac52fedca5ffd0e06aba");

return {timeline};
}});

define({id: "e4b77d4a", inputs: ["FileAttachment"], outputs: ["events"], files: [{"name":"./data/events.json","mimeType":"application/json","path":"./_file/data/events.json"}], body: (FileAttachment) => {
const events = FileAttachment("./data/events.json").json();
return {events};
}});

define({id: "a330849e", inputs: ["timeline","events","display"], body: async (timeline,events,display) => {
display(await(
timeline(events, {height: 300})
))
}});

define({id: "3c26f472", inputs: ["FileAttachment"], outputs: ["tree","tags"], files: [{"name":"./data/tags.json","mimeType":"application/json","path":"./_file/data/tags.json"}], body: async (FileAttachment) => {
const {tree} = await import("./_import/components/tree.js?sha=5f6427efaf21e77626c828a46aaa2fe5cd74a645f8d000e978ba8a7d16b4ab84");
const tags = FileAttachment("./data/tags.json").json();
return {tree,tags};
}});

define({id: "8f8230ee", inputs: ["tree","tags","display"], body: async (tree,tags,display) => {
display(await(
tree(tags, {height: 10000})
))
}});

</script>
<div id="observablehq-center">
<main id="observablehq-main" class="observablehq">
<h1 id="evolution-of-the-hugging-face-hub" tabindex="-1"><a class="observablehq-header-anchor" href="#evolution-of-the-hugging-face-hub">Evolution of the Hugging Face Hub</a></h1>
<h3 id="powered-by-observable-framework" tabindex="-1"><a class="observablehq-header-anchor" href="#powered-by-observable-framework">Powered by Observable Framework</a></h3>
<p>Let's visualize how the Hub is evolving those last few years.</p>
<h2 id="models-and-datasets" tabindex="-1"><a class="observablehq-header-anchor" href="#models-and-datasets">Models and datasets</a></h2>
<div id="cell-e7d66736" class="observablehq observablehq--block"></div>
<div id="cell-e4b77d4a" class="observablehq observablehq--block"></div>
<div id="cell-a330849e" class="observablehq observablehq--block observablehq--loading"></div>
<h2 id="model-tags" tabindex="-1"><a class="observablehq-header-anchor" href="#model-tags">Model tags</a></h2>
<div id="cell-3c26f472" class="observablehq observablehq--block"></div>
<p>The data in the timeline above is static but this data below is dynamically fetched from <code>https://huggingface.co/api/models-tags-by-type</code>:</p>
<div id="cell-8f8230ee" class="observablehq observablehq--block observablehq--loading"></div>
<h2 id="llm-generated-description-based-on-data-above" tabindex="-1"><a class="observablehq-header-anchor" href="#llm-generated-description-based-on-data-above">LLM generated description based on data above</a></h2>
<p>The evolution of open source models and datasets on the Hugging Face Hub reflects a significant shift in the landscape of machine learning and artificial intelligence. Initially, the Hugging Face Hub started as a repository for Natural Language Processing (NLP) models, primarily focusing on the Transformer architecture, which has been pivotal in advancing AI research and applications. The hub was known for hosting models such as BERT, GPT, and their variants, facilitating easy access for researchers and developers to state-of-the-art models.</p>
<p>Over time, the Hugging Face Hub expanded its scope beyond NLP to include a wide variety of models across different domains of AI, such as computer vision, audio processing, and multi-modal AI. This expansion was driven by the community's growing demand for a centralized platform where researchers and developers could share, discover, and implement AI models across different fields.</p>
<p>The introduction of datasets on the Hugging Face Hub marked another significant milestone. It provided a unified platform for sharing and accessing datasets, which are crucial for training and benchmarking AI models. This feature addressed a common challenge in the AI community—the difficulty of finding high-quality, relevant datasets—by allowing users to easily search for and download datasets for their specific needs.</p>
<p>The Hugging Face Hub has also embraced an open-source ethos, encouraging collaboration and transparency in AI development. Users can contribute their own models and datasets, participate in discussions, and improve existing resources through direct interaction and feedback. This collaborative environment has fostered innovation and accelerated the pace of AI research and development.</p>
<p>Moreover, the platform has integrated tools and APIs to facilitate the deployment of models, making it easier for developers to integrate AI into applications. The Hugging Face Hub's emphasis on interoperability, with support for various machine learning frameworks like TensorFlow, PyTorch, and JAX, ensures that the models and datasets are accessible to a broad audience.</p>
<p>In conclusion, the evolution of the Hugging Face Hub reflects the growing importance of open-source models and datasets in the AI community. It has become a key resource for researchers, developers, and companies, promoting accessibility, collaboration, and innovation in AI.</p>
</main>
<footer id="observablehq-footer">
<div>Built with <a href="https://observablehq.com/" target="_blank">Observable</a> on <a title="2024-02-16T13:08:31">Feb 16, 2024</a>.</div>
</footer>
</div>