How I automate my own job at Hugging Face using agents —…
Talk by Niels Rogge (Hugging Face) on automating his own job — outreach to paper authors whose model weights sit on Dropbox, Zenodo, or Google Drive, inviting them to publish on the Hugging Face Hub. He built the outreach half as a deterministic, agent-free workflow: a model call at each step of his former manual path, run nightly as a cron job on free GitHub Actions minutes, with tracing for prompts, cost, and latency. The follow-up half, built later, is a fully autonomous agent loop built around bash with one CLI, one skill, and a sandbox, fanned out so each issue gets its own container. He also discusses why workflow-vs-agent is not a binary choice, and the tradeoff of not disclosing that replies come from an agent.
# Channel Presentation Observations — "How I automate my own job at Hugging Face using agents"
## Speaker Identity (Self-Described)
- **Name & role**: "I'm just uh Niels from Belgium... I'm a machine learning engineer at Hugging Face for 5 years now."
- **Background**: "I studied at KU Leuven."
- **Team affiliation**: "I'll talk about the community science team at Hugging Face, which is the team I'm part of."
## Claimed Scope of Content
- **Personal workflow automation at Hugging Face**: "Today I'll talk about how I automate my own job at Hugging Face using agents."
- **Three announced segments**, all delivered as promised:
1. Explaining the community science team ("the Google Drive to the hub team")
2. "how I automate large parts of the community science team"
3. "some other efforts that we do at Hugging Face" (Daily Papers Twitter account, Papers With Code revival)
## Intended Audience
- **In-person technical conference audience**: "Hello everyone. Thanks for coming by" — indicates a live talk setting.
- **Practitioner-level ML/agent developers**, evidenced by unexplained references to:
- Anthropic's "building effective agents" blog post and the Claude Agents SDK
- "LangFuse," "Modal," "Cursor," "cron jobs," "GitHub Actions," "Hugging Face inference providers"
- **References to vendors "present here today"** ("LangFuse also has a booth here... Modal is also present here today") suggest a developer/expo conference audience.
## Presentation Style (Observed)
- **Heavy tool and resource recommendation**, framed as practical advice:
- "I definitely recommend it" (LangFuse)
- "probably the best entry point if you want to set up cron jobs" (GitHub Actions)
- "a blog post that I highly recommend... LLM Evals FAQ by Hamel Husain"
- **Concrete results and anecdotes** used as evidence: the Apple researcher DM, PaddlePaddle OCR migration, the "Tiny Recursive Models" issue with "more than 60 people actually upvoted," Daily Papers "crossed 90,000 followers."
- **Opinionated engineering takeaways** offered as conclusions:
- "agents are actually better than workflows" for his use case
- "open models are actually getting great"
- "don't forget about evaluation"
## Notable Self-Disclosed Practices (Direct Statements Only)
- **Non-disclosure of bot identity**: "to be honest, I don't disclose that it's an agent. Why? Because I think if people know it's a bot, then they might quickly like close the issue." — stated rationale, with no further motive inferred.
- **Scale claims**: "every night I have hundreds of GitHub issues being created"; "out of the thousands of issues that have been created... so far I've only had two negative comments."
## Creator Claims vs. Demonstrated Patterns
| Type | Evidence |
|---|---|
| **Explicit claim** | Team membership ("community science team"), tenure ("5 years"), tooling choices (GLM 5.2, Modal, Claude Agents SDK) |
| **Demonstrated pattern** | Structured conference talk format: introduction → problem → solution → results → side projects → conclusion, with repeated "win-win" framing and tool recommendations |
| **Claim about outcomes** | "more than 60 people actually upvoted that issue"; Daily Papers "crossed 90,000 followers without any involvement of me" — asserted, not independently verifiable from the material |
# Delivery Observation — Niels Rogge, "How I automate my own job at Hugging Face using agents"
## Tone
- **Casual and conversational** throughout: opens with "Okay. All right. Hello everyone. Thanks for coming by."
- Self-deprecating and humorous asides, e.g., introducing himself as "just uh Niels from Belgium, the land of beer, fries, and chocolate."
- **Recurrent amused framing** of results: "it's quite fun to see people interacting with the agents," "it's also quite funny to see," "I just included some fun results."
- An audible laugh moment mid-talk: "[snorts] then I also opened PRs."
## Vocabulary & Recurring Phrases
- **"So, yeah"** as a signature transition — appears constantly:
> "So, yeah, the community science team can also uh be described as the Google Drive to the hub team."
> "So, yeah, every night I have hundreds of uh GitHub issues being created."
> "So, yeah, it's pretty nice."
- **"pretty"** as a frequent intensifier: "pretty great," "pretty nice," "pretty simple," "pretty good," "pretty fast," "pretty generous."
- **"kind of"** as a hedge/softener: "It's kind of like going through your mailbox," "it's kind of a win-win, I would say," "that's this is kind of the loop."
- **"actually"** used repeatedly for emphasis: "Actually, you could put your weights on Hugging Face for free," "I actually am using the Claude agents SDK," "it actually beats Opus 4.8."
- **"win-win"** as a recurring summary phrase (at least four times): "So, it's basically a win-win both for researchers..."; "it's kind of a win-win, I would say"; "this is again, I think, the win-win."
- **"to be honest"** as a candor marker: "to be honest, I don't disclose that it's an agent"; "to be honest, they post exactly the same stuff."
## Teaching Habits & Structure
- **Explicit roadmap at the start**:
> "Uh today I'll talk about the community science team at Hugging Face... then I'll talk about how I automate large parts... And finally, I'll also discuss some other efforts."
- **Problem → question → solution pattern**: describes a pain point, then poses rhetorical questions:
> "So, can we automate this? Can we scale the community science team with agents?"
> "So you could wonder, could we also um automate the follow-up to those GitHub issues?"
- **Definition-while-explaining habit** for non-experts:
> "cron is just something that runs regularly."
> "an LLM in a loop that calls tools until it's done."
- **Citing external sources as recommendations**, a stable pattern: Anthropic's "building effective agents" blog post ("which is a really great read"), "free cron jobs with GitHub Actions," LangFuse ("I definitely recommend it"), Hamel Husain's LLM Evals FAQ ("I highly recommend").
- **Concrete anecdotes as evidence**: the Apple researcher DM, Google DeepMind outreach, Paddle OCR migration, the "Tiny Recursive Models" issue with 60+ upvotes, and the agent listing him as model card author.
- **Numbered/conclusion summary** at the end: "So, my conclusion would be um that open models are actually getting great... Uh, for my use case, I would say agents are actually better than uh workflows... And finally, yeah, don't forget about evaluation."
## Communication Patterns
- **Frequent filler sounds** ("uh," "um") throughout — a consistent feature of the delivery, not occasional.
- **Occasional broken syntax and self-repair**: "I was sent I was seeing like trending research," "So they So they were kind of contradicting themselves," "it it just posts."
- **Transparency about trade-offs**: consistently presents both sides of design choices — workflow vs. agent ("more predictable... less flexible"), and openly notes Anthropic "were kind of contradicting themselves."
- **Ethical transparency mixed with pragmatism**: admits "I don't disclose that it's an agent. Why? Because I think if people know it's a bot, then they might quickly like close the issue," then addresses the slop/spam concern directly ("how to avoid slop because you might think, okay, you have an agent uh spamming the whole internet").
- **Signposting between sections**: "So, that's the second part of my talk," "Um Finally, uh I can also discuss some other efforts."
## Uncertainty Notes
- Filler density and phrase frequencies ("so, yeah," "pretty," "win-win") are strongly supported by repetition across the transcript.
- Audience engagement beyond the closing applause is **not observable** from the transcript, so no claims are made about crowd reaction beyond "[applause]."
- Pacing, gestures, and slide timing cannot be assessed from text alone.
# Position Record: Niels Rogge — "How I automate my own job at Hugging Face using agents"
## Speaker
- **Niels Rogge**, machine learning engineer at Hugging Face (5 years), member of the **community science team**; studied at KU Leuven, from Belgium.
---
## Core Positions & Claims
### 1. The problem: research artifacts are scattered off-platform
- New research weights are often **not on Hugging Face** — researchers use Google Drive, GitHub releases, Dropbox, Zenodo, or other servers.
- This **hurts discoverability** of their work.
- Anecdotal evidence: when he opened GitHub issues suggesting free weight hosting on Hugging Face, most replied that migration "makes perfect sense."
### 2. Hugging Face as a centralized, win-win platform
- **Paper pages** (linked to arXiv papers) display linked artifacts (models, datasets), aiding reproducibility.
- Benefits claimed: **metadata tags/filters** (task, language, library), **model/dataset cards** for documentation, **tooling** for upload/download, and **reach** for researchers.
- He frames the outcome as a **"win-win"** for researchers and downstream users.
### 3. Manual outreach doesn't scale
- His manual workflow: find GitHub URL → read README → check Hugging Face status → open PR (if cards/metadata missing) or GitHub issue (if artifacts absent) → follow up with author.
- Hundreds of arXiv papers daily (worsened by the "AI boom", e.g., NeurIPS volume) make manual issue/PR creation unscalable.
### 4. Workflow vs. agent — his architectural choices
- Distinguishes **workflows** (deterministic, LLM APIs in predefined pipeline, per Anthropic's "Building Effective Agents" post) from **autonomous agents** (LLM in a loop with tools; more flexible, less predictable).
- **Issue-creation agent (2024):** chose a **deterministic workflow**, no agent framework, citing Anthropic's then-advice to "start simple," use single LLM APIs, and avoid frameworks.
- **Follow-up agent (a few months ago):** chose a **fully autonomous agent** using the **Claude Agents SDK**, citing a November AI Engineer (New York) Anthropic workshop claiming models have improved enough that **agents may now be better than workflows**.
- He explicitly notes this **contradicts** Anthropic's earlier guidance — "they were kind of contradicting themselves."
- Cites a Cursor talk (AI Engineer, London): replacing **12,000 lines of custom workflow code with ~200 lines** of skill code; says the same applies to his case.
### 5. Implementation stack (as stated)
- Issue-creation: cron job via **GitHub Actions** (recommends "free cron jobs with GitHub Actions" post; GitHub's generous tier), running nightly.
- Tracing/observability: **LangFuse** (inputs, outputs, prompts, cost, latency).
- Follow-up agent: **Claude Agents SDK**, deployed on **Modal** (batch processing — one container per GitHub issue), using **Bash** and the **Hugging Face CLI skill**; posts results to Slack.
- Model: switched from Claude models to **GLM 5.2 via Hugging Face inference providers** "since this week" — claims it beats Opus 4.8 on Post-training Bench (per his account of Cursor bench hype), is cheaper, and it's an open model.
- Invocation is still **manual**: a Cursor skill ("process under Modal") invokes Composer 2.5, which invokes the other agents — "this is kind of the loop people are talking about."
### 6. Non-disclosure of agent identity — a stated position with stated reasoning
> "To be honest, I don't disclose that it's an agent. Why? Because I think if people know it's a bot, then they might quickly like close the issue."
- Justification offered: the agents post "exactly the same stuff" as he did manually.
### 7. Results claimed
- Hundreds of GitHub issues created nightly; "out of thousands" only **two negative comments** (one: "please close this slop").
- Recipients often reply positively ("why didn't I think of this?"); sometimes **agents reply to his agents**.
- Examples: a PaddleOCR migration of OCR models to Hugging Face; an Apple researcher DM; Google DeepMind math datasets outreach; a 400 GB dataset email.
- Agents fill model-card templates (referencing Margaret "Mac" Mitchell's model cards paper); one agent spontaneously listed Niels as model-card author — "I never prompted it this way."
- Most popular issue: **Tiny Recursive Models** — 60+ upvotes leading to Hugging Face release.
### 8. Avoiding slop
- Recommends **Hamel Husain's LLM Evals FAQ** as key guidance on agent evaluation; calls Husain "the main expert" on LLM evaluation.
### 9. Conclusions stated
- **Open models are getting great** (GLM 5.2, DeepSeek V4) — closed-source models can now be replaced.
- **Agents beat workflows for his use case**: a single CLI, a single skill, and a sandbox suffice.
- **Don't forget evaluation.**
### 10. Other efforts
- **Daily Papers** Twitter account: same workflow, autonomous posting every ~4 hours, **90,000+ followers**, no involvement from him; Gemini picks tweet visuals (an Nvidia GLM 5.2 tweet got 2,000+ likes).
- **Papers With Code revival** at paperswithcode.co — the original "died" after Meta acquisition; he's rebuilding benchmarks (e.g., OCR) and educational content (mixed training, on-policy distillation).
---
## Qualifications & Unresolved Tensions (preserved)
- **Anthropic contradiction:** his 2024 workflow choice followed "avoid building agents" advice; his later agent choice followed Anthropic's newer "agents might be better" position. He flags the contradiction himself.
- **Manual invocation remains:** despite "automating his job," the follow-up step is still triggered manually via a Cursor skill.
- **Undisclosed bot identity** sits in tension with spam/slop concerns he addresses later — he defends it via output quality and the win-win framing, not disclosure.
- Speaker self-describes some claims as anecdotal/fun results ("to be honest, quite fun to see people interacting").
# Video Attribution Record
## Video
- **Title:** How I automate my own job at Hugging Face using agents — Niels Rogge, Hugging Face
- **Video ID:** `01a15ca7-ca58-7e5b-8a55-ba27904afc7f`
## Speakers and Roles
| Speaker | Role | Evidence |
|---|---|---|
| **Niels Rogge** | **Sole speaker / presenter (creator role)** | Self-introduction: "I'm just uh Niels from Belgium... I'm a machine learning engineer at Hugging Face for 5 years now." |
| Audience | Non-speaking | Implied by "Thanks for coming by" and closing applause. |
- **No guests, narrators, or other identified speakers** appear in the transcript.
- No curated metadata was supplied; speaker identity comes only from the transcript's self-introduction.
## Referenced Sources (cited by the speaker)
- **Anthropic blog post:** "Building Effective Agents" — cited for workflow-vs-agent guidance; speaker quotes advice such as "Try to avoid building agents if you really don't have to."
- **Anthropic workshop** on the **Claude Agents SDK** at AI Engineer, New York (November of the prior year) — cited for the claim that agents may be better than workflows.
- **Cursor talk** at AI Engineer, European version, London — cited for replacing 12,000 lines of custom code with a ~200-line skill.
- **Blog post:** "Free cron jobs with GitHub Actions" — cited for deployment approach.
- **Blog post:** **LLM Evals FAQ by Hamel Husain** — cited for agent evaluation; speaker notes Husain also has a paid course and free online material.
- **Margaret "Mac" Mitchell's paper** "Model Cards for Model Reporting" — cited regarding model card templates.
## Third-Party Claims (reported, not verified)
- **Cursor** reportedly saw strong performance of GLM 5.2 on their Cursor bench.
- GLM 5.2 reportedly **beats Opus 4.8 on a post-training bench and is cheaper** (speaker's report).
- **PaddleOCR** (Chinese company) migrated its OCR models to Hugging Face following agent outreach.
- An **Apple researcher** DM'd and **Google DeepMind** was contacted about publishing mathematics datasets (via agent-created GitHub issues).
- The **"Tiny Recursive Models"** paper's GitHub issue received **60+ upvotes**.
- The **Daily Papers Twitter/X account** reportedly crossed **90,000 followers** without speaker involvement; one tweet about Nvidia's optimized GLM 5.2 reportedly got **2,000+ likes**.
- **Papers With Code** was acquired by Meta and "sadly it died" — speaker is reviving it at paperswithcode.co.
## Promotional Segments — Flagged
The talk contains recurring endorsements of third-party products/services (explicit promotion by the speaker, though the talk itself is not an advertisement):
- **LangFuse** — "LangFuse also has a booth here... I definitely recommend it." (explicit in-venue promotion)
- **Modal** — "Modal is also present here today... I definitely recommend it" (batch processing, fast startups).
- **Cursor / Composer 2.5** — recommended as his primary agent tool.
- **Anthropic blog posts and SDK** — repeatedly recommended ("really great read").
- **Hugging Face ecosystem** — extensive positive framing of the Hub, inference providers (Together, Novita/"Not AI", Fireworks, Cerebras), and HF CLI; expected given employer affiliation.
## Notable Ethical/Disclosure Fact (provenance-relevant)
- Speaker states he **does not disclose that outreach is from an agent/bot** when opening GitHub issues, believing people would close the issue if they knew; recipients address the account as "Hi Niels."
## Unavailable Evidence Channels
- **No curated metadata** was provided (no description, chapter markers, or speaker list).
- **Comment availability:** not stated — cannot be confirmed.
- Audience Q&A, if any, is absent from the transcript (ends with applause).
\>\> Okay. All right. Hello everyone. Thanks for coming by. Today I'll talk about how I automate my own job at Hugging Face using agents.
Um short introduction. I'm just uh Niels from Belgium, the land of beer, fries, and chocolate. I studied at KU Leuven, and I'm a machine learning engineer at Hugging Face for 5 years now. Uh today I'll talk about the community science team at Hugging Face, which is the team I'm part of. Uh then I'll talk about how I automate large parts of the community science team. And finally, I'll also discuss some other efforts uh that we do at Hugging Face. So, let's start with the community science team at Hugging Face. So, basically, this started when I was sent I was seeing like trending research uh passing by on GitHub. And a lot of times when I saw new interesting work, um the weights were not available on Hugging Face, sadly. Like, researchers use either Google Drive or they use GitHub releases. They use Dropbox, they use Zenodo, or other servers to put their um artifacts on. And this hurts uh discoverability of their work. It's like not easily uh visible or discoverable. And when I then open a GitHub issue to say like, "Actually, you could put your weights on Hugging Face for free." Most of the time, people uh replied to me like, "Yeah, migrating the weights from Google Drive to Hugging Face actually makes perfect sense." So, yeah, the community science team can also uh be described as the Google Drive to the hub team. Um why? Because on Hugging Face, we have these paper pages, uh and every single paper is from archive. And then on the right side, you can basically list the linked artifacts, like the the linked models or data sets. So, people can easily reproduce your paper or find the models or data sets.
So, yeah, you can see them on the right side. Um this improves the discoverability of your work because we have these metadata tags or filters on the app, so you can easily find, for example, depth
estimation model, an LLM if you're interested. You can find them by language. You can tag them with the library they are compatible with and so on. So, this improves the discoverability of your work. So, these are, yeah, the metadata tags that you can add to every single model on Hugging Face or every single data set. So, yeah, this is like the main problem that we saw, like lots of people, lots of researchers are like using third-party services to publish their work. We have the Hugging Face platform, which is like a centralized place where people can find machine learning artifacts. It also improves with documentation because you can add a model card or a data set card. We have tooling, so you can easily upload or download stuff from Hugging Face. And it might also help reach researchers in promoting their work. So, it's basically a win-win both for researchers and then other people using the research. So, yeah, these are the typical GitHub issues that I was opening. I always had like the same template. I just asked, "Could you please release this checkpoint on Hugging Face? Could you please release this data set on Hugging Face?" And \[snorts\] then I also opened PRs, pull requests on Hugging Face to add data set cards or model cards to improve the documentation of those artifacts. But, there's a problem. It's not really scalable for me to open all these GitHub issues or pull requests because every single day there are like hundreds of research papers coming out on archive, especially now with AI boom. Um yeah, also NeurIPS, for example, a major AI conference, they are seeing a
massive amount of papers. So, can we automate this? Can we scale the community science team with agents? So, that's the second part of my talk.
How can we, yeah, scale this uh to a massive amount of research papers? So, the idea is pretty simple. Uh we should have an AI agent which can help me do this outreach to all these researchers which publish uh models or data sets uh as part of their research work. And then, yeah, do the outreach in an automated way. So, this is the typical workflow that I was following. So, basically, whenever I saw a research paper, I first tried to find the GitHub URL uh of that paper if it's available.
Then, I I read the readme of that GitHub file. And then, I basically check if there's anything new interesting to be shared on Hugging Face. Uh it could be that it's on Hugging Face
already. In that case, I check whether the model cards or data set cards already properly uh present, whether the metadata tags, for example, are there. If uh not, then I will might open a pull request. Otherwise, if the artifacts are not yet on Hugging Face, I open a GitHub issue. And then, finally, I also follow up with the author. So, that's kind of the workflow that I had to automate uh with agents. And there are several ways to solve this. Uh you could uh go with a workflow. Uh these pictures are, by the way, taken from the blog post building effective agents by Anthropic, which is a really great read. Uh read. Um so, on the left
side, you see, yeah, a workflow which is more deterministic. You basically use LLM APIs within steps of a predefined path or pipeline, uh which is more predictable. It's more deterministic. You have more control
over it. Of course, it's less flex- flexible. And then, on the other hand, you could have a fully fledged autom- autonomous agent, which is an LLM in a loop that calls tools until it's done, which is more flexible, but also less uh predictable. Uh Uh, at the time, yeah, of course, it doesn't have to be a binary story. You can have a workflow on one hand, you can have a fully autonomous agent on the other hand, but you you could of course also mix and match these type of things uh, for your use case. In my case, I went for um, a pretty deterministic workflow. Uh, why? Because at the time that I was building this, this was in 2024, was at the time that Anthropic uh, wrote their blog post building effective agents. And there they actually said, "Try to avoid building agents if you really don't have to. Start simple, start with a single LLM API. Uh, avoid frameworks." Uh, and actually I think those were great tips. So, at the time I started building a workflow which basically replicated the workflow that I was doing when I was doing this outreach. So, yeah, this is the whole uh, pipeline. This is created using the Excalidraw MCP server in Cursor. It's pretty nice to create a visualization of your code. Uh, I'm not going to go into the details, but basically it just replicates um, the workflow that I was doing when doing the outreach. And I use LLM APIs in then each of the steps without any framework, without any agent framework. So, it made it quite uh, deterministic and I had a lot of control over uh, how this goes. Um, in terms of deployment of this uh, workflow, it's a simple cron job. So, cron is just something that runs regularly. In my case, I run it once every night. So, when I'm sleeping, there is this agent, but technically
it's just a cron job, a Python script with an LLM API, which is going to read all these hundreds of archive papers, uh, and then it might open GitHub issues or it might open pull requests on
Hugging Face. I'm using GitHub Actions for this. Uh, I saw this very nice blog post free cron jobs with GitHub Actions, and actually it's probably the best entry point if you want to set up cron jobs, um, because GitHub has a pretty generous tier if you want to get started with like putting simple cron jobs uh, up there. And yeah, it makes it really easy for me uh, in the UI to manage all these cron jobs. So yeah, every night I have hundreds of uh GitHub issues being created. For the tracing part, um I'm using LangFuse. Uh yeah, LangFuse also has a a booth here. Um LangFuse is pretty great. Um I use it mostly for the tracing part, the observability part, just to see what is the LLM doing, what are the inputs, what are the outputs, what are the prompts, how much does it cost, latency, and so on. Um so yeah, I definitely recommend it. Um but yeah, as my agents are opening so many GitHub issues every night, I then end up with a massive amount of unread GitHub notifications because people reply to those GitHub issues. And that's a lot of work to then reply to all of those issues. It's kind of like going through your mailbox. So you could wonder, could we also um automate the follow-up to those GitHub uh issues? Because initially I was still the GitHub issue creation was done by an
agent, but I was still the one involved in then doing the follow-up. Uh now a few months ago I also automated the the follow-up to those GitHub issues. Again, you could think, how should you
solve this? Should you go for a more deterministic workflow or can you go for a fully autonomous agents, an LLM in a loop which runs with some tools and skills? Um well, here I went for kind of a fully autonomous agents, uh so it's kind of flexible. It's a bit less predictable, but it works quite well. Um I went for this because uh in November of last year at AI Engineer in New York, there was a pretty nice workshop by Anthropic on the Claude Agents SDK. And there they were actually saying that agents might be better than workflows. So they So they were kind of contradicting themselves, but they he said that models have become so good that you might actually now start to work with fully autonomous agents rather than a workflow.
So this is why I went with this approach and I actually am using the Claude agents SDK for this use case. Uh there was another pretty nice talk by Cursor also at AI Engineer. This was in
the European version in London a few months ago. There they talked about how they replaced 12,000 lines of custom code, pretty sophisticated workflow, with a very simple 200 lines of code skill. Uh actually it's pretty similar for me like I can replace a lot of custom codes, thousands of lines of code, with nowadays just a simple agent with maybe a CLI as a tool and a skill and that's it cuz the models have become so good. So yeah, in terms of the architecture, this is a bit what it looks like.
Um so it's actually just the Claude Agents SDK which is, I would say, a pretty good Python SDK for building an agent. Initially I was using the Claude models, but then I since actually this week I'm
using the GLM 5.2 model via Hugging Face inference providers. So Hugging Face does offer a service which basically wraps a lot of inference providers like Together Not AI, Fireworks, Cerebras and so on. So you can use a lot of open models in a unified way. It's OpenAI compatible or Anthropic compatible and then I deploy this on Modal. Modal is also present here today. And it's mainly using Bash as a tool, so the terminal, to basically do Hugging Face commands because it's using the Hugging Face CLI quite a bit. So I combine it with the Hugging Face CLI skill which is actually all it needs. And then it might comment something on GitHub as a follow-up. And it also actually does the posting on Slack because eventually I also want to see the final results on our Slack channel uh Hugging Face. So yeah, given that there's also a lot of hype on GLM 5.2 recently, for example, Cursor saw great performance on their Cursor bench. Post-training bench is another one where it actually beats Opus 4.8 and it's cheaper. So, yeah, there's no reason not to use GLM 5.2, especially given that I work at Hugging Face. For the deployment, as I said before, I use Modal. It's pretty great if you want to deploy agents. In my case, I'm using the batch processing feature. So, they allow you to spin up a massive amount of containers all in parallel. Every single
container is basically one agent loop that is processing one GitHub issue. It's super easy to use, I have to say. And the startups are also pretty fast.
So, I definitely recommend it if you're building agents that are like, for example, running in the background, running overnight, for example. And then the way I invoke it, yeah, technically I could also just deploy this as a cron job. Modal, for example, has support for this. But typically, the follow-up on the GitHub issues, I still do that actually manually by invoking it as a skill. So, I created a skill for this in Cursor. I call it process under it Modal. And then what it's going to do is it's actually going to invoke an agent, in this case Composer 2.5, which is like the agent that I'm mostly using in Cursor, which is again going to invoke all the other agents. So, that's this is kind of the loop that people are talking about. And then finally, it's going to post all the results on our Slack channel. So, yeah, and this is actually what it just posts. So, what it does is it basically just posts a huge amount of Hugging Face papers, which are these research papers which people can make available on Hugging Face because every time someone mentions it in a model card or dataset card, we index it on the hub. And then it just posts all the artifacts that people have been uploading based on the outreach that we do via GitHub. Um so yeah, I do this still in a manual form. So I just invoke the skill, and then after a few minutes, these messages appear on our Slack channel. Um yeah, I just included some fun results because to be honest, it's quite fun to see people interacting with the agents. Um to be honest, I don't disclose that it's an agent. Why? Because I think if people
know it's a bot, then they might quickly like close the issue. And to be honest, they post exactly the same stuff as I was doing before manually. So I don't actually see any reason to to do that.
Um so and then you see replies like this. Hi Niels, thanks a lot for your suggestion and the clear guidance. I actually also often times see people using an agent to reply to my agents. So it's kind of the that internet nowadays. Um but people yeah, make all their artifacts available on Hugging Face. And out of the thousands of issues that are being created on Hugging Face, actually so far I've only had two negative comments. One guy saying yeah, please close this slop. So he closed the issue. And then another one. But most of the people they just say, yeah, actually it makes perfect sense to make my weights or my data sets available on Hugging Face. Like why didn't I think of this? Um so it's kind of a win-win, I would say. Uh I often times also post fun results on our Slack channel. Like for example, one time someone a researcher from Apple sent me a DM like, I saw you reached out to me. Yeah, technically it's my agent just posting a GitHub issue regarding publishing a new Apple uh the artifacts of an Apple paper on Hugging Face. Or for example, it reaches out to Google DeepMind to uh publish um mathematics data sets. Um so a lot of times like I receive emails, the one on the the side, where yeah, they want to publish a 400 GB data set on Hugging Face, but this was also my agent just opening GitHub issues. Um Yeah, this is another fun result. So, Paddle OCR is like a Chinese company. They migrated all their OCR models to
Hugging Face based on outreach by the agents that create issues for me. So, yeah, it's pretty nice. Another fun result is like when it when
it completes the default template of model cards on Hugging Face. So, Mac Mitchell, who also works at Hugging Face, she has a famous paper called model cards for model reporting, making sure that anyone documents their models in a proper way. And so, we do provide this template, which you can see on the left side in the Git diff. And then, the agent is just completing that template based on the content that it finds based on the paper, like the GitHub readme, the PDF itself, and so on. Um yeah, it's also quite funny to see, for example, in this case that it included me in the model card. It said, "Model card authors, Niels part of the Hugging Face community science team." I never prompted it this way, but it's pretty fun to see. Or people replying, "Thank you for helping me fix my mistakes." So, those are all done by the agents. Uh I think the most popular GitHub issue that was created was this paper "Tiny Recursive Models", which you might have seen was quite trending both on Hugging Face, but also on Twitter. So, yeah, more than 60 people actually upvoted that issue so that the model was released on Hugging Face. So, this is again, I think, the win-win. So, it's both a win for the researcher, making their research more discoverable on Hugging Face, but it's also, yeah, better for the people then who want to build on top of that research and want to use them. Uh so, yeah, I I hundreds of GitHub issues where I think I can show uh nice results um where people interact with the agents. You might also wonder, yeah, how to avoid slop because you might think, okay, you have an agent uh spamming the whole internet with your GitHub issues. Like, should you even do this? Again, I already talked about the win-win. Um, but a blog post that I highly recommend, if you want to avoid that your agent is just posting slop, is um the LLM Evals FAQ uh by Hamel Husain. Uh, I would say he's like the main expert when it comes to LLM evaluation. He also has like a paid course, but he also publishes a lot of stuff for free online including this blog post. So, I highly recommend to go through it if you want to learn more about how to evaluate your agents. So, my conclusion would be um that open
models are actually getting great, especially now with GLM 5.2. You have Deep Seek V4 and so on. So, um yeah, we we are able to now replace closed-source models by open ones.
Uh, for my use case, I would say agents are actually better than uh workflows. Uh, they only need a single CLI, which is the Hugging Face CLI. They need a single skill, the Hugging Face CLI skill, and a sandbox, and that's all they need to do their work. And finally, yeah, don't forget about evaluation. Um Finally, uh I can also discuss some other efforts that we do as part of the community science uh team. Um, very shortly. Um, so, I have a Twitter account that I created. It's called Daily Papers. And it actually uses the exact same workflow as my agents behind the scenes to post interesting research papers on X. It uh recently crossed 90,000 followers without any involvement of me. I just deployed this uh and it posts interesting research papers and artifacts from Hugging Face every 4 hours or every time someone uh releases something cool on the Hugging Face. Um so, yeah. And I have like Gemini determining the best visual to tweet or to include in the tweet. Like, for example, this recent tweet where it tweeted out that Nvidia released an optimized version of GLM 5.2 got more than 2,000 likes. So, that's pretty cool to see. And a final effort that I'm working on right now is a revival of Papers With Code, which is a website that once existed and then was acquired by Meta and then sadly it died. So, I'm I'm trying to revive it and making a research and state-of-the-art easier accessible. Um for now it lives at paperswithcode.co. Uh so, yeah, you can find benchmarks over there. For example, for OCR models, all OCR benches like popular benchmark. But, I'm also making it an educational resource so that people can learn about technical terms like mixed training uh on policy distillation and so on. So, yeah, that was it for my talk. I hope you learned something. Thanks all of you for your attention. \>\> \[applause\]
