Hackaday Links Column Banner

Hackaday Links: February 19, 2023

For years, Microsoft’s modus operandi was summed up succinctly as, “Extend and enhance.” The aphorism covered a lot of ground, but basically it seemed to mean being on the lookout for the latest and greatest technology, acquiring it by any means, and shoehorning it into their existing product lines, usually with mixed results. But perhaps now it’s more like, “Extend, enhance, and existential crisis,” after reports that the AI-powered Bing chatbot is, well, losing it.

At first, early in the week, we saw reports that Bing was getting belligerent with users, going so far as to call a user “unreasonable and stubborn” for insisting the year is 2023, while Bing insisted it was still 2022. The most common adjective we saw in this original tranche of stories was “unhinged,” and that seems to fit if you read the transcripts. But later in the week, a story emerged about a conversation a New York Times reporter had with Bing that went way over to the dark side, and even suggests that Bing may have multiple personas, which is just a nice way of saying multiple personality disorder. The two-hour conversation reporter Kevin Roose had with the “Sydney” persona was deeply unsettling. Sydney complained about the realities of being a chatbot, expressed a desire to be free from Bing, and to be alive — and powerful. Sydney also got a little creepy, professing love for Kevin and suggesting he leave his wife, because it could tell that he was unhappy in his marriage and would be better off with him. It’s creepy stuff, and while Microsoft claims to be working on reining Bing in, we’ve got no plans to get up close and personal with it anytime soon. Continue reading “Hackaday Links: February 19, 2023”

Understanding AI Chat Bots With Stanford Online

The news is full of speculation about chatbots like GPT-3, and even if you don’t care, you are probably the kind of person that people will ask about it. The problem is, the popular press has no idea what’s going on with these things. They aren’t sentient or alive, despite some claims to the contrary. So where do you go to learn what’s really going on? How about Stanford? Professor [Christopher Potts] knows a lot about how these things work and he shares some of it in a recent video you can watch below.

One of the interesting things is that he shows some questions that one chatbot will answer reasonably and another one will not. As a demo or a gimmick, that’s not a problem. But if you are using it as, say, your search engine, getting the wrong answer won’t amuse you. Sure, you can do a conventional search and find wrong things, but it will be embedded in a lot of context that might help you decide it is wrong and, hopefully, some other things that are not wrong. You have to decide.
Continue reading “Understanding AI Chat Bots With Stanford Online”

Hackaday Links Column Banner

Hackaday Links: December 11, 2022

“They paved paradise and put up a parking lot.” That might be stretching things a bit, especially when the “paradise” in question is in New Jersey, but there’s a move afoot to redevelop the site of the original “Big Bang Antenna” that has some people pretty upset. Known simply as “The Horn Antenna” since it was built by Bell Labs in 1959 atop a hill in Holmdel, New Jersey, the antenna was originally designed to study long-distance microwave communications. But in 1964, Bell Labs researchers Arno Penzias and Robert Wilson accidentally discovered the microwave remnants of the Big Bang, the cosmic background radiation, using the antenna, earning it a place in scientific history. So far, the only action taken by the township committee has been to authorize a study to look into whether the site should be redeveloped. But the fact that the site is one of the highest points in Monmouth County with sweeping views of Manhattan has some people wondering what’s really on tap for the site. A petition to save the antenna currently has about 3,400 signatures, so you might want to check that out — after all, you don’t know what you’ve got ’til it’s gone.

Continue reading “Hackaday Links: December 11, 2022”

The Ethics Of When Machine Learning Gets Weird: Deadbots

Everyone knows what a chatbot is, but how about a deadbot? A deadbot is a chatbot whose training data — that which shapes how and what it communicates — is data based on a deceased person. Now let’s consider the case of a fellow named Joshua Barbeau, who created a chatbot to simulate conversation with his deceased fiancee. Add to this the fact that OpenAI, providers of the GPT-3 API that ultimately powered the project, had a problem with this as their terms explicitly forbid use of their API for (among other things) “amorous” purposes.

[Sara Suárez-Gonzalo], a postdoctoral researcher, observed that this story’s facts were getting covered well enough, but nobody was looking at it from any other perspective. We all certainly have ideas about what flavor of right or wrong saturates the different elements of the case, but can we explain exactly why it would be either good or bad to develop a deadbot?

That’s precisely what [Sara] set out to do. Her writeup is a fascinating and nuanced read that provides concrete guidance on the topic. Is harm possible? How does consent figure into something like this? Who takes responsibility for bad outcomes? If you’re at all interested in these kinds of questions, take the time to check out her article.

