heading · body

Transcript

The Thermodynamic Ai Chip Thomas Ahle

read summary →

TITLE: The Thermodynamic AI Chip · Thomas Ahle CHANNEL: Machine Learning Street Talk DATE: 2026-06-28 ---TRANSCRIPT--- Yeah. So, why not try and build a chip that’s just inherently random?

Meet Thomas Alley. I caught up with him in Zurich, and he’s one of these rare galaxy brain people who’s comfortable in probabilistic machine learning, formal verification, and chip design. However, there’s a small problem. When the token god hands you something that looks like it works, how do you know it’s actually right? So my background is in theoretical computer science. I used to do algorithms for highdimensional data locality sensitive hashing. Then I moved to normal computing to develop thermal computing uh also to speed up bashian intelligence. Sometimes I think about it as the lovable for chip design. So we take it all the way from your intent uh through the design through optimizing your design to formalizing and verifying your design uh all the way to tape out. Now I didn’t fully appreciate this before. These days a chip doesn’t necessarily start in a factory. It can start as code. So engineers design the whole circuit in a language called verilog almost written like software. And only much later does any of it become physical silicon. But first that code has to be simulated and formally verified. It has to be proven correct. Because once a chip is fabricated, if there are any bugs, you’re in big trouble. So, a few months ago, Thomas blogged about building a Verarilog simulator using a swarm of AI agents collaborating with each other, and it generated over half a million lines of code in 43 days. Now, the reason he needed to do this is that commercial software costs a ridiculous amount of money and isn’t very friendly to using agents. $10,000 per seat or something. Yeah. per for one CPU kernel. If an AI can generate a chip design or a proof or a working program, how do you know it’s actually correct? The percentage of tests that it got right or like even like the Fable, it was like, oh, it got like 70 80% tests correct. And it’s like, yeah, but I talked with the people who made the benchmark and like, yeah, but it did it get any of them actually right? You know, like now in chip design, noise is the enemy. manufacturers spend a fortune getting rid of it. But in thermodynamic computing, the opposite is kind of true. The noise is the computation. It comes straight out of probabilistic machine learning, which already runs on randomness and uncertainty. And thermodynamic computing tries to make the chip itself a stochcastic differential equation. let the chip’s own noise settle into place and then it can land on answers that would normally cost a fortune to compute. And then you infuse all of this noise um and it’ll start to behave according to um to to these stoastic differential equations. It actually behaves sort of according to the inverse of that matrix. They’ve already released their first version of this technology. It’s a chip called CN 101 all the way to silicon. It’s still early days and it’s aimed at a fairly narrow band of probabilistic workloads. But the real test is what can the benchmark say once they scale this up? And something of huge interest to us at MLST is if we’re going to let AI build everything, what kind of understanding do we actually keep in the overall process? It’s not just that it’s getting smarter, it’s also that humans are getting dumber. Now, I should disclose that Normal Computing very kindly offered to cover our production and travel costs for this show, but we kept full editorial control. These are tools for device manufacturing. Um, so we’re it’s things like I mean it’s compilers for RTL. Um, it’s like the where RTL is like the programming languages you use. So, if you’re building a new chip, um, you typically don’t draw all the different uh gates and so on. um you write it in programming language like Berlock um which has sort of constructs that are quite it’s like a super um parallel programming language um which are a lot of constructs that map well to hardware um but then there are actually no good uh open- source compilers for this system. So the whole um the whole hardware industry it it doesn’t have the same open-source um feeling as like software where all the good stuff is free and there’s like this big vibrant market of of tools here. It’s it’s much more locked down to like big um big providers. But people then yeah they compile this to and they get like a net list. They can start building their schematics. They can also look at it. You get like these giant things that you can eventually send to uh to the FAB. Um but yeah so there’s but they also need to do like do simulations for example for testing you can do like formal verification let me just play that back so I understand it so so veril log it’s a bit like a programming language for describing a circuit and what we might probably before we go and get that fabricated is we want to do simulations because it’s very expensive to get it fabricated so um so yeah we can design this circuit and do simulations. Yeah, exactly. Um, it’s it’s super expensive, too. It could it could cost you what they said like there was this famous uh Intel uh division bug in the ’90s that probably cost them between $500 million and $2 billion. And I mean that’s a lot of money in the ’90s. There’s I think there are other um other examples later on that nearly bankrupted some of these companies like Tiny Bucks that managed to to make it through um to the uh to the FAP. And it’s yeah it’s it’s a really different world again from software where we just um you know people fix stuff in prod you just move fast and and break things. Um that’s definitely like yeah people are much more paranoid in the hardware industry which is also why it’s a it’s a cool place for formal verification formal methods to um to thrive. Okay. So so you’re saying at the moment there are these commercial you know verifiers and simulators and they cost a ridiculous amount of money. So is is it something like $10,000 per seat or something? Yeah. Per for one CPU kernel. Yeah. Like say you want to scale this up in a data center with a million agents running. Like you’re going to like I mean comput is already expensive but not that expensive. Uh what yeah what is that $10 billion or something right? Just for for those licenses. And I think actually that’s one of the reasons also why AI still is not as popular in the um in the hardware space because um they haven’t been able to train like the the models are not as trained to this kind of workloads because they just um it’s not feasible like you don’t have all of the open source code out there to start the training but you also don’t have the tools that they need to learn to use. you don’t have the um yeah all of the like the task like you you can’t just all of the reinforcement learning on top of it. I mean I mean they they clearly are doing some of that um like we can also see from model generation to model generation that they are getting better but it’s just it’s kind of day and night between like Python or JavaScript. we’ve been sort of developing these EDA tools in house uh using um using AI um having you know I I think I I probably have the world records of the longest running agents having like some 20 GBT agents running for around 6 months now still making making progress so as as I understand correctly so similarly to you know anthropic khini had this blog post out and you know they had a functional specification of a C compiler and they had about 40,000 agents and they reproduce a C compiler. You did a similar thing for any by the way, right? Well, I mean that’s an interesting thing as well, you know, because this is what I want to get to, right? That it’s tantalizing that that there there are there are some domains that are so well evolved that we have um you know, that might be very complex, but but we have a functional specification and and it’s reasonably coherent. So, so the idea is we we get a shitload of agents and we reproduce the function of this software based on these tests and we do it recursively, agentically and and so on. Now, my contention with this is I think that it’s not about where you end up. It’s not about the functions and the tests passing. Um, it’s about how you got there and how structured it is. So there is this tendency with agentic coding to build a spaghetti monster which seems to work but because if you think about it in in this project you’re talking about I think you said there’s like 500 or more 500,000 lines of code and in 5 years time there’s all of this code that probably you know you folks haven’t read most of it you know that that sounds like a problem. Yeah, I think for a lot of this stuff we’re relying on the hope of some kind of escape velocity from code complexity that um the models are going to keep improving faster than our code gets messed up. I had those three days of uh you know fable fable access and it was really good like it it definitely cleaned up a few things that GBT55 had had messed up. But but but did it though do you think it could be deceptive? Because you know um when Fable comes out all of a sudden 4.8 looks terrible and when 4.8 came out it looked amazing compared to you know um 4 4.6. So it there’s something deceptive about it a bit you know it’s like a parlor trick. Yeah. No it’s true like in principle you could all be be smoking mirrors. I mean but I think that’s why it’s good to have also the the hard test right. So I could also see that it was actually suddenly I was making more progress on the more objective tests than I hadn’t seen for a while um with the other models. So I guess that gives me some trust. But it is yeah it is weird to sort of not have the same in-depth level of understanding everything in your code and you know definitely miss it. And I’m interested in what the consequences of that are because you said you put this blog post out earlier in the year and then when we had a chat on the phone you said that you noticed there were some things that that were that were wrong and it isn’t there’s this tendency though to um accumulate understanding debt and when that happens you I think from an evolutionary point of view you’re stuck because I think deep grounded understanding of how things are are the basis for the next design decisions the next evolution. So, do you get into this kind of fishbowl thing where like now you’re in no man’s land and you don’t really know what to do? Yeah, I do think it’s important to understand as much as you can and have have time for. I mean, I think for compilers there is some very important architectural design decisions. Um and then there’s a lot of sort of just implement like these like 100 different functions like they all just um especially like modern compilers it’s like layer by layer by layer you have to lower these things from like the front end level to the middle interpretation to the back end layer. Um, and and a lot of that like you definitely don’t want to have to write like it’s it’s it also parallelized as well. I think I mean I’m sure this could be one of the reasons why Entropic also picked it. We talked about this program bench thing. I think Facebook uh released where it’s a benchmark where the task they I think they took 150 170 um programs. Some of them are really complicated like ffmpe is one of them. Um the AI just has to reimplement them uh without internet access. Yeah, basically when it came out they had like all of the LLMs got 0%. Because none of them like were able to pass all of the tests. But I’ve seen like people like I very rarely see that when people post benchmarks for this thing. They always post this like oh the percentage of tests that it got right or like even like the Fable it was like oh yeah it got like 70 80% tests correct and it’s like yeah but I talked with the people who made the benchmark and like yeah but it did it get any of them actually right? you know, like did it because it’s if if the program only passes 70% of the tests, it’s probably not right. I know. And in a way, this is the thread that we were talking about before, you know, like for the last 60 years, going back to behaviorism, there’s been this kind of um thread between uh structure and competence and prediction, right? So, essentially this this program bench is making the argument that you can learn the physomy of a program from its external behavior. So, you can learn the deep structure, the constraints and so on. And I suspect that that is not possible. Um, unless of course the LLM already knows about the source code because it’s in its training data or whatever. But what do you think about that? Yeah, I think I think humans do it all the time actually. I think um there’s the whole field of um kind of reverse engineering where people um yeah actually I listened to something with with with the FFM impact people where they were talking about all these codeexes that they that they put in there and they um like a lot of time they have no idea what they do like it’s just like this obscure blob of code like they they probably don’t even have access to the code they just have uh a couple of like example video examples that were encoded with this and maybe some people had shared some screenshots like with clips from the uh from the movie and then they had to go and and try and read this like encoded blob and being like what is it doing like how could we like write a program that decodes this thing and somehow people are able to do it you know we must have some sort of prior right like what what are the typical things people put in a video codex like oh there’s probably some you know you know furious transforms of some stuff or they’re probably like you chunk things up or I don’t know I haven’t done that much video encoding but um yeah this like completely blackbox just try and and keep improving your program and and visualize the output until the end a movie comes out and and you have an idea of oh this probably looks how the movie is supposed to look and yeah well that’s an interesting thing as well. So we can hill climb in a partial knowledge regime, right? So we might have a verifier and as you say like a lot of science is a form of intelligence where you’re using mat lab and and you do like a you know like a lelassian or you do you do an image plot you take a distribution and you it like it takes shape one step at a time. So what you’re doing is you’re taking steps into the unknown and every single it’s like there’s a generation discrimination asymmetry right so we can discriminate well but you know we can’t generate yet but we take these steps and then when we get there we now kind of collapse that into a model and then that that’s the artifact of the intelligence right it’s like a star search or something where you kind of um you like you prune your search tree as you go and like u what what seems most successful so far like exactly but to your point every single step of the way we’re using the toolbox so you know there are some folks that are really good at riddles or intelligence tests and a lot of it is skill, right? Because they they have a toolbox of abstract tricks that they use and but but then there’s this question of well maybe that’s all it is. Maybe there are these natural patterns, these abstractions that we can compose together and handle any kind of novelty in the intelligence setting. So therefore maybe language models could do this autonomously. I I think they possibly could. Yeah, this is this is a good point like because um I I tried to get get an answer I think from Noran Brown at some point on Twitter about this because you see how the the better pre-trained model you start with and then they start reinforcement learning on it and it seems like it gets up to some like the reinforcement learning works better and better depending on how good the model was to begin with in a sense. Yeah, super interesting. I mean I agree with you. I think it’s wrong to say that LLMs are not intelligent, right? Because there is some kind of a combinational closure and that means from the primitives in an LLM we can do hill climbing and we can build some computational structure to solve problems but that’s not quite it and and it can happen at different levels of abstraction. So if the LLMs have higher abstractions then they can you know traverse the com combinational closure of the higher abstractions and they can solve the problem. What seems to happen though is I mean there’s no continual learning so those don’t get you know added to a library and reused later but there’s also no abstraction. So what humans would do is they would they would look at this computational graph and they would say ah I see that that’s just um an analog of this thing over here and I and I’m now going to compress it into a new variable that screens off all of that complexity. Why do language models not do that? I think I think you’re getting into like continual learning type thing which is is obviously a big a thing we lack. I think I mean I do think language models do that during pre-training. I do think like that’s why for example Methus is so good at at doing stuff in our code bases is because it has somehow seen a lot of code or and it it just seems to have this sort of intuition for bugs and problems and so on and that must be you know kind of like that you know it’s it’s seen the patterns before it has some kind of abstraction but but it’s true like when you actually are doing sort of running them more live um they don’t do it very well um like they don’t and and I think a lot of people these days are are thinking about this how can we do better continual learning so it can just build all of these abstractions and these things really well on the fly I mean I know some companies are actively against trying to do that also like I think anthropic right I think uh Dario said like he considers it like a big safety issue too because uh you’re going to lose you could easily lose all of the um work that has gone into alignment if the agent is learning too much on the fly um then it gets further and further away from the sort of safe checkpoint um but I think there are enough other people working on it that it’ll probably happen uh but it’s yeah it’s definitely like a big unknown right and and I think it’ll also have to change a lot of things in how we serve models for example because suddenly you need to be able like if you if we mean by continual learning that we actually update the weights live it’s going to it causes a lot of problems for the current paradigm because you then suddenly you can’t use the same weights for all customers too. Um I mean I guess uh thinking machines has this thing where they have one shared model and then like some loras on top. Um so maybe something like that can work. Um but it’s still like you have to somehow yeah keep doing this all the time. And we so we are also working in normal computing on like alternative forms of computation um like these thermodynamic chips or just sort of uh unconventional computing. It actually becomes sometimes hard to keep the memories in these analog resistors unless you keep learning at the same time as you’re doing inference. Like you have to use these fancy substrate like memory or something if they have to be permanent. But if you’re just using like sort of basic capacitors like you have in DM or something, they require constant refreshing. Um, so either you just have to to spend a lot of energy on on that or you just want to keep the the learning going forever. Uh, that way they they kind of automatically refresh. And that’s probably more similar to also how brains work, right? Like they don’t they never they never like just I don’t what chumps somebody would say, but if they were just freezes, I think like the the synapses and stuff, they’re always adapting. Yeah, exactly. I I think um out of all of the words we can use to analogize intelligence, adaptivity is the number one and and in a sense when we look at Claude, you can look at you know is Claude the model is it the ecosystem? I think it’s the ecosystem, right? So it it it is adaptive because you say it’s the personality or the persona or something. Well, you know that there’s a tendency to more but but no like millions of people are using claude code because this is tangentally related to how we you know how we come up with causal abstractions in the world. So you know the way we do it is we are in the world and we are agents and we can make decisions and we can like you know um reconcile uncertainty and we can say what what would have happened if I did this and I can share it with my friends and and there’s this wonderful percolation process where the abstractions just become embedded now that does happen with with clawed code right because there are people using it on their machines they’re actually running tests they’re doing counterfactuals and then all of this gets retrained in the in the next version of claude and then someone else will reuse that abstraction So we we we have the adaptivity um as a system like this um brain shared brain where all of the experiences go what it’s called the pork or something go back up and then um yeah yeah so but but it’s interesting to make you know to to discuss is that effectively the same like if we actually had some hypothetical realtime adaptive divergent claude you know would it be much better than the claude that we already have and it’s also related to the the work that you guys do because you know the process of intelligence in in in my view is the creation of these course grains, you know, skills. And that’s kind of like what you guys are doing with AS6. So you’re you’re building this customized hardware for making certain types of computation go really really quickly. And it’s almost like that’s the result of intelligence. So you say, I’m going to take a very very complicated thing and I’m going to whittle it down and represent it in the best way I can and then I’m going to bake it into a non-adaptable hardware substrate. Is that fair? I think that is one that is what we’re working on uh right now is this um is this idea of of trying to to build hardware that best fits uh like the models we have right now and just like really uh make um yeah a super a super efficient inference. You could say like the in the past at least the issue uh has been you stop yourself from innovating on the software side if you lock down your hardware too much right like the Nvidia chips has been pretty good for innovation like they’re pretty flexible um of course they also have have guided the way we do AI in a lot of ways like towards matrix multiplications and so on but but still people have been able to innovate but on the other hand I think also hardware is getting easier and easier to make with these kind of uh AI for uh EDA tools So it’s sort of shortening the like maybe now people are thinking about like making their CUDA kernels, right? It’s um like it’s not so unreasonable to think that soon we’ll just be doing our AI for making like instead of CUDA kernels, we’ll just like make some custom circuits for every single thing we want. So if you come up with a if you want your new algorithm to run really fast, you just design like a specialized circuit for that. Um and the AI helps you like optimize it and check that it’s correct. And um of course you still have the FAP um but people are we’re getting better at like batching things for the FAP and but I mean I I also think having the really flexible hardware is going to be very interesting like the stuff where it’s learning on chip and ideally like maybe the more adaptability that it has and the less we need to bake and it’s I mean I don’t know it’s just more cool I think. Yeah. But isn’t that a wonderful example of this recursive self-improvement because as you say like we’re we’re building the AI and then the AI is helping us build better kernels, better software, better hardware which then in turn makes the AI better and then you know you get this this kind of loop. Ions is a recursive self-improvement in a way, right? Exactly. Exactly. But but but we should bring this to life. Um so there’s this concept called auto for formalization and um and and you guys on your website you say basically that you have done something similar to alpha proof in respect of building chips and roughly speaking alpha proof is when you know they it was they won silver at the IMO in 2024 and what they did back then was they used a language model to generate um a bunch of lean code and then obviously it was a little bit messy so some of the formalization was by hand and they did multiple renditions and so and and then they would do verification with with lean and you’re kind of doing something like that for chips. Yeah. Yeah. So it’s interesting because um there is the order formalization which we define as taking human specifications and and writing up and turning them into formal uh specifications in lean for example. Um and then but then of course you also need the proof step where you provide the yeah prove that your code whatever you have actually satisfies that specification and I think some companies like AUM for example they’re very focused on this part right like they and also in some sense alpha proof that’s also the main thing it did was it started with a formalization um and then the hard part was training the model to provide a proof uh or a disproof I think it’s actually really trick in alpha proof was that when they did the formalization of the proof, it didn’t really matter if they got it right or wrong because um if they just asked the model to provide a proof or a disproof. So if they if they got it wrong and it was no longer true then it would just prove that it was not true or like it would they would like you you could still use it. uh of course like when they actually did the uh IMO uh challenges uh they wanted the form auto formalization to be correct um so then they did it by hand um but they didn’t need it for the training which I think helps scale it up um I think yeah so we can do a similar thing with uh hardware by the way it’s it’s pretty easy to just take some chip design and then you know you can basically just come up with some properties that may and may not be true and then you can train the model to try and prove or disprove that this thing holds. Uh so then but that’s all about creating the proof but then the autoformalization in some sense it’s harder because um yeah it’s it’s all like because it’s harder to to create the the training data for it right like I think that’s kind of also a story about uh AI in the last two years since reinforcement learning like anything you can create good um RL environment for you can probably learn but anything else is like out of reach right now and so some of these chips have thousands of pages of specifications Um, and if you want to turn that you yeah you’re turning that into a into a formal model. Um, it’s not it doesn’t really like if you got just a couple of words wrong somewhere or a couple of numbers um then it doesn’t work like then what you prove is not uh is not important or it’s not relevant. Um, and I think I mean it’s always been an issue for in the chip industry like um that and they’ve kind of tried to solve it by having orthogonal teams. So they have one team that’s designing the chip and one team that’s designing the tests and another team that’s designing kind of tests of the tests like where they they they they uh they they kind of like coverage um they call it functional coverage where they they measure what the test tests and then check everything off. And so um hopefully like um if if all of the three teams have read something the same way and understood it the same way they hopefully they have the right idea of it. I mean you can try and do something similar with AI you can argue whether it’s really orthogonal if it’s the same model that are doing each of the three jobs. Um I do think it is it is quite orthogonal like I do think there is enough entropy in these models when you do long runs. Um, and you can definitely find a lot of bugs if by just doing things many times and see if if if there is agreement between them. Um, but it’s something it’s all but it’s definitely like a trust exercise too and a and a human exercise to figure out how do we get the hardware engineers to trust and like how do we make it easy for them to verify that our formal model fits with what they what they thought like um and you can come up with Yeah, there’s all kind of different tricks you can come up with both to make it more visual like what your your understanding is and like whether it matches and like ask questions and see if you agree with the questions or show examples or um you can also try and do some kind of back and forth. I don’t know lots lots of tricks you can try but it’s it’s an interesting problem and and I feel like no one like the alpha proof and all of these other people they never really solved this because their math statement were just one paragraph they were not like thousands of pages long. Oh yes. Yeah. Interesting. Yeah. Because with um Alpha Proof um that I think they wanted to they wanted to use lean four and there was hardly any stuff for lean four. So they they created a converter from lean 3 to lean four and they needed lots of human you know people to fix it and but but I guess my point is that they needed to fine-tune a language model on a ridiculous amount of lean code and then they were using lean as an intermediate interestingly like with their new model that they won the gold on IMO they weren’t doing any verification at all um not not not in a formal sense but but then is there a spectrum because I don’t the way you were just describing it it’s not like it’s not like it’s a binary right So you you were talking about test coverage and you know different perspectives you know the blind men and the elephant you know so there there are these functional tests and these descriptions and we can do visual inspection and so on. So will it will it end up being a case where we’re always wrestling with something we don’t completely understand but we’re using as many signals as possible together. Yeah, I think I think where we’re going now is also trying to encompass more of the of the spec creation, right? Like obviously when we start out, people already have written down all of these specs and we want to help them out with those. Um, but when you do that, you also lack you miss out on the whole intent that got into and the whole process of creating the spec. Um, you don’t know, you know, if there’s just some numbers somewhere in there. You don’t know why they chose those numbers and not some other numbers. Um, and I think you sort of by internalizing more of the process at some point you can at least be as safe as any uh as any human could have been about this tip, right? And and like there might also just be some ambiguity that no one cares about. The ambiguity thing is is interesting. There’s a wonderful talk by Eric Curiel called math does not represent and you know he was talking about um generalized relativity and he was talking about four four different you know completely orthogonal representations of that and it was a similar thing actually with alpha proof. So you know like how many ways are there in lean to represent non- negative numbers apparently there’s quite a few and so the Google guys were just just just to stimulate the model they were representing the problems in in different ways and is is is this it seems like this is almost an training data in a way like right if they if they autoformalize the same problem in different ways they actually get different problems yeah both both in in terms of the intelligence so how can we kind of bootstrap the model to do better intelligence but also in terms of the legibility and abstraction of the final output. So I I I guess when people think of auto formalization, we we have this almost um you know kind of idealist view that there is a one true representation and and it’s just going to be legible and and everything but but it seems quite vague. Yeah, it’s a one true representation. No, I I guess definitely definitely there’s not one true representation with with smaller chips like say you have like just like floating point or crypto chip or something. I mean the specification is actually pretty simple for those. Uh it’s more when you come up to like the big like system level stuff. I think software is in many ways ahead of hardware. I mean in terms of formalization they’re behind but in terms of thinking about these like architecturing and architecturing together with AI right I think a lot of people now they’ll run their architecture documents by the by Claude or somebody and being like hey what do you think of this or should we move things around here? Boom boom boom. And I think this whole discussion like it sort of helps the models understand like what your intents are and what you care about and what you don’t care about. And and just to give us an example to bring it to life, there was that DRAM um article you published in the the article was talking about these timed petriets and I did look this up on the internet. Apparently it’s a thing from the 1960s for describing distributed systems. Explain that. what we talked about before with the formalizations is very um it’s like at the RTL level at the very sort of cycle level where you you care about yeah you want to prove that the exact thing happens at every single clock cycle um but of course there is another kind of formula and that’s very important for things like adders or like arithmetic circuits or crypto um but a lot of the hard problems people have are more these you can say like kind of system problems or more like protocol level stuff like um the things actually maybe also more popular in software has been like proving things like there’s oh this system can never deadlock a live lock or um sort of like protocol level properties um and like all of the sort of timing requirements between different things makes sense and there’s no internal inconsistencies and and there so there currently there exists different um formal languages for these things like for the cycle level stuff people use these system very log assertions, SVA type things. Um, for the higher level protocol things, they’re more classic things like the TLA plus I think by uh Valiant or no or Leaport or something. Um, and yeah, so we we try and formalize things in both ways because it can have different um it’s useful for different things. Um, it’s possible at some point you can all merge if you supply. It’s kind of like you’re doing very high level math and then you you can u you can reduce it all the way to the actions if you want to. But I think it’s also interesting um yeah I mean it’s a very new field so we’re trying to explore different ways and and these time patronets is is one way to represent like these super parallel systems um that you have for example in these memories um where all these different banks they can like you can do activate like like for example if you activate one of these rows you have to wait for the data to run down to the bottom before you can read it for example then after a while you have to like refresh it because again And it’s like these capacitor DRM cells. They have to be refreshed all the time. But you can also be working in a different memory bank. There might be like lots of them on this chip um at the same time. So there’s certain like but then there might be some circuitry that’s shared between the banks and so certain things that like interbank dependencies and intrabank dependencies and alo bank groups and people build really crazy stuff actually in there. Very cool. Very cool. I mean, what’s really exciting to me is that it’s possible to build chips that can do certain types of things orders of magnitude faster. And and that’s why I want to talk a little bit about thermodynamic computing, right? So, you know, um so apparently instead of forcing transistors to settle at zero or one, you let noise do a random walk and bias it. So, the chip is a stochastic differential equation, right? I mean, that that that sounds crazy. Like, how does that work? Yeah. Yeah, I mean this was one of the things that really that got me to normal in the first place. Um before that uh before normal I was at at Facebook as we call then um in the like the research group that does um probabilistic computing uh like we were doing like these spatial neural networks um where you um assume like probability distributions over all your weights um and you try and infer like the posterior from like the prior data that you look at. Um, but a lot of these techniques were kind of slow because you had to um do um you had to like either try and do lots and lots of of repetitions with the different random seats or or you were trying to do it analytically. I mean that kind of maybe takes a little bit of the point out of the probability. Um, but then you could also just But then, but then it’s funny because you have these chips and like the chip manufacturers, they spend so much time like getting out every single little piece of noise out of their systems and like having these extremely sharp margins for everything. Like so much, you know, precision. It’s probably like most precise business in the world. And then what do we do with them? We just like add randomness everywhere. Um and um yeah, so why not try and build a chip that’s just inherently random? um like uh I mean yeah I think the brain probably has bunch of randomness but here the first ch we made was then this um you basically you have this array of um of yeah capacitors and you have certain uh resistances between them you can program and then you infuse all of this noise um and it’ll start to behave according to um to to these stoastic differential equations um And then you think okay what what can we do with that? It’s sort of it’s a new computational paradigm that I found very interesting to explore where you can say one of the things for example you could do with it is it actually turns out that the matrix that you put onto the um onto the chip in the weights differential uh or the stoastic differential uh equation. It actually behaves sort of according to the inverse of that matrix. And so then we could try and capture uh and average it out. When we spoke about this on the phone, you said something very interesting because you know we often talk a good game about this. I was talking with Michael Jordan the other day and you know like yeah we need uncertainty quantification. we need adaptive computation and yeah and I think this was kind of one of the issues we had like because I think Beijian machine learning was really strong for a certain amount of time when like at a certain point in time uh before the generative AI because you had like the one output and then it made sense to have this sort of distribution as the output but now you have these sequences yeah as you’re saying like you keep putting these tokens out and and I think no one really cares about what is the uncertainty about like one particular token and having a a better distribution and that you really want to know after the model have thought about 10 different options and you know it’s backtracked and all this stuff and it comes out with a final final answer what is um like how much can I trust this answer you either have to go like really deep on mechanistic interpretability to try and really carry all of the uncertainty all the way through that or you have to try and use some more maybe anthropomorphic methods I think that based on like how how would humans estimate their uncertainty and you know and try and apply that at really high level but yeah you you lose some of that beautiful math in in there because it’s that’s actually really cool that you’ve got a basian background because the way I introspect about this is you know like when you when you have a thought and you have some intuitive notion of how confident you are and it seems to be because you have a deep structure so you can introspect and you can uh rationalize and you can say okay well there’s this component and this component and there are these constraints I’m not quite sure about that bit and that seems to be the missing link. Yeah. Yeah. We actually did some experiments um back also when transformers first became popular where we tried to do uh it was before we knew exactly what the company was going to do that it was going to be AI for hardware. Um so we wanted to do like predictions and we sort of building base uh law into the model. So um for for some particular question it would try and find like lots of pieces of evidence and then it would say what is the probability that this if if the answer is yes and if the answer is like different things like what is the probability that I would see this evidence and you would do that lots of times and then at the end you know you could use base law to say okay then what is the probability that the original statement was true or false. Um it actually worked really well. Like we did this um I did some like internal like prediction game and it and it uh it beat everyone. Um I we had two multiple versions. One of the versions um we sort of it was more uh neurosymbolic you could say where you would just like have the model come up with all of these probabilities and then you would manually calculate it. And then I also tried another version where it you I just told the model now use base law and go do it or something and and somehow it actually did a little bit better. So I don’t know how it how it did that or or maybe it just was able to uh yeah maybe it’s because it was able to look back and think actually a couple of these values I probably bullshitted and I should I’ll just ignore that or um but um yeah it’s interesting. Um I I know there are some people training like there are some benchmarks now for um where people are trying to predict polyarket and this kind of stuff with um um with LLMs and they have benchmarks for that but I’m not quite sure if they use these sort of techniques or it’s all just end to end reinforcement learning and and they hope it just picks up good mythology by itself but it’s a wonderful example of this kind of um um adaptivity specialization loop. So you know um for the first and this is a common with vibe coding. for the first month um there was a false positive every single day and you know so I I just created a skill and then Claude would just retrain it and then um eventually it just kind of converges and and this is this is the the bullcase of vibe coding right that you know like you just every single day you fix it fix it fix it fix it and eventually you you’ll come into the landing track and and it works really really well but in a way this is similar to what you guys are doing right because you you have this kind of outer loop which takes something complex and then you kind of um compress it and you optimize it and then you bake it into a kind of crystallized hardware. Yeah. I I was thinking about there is this older tweet by Elon Musk. I don’t know if people were laughing at him. I mean I don’t know he he tweets a lot but it was he was saying like um why don’t LLM just write the binaries directly or the assembly? Oh yeah, I saw that. You know I I don’t see why we wouldn’t be able to do it. I just it’s a question of if we would want to do it or like like do we think because like I think there’s some fundamental computational problems always and in like everywhere in the world we don’t always like recent years we don’t focus so much on them because we’re so excited by AI and we want to um we’re just interested in all the stuff that AI can do really well but I mean obviously things like cryptography or like some of these like basic algorithms like you never want want going to want the LLM to just do it even if they can do very large number multiplications. It’s just super inefficient or like um you might as well optimize like a circuit or or piece of code for that. And compilation has some of the same problems where you want to um and also end chip synthesis where you’re trying to yeah explore all these different designs and so on. So you don’t necessarily want to um have the LLM do it because it’s so slow versus some super optimized loop. Um yeah, not to jump too much and things, but it’s interesting to think about chess again like of course you have like the Alph Go thing where it was like very everything ran through a neural network, right? But but today the state-of-the-art is in like Stockfish of course is that they took um they did more like hybrids. So they took the neural networks um and they made these like um like a certain type of neural network that can update really fast when you change the the state and then they they combine it with like just super fast search uh and it actually outperforms the best like open source like alpha go type chess engines. Oh really? Using like um adaptive fine tuning um and structured in inference. I don’t know if you call it adapt. It’s more like they took the classic test search engine and they replaced the evaluation function with a neural net but like kind of a very shallow wide neural net that they can um that that is really really fast to evaluate. Um, and yeah, I think it could be that for something like synthesis and compilation, there’s a similar thing where it’s like you could try and do it all with LLMs, but at some point that’s the speed is a bottleneck and like you can throw you you get a benefit from having more knowledge and more intuition on all of this stuff, but at some point there’s also just a hard commutation problem where you just want to brute force some stuff and at that point you want to be able to switch to like more classical algorithm. Absolutely. Now before we were talking about um you know thermo computing and so you you you folks have have done some work that is incredibly like it has huge potential for things like um you know mark of chain Monte Carlo I think and um diffusion models but you you did say to me when we spoke last time that um in some cases it can be a false economy like for example you could have a diffusion model which might have like a different type of neural network on the end of it and and you might find that the benefit that you have doing the diffusion might be bottlenecked by another part of the model. So, so in in in practice, where can we see a huge uplift? I think it’s it’s always interesting when you build hardware because you’re there’s always this code problem with this with the algorithms, right? The algorithms are are so based around the um the GPUs and the hardware we have now. And so you can try and target some of those bottlenecks like you can make hardware like we talked about with the with the thermody that’s super efficient for uh for the memory um like that might speed up inference but it can only speed it up like say we have there’s some like 10% GPU utilization now for inference like you could then you can hope to have like a 10x there but you don’t know if you suddenly have access to that much like that different architecture what like new algorithms could you um like if you really went all in on that and that’s some similar thing with the diffusion stuff, right? It’s like now the architecture is not that e efficient in terms of like randomness like the GPUs. It’s kind of um people don’t really do uh want to sample like tons of Gaussian random variables everywhere. Um and and so they maybe also build architectures where they sort of try to remove that bottleneck by not focusing too much in these things and then they instead um so we can build new um hardware that that makes them that more efficient and and that has some performance gain but to really make the most of it you then also have to um come up with the new uh models that um that sort of go all in on that. It’s interesting these uh notion and apps. Have you thought about this? How all of the apps now they want to be like your central AI like notion has this they want to integrate with the other apps and your linear have an AI and they want to integrate with the other apps and like everyone is trying to like capture like being your central AI assistant and then all the other apps will just be tool calls. I know. I have to be careful because notion are now sponsoring some ads. But um no, they uh I I actually use it a lot because it’s got an an amazing agentic interface. It’s got like a CLI interface. So I I use it from, you know, from Claude, but what they want you to do is to pay them to use the agents that are built in at API prices and I don’t really see the reason in doing that when I’ve just got a notion MCP. I’ve got a notion CLI. API prices stuff is really killing innovation, I think, in that uh that space, right? I mean I think I mean I think Codex I think they are actually opening up more that you can use your accounts. Um I saw just yesterday I think maybe also Entropic opened up some uh that you could use some more like the SDK you can use with your accounts and but it’s just like the price difference is so big that if you have to use API pricing like nothing is competitive. Well, I mean, you know, we don’t have to go too too deep into this, but I I think creativity is all about respecting constraints and um I mean, you studied linguistic linguistics at Oxford and Chomsky always says that there’s a difference between linguistic competence and linguistic performance. So, you know, he he he’s using this bulldozer analogy for ages. You know, he said, “I love bulldozers, too. They’re great for clearing the snow. They’re not a contribution to science.” And he even said about Deep Blue that um a computer winning at Deep Blue in the way it did is a little bit like a bulldozer winning the weight list, you know, the weightlifting competition at the Olympics. I think it was in a way like with Deep Blue, I mean now maybe modern chess AI is a bit more uh is a bit different. I actually worked on chess engines for 15 years. Um, but I I I actually I remember him saying that too and I was like a bit surprised because you’d think that if like sure like if your science is biology or you want to understand how humans do language, sure like then maybe the LLMs is kind of not so relevant how they learn language but if your science is more the abstract of what is language I I thought you would be really interested in seeing like different systems developing language and you can comparing and see what’s common, what’s the same, what’s different and so uh that would give you like a wider understanding of what is the concept of this thing. I mean of course it has to you have to have some kind of respect for AI language to even like include it if you just think it’s like completely uh you know just some I don’t know stoastic par thing. Maybe you’re like I don’t really care about it. I want to include it in in my model of language. Um but if you do think it’s actually doing language then I think it doesn’t really matter if it does it the same way as humans or not. Maybe it’s more interesting if it’s in a different way. I know. I know you you mentioned chain of thought by the way. Um how much can we read into chain of thought, right? Because you know like some people just call it chain of thoughtlessness like you know sabarro kamahhati and um but actually it is probably the the modus operandi now for doing um interpretability right for actually understanding what they’re what they’re thinking. But you know you you could argue that chain of thought is like the press secretary not the orchestrator. So it’s it’s almost a post hawk confabulation and but that does that’s not quite right is it because that sounds a little bit like there’s no cause or link between the chain of thought and what the language model outputs that’s not true so how much can we read into it yeah it’s like you want to give the model somewhere to think right like are you when you do reinforcement learning I mean the chain of thought before the reinforcement learning and after reinforcement learning I think is very different because before it was kind of you try and prompt it and some tricks they work and kind of doesn’t work. But once you do the reinforcement learning, you need um like it’s like a touring machine, right? Like it needs to have infinite memory and being able to have something to operate on. Whereas when you just had the transformer and just like single shot output, it’s it’s like I mean probably in the chsky hierarchy, it would be a completely different um type of system like uh I don’t know an automat or something, right? there’s like only finite amount of computation it can do but now it can do as much computation as it wants and it just has to learn to figure out how to do it like you could imagine building a really simple LLM type system and with access to chain of thought it would be a universal touring machine so now at that point it’s just no because it can it can have this tape and it can keep reading and putting uh I think I think that would be pretty easy to make a structure like that but then the question is whether it can learn it but at least now it has the like representation capacity so you can do it and clearly something is improving and working. This is actually the bigger problem like with the ecosystem which is that software was always designed to be a thing that that reduces complexity and it introduces canalization. So spreadsheets they’re they’re a great example of this. So now you know accountants use spreadsheets and financial you know like everyone’s using spreadsheets and it creates an interface that everyone uses and it reduces complexity in the system. um this this agentic AI, it just creates spaghetti everywhere. And this is part of the reason why people aren’t shipping because, you know, it creates some ephemeral um you know, complex it it’s a little bit like bash scripting on steroids. So, I’ve now created this web that only I understand and it’s becoming more and more specialized over time. So, I can’t share it with other people and and the entire ecosystem is becoming very messy. Yeah. No, I I definitely think uh a lot of things are are breaking now because of that. I mean, a lot of the open source stuff is is like everyone just also like writes new code from scratch instead of trying to to get come together and hone these like shared libraries. Um, but I mean it is just for a lot of things more efficient than than also going through and you can get everything just the way you want it. Um, but yeah, and and I actually think it’s very interesting what you’re talking about with the spreadsheets and like this channeling, right? because there’s a lot of kind of domain knowledge inside of these tools. Um and and that’s actually also what I think uh like um people might be worried about who build these tools like how easy like it is to kind of extract that knowledge and like people building clones and so on of their tools. Like if you have like everyone these days are like locking down all of the data, right? Because they’re realizing data is becoming so valuable. they want to keep it themselves or build something themselves rather than have other people uh use it. And and I think it could be a similar thing with with a lot of like specialized tools because the tools basically are data like they’re developed over so much time like finding all the right patterns everything is built in there. So how do you avoid other people from um going in and and and sort of yeahicingly extracting distilling it kind of I’m sure this has happened to you random people on the internet will like say I’ve just generated this paper I’ve just generated this code have a look at it and you know there’s massive amounts of AI psychosis out there which is that like you you do things that are slightly outside your domain of expertise and Claude will convince you that you know your stuff is not mediocre it’s great and then you you share it with other people and other people immediately see through it and this is a bit of a serious problem as well in in in my opinion because you know I I think there are experts out there who have really really clear ideas about things they’ve been doing software engineering and you know they’ve been in science and when they use claude it’s brilliant if if they’re diligent right because they can actually use good abstractions and representations but there’s now a tsunami of pollution out there yeah I don’t um yeah and it breaks this social contract right like in the past if if I wrote something and asked you to read it you could at least have assumed that I would have spent 10 times more times writing it than you reading it. But now now you’re really skeptical about anything because like why would I want to spend time reading some stuff that you didn’t even read yourself maybe? Um yeah like I mean but a lot of this is like social problems right like how do we protect also the open source ecosystem from um AI generated PRs where like no one has ever read them and then these like volunteer maintainers have to like read through all the slop um and yeah it’s it’s not really fun. Um, yeah. Do you have you talked with anyone about that? Like people talking about like we need like a GitHub like uh social credit system like a commerce system so so people can like uh downrate you and like if if you don’t have high enough karma maybe they’ll just not read your PRs or We do need that. Yeah. Yeah. Yeah. And um Archive recently put gates on people uploading things there as well, right? Yeah. And they had this ban. And it’s like a one-year ban if if you have an hallucinated uh a citation. Yeah. But it’s Yeah. It’s sad in a way because it makes it harder especially for for new people and like young people to to break in uh to that stuff like because then they they don’t have any any calm or anything to show. I I know. But I think the the the broad reason we have this problem is that this technology is the most deceptive thing ever created in human history. Right. And it’s a serious problem because it it’s it’s all about epistemic subjectivity which is that you generate things that you don’t understand and it convinces you that it’s correct and you can’t see the glitches and obviously an expert can look at it and see the glitches straight away but and it creates dependency. you know, when you start posting stuff that you that you don’t, you know, you don’t understand. Um, you want to be consistent, right? You you you’ve now made a statement that I know about this thing, so I’m going to keep doing it. And and then, weirdly, um, people are very defensive about it as well because if you criticize work that they’ve done with Claude, they they take it personally. So, it just creates this perpetuating cycle. Yeah. And it creates a feeling of understanding that you might not actually have, right? And um it’s like I don’t know doing an exam or or copying somebody else’s work like you might feel like you wrote it but you don’t like your brain didn’t go through the motions. Um and yeah I think it’s dangerous also for like if you’re worried about um sort of AI taking over you know because it’s not like it’s not just that it’s getting smarter. It’s also that humans are getting dumber like we no longer um like know and like we get we get lazy in terms of understanding stuff. We don’t read the papers. You just put them in AI and be like, “Oh, explain this paper to me or something.” Um but yeah, it’s it’s it’s strange, right? Because on the other hand, I mean, it is it can be like this big um level like speed like it can speed you up so much. So, it’s like it’s it’s hard to not use it, but like finding out when you should stop uh and when you should start using it again. Um I know I mean it’s reminiscent of the Elon Musk tweet, you know, he said there there are no researchers at Tesla that there’s only engineers. And this for me is is the big problem actually. It’s it’s a paradox because you can use language models to increase your knowledge. That’s a fact, right? If the purpose is to increase your knowledge, then you know if you’re a curious person, you can just dig and dig and dig and and you can learn a hell of a lot. So why is it the case that on average they erode our knowledge? And I think I think it’s Elon’s fault, not not his fault, but you know, he says that engineering is like, you know, this is a means to an end. So we are building this thing and it needs to pass these tests. And in a sense, I don’t care if if your knowledge erodess during the process because that’s not what I’m measuring you on. And you know, we shouldn’t be binary about it because clearly engineers, they they trip up on things and they learn a lot along the way, but it seems to be quite convergent, you know, like when when you’re pursuing knowledge for its own purpose, you seem to um you you seem to build deeper foundations and and discover new things. Yeah. And I guess that’s like a tension with like in capitalism or something, you know, that that that the companies they they don’t they’re not trying to necessarily uh develop their employees. Uh I mean maybe if they can see a pro a profit motive in it but at the end of the day they just want to get the job done. Um yeah and like of course if you spend a lot of energy developing your employees and then they leave and stuff it’s there always it’s always a bit tough there. I don’t know if there’s a way to to force to force it. Um, but I think it’s also a little bit self-inflicted because I mean learning stuff is just hard and like it can be like frustrating and and it doesn’t always get you in the same kind of flow as just prompting or something, right? And it’s like um I think yeah I I’ve been trying to use this. I think it was uh Kapathy who who who suggested this like when he was learning some new stuff from LLMs he didn’t like copy paste it or he would have like sidebyside windows but he would always like write all of the code by hand. Yeah. Um I I made a internal app to try and because we hire a lot of of AI engineers um like it’s it’s hard to find people who are both like really good hardware engineers, really good AI engineers and also software engineers. Of course you have to be that. Um so we we have to scale up people. We have to scale up hardware people on AI. We have to scale up AI people on hardware. Uh so I made like internal like um uh training tools and so on where I tried to have the same like uh blocks in there if you trying block copy and paste in the least like if people are warning and saying like h you should maybe try and type it yourself like somehow it like you know you wouldn’t think so but like it doesn’t feel like anything like if I’m just looking at it than typing myself like why would I learn it better but it’s just empirical that somehow like our neurons and stuff like It’s important like to to go through the moments to the movements. You have to figure out what projects you you need to understand in depth and which ones you’re just making like like where where it doesn’t matter matter as much. I think we also we get tempted with the AI to just start way more projects uh in parallel, right? because like oh I can just start another one and while it’s working on that I’ll start another one and another one and then suddenly you’re like well there’s obviously no way I could actually understand all of these in depth because now I started so many projects uh so then then you have to temp like to stop yourself and being like maybe instead of starting the fifth project I’ll go back and try and understand what’s actually going on in in the first couple of projects. Um, I think maybe there’ll be some evolutional like we’re still learning all the social stuff around using these tools and and what is effective and not what’s not effective. Hopefully we’ll and maybe we can even build some stuff into the tools. Is that what you’re saying? Well, with the scoping like to to try and make them u better. And it’s hard. I mean, another really hard social problem I think right now is how do you do um teamwork? Like that’s something I also think about as a manager. like if everyone on my team is like staring at their 10 agents or something working on some stuff, um when are they going to go and talk to their colleagues about this stuff or like if they don’t understand the code themselves, how are they going to explain to the other people in the company what the code does? Um and sort of and build together. Um and and I don’t think anyone has really solved it well at like at scale. I I heard some podcast also with the entropic um uh co- uh working team and at least the way I remember it was that uh the podcast hey how how did you make this so good and they were like yeah just everyone on the team uh coded their own version and then we picked the best one and I was like damn if that’s if that’s the best we can do in teamwork you know it’s kind of I mean I in a way it’s it’s cool because it’s like it’s like the ensemble method just applied to people and and you know it’s it’s cool you can explore so much more, but it it’s also like it does remove all of the teamwork. At that point, it’s just everyone working in isolation. You’re just duplicating. Um, yeah. So, I’m I’m curious how we’re going to solve that. And it’s performance versus competence. And I I guess we’re kind of making a bet collectively that performance is all that matters. Thomas, it’s been amazing having you on the show. Yeah, it’s been so much fun. Thank you, Tim.