Thursday, February 8, 2024

Days Without Number

A Product Director from Amazon posted on LinkedIn that he'd "asked Google, Bing, ChatCPT, Alexa, Copilot (Bing), and Gemini (Google): 'How many days between 2000-03-09 and 2002-09-30'," and "got four different answers."

When someone hands you an experiment that seems interesting, Step 1 is to replicate it. So I did. I don't have an Alexa device, so I posed the question "How many days between 2000-03-09 and 2002-09-30?" to the other four. (The base Google search doesn't try to answer the question, it simply points the user to other resources... it is a search engine, after all.)

Bing and Gemini returned the same answer: "There are 935 days from/between March 9, 2000 to September 30, 2002," only the syntax was slightly different, with Bing using "from" and Gemini using "between."

Bing Copilot gave a slightly different, and more detailed answer, noting: "There are 936 days between 2000-03-09 and 2002-09-30, excluding the end date. If you include the end date, there are 937 days." Copilot was also interesting in that it returned the dates in the same format that they were given.

ChatGPT (3.5) went to town, giving me the entire process by which it arrived at its answer:

To calculate the number of days between March 9, 2000, and September 30, 2002, we can use the following steps:

1. Calculate the number of days in full years between the two dates.
2. Add the number of days from March 9, 2000, to the end of 2000.
3. Add the number of days from January 1, 2002, to September 30, 2002.

Here's the calculation:

Full years between 2000 and 2002: 2001 and 2002 (2 years).
Total days for full years: 2 years * 365 days/year = 730 days.

Days from March 9, 2000, to the end of 2000:
March 9 to March 31 = 31 - 9 + 1 = 23 days.

Days from January 1, 2002, to September 30, 2002:
January 1 to September 30 = 31 (Jan) + 29 (Feb - leap year) + 31 (Mar) + 30 (Apr) + 31 (May) + 30 (Jun) + 31 (Jul) + 31 (Aug) + 30 (Sep) = 284 days.

Now, summing up all the days:

730 (full years) + 23 (days in 2000) + 284 (days in 2002) = 1037 days.

So, there are 1037 days between March 9, 2000, and September 30, 2002.
One of these answers is not like the others... ChatGPT was way off.

Which kind of gets to the thing with generative "A.I." The artifice is there, and fairly impressive. But they aren't intelligent systems, in the sense of having an understanding of what they're working with. The idea to start with full years in Step 1 was sound, but going January 1st through December 31st for both 2001 and 2002 was erroneous. Step 2 was flawed from the jump, as ChatGPT seemed to think that March 31st was the last day of the year 2000. (How's that for a Y2K bug?) And given that 2002 wasn't a leap year, Step 3 was also incorrect, although here it was only off by a single day. But this was the nice thing about Chat GPT showing its work. That work was wrong, but since it was possible to follow what it was doing, it was pretty clear why it was wrong; the errors were evident enough that one didn't need an idea of what the right answer should have been to realize that it was miscounting. The transparency that ChatGPT demonstrated was useful in that regard.

By the way, I did the math myself, and found that the answer is 935, or 937 days if you count both March 9th, 2000 and September 30th, 2002. So other than ChatGPT, the programs got it correct, but it does depend on how they read the question, since that determines the days on which they start and end their counts.

No comments: