Complex Systems Physicist turned Data Scientist. Founder @data4sci, Fellow @isi_fondazione, Formerly @jpmorgan, @NYUDataScience, @trmlabs

Manhattan, NY
Joined June 2008
Running this live tomorrow at 12pm ET — one real support ticket, a dozen questions in one pass. Bring your edge cases.
95
I keep seeing teams treat agent safety as a dependency to install rather than a property to engineer. Happy to be told I'm wrong — that's what the replies are for.
If you need a framework to make your AI agent "safe," your agent isn't safe. Safety is engineered into the system. Not imported from a package. Curious what others think — am I wrong? (Building this live on Oct 31 → luma.com/qwhit9op)
135
I'm teaching this one live — a real support ticket, the 3 Jev primitives, one ~100ms call. Free, Oct 21. Would love to see you there.
1
192
The model is the easy part — the system around it is where most agents fail. I'm covering the full engineering layer (permissions, memory, supervision) in my Oct 31 workshop.
1/ Most AI agents fail in production not because the model is bad — but because nobody engineered the system around it. Here's what actually breaks (and how to fix it): 🧵
133
Really looking forward to this one — four hours of hands-on harness engineering, building everything that separates an agent demo from one you can actually ship. Join me on Oct 31! 🎃
I'm running a live 4-hour workshop on Oct 31: Build an AI Data Analyst you can actually trust — MCP tools, guardrails, context management, fault tolerance. Laptop-only, framework-free Python. 🎃 Details + tickets: luma.com/qwhit9op
1
137
The agent failure I lose sleep over: numbers that look right and were never computed. This is the guardrail that catches them - and on Oct 31 we build the whole harness, live.
1/ Deeper on the one failure that actually ships: fabricated numbers. How an agent reports a 12% revenue drop that never exists, and the exact guardrail that stops it -
121
Last day to grab a spot — tomorrow I'm showing how to wire an LLM eval gate into GitHub Actions so bad merges block themselves. Free, 30 minutes, notebook included.
129
The model is rarely the problem - the missing harness is. That's what my Oct 31 workshop is about: permissioned tools, guardrails, recovery, in plain Python.
Hot take: most of your AI agent's reliability problem isn't the model. It's that you're letting the model pick its own tools and trust its own numbers. The model should SUGGEST. A harness should DECIDE. Am I wrong?
1
140
The hill I will happily die on: if your evals can’t block a merge, they’re decoration.
Hot take: if your LLM app doesn’t have a CI eval gate, you don’t actually know if it works. You know if it worked last time someone manually checked. That’s not the same thing.
134
After years of putting agents into production, this is the lesson that stuck: the model is the easy part. On Oct 31 I'm teaching the hard part.
An AI agent isn't reliable because the model is good. It's reliable because of the harness: permissioned tools, context budgets, guardrails, and recovery. The model suggests. The harness decides. Building that harness, framework-free, Oct 31: luma.com/51oqj4cn
150
The model was never the hard part. If your agents are headed for production, this thread is the checklist I wish I'd had a year ago - and on Oct 31 I'm teaching the whole thing hands-on.
1/ Everyone's building AI agents. Almost nobody's building the part that decides whether one is safe. The model is a commodity now. The harness is the craft. Four things a production agent needs that most tutorials skip -
1
184
17 days to go. We build the whole harness live — calibrated judges, error bars, and a CI gate that blocks bad merges. Come build it with me.
17 days until the LLM Eval Harness workshop. Build a production eval harness live in 4 hours. Calibrated judges, error bars, CI gates. Engineers who measure ship faster. maven.com/bruno-goncalves/ev…
117
I've watched too many teams discover a bad prompt change from user complaints instead of CI. A gate in the merge path is the boring fix that works.
1/ Most LLM teams have evals. Almost none have a gate. The difference: evals tell you something got worse. A gate stops you from shipping it. Here's how to build one in GitHub Actions. 🧵
149
This is the setup I wish every team I consult for already had: evals in CI, regressions blocked before they merge. Teaching it free on Oct 7 — come build it with me.
A bad prompt change ships the same way a good one does: nobody measured either. Free session Oct 7 — I'll show you how to wire an eval gate into GitHub Actions so regressions die in the queue, not in prod. maven.com/p/07c4b3/stop-bad-…
1
180
Last call — I'm teaching this free session today at 2 PM EDT. If your eval scores jump around and you can't tell signal from noise, this hour is for you.
142
I've modeled epidemics for years — this time I pointed the same machinery at our own LLM habits. The trap-door result surprised even me: dependence that outlives the conditions that created it.
I modeled our dependence on LLMs as an epidemic — the same SIR machinery used for real infections. Compartments: unexposed -> casual -> dependent. The equations returned something uncomfortable. Thread 🧵
142
One month out! If you've been meaning to get serious about evals, this is the one — we build the whole harness live, from calibrated judges to CI gates.
4 weeks until the LLM Eval Harness workshop (Oct 16). Calibrated judges. Bootstrap CIs. CI gates. 4 hours. You build it live. Seats are filling. maven.com/bruno-goncalves/ev…
189
I've lost count of the eval dashboards I've seen with zero error bars. This is the fix — and I'm teaching it free on Sep 23.
Hot take: most LLM benchmark results are meaningless. Not because the models are bad. Because nobody puts error bars on the scores. You're comparing 84.2 vs 81.9 without knowing if either number is real. Is this a problem on your team? 👇 (Replying with a link to a free fix)
139
My favorite part of building this one: you write the model as a string and epidemik does the rest — R0, diagram, YAML. Give 0.2.0 a spin.
Define an epidemic model as a string: "S + I -> I + I", beta=0.2 → compute R0, draw the diagram, save YAML. epidemik 0.2.0: ODE compartmental models, networkx graph spread, metapopulation travel matrix — one MIT-licensed pip package. pypi.org/project/epidemik/
1
243
Flaky eval scores cost me more debugging hours than actual bugs ever did. This is the method I use to tell real regressions from noise — teaching it free on Sep 23.
1/ You ran the same LLM eval twice and got different scores. Is that a regression — or noise? Most teams can't tell. Here's the method that answers it every time. 🧵
1
1
184