But Just What Is This ‘Artificial Intelligence’?

In the world of buzzwords, the acronym ‘AI’ has absolutely been the buzziest of buzzing buzzwords for at least a few years now. Where previously terms like ‘smart’ and ‘intelligent’ sufficed to promote a product, we are now being told that we are living in an age where this supposedly newfangled ‘artificial intelligence’ is doing literally everything faster and better while also curing cancer on the side. Yet, as a wise man once said: “You keep using that word. I do not think it means what you think it means.”

The obvious implication of using a term like ‘artificial intelligence’ in this manner is that it brings to mind a modern version of early last century’s ‘electronic brain’ vernacular alongside the rise of digital computers. Yet rather than electrons in vacuum tubes and semiconductors propelling us into a brave new world of super-intelligence, we now just use said devices to doom scroll and to engage in passive-aggressive online communications like the typical primate groups in a virtual jungle defending their turf.

Similarly, the term AI is massively oversold today, least of all in the inherent presupposition that we somehow have finally cracked the mystery of the brain and have created an intelligence that can go toe-to-toe with humans and even our corvid dinosaur friends. Perhaps the worst part is that there is a veritable mountain of fascinating algorithms and other constructs that help us automate many tasks today, making it somewhat rude to just give up and call everything ‘AI’ like we learned nothing from the 1980s AI craze.

So what is exactly being smoothed over by the glossy marketing of ‘everything is AI’?

Continue reading “But Just What Is This ‘Artificial Intelligence’?”

Why The Smart Home Bubble Popped

Circa 2015 or so, it seemed like you couldn’t move a finger without being bombarded with ads and articles about ‘smart homes’ and the ‘internet of things’ — all of which would make our lives so much easier and more automated. Fast-forward a decade and this dream has mostly evaporated along with many of the players in the space. Why this happened is the topic of a recent video by [Caya].

An interesting bit of context that the video starts off with is that home automation really kicked off back in 1975, when the X10 protocol and related devices using power lines for signaling began being sold. These fully integrated solutions generally worked reasonably well, but what all changed when the IoT and ‘smart home’ craze kicked off and brought with it an explosion of new standards.

Over the past decade we have seen the concept of a ‘smart home’ collapse into a nightmare of abandoned IoT devices, subscription services, forced ads, privacy violations, and an increasingly more congested 2.4 GHz spectrum that everything from WiFi and Zigbee to Bluetooth and others ended up competing for, with a corresponding collapse in reliability of data transmissions.

As raised in the video, a big issue is that of the financial viability of running the remote services for a smart home solution, even if this is the part that should make it as plug-and-play as a 1990s-era smart home solution. To the average user setting up their own locally hosted smart home solution isn’t really a straightforward option.

Although at the end [Caya] demonstrates using Home Assistant (HA) as a locally hosted alternative, this is still not something that a non-techie will be able to set up or maintain. Even if you shell out a cool two-hundred clams for the Home Assistant Green plug-and-play hardware solution, the average person will be lost the second any of the prescribed steps in provided documentation do not work. Woe to whoever is the person who is ‘good with computers’ in those cases.

Ultimately another problem with ‘smart homes’ is that they’re really not that smart, as you can definitely set up all kinds of rules in HA and similar solutions, but this is more painstaking manual automation with all the excitement of programming PID controllers. Having an actual intelligence behind the system that could react to what’s happening would make it a far easier sell, yet which is where all the ‘smart assistants’ like Alexa keep falling flat.

Currently [Caya] has set up his HA-based lighting configuration to be used by OpenClaw ‘agentic AI’, as a way to add some actual ‘smarts’, but it’s telling that he hasn’t integrated the smart lock of his apartment into the system yet. Nobody wants to have the OpenClaw agent tell you that it ‘cannot open the front door’ for you, after all.

Continue reading “Why The Smart Home Bubble Popped”

Prolog Via Pokémon

Like many people who read Hackaday, we are fairly fluent in a number of computer languages, but we have to admit it is easier to pick up languages that look like they group with things like Fortran. Sure, modern languages have all sorts of features, but the idea that you have a text file that executes in some order, variables, statements, and so on runs through most popular languages, but not all of them. Lisp and its variants are a different way of looking at things. And then there’s Prolog. [Alexander Petros] has an interesting way of explaining Prolog as a Pokémon game.

Prolog was “the next big thing” when AI meant expert systems. It is more of a specialized database where you define facts and rules that the computer can infer answers to queries. For example, if the facts say that Paul and Anna both have Mary as a parent, and a rule says that people with the same parent are siblings, then a query asking whether Paul and Anna are siblings will indicate that they are.

Continue reading “Prolog Via Pokémon”

Getting A Proprietary-Bus GPU Onto PCIe Enables Cheaper Local LLMs, For Now

If you’ve been thinking of getting into self-hosting generative AI, but don’t have a big budget for hardware, you might want to check out [Hardware Haven]’s latest video on an unusually cheap GPU option — but you’ll have to do so quickly, before the market realizes the chance for arbitrage and prices rise accordingly.

He’s gotten a hold of a 16 GB NVidia V100 card for only about a hundred bucks, mostly because it’s not easy to plug in, being on an SXM2 socket rather than the PCIe bus. SXM is a server architecture, and not something you’re likely to get on your motherboard. Another hundred got him an adapter board to fit this enterprise GPU on a consumer motherboard. That’s still a lot less than the PCIe version of the same card, which will likely set you back a thousand or more unless you get very lucky on eBay.

