It looks like AI massive language fashions (LLMs) are in all places as of late due to the rise of ChatGPT. Now, a software program developer named Ishan Anand has managed to cram a precursor to ChatGPT referred to as GPT-2—initially launched in 2019 after some trepidation from OpenAI—into a working Microsoft Excel spreadsheet. It’s freely out there and is designed to educate folks about how LLMs work.
“By utilizing a spreadsheet anybody (even non-developers) can discover and play straight with how a ‘actual’ transformer works below the hood with minimal abstractions to get in the best way,” writes Anand on the official web site for the sheet, which he calls “Spreadsheets-are-all-you-need.” It’s a nod to the 2017 analysis paper “Attention is All You Need” that first described the Transformer structure that has been foundational to how LLMs work.
Anand packed GPT-2 into an XLSB Microsoft Excel binary file format, and it requires the newest model of Excel to run (however will not work on the internet model). It’s utterly native and would not do any API calls to cloud AI companies.
Even although the spreadsheet incorporates an entire AI language mannequin, you may’t chat with it like ChatGPT. Instead, customers enter phrases in different cells and see the predictive outcomes displayed in numerous cells virtually immediately. Recall that language fashions like GPT-2 have been designed to do next-token prediction, which implies they struggle to full an enter (referred to as a immediate, which is encoded into chunks referred to as tokens) with the probably textual content. The prediction may very well be the continuation of a sentence or some other text-based process, resembling software program code. Different sheets in Anand’s Excel file permit customers to get a way of what’s going on below the hood whereas these predictions are happening.
Spreadsheets-are-all-you-need solely helps 10 tokens of enter. That’s tiny in contrast to the 128,000-token context window of GPT-4 Turbo, but it surely’s sufficient to display some fundamental rules of how LLMs work, which Anand has detailed in a collection of free tutorial movies he has uploaded to YouTube.
In an interview with Ars Technica, Anand says he began the venture so he may fulfill his personal curiosity and perceive the Transformer intimately. “Modern AI is so completely different from the AI I realized once I was getting my CS diploma that I felt I wanted to return to the basics to really have a psychological mannequin for the way it labored.”
He says he was initially going to re-create GPT-2 in JavaScript, however he loves spreadsheets—he calls himself “a spreadsheet addict.” He pulled inspiration from information scientist Jeremy Howard’s quick.ai and former OpenAI engineer Andrej Karpathy’s AI tutorials on YouTube.
“I walked away from Karpathy’s movies realizing GPT is generally only a large computational graph (like a spreadsheet),” he says, “And [I] liked how Jeremy usually makes use of spreadsheets in his course to make the fabric extra approachable. After watching these two, it instantly clicked that it is perhaps attainable to do the entire GPT-2 mannequin in a spreadsheet.”
We requested: Did he have any problem implementing a LLM in a spreadsheet? “The precise algorithm for GPT2 is generally quite a lot of math operations which is ideal for a spreadsheet,” he says. “In truth, the toughest piece is the place the phrases are transformed into numbers (a course of referred to as tokenization) as a result of it is textual content processing and the one half that is not math. It would have been simpler to try this half in a conventional programming language than in a spreadsheet.”
When Anand wanted help, he naturally bought somewhat assist from GPT-2’s descendant: “Notably ChatGPT itself was very useful within the course of in phrases serving to me clear up thorny points I’d come throughout or understanding varied phases of the algorithm, however it might additionally hallucinate so I had to double-check it so much.”
GPT-2 rides once more
This complete feat is feasible as a result of OpenAI launched the neural community weights and supply code for GPT-2 in November 2019. It’s notably fascinating to see that exact mannequin baked into an academic spreadsheet as a result of when it was introduced in February 2019, OpenAI was afraid to launch it—the corporate noticed the potential that GPT-2 is perhaps “used to generate misleading, biased, or abusive language at scale.”
Still, the corporate launched the total GPT-2 mannequin (together with weights recordsdata wanted to run it regionally) in November 2019, however the firm’s subsequent main mannequin, GPT-3, which launched in 2020, has not acquired an open-weights launch. A variation of GPT-3 later shaped the premise for the preliminary model of ChatGPT, launched in 2022.
Anand’s spreadsheet implementation runs “GPT-2 Small,” which in contrast to the total 1.5-billion-parameter model of GPT-2 clocks in at 124 million parameters. (Parameters are numerical values in AI fashions that retailer patterns realized from coaching information.) Compared to the 175 billion parameters in GPT-3 (and even bigger fashions), it in all probability wouldn’t qualify as a “massive” language mannequin if launched in the present day. But in 2019, GPT-2 was thought of state-of-the-art.
You can obtain the GPT-2-infused spreadsheet on GitHub, although bear in mind that it is about 1.2GB. Because of its complexity, Anand stated it will probably often lock up or crash Excel, particularly on a Mac; he recommends working the sheet on Windows. “It is very beneficial to use the handbook calculation mode in Excel and the Windows model of Excel (both on a Windows listing or by way of Parallels on a Mac),” he writes on his web site.
And earlier than you ask, Google Sheets is presently out of the query: “This venture really began on Google Sheets, however the full 124M mannequin was too large and switched to Excel,” Anand writes. “I’m nonetheless exploring methods to make this work in Google Sheets, however it’s unlikely to match into a single file as it will probably with Excel.”