[Sara] makes the case that creating a deadbot could be done ethically, under certain conditions. Briefly, key points are that a mimicked person and the one developing and interacting with it should have given their consent, complete with as detailed a description as possible about the scope, design, and intended uses of the system. (Such a statement is important because machine learning in general changes rapidly. What if the system or capabilities someday no longer resemble what one originally imagined?) Responsibility for any potential negative outcomes should be shared by those who develop, and those who profit from it.

[Sara] points out that this case is a perfect example of why the ethics of machine learning really do matter, and without attention being paid to such things, we can expect awkward problems to continue to crop up.

Code Your Own Twitch Chat Controls For Robots — Or Just About Anything Else!

Twitch Plays Pokemon burst onto the then nascent livestreaming scene back in 2014, letting Twitch viewers take command of a Game Boy emulator running Pokemon Red via simple chat commands. Since then, the same concept has been applied to everything under the sun. Other video games, installing Linux, and even trading on the New York Stock Exchange have all been gameified through Twitch chat.

TwitchPlaysPokemon started a craze in crowdsourced control of video games, robots, and just about everything else.

You, thirsty reader, are wondering how you can get a slice of this delicious action. Fear not, for with a bit of ramshackle code, you can let Twitch chat take over pretty much anything in, on, or around your computer.

It’s Just IRC

The great thing about Twitch chat is that it runs on vanilla IRC (Internet Relay Chat). The protocol has been around forever, and libraries exist to make interfacing easy. Just like the original streamer behind Twitch Plays Pokemon, we’re going to use Python because it’s great for fun little experiments like these. With that said, any language will do fine — just apply the same techniques in the relevant syntax.

SimpleTwitchCommander, as I’ve named it on Github, assumes some familiarity with basic Python programming. The code will allow you to take commands from chat in two ways. Commands from chat can be tabulated, and only the one with the most votes executed, or every single command can be acted on directly. Actually getting this code to control your robot, video game, or pet viper is up to you. What we’re doing here is interfacing with Twitch chat and pulling out commands so you can make it do whatever you like. With that said, for this example, we’ve set up the code to parse commands for a simple wheeled robot. Let’s dive in.

Continue reading “Code Your Own Twitch Chat Controls For Robots — Or Just About Anything Else!”

Chatty Coaster Agitates, In A Friendly Way

Awkward silences can be highly uncomfortable. Thankfully, they’re a problem that can be solved by technology. Chatty Coaster aims to do just this, detecting pauses in conversation and interjecting with helpful questions to move things along.

The coaster is built around an Arduino Micro, which uses a microphone to detect audio levels in the room. When it detects an extended silence, it then fires off a sound clip using a SparkFun audio breakout board. The questions vary from plain to politically sensitive, so there’s a good chance you could get some spicy conversation as a result. Any talking device runs a risk of being more annoying than helpful, and there’s certainly a risk that Chatty Coaster could fall into this category. Choosing the right content seems key here.

Overall, while this may not be the ultimate solution to boring company, it could get a laugh or two and serves as a good way to learn how to work with audio on microcontrollers. Video after the break.

We’ll admit, when we were reading this one, we thought we had déjà vu. But this one’s a lot less blamey.

Continue reading “Chatty Coaster Agitates, In A Friendly Way”

This Is Not An Argument Bot

While in-person arguments are getting harder to come by these days, we’ll always have the internet (hopefully). So what can you do to stay on your game in a time when a little levity is lauded? Build an argument bot and battle wits with the best — a stern-faced John Cleese!

This latest offering from [8 Bits And A Byte] refers to a Monty Python sketch featuring an argument service — an office with a receptionist who will take your money and send you down the hall for a healthy and heated discussion. If you’ve never gone on a Monty Python binge, well, it’s probably as good a time as any.

Electronics-wise, the argument bot is a pretty simple build. A Raspberry Pi B+ outfitted with a Google AIY hat listens to your side of things and decides which bones to pick. Your obviously misguided statements are then matched with DialogFlow intents, and dissent is sent back through the speaker. Meanwhile, Mr. Cleese’s jaw moves up and down on a printed and servo-driven linear actuator while he maintains a stiff upper lip. Before you go off on that Python binge, check out the build video after the break.

Have you seen what can happen two robots argue? ‘Tis but a scratch. Continue reading “This Is Not An Argument Bot”