It’s not the newest card, dating back from 2017, but that doesn’t mean it can’t run the latest open models. After 3D printing a fan shroud for the thing so it didn’t cook itself, adding very slightly to the build cost, [Hardware Haven] set to work seeing what it could do. Going head-to-head against an RTX 3060 12 GB, the older V100 delivered more tokens per second at a  slightly higher efficiency — but much higher idle power.

Still, it’s nice to see a cheap way to get into local AI, even if it might not still be cheap by the time you read this. Once you have the hardware, you might want some easy software options so you don’t have to spend all day on setup. Of course you only need a hefty GPU to run larger models — you can get into hosting your own AI on a Raspberry Pi, if you’re patient.

Continue reading “Getting A Proprietary-Bus GPU Onto PCIe Enables Cheaper Local LLMs, For Now”

An LLM From “Scratch”

Reading a book about bowling is not the same as actually bowling. If that resonates with you and you want to learn more about large language models, check out the LLM From Scratch project. The hands-on workshop lets you use a Mac, Linux, or Windows PC running Python and common libraries like numpy and torch to build your own bare-bones LLM.

The project takes inspiration from nanoGPT but scales it down so you can train the model in around an hour on a typical computer. It will use an Apple or NVIDIA GPU, if available.

Continue reading “An LLM From “Scratch””

AI On Every Machine: The LLM You Probably Didn’t Want

It’s been a story of the last week or so if you follow the kind of news channels a Hackaday scribe does, that Google have quietly installed an LLM as part of the Chrome browser. Reports vary as to when they did this because there’s a lot of confusion online with their online Gemini features also present in the browser, but it seems Chrome users are noticing its effect through slower performance and hefty disk access. Given that Chrome is by far the most popular web browser, this means that billions of users will have downloaded the four gigabyte Gemini Nano model, and now have an LLM they didn’t know about. It will be used to provide advanced auto-correct and other text suggestion features that their online version of Gemini would presumably be overburdened with, and since it’s available through a set of in-browser APIs we expect that it will find its way into a lot of websites, online applications, and plugins.

It’s caused a bit of a fuss in some circles, and we think, with some justification. When billions of computers unwittingly install an extremely energy intensive software component the effect on global power consumption will be significant, with a consequent uptick in the carbon footprint of computing. It’s not a phenomenon restricted to Chrome, as an example Siri has used a local LLM on Apple devices for a while now. We’ve seen rumblings of discontent and talk of getting European climate regulators involved, but perhaps instead it’s time to have a conversation about local AI models. The key is not whether or not they are a good thing to have, but when and how they operate.

While many of us are sick to death of AI slop and have not been lured into AI psychosis by an over-reinforcing chatbot, the fact remains that LLMs can do some useful things, they’re here to stay whether we like it or not, and having one under your control on your own computer doesn’t have to be a bad thing. Install Llama.cpp on your machine, and you’ve got an LLM of your very own, upon which your usage data isn’t going to be sold, and your content isn’t going to reinforce the finest plagiarism device the world has ever seen.

Opt-In and Opt-Out

The concerning development with the Chrome LLM is that not only has it been installed without the user’s consent, it runs without their consent too, and they can’t use it for anything except what Google Chrome wants it to be used for. Unlike the Llama.cpp mentioned above, it’s not under their control, instead it’s a compute-hungry monster ultimately controlled by Google. The prospect of a future in which multiple pieces of everyday software install their own similarly out-of-control multi-gigabyte CPU-munchers is a concerning one. Anyone who remembers Microsoft’s Clippy grabbing all the resources in a 1990s desktop as its stuttering animation played its course will know where this is going.

If local LLMs are an inevitability, what’s needed is a way to make them like any other application, one that the user chooses and installs themselves. Such an LLM could make its services available to applications such as a web browser if the user allows it to, but not run unless asked. It’s fairly obvious that installing Llama.cpp or similar is beyond many users, but it shouldn’t lie beyond the bounds of possibility to package something like it as an application they can install.

We know that the previous paragraph is pie-in-the-sky wishful thinking, and that as the person who knows computers in your family your next few Christmases will be spent wrestling with six different LLMs running on some elderly family member’s PC. But perhaps in Clippy lies the answer. If the consumer can learn to associate built-in AI features with their computer grinding to a halt just as they did with an office assistant thirty years ago, then perhaps they’ll demand change. We can hope.

The Math You Need To Start Understanding LLMs

Once you peel back the hype and mysticism, large language models (LLMs) are a fascinating application of statistical models, effectively what you get when you dial a basic auto-complete model up to eleven. In order to analyze a mind-boggling amount of text and produce meaningful auto-completion results quite a bit of math is involved, with a recent three-part article series by [Giles] going through the basics of inference, being the prediction step using a trained model.

The text is encoded in the LLM’s vector space as token IDs, each token being a text fragment that has some probability of following another ID, such as when cats may be found on desks, as in the above photo by [Giles]. With inference multiple of such IDs are retrieved in a vector from which in successive steps a sentence can be pieced together. These so-called logits are detailed in the first article in the series, with the second article focusing on vocabulary space and embedding, as well as the matrix operations used for inference.

Finally, the third article puts all of this together and looks at transformers, which is a crucial part of GPT (generative pretrained transformer) LLM architecture. Of note is the attention mechanism, which takes GPTs beyond merely being glorified auto-complete systems by adding pattern matching. Here we can see how the statistical model of the LLM is used to generate a rather plausible output, which is where the human has to ask themselves in how far they feel that it is correct.

Of course, there goes a lot more into making LLMs and GPTs performant, such as key-value caches that massively speed up inference.