Deep Blue Conversations
In my last post I briefly touched on the subject of Generative AI's capabilities and some of the controversies surrounding its abilities. In this post, I'm going to explore the subject in more depth.
I'm by no means an expert on AI or the ethical questions surrounding it. I'm fairly certain I've done significantly more reading on the subject than most people, but I'd defer to someone with better credentials when faced with a discrepancy in our arguments. That being said, this is still the internet, so I'll issue my opinion forthwith. Feel free to engage in a constructive discussion with me or troll me. That's what the internet is here for.
ChatGPT, Huh, What Is It Good For?
Actually, quite a few things. Since it first burgeoned on the scene in a major way in the spring of 2023, I wanted to get a better understanding of its capabilities and limitations. I've been in the corporate and tech spaces for a while and my natural inclination around this type of hype is to remain skeptical, since the next big thing seems to pop up every six months or so. In fact, I often take an initial position at the other extreme to find evidence of why brand X isn't the greatest thing since sliced bread.
[Then again, I have a deeply ingrained distrust of authority and conventional wisdom, so take that into account when forming your own opinion. When I first learned I was going to be a manager for an extended period, I didn't look for the mind-blowing parables written on the subject in childlike language about moving my parachute or coloring my cheese. I settled on a book titled The Management Myth by Matthew Stewart. From there my contrarian management style over the next decade and a half was off and running.]
While researching the utopia and dystopia that AI promises, I encountered a few articles featuring the work of Emily M. Bender, who coined the term "Stochastic Parrot" in reference to Large Language Models (LLMs). In essence, the term indicates that there's no mind behind any of the LLMs like ChatGPT. They're just extremely large programs that hoover up all available information on the internet and spit a response out one statistically probable token at a time.
That's the "Parrot" part of the expression. The "Stochastic" portion refers to the fact that the models generate their responses on the fly and aren't consistently predictable. They can be analyzed for trends after the fact, but you (and ChatGPT) would be hard-pressed to predict what it would say next, even if given the exact same input. The stock market is another example of a stochastic system. Highly unpredictable, but somehow still ripe for in-depth analysis.
It helped me to keep this model in mind during the early days when every mention of AI would whipsaw between "it's going to kill us all very soon" or "it's going to make our lives a panacea very soon." Turns out, a year on, neither of these is close to being true.
Generative AI can cause great harm. Shortly after the hype machine cranked up, there were several stories (most notably this one about IBM) intimating that AI was responsible for a wave of layoffs. Anyone who's used any of these LLMs for more than a few minutes and has even the most rudimentary critical thinking or observational skills knows that these bots aren't ready to replace any category of job.
A lot of articles indicated that freelance writers were particularly impacted at the outset, which is a sad commentary on the state of what companies are looking for from writers. It turns out that they're just content mills searching for keyword hits and have no concern for the actual content being produced. This isn't a surprise, but it's disappointing that entire businesses can somehow make money off simply mining keywords without producing value in return.
This far down, I realized that I started off this section hinting that ChatGPT is actually useful, but then spent several paragraphs seemingly indicating otherwise. So what is it good for, then?
In my interactions, it's good for providing advice to very specific queries and provoking creative thought in its users by generating information that they may have otherwise overlooked. In other words, it's great as an expedient research tool.
Here are three key examples:
- Recipes - The first time I asked ChatGPT to give me a suggestion, I was concerned that it was going to provide me with a response for a delicious Pineapple Mayonnaise Dark Chocolate Casserole. It didn't. Its suggestion for a sweet and sour sauce was fairly spot on with just a little bit of tweaking. As with all of its suggestions, it's not going to offer you anything novel and it may leave out relevant information. On more than one occasion, it listed ingredients for me but forgot to tell me the amounts needed for the recipe. It also mentioned ingredients in the body of the recipe without enumerating the ingredients in the main list which can be a bit confusing, as most people look at what they need to make the recipe before going into the section on how to compose the recipe. I've been cooking for a while, so I was easily able to fill in the gaps. In some cases, I was able to ask clarifying questions to get better answers, but ChatGPT has a habit of going down the rabbit hole once it's struck a wrong chord. Because it has no mechanism to understand the basic premise further, it tends to double down on its faulty logic, and asking variations of the same question often results in recycled nonsense. Note that this is not the same as asking more specific questions, which is what we'll be doing for our site in the future (and where it should prove helpful).
- Bounded programming tasks - I recently completed an Udemy course on Machine Learning and ChatGPT was invaluable in helping me access information about Pandas API calls quickly. Googling for the relevant Pandas API can be tedious, but ChatGPT often presented the right answer immediately. However, as with the recipe case, there are also examples where the information was incomplete and occasionally flat wrong. Variable references appear in some of its code without being properly defined or initialized beforehand. I used picoCSS for a mini project last week and rather than admit it didn't know the particulars about grid spacing shortcuts in the framework, it simply told me how to build a grid using plain CSS, which is not the question I posed to it. ChatGPT is incapable of saying "no" or "I don't know" regardless of how many times you ask it something it's unfamiliar with.
- Idea generation - When I asked ChatGPT to help me start an online travel agency, I had a pretty good idea of what I was going to get - a lot of vague references, some of which treat the complexity of my question as laughably simple. What was useful, though, was its enumeration of the 8 Pillars (as I'll continue to refer to them) and the sub-bullets underneath. I now have approximately 32 discrete pieces of information to pore over. Again, nothing there is novel, but it quantified the information in such a way that I decided to move from one introductory blog post to two with ideas for several others (including this one) as I worked through its output. This is why even its banal papers on the causes of World War I are invaluable. Not because it succinctly summarizes the information for me, but because it doesn't. It produces a list of facts to verify that, as long as I do the work, can be checked and augmented through my own research. Turning in the paper sight unseen for a class assignment (or legal briefing) is a precarious approach, but utilizing a robot that gives me the basic framework and does initial research - regardless of how dubious - can be a huge productivity boost.
- If architects aren't building the systems they design, then they have no idea how to handle the inevitable complexity that's inherent in those systems. Elementary physics often assumes perfect forms (a complete sphere, a frictionless body, no entropy) which is useful in imparting basic concepts but would fail miserably if directly applied in the real world. It's why several disciplines of engineering exist - to make the theoretical practical.
- Good software engineers do their best to understand the non-trivial complexity, thus making them valuable, non-trivial employees rather than coding worker bees.
- The arc from a beginner to an expert designer is huge. You can't simply study advanced software design without learning and practicing the concepts they're based on. Even stepping away from the practice to focus solely on design (even with decades of experience) risks a loss of critical information.
Comments
Post a Comment