It looks as if AI giant language fashions (LLMs) are in every single place today as a result of rise of ChatGPT. Now, a software program developer named Ishan Anand has managed to cram a precursor to ChatGPT known as GPT-2—initially launched in 2019 after some trepidation from OpenAI—right into a working Microsoft Excel spreadsheet. It is freely accessible and is designed to coach individuals about how LLMs work.
“Through the use of a spreadsheet anybody (even non-developers) can discover and play straight with how a ‘actual’ transformer works beneath 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 is a nod to the 2017 analysis paper “Consideration is All You Want” 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 is fully native and would not do any API calls to cloud AI companies.
Despite the fact that the spreadsheet incorporates an entire AI language mannequin, you’ll be able to’t chat with it like ChatGPT. As a substitute, customers enter phrases in different cells and see the predictive outcomes displayed in several cells virtually immediately. Recall that language fashions like GPT-2 have been designed to do next-token prediction, which implies they attempt to full an enter (known as a immediate, which is encoded into chunks known as tokens) with the more than likely textual content. The prediction could possibly be the continuation of a sentence or some other text-based activity, corresponding to software program code. Completely different sheets in Anand’s Excel file permit customers to get a way of what’s going on beneath the hood whereas these predictions are happening.
Spreadsheets-are-all-you-need solely helps 10 tokens of enter. That is tiny in comparison with the 128,000-token context window of GPT-4 Turbo, but it surely’s sufficient to reveal some fundamental ideas of how LLMs work, which Anand has detailed in a sequence of free tutorial movies he has uploaded to YouTube.
In an interview with Ars Technica, Anand says he began the mission so he may fulfill his personal curiosity and perceive the Transformer intimately. “Fashionable AI is so completely different from the AI I discovered 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 usually only a massive computational graph (like a spreadsheet),” he says, “And [I] cherished how Jeremy typically makes use of spreadsheets in his course to make the fabric extra approachable. After watching these two, it immediately clicked that it could be doable 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 usually plenty of math operations which is ideal for a spreadsheet,” he says. “In reality, the toughest piece is the place the phrases are transformed into numbers (a course of known as tokenization) as a result of it is textual content processing and the one half that is not math. It will have been simpler to do this half in a standard programming language than in a spreadsheet.”
When Anand wanted help, he naturally received slightly 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 needed to double-check it lots.”
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 is notably attention-grabbing 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 could be “used to generate misleading, biased, or abusive language at scale.”
Nonetheless, the corporate launched the complete GPT-2 mannequin (together with weights recordsdata wanted to run it domestically) 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 idea for the preliminary model of ChatGPT, launched in 2022.
Anand’s spreadsheet implementation runs “GPT-2 Small,” which not like the complete 1.5-billion-parameter model of GPT-2 clocks in at 124 million parameters. (Parameters are numerical values in AI fashions that retailer patterns discovered from coaching information.) In comparison with the 175 billion parameters in GPT-3 (and even bigger fashions), it most likely wouldn’t qualify as a “giant” language mannequin if launched right this moment. However in 2019, GPT-2 was thought of state-of-the-art.
You possibly can obtain the GPT-2-infused spreadsheet on GitHub, although remember that it is about 1.2GB. Due to its complexity, Anand mentioned it may possibly often lock up or crash Excel, particularly on a Mac; he recommends operating the sheet on Home windows. “It’s extremely really useful to make use of the handbook calculation mode in Excel and the Home windows model of Excel (both on a Home 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 mission truly began on Google Sheets, however the full 124M mannequin was too massive and switched to Excel,” Anand writes. “I’m nonetheless exploring methods to make this work in Google Sheets, however it’s unlikely to suit right into a single file as it may possibly with Excel.”