Python Dev, Parent. Author - https://xitter.cf/t.co/5lts7q9z7R Curator - https://xitter.cf/t.co/wr74oHNs8O Creator - MapToPoster https://xitter.cf/t.co/YQt2CoiupJ 🖖

Planet Earth
Joined January 2012
Excellent, deeply researched piece in today's ET by @RicaB_ET on the staggering cost of cancer care and what needs to change. Govt. needs to regulate the upper bounds of pricing that large hospital chains are setting year on year. Virtually all of them are now PE funded and they act as anchors for setting upper bounds of price charged. Mid tier or old large established hospitals in same area simply offset against these rates and entire pricing tier goes up. If this goes unchecked soon we will have a west like model where healthcare isn't affordable without insurance and healthcare lobby group have so much sway there isn't much govt can do. More power to @RicaB_ET and other journalists writing about this topic.
1
4
630
Ankur Gupta retweeted
I think what is actually needed is for Indian people to actually give a damn about their cities and fellow citizens. Anybody using the "I pay taxes, I shouldn't have to do anything" excuse should go live in another country. India isn't developed, it's developing, so it needs patriots, not parasites. If this triggers you, it means you're part of the problem. If you're not happy with the footpath (or a pothole, or anything else which is broken), fix it, or call someone to fix it, and don't give up until it's fixed. Be relentless. Be vocal. Be creative. Make it your mission to get that one thing fixed. Look at what Virendra (@Virendra0698) did by just calling the right people and being respectful (but also persistent). He and Arun Pai (@arunpaiblrwalks) along with the help of GBA and some wonderful volunteers turned an unofficial garbage dump into a pristine, beautiful footpath through sheer force of will. xitter.cf/Virendra0698/status/21…
indians are not angry enough about the infrastructure of tier 1 cities bro we need like 10 calebs dispersed in delhi mumbai and bangalore to begin with 🙇🏻‍♀️🙇🏻‍♀️🙇🏻‍♀️🙇🏻‍♀️
344
1,765
258
10,718
508,677
Ankur Gupta retweeted
Thanks to @lateinteraction for creating @DSPyOSS and encouraging me out of my imposter syndrome, and @dbreunig for convincing @OReillyMedia this topic was a good bet. Thanks @LakshyAAAgrawal for making GEPA the optimizer that has been dominating every prompt I try. Also @isaacbmiller1 the lead maintainer of DSPy, @jamesaphoenix12 coauthor of my last book, @Shashikant86 and Sriharsha Annamaneni for technical review. Thanks to my colleagues @danshipper and @kieranklaassen for reading and endorsing the book before it was published. Thanks also to the team at O'Reilly, Jeff, Nicole, Beth for making my writing fit to print. The wider DSPy community @MaximeRivest, @getpy, and @_rchaves_ and everyone who was patient enough to explain to a naive prompt engineer why we didn't need prompts anymore. Finally thanks to my wife and kids (who thankfully aren't on X), for giving me 9 months of evenings and weekends to get this done.
4
14
49
5,862
Creating, maintaining and extending a hand curated benchmark suite has been a learning experience even if it's a tiny subset of what leading ones have and even if yours is inferior in coverage and breath. Why?. You personally develop an intuition on model drift, performance and can quickly A/B test and know how your AI workflows might perform. Since you know each case in the suite and by extension failure traces or lower confidence scores make sense quickly. Plus you gradually extend coverage on cases that need attention. It becomes a source of reassurance with ever evolving customer prompting style and variations, accompanying dataset, new model choices. Done testing, time to 💤
4
999
YouTube has many of the Adobe vibe coded clone reviews. Heard few ppl cloned word and excel now. Still some quarters to go for high-margin software moats, welcome to the cigar butt phase of value extraction.
1
3
1,067
Ankur Gupta retweeted
Telling a 3D satellite mapping model to focus on buildings made buildings worse in three of four test scenes. When a satellite photographs the same patch of city from slightly different angles over several passes, you can work out how tall everything is, much as your two eyes judge depth. The result is a surface height map: a grid where every cell holds the height of whatever sits on top, whether that's a roof, a tree canopy or a road. Emergency teams use these maps to spot collapsed buildings, and planners use them to track what's gone up. The newest tools for building them have a blind spot. They're tuned to redraw the original photos as faithfully as possible across the whole scene, so a crisp car park counts as much as a crisp roof edge. Analysts, though, almost always look at buildings first. A bunch of researchers used Gaussian-splatting to over each photo to mark the buildings, then told the reconstruction to care up to two and a half times as much about getting those pixels right. On the main test scene, a suburban block from a public 2019 benchmark, average height error on buildings fell from 84.4 cm to 80.6 cm, a gain of under 4 cm. A gentler version that ramps the building emphasis up during training cut whole-scene error from 1.362 m to 1.349 m, about a centimetre, while keeping part of the building gain. Those are of course som epretty small numbers, and the other three scenes tell the more useful story. Building emphasis made buildings worse there. On one block, building error rose from 1.36 m to 1.43 m, and on another the strongest setting pushed it from 83 cm to 95 cm. So the second half of the system is a controller, which the authors call an agent, that decides scene by scene whether building focus is worth using. It first checks how much of each photo the outlining model has marked as building. Two scenes came in at around 40% to 44%, which it treats as a warning that roads and other hard surfaces may be getting swept in, and it falls back to cautious settings. It then compares the candidate reconstructions on buildings, vegetation and everything else before choosing. It chose building focus for one scene and the plain version for the other three. Averaged across all four, its building-focused picks gave 1.012 m of error, against 1.021 m for always using the plain version and 1.049 m for always using the ramped one. Every decision gets written to disk with the evidence behind it: mask coverage, building count and footprint area, the options considered and the errors that settled it. Alongside the height map, an analyst gets a building inventory, a shaded relief overlay and a 3D preview they can open in ordinary mapping software. The 4 cm will be forgotten. A machine that writes down when its own upgrade didn't help is the part more mapping pipelines should copy. link to full article: arxiv.org/abs/2609.2557
2
2
43
2,832
Son's all subject mid-term results are in and he's back on track, after disastrous first-term exams. A PTM I am looking forward to 😂☺️
7
1,195
Ankur Gupta retweeted
One of the biggest historical bottlenecks for training specialized models has been curating ground-truth. This is typically a very labor intensive process done with human supervision. Now frontier models/agents are getting better and better at bootstrapping ground-truth from scratch, especially for verifiable tasks. They can do this either in a single-shot setting for simple tasks or simulate longer rollouts with rewards for longer tasks. This paves the way for anyone to build mostly automated research loops without needing deep ML expertise or deep access to human labor for data curation. That part can be offloaded to the frontier model/agent; the human's main goal is to define the right evals. This is especially useful for anyone who wants to optimize for a given task at the price-performance frontier. Posttraining open-weight models/harness should be made available to everyone, not just labs/specific startups. Flow for the average user, who is only responsible for the first step: 1. define goal/evals for a given task 2. run frontier agents to gather ground-truth signals for the task. they can bootstrap annotations directly, and reach out to human review where needed 3. train specialized models (and harness) against this task
51
12
3
139
11,350
Ankur Gupta retweeted
If you aren't paying attention, no matter which frontier max model you use, or how many of them you chain in reviews and re-reviews, it's always gonna turn into slop.
12
9
1
123
4,100
Django has inspectdb that introspected the database tables you pointed to and would output django models. Asked LLM a TSQL to models conversion and you see harness generate entire multiverse to accomplish the task.
9
1,180
Darshini in Karnataka
Kebab restaurants in Turkey
2
1,054
Son's mid-terms finally over. Now that he is a a higher class - 8th we are up late night or awake early morning just revising. I find a lot of joy in just sitting next to him and helping him when he asks. However 20-30 percent of the time now we end up asking gemini for all doubt solving. I feel in the age of AI, NCERT ought to relook at what and how we are teaching. Exam format, course content is more or less what I had ages ago. I feel how schools teach should be up for an overhaul with advent of AI. We need more project style of teaching perhaps?. IT subject should have AI tools and how to use them efficiently. Focus on fundamentals and foundational concepts to be retained with more rigour on practice and solving.
1
7
1,233
DSPy's biggest strength is also the reason it can admittedly be hard to wrap your head around it. It's basically say: LLMs & their methods will continue to improve but not equally in every axis, so: - What's the smallest set of fundamental abstractions that allow you to build downstream AI software that is "future-proof" and rides the tide of progress? - Equivalently, what are the right algorithmic problems that researchers should focus on to enable as much progress as possible for AI software? But this is necessarily complex, in the sense that the answer has to be composed of a few things, not one concept only. (Though if you had to understand one concept only, the fundamental glue is DSPy Signatures.) It's actually only a handful of bets, though, not too many. I've been tweeting them non-stop since late 2022, but I've never collected them in one place. All of these have proven beyond a doubt to have been the right bets so far for 2.5 years, and I think they'll stay the right bets for the next 3 years at least. 1) Information Flow is the single most key aspect of good AI software. As foundation models improve, the bottleneck becomes basically whether you can actually (1) ask them the right question and (2) provide them with all the necessary context to address it. Since 2022, DSPy addressed this in two directions: (i) free-form control flow ("Compound AI Systems" / LM programs) and (ii) Signatures. Prompts have been a massive distraction here, with people thinking they need to find the magical keyword to talk to LLMs. From 2022, DSPy put the focus on *Signatures* (back then called Templates) which force you to break down LM interactions into *structured and named* input fields and *structured and named output fields*. Getting simply those fields right was (and has been) a lot more important than "engineering" the "right prompt". That's the point of Signatures. (We know it's hard for people to force them to define their signatures so carefully, but if you can't do that, your system is going to be bad.) 2) Interactions with LLMs should be Functional and Structured. Again, prompts are bad. People are misled from their chat interaction with LLMs to think that LLMs should take "strings", hence the magical status of "prompts". But actually, you should define a functional contract. What are the things you will give to the function? What is the function supposed to do with them? What is it then supposed to give you back? This is again Signatures. It's (i) structured *inputs*, (ii) structured *outputs*, and (iii) instructions. You've got to decouple these three things, which until DSP (2022) and really until very recently with mainstream structured outputs, were just meshed together into "prompts". This bears repeating: your programmatic LLM interactions need to be functions, not strings. Why? Because there are many concerns that are actually not part of the LLM behavior that you'd otherwise need to handle ad-hoc when working with strings: - How do you format the *inputs* to your LLM into a string? - How do you separate *instructions* and *inputs* (data)? - How do you *specify* the output format (string) that your LLM should produce so you can parse it? - How do you layer on top of this the inference strategy, like CoT or ReAct, without entirely rewriting your prompt? Signatures solve this. They ask you to *just* specify the input fields, output fields, and task instruction. The rest are the job of Modules and Optimizers, which instantiate Signatures. 3) Inference Strategies should be Polymorphic Modules. This sounds scary but the point is that all the cool general-purpose prompting techniques or inference-scaling strategies should be Modules, like the layers in DNN frameworks like PyTorch. Modules are generic functions, which in this case take *any* Signature, and instantiate *its* behavior generically into a well-defined strategy. This means that we can talk about "CoT" or "ReAct" without actually committing at all to the specific task (Signature) you want to apply them to. This is a huge deal, which again only exists in DSPy. One key thing that Modules do is that they define *parameters*. What part(s) of the Module are fixed and which parts can be learned? For example, in CoT, the specific string that asks the model to think step by step could be learned. Or the few-shot examples of thinking step by step should be learnable. In ReAct, demonstrations of good trajectories should be learnable. 4) Specification of your AI software behavior should be decoupled from learning paradigms. Before DSPy, every time a new ML paradigm came by, we re-wrote our AI software. Oh, we moved from LSTMs to Transformers? Or we moved from fine-tuning BERT to ICL with GPT-3? Entirely new system. DSPy says: if you write signatures and instantiate Modules, the Modules actually know exactly what about them can be optimized: the LM underneath, the instructions in the prompt, the demonstrations, etc. The learning paradigms (RL, prompt optimization, program transformations that respect the signature) should be layered on top, with the same frontend / language for expressing the programmatic behavior. This means that the *same programs* you wrote in 2023 in DSPy can now be optimized with dspy.GRPO, the way they could be optimized with dspy.MIPROv2, the way they were optimized with dspy.BootstrapFS before that. The second half of this piece is Downstream Alignment or compile-time scaling. Basically, no matter how good LLMs get, they might not perfectly align with your downstream task, especially when your information flow requires multiple modules and multiple LLM interactions. You need to "compile" towards a metric "late", i.e. after the system is fully defined, no matter how RLHF'ed your models are. 5) Natural Language Optimization is a powerful paradigm of learning. We've said this for years, like with the BetterTogether optimizer paper, but you need both *fine-tuning* and *coarse-tuning* at a higher level in natural language. The analogy I use all the time is riding a bike: it's very hard to learn to ride a bike without practice (fine-tuning), but it's extremely inefficient to learn *avoiding to ride the bike on the side walk* from rewards, you want to understand and learn this rule in natural language to adhere ASAP. This is the source of DSPy's focus on prompt optimizers as a foundational piece here; it's often far superior in sample efficiency to doing policy gradient RL if your problem has the right information flow structure. That's it. That's the set of core bets DSPy has made since 2022/2023 until today. Compiling Declarative AI Functions into LM Calls, with Signatures, Modules, and Optimizers. 1) Information Flow is the single most key aspect of good AI software. 2) Interactions with LLMs should be Functional and Structured. 3) Inference Strategies should be Polymorphic Modules. 4) Specification of your AI software behavior should be decoupled from learning paradigms. 5) Natural Language Optimization is a powerful paradigm of learning.
Is this guy talking about DSPy?
47
151
36
999
343,088
Feel the first two sections of every Readme.md should be 1. Description and Output/Outcome - Max 50 word description - what it's and what it does. Add screenshots to show outcome or a video that 60 seconds max. 2. Setup - Maximum two line of cli commands to setup and get entire application running. Keep it Simple.
3
8
1,322
How long before claude cloud container becomes a production hosting platform too?.
2
3
1,261
Ankur Gupta retweeted
AI-SQL lets users write queries like: "Find movie reviews that discuss the ending and recommend the movie", as, e.g., SELECT * FROM reviews where AI.IF("the review discusses the ending") AND AI.IF("the review recommends the movie"). Queries are insanely expensive! An AI filter calls an LLM for *every row*; an AI join can call it for every candidate pair (m * n rows). One query can generate millions of LLM calls, needing ultra-high throughput!
6
4
85
16,711
A large part of parenting teenager is setting up mental crontab entries thru the day and sending verbal notifications across the rooms.
3
1,197
Ankur Gupta retweeted
jev isn't production ready. today @modaicdev is launching Mo, the first multimodal decision model that learns from its mistakes. most production tasks involve subjective decision-making, where the last mile of calibration and alignment has always fallen on the developer. Mo closes that gap on its own. it refines its instructions and weights from the signals already in your workflow to learn what a good decision means for you. use Mo for the decisions where alpha matters the most like LLM judging, lead scoring and qualification, content moderation, resume screening, and more. if you're already using another decision model like jev, plug it into Modaic and it becomes self-improving too :) 🐙 modaic.dev docs.modaic.dev
19
16
6
64
65,177
DSPy 3.4.0 was just released! This release includes native support for Jev and System one models inside of DSPy! Use it with compatible signatures. This release also includes a brand new optimizer, ReAnchor, specifically for calibrating outputs with confidence.
35
75
28
503
143,123
Me: Puts something new on Netflix during dinner Son: You shouldn't be showing this to me Me: Why?. Son: It's PG 18, I am 13 remember Me: Okay Me: Spending another 5-7 minutes finding something new Son: You know what Me: What Son: I had actually already watched it, face grinning.
3
7,327