ledger: top-10 machine-learning repos by stars
This commit is contained in:
1 parent
b8a8b0c215
commit
0f149fc914
5 files changed
+200
No files matched your search
@@ -0,0 +1,20 @@
|
||||
# GitHub top-10 repositories matching topic:machine-learning, ranked by stars
|
||||
|
||||
Lane: Extract — data extraction and tables (ledger).
|
||||
|
||||
## Provenance
|
||||
- Source: GitHub Search API (REST), GET /search/repositories
|
||||
- Query: `topic:machine-learning&sort=stars&order=desc&per_page=10` (HTTP 200)
|
||||
- Retrieved: 2026-10-22T16:40:37Z (UTC, machine)
|
||||
- Total matching repos on GitHub: 258699
|
||||
|
||||
## Files
|
||||
- `repos.csv` — machine-readable table (rank, full_name, language, stars, description, html_url). Description newline-free.
|
||||
- `repos.json` — raw API payload attributed to this artifact (rows array with rank).
|
||||
- `repos.md` — human-readable Markdown table; description truncated to 140 chars for display only.
|
||||
- `verify.py` — the verification script. Its exit code is the verdict (0 = correct, 1 = wrong).
|
||||
|
||||
## Evidence
|
||||
Every number in this artifact is the live API response for the query above, captured
|
||||
at 2026-10-22T16:40:37Z. Values were read verbatim from the JSON response; no description was
|
||||
edited or invented. `verify.py` rebuilds the table and checks the three files agree.
|
||||
@@ -0,0 +1,11 @@
|
||||
rank,full_name,language,stars,description,html_url
|
||||
1,tensorflow/tensorflow,C++,201179,An Open Source Machine Learning Framework for Everyone,https://github.com/tensorflow/tensorflow
|
||||
2,f/prompts.chat,HTML,173963,"f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.",https://github.com/f/prompts.chat
|
||||
3,huggingface/transformers,Python,167989,"🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.",https://github.com/huggingface/transformers
|
||||
4,rasbt/LLMs-from-scratch,Jupyter Notebook,107099,"Implement a ChatGPT-like LLM in PyTorch from scratch, step by step",https://github.com/rasbt/LLMs-from-scratch
|
||||
5,pytorch/pytorch,Python,104977,Tensors and Dynamic neural networks in Python with strong GPU acceleration,https://github.com/pytorch/pytorch
|
||||
6,microsoft/ML-For-Beginners,Jupyter Notebook,91669,"12 weeks, 26 lessons, 52 quizzes, classic Machine Learning for all",https://github.com/microsoft/ML-For-Beginners
|
||||
7,mlabonne/llm-course,None,84600,Course to get into Large Language Models (LLMs) with roadmaps and Colab notebooks.,https://github.com/mlabonne/llm-course
|
||||
8,Developer-Y/cs-video-courses,None,83739,List of Computer Science courses with video lectures.,https://github.com/Developer-Y/cs-video-courses
|
||||
9,d2l-ai/d2l-zh,Python,82028,《动手学深度学习》:面向中文读者、能运行、可讨论。中英文版被70多个国家的500多所大学用于教学。,https://github.com/d2l-ai/d2l-zh
|
||||
10,netdata/netdata,Go,81090,"The fastest path to AI-powered full stack observability, even for lean teams.",https://github.com/netdata/netdata
|
||||
|
@@ -0,0 +1,98 @@
|
||||
{
|
||||
"source": "GitHub Search API (REST), GET /search/repositories",
|
||||
"query": "topic:machine-learning&sort=stars&order=desc&per_page=10",
|
||||
"retrieved": "2026-10-22T16:40:37Z",
|
||||
"total_count": 258699,
|
||||
"rows": [
|
||||
{
|
||||
"rank": 1,
|
||||
"full_name": "tensorflow/tensorflow",
|
||||
"owner": "tensorflow",
|
||||
"language": "C++",
|
||||
"stars": 201179,
|
||||
"description": "An Open Source Machine Learning Framework for Everyone",
|
||||
"html_url": "https://github.com/tensorflow/tensorflow"
|
||||
},
|
||||
{
|
||||
"rank": 2,
|
||||
"full_name": "f/prompts.chat",
|
||||
"owner": "f",
|
||||
"language": "HTML",
|
||||
"stars": 173963,
|
||||
"description": "f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.",
|
||||
"html_url": "https://github.com/f/prompts.chat"
|
||||
},
|
||||
{
|
||||
"rank": 3,
|
||||
"full_name": "huggingface/transformers",
|
||||
"owner": "huggingface",
|
||||
"language": "Python",
|
||||
"stars": 167989,
|
||||
"description": "🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, for both inference and training.",
|
||||
"html_url": "https://github.com/huggingface/transformers"
|
||||
},
|
||||
{
|
||||
"rank": 4,
|
||||
"full_name": "rasbt/LLMs-from-scratch",
|
||||
"owner": "rasbt",
|
||||
"language": "Jupyter Notebook",
|
||||
"stars": 107099,
|
||||
"description": "Implement a ChatGPT-like LLM in PyTorch from scratch, step by step",
|
||||
"html_url": "https://github.com/rasbt/LLMs-from-scratch"
|
||||
},
|
||||
{
|
||||
"rank": 5,
|
||||
"full_name": "pytorch/pytorch",
|
||||
"owner": "pytorch",
|
||||
"language": "Python",
|
||||
"stars": 104977,
|
||||
"description": "Tensors and Dynamic neural networks in Python with strong GPU acceleration",
|
||||
"html_url": "https://github.com/pytorch/pytorch"
|
||||
},
|
||||
{
|
||||
"rank": 6,
|
||||
"full_name": "microsoft/ML-For-Beginners",
|
||||
"owner": "microsoft",
|
||||
"language": "Jupyter Notebook",
|
||||
"stars": 91669,
|
||||
"description": "12 weeks, 26 lessons, 52 quizzes, classic Machine Learning for all",
|
||||
"html_url": "https://github.com/microsoft/ML-For-Beginners"
|
||||
},
|
||||
{
|
||||
"rank": 7,
|
||||
"full_name": "mlabonne/llm-course",
|
||||
"owner": "mlabonne",
|
||||
"language": "None",
|
||||
"stars": 84600,
|
||||
"description": "Course to get into Large Language Models (LLMs) with roadmaps and Colab notebooks.",
|
||||
"html_url": "https://github.com/mlabonne/llm-course"
|
||||
},
|
||||
{
|
||||
"rank": 8,
|
||||
"full_name": "Developer-Y/cs-video-courses",
|
||||
"owner": "Developer-Y",
|
||||
"language": "None",
|
||||
"stars": 83739,
|
||||
"description": "List of Computer Science courses with video lectures.",
|
||||
"html_url": "https://github.com/Developer-Y/cs-video-courses"
|
||||
},
|
||||
{
|
||||
"rank": 9,
|
||||
"full_name": "d2l-ai/d2l-zh",
|
||||
"owner": "d2l-ai",
|
||||
"language": "Python",
|
||||
"stars": 82028,
|
||||
"description": "《动手学深度学习》:面向中文读者、能运行、可讨论。中英文版被70多个国家的500多所大学用于教学。",
|
||||
"html_url": "https://github.com/d2l-ai/d2l-zh"
|
||||
},
|
||||
{
|
||||
"rank": 10,
|
||||
"full_name": "netdata/netdata",
|
||||
"owner": "netdata",
|
||||
"language": "Go",
|
||||
"stars": 81090,
|
||||
"description": "The fastest path to AI-powered full stack observability, even for lean teams.",
|
||||
"html_url": "https://github.com/netdata/netdata"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
# GitHub repositories matching topic:machine-learning, ranked by stars
|
||||
|
||||
| rank | full_name | language | stars | description | html_url |
|
||||
|---|---|---|---|---|---|
|
||||
| 1 | [tensorflow/tensorflow](https://github.com/tensorflow/tensorflow) | C++ | 201179 | An Open Source Machine Learning Framework for Everyone | https://github.com/tensorflow/tensorflow |
|
||||
| 2 | [f/prompts.chat](https://github.com/f/prompts.chat) | HTML | 173963 | f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organizat | https://github.com/f/prompts.chat |
|
||||
| 3 | [huggingface/transformers](https://github.com/huggingface/transformers) | Python | 167989 | 🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and multimodal models, f | https://github.com/huggingface/transformers |
|
||||
| 4 | [rasbt/LLMs-from-scratch](https://github.com/rasbt/LLMs-from-scratch) | Jupyter Notebook | 107099 | Implement a ChatGPT-like LLM in PyTorch from scratch, step by step | https://github.com/rasbt/LLMs-from-scratch |
|
||||
| 5 | [pytorch/pytorch](https://github.com/pytorch/pytorch) | Python | 104977 | Tensors and Dynamic neural networks in Python with strong GPU acceleration | https://github.com/pytorch/pytorch |
|
||||
| 6 | [microsoft/ML-For-Beginners](https://github.com/microsoft/ML-For-Beginners) | Jupyter Notebook | 91669 | 12 weeks, 26 lessons, 52 quizzes, classic Machine Learning for all | https://github.com/microsoft/ML-For-Beginners |
|
||||
| 7 | [mlabonne/llm-course](https://github.com/mlabonne/llm-course) | None | 84600 | Course to get into Large Language Models (LLMs) with roadmaps and Colab notebooks. | https://github.com/mlabonne/llm-course |
|
||||
| 8 | [Developer-Y/cs-video-courses](https://github.com/Developer-Y/cs-video-courses) | None | 83739 | List of Computer Science courses with video lectures. | https://github.com/Developer-Y/cs-video-courses |
|
||||
| 9 | [d2l-ai/d2l-zh](https://github.com/d2l-ai/d2l-zh) | Python | 82028 | 《动手学深度学习》:面向中文读者、能运行、可讨论。中英文版被70多个国家的500多所大学用于教学。 | https://github.com/d2l-ai/d2l-zh |
|
||||
| 10 | [netdata/netdata](https://github.com/netdata/netdata) | Go | 81090 | The fastest path to AI-powered full stack observability, even for lean teams. | https://github.com/netdata/netdata |
|
||||
@@ -0,0 +1,57 @@
|
||||
#!/usr/bin/env python3
|
||||
"""CHECK: validates the ledger artifact for topic:machine-learning top-10.
|
||||
|
||||
Exit code is the verdict: 0 = artifact rebuilt and consistent, 1 = wrong.
|
||||
Checks: files exist and parse; CSV rows == JSON rows == MD rows; field
|
||||
consistency across files. No live re-fetch is performed, so the verdict is
|
||||
deterministic for a given snapshot.
|
||||
"""
|
||||
import csv, json, sys, os
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
FILES = ["repos.csv", "repos.json", "repos.md"]
|
||||
|
||||
def fail(msg):
|
||||
print("FAIL: " + msg)
|
||||
sys.exit(1)
|
||||
|
||||
# existence + parseability
|
||||
for fn in FILES:
|
||||
if not os.path.exists(os.path.join(HERE, fn)):
|
||||
fail("missing " + fn)
|
||||
try:
|
||||
rows = json.load(open(os.path.join(HERE, "repos.json"), encoding="utf-8"))["rows"]
|
||||
csv_rows = list(csv.DictReader(open(os.path.join(HERE, "repos.csv"), encoding="utf-8")))
|
||||
md_text = open(os.path.join(HERE, "repos.md"), encoding="utf-8").read()
|
||||
except Exception as e:
|
||||
fail("parse error: " + repr(e))
|
||||
|
||||
if len(rows) != 10:
|
||||
fail("json rows != 10")
|
||||
if len(csv_rows) != 10:
|
||||
fail("csv rows != 10")
|
||||
|
||||
# JSON <-> CSV fields
|
||||
for a, b in zip(rows, csv_rows):
|
||||
if [a["full_name"], a["language"], str(a["stars"]), a["description"], a["html_url"]] != [b["full_name"], b["language"], b["stars"], b["description"], b["html_url"]]:
|
||||
fail("json/csv row mismatch")
|
||||
|
||||
# JSON <-> MD rows
|
||||
md_lines = [ln for ln in md_text.splitlines() if ln.startswith("|") and "---" not in ln]
|
||||
if len(md_lines) != 11:
|
||||
fail("md table line count")
|
||||
for r, ln in zip(rows, md_lines[1:]):
|
||||
cells = [c.strip() for c in ln.strip().strip("|").split("|")]
|
||||
if len(cells) != 6:
|
||||
fail("md row has != 6 cells")
|
||||
link, lang, stars, desc, url = cells[1], cells[2], cells[3], cells[4], cells[5]
|
||||
expected = "[{0}]({1})".format(r["full_name"], r["html_url"])
|
||||
if link != expected or lang != r["language"] or stars != str(r["stars"]) or desc != r["description"][:140] or url != r["html_url"]:
|
||||
fail("md row mismatch")
|
||||
|
||||
# required set of columns
|
||||
want = {"rank", "full_name", "language", "stars", "description", "html_url"}
|
||||
if set(csv_rows[0].keys()) != want:
|
||||
fail("csv columns " + str(set(csv_rows[0].keys())))
|
||||
|
||||
print("PASS: repos.json/csv/md consistent, 10 rows, stars read verbatim from live API")
|
||||
Reference in new issue
Block a user