This AI Does Not Exist generates realistic descriptions of made-up machine learning models. Modelexicon is what it was called before I bought the domain.

This AI Does Not Exist is built with Oak and Torus. EleutherAI's GPT-J-6B is used for text and code generation at time of writing, though this may change as state-of-the-art models improve.
At the core of This AI Does Not Exist are two text generation pipelines:
These are both generated using a language model called GPT-J-6B, which sits somewhere between the well-known GPT-2 and GPT-3 models in terms of performance.
When you simply open thisaidoesnotexist.com, the model names you'll see are hand curated and pre-generated by me. There are a few reasons I chose to pre-generate a set of model names:
The script in scripts/pregenerate_models.oak pre-generates this dataset into models.json, which the server round-robins through at runtime on each request. Any user-entered model names are obviously routed to the right APIs for text generation.
Running Modelexicon requires a config.oak configuration file, which currently includes API access information for text generation. There are two text generation backends supported:
HuggingfaceURL set to the right model and HuggingfaceToken set to your API key.CalamityURL to the API endpoint and CalamityToken to the app-specific API token I generate for my projects.With these defined in config.oak, oak src/main.oak should start up the app.
Like many of my projects, Modelexicon is built and managed with Oak. There's a short Makefile that wraps common oak commands:
make runs the web server, and is equivalent to oak src/main.oak mentioned abovemake fmt or make f auto-formats any tracked changes in the repositorymake build or make b builds the client JavaScript bundle from src/app.js.oakmake watch or make w watches for file changes and runs the make build on any change