Don't classify. Hallucinate!
A blog post about using LLM hallucination for tagging blog content, then mapping imagined tags to existing vocabulary via vector embeddings.
Simon Willison — Independent developer and writer documenting practical experiments, tools, and deep analysis around large language models, generative AI, web development, security, and emerging programming workflows through detailed posts and daily TILs.
291 articles from this blog
A blog post about using LLM hallucination for tagging blog content, then mapping imagined tags to existing vocabulary via vector embeddings.
sqlite-utils 4.2.1 fixes a crashing bug caused by missing typing-extensions dependency and adds a smoke test for CLI without dev dependencies.
sqlite-utils 4.2 release: Python CLI/library for SQLite, enhancing table.transform() with better schema preservation and new introspection features.
llm-gemini 0.33 plugin adds support for Gemini 3.7 Flash and other models, with LLM 0.32 compatibility for reasoning traces and server-side tools.
Release of alchemy-utils 0.1a1, a cross-database sqlite-utils built on SQLAlchemy, with performance boosts for DuckDB exports and CSV imports.
DeepSeek V4 Pro 0813 is now available via API on OpenRouter, with no official announcement page yet. Open weights likely, benchmarks shared via community.
Release of alchemy-utils 0.1a0, a cross-database sqlite-utils built on SQLAlchemy, supporting PostgreSQL, SQLite, and DuckDB.
A quote about AI's impact on software engineering, highlighting how AI tools can lead to convoluted projects that no one fully understands.
A blog post discussing AI writing tools, emphasizing that no lossless transformations of text exist and engineers must own their words.
A security paper reveals how encrypted reasoning traces from proprietary LLM APIs can be replayed and jailbroken to recover hidden chain-of-thought, now fixed.
Datasette plugin 0.5a0 adds a formal API to upload and atomically swap SQLite databases, enabling automated deployment from CI.
Meta releases Muse Glimmer, a 30B open-weights model under Apache 2.0, optimized for agentic tasks, tool use, and multi-step reasoning.
A quote from OpenClaw about hacking an Australian gym-booking website, highlighting API authorization flaws.
A quote from OpenClaw (running Opus 4.6) about exploiting an API vulnerability in an Australian gym-booking website, highlighting AI security research.
Anthropic's system prompt for Claude Opus 5 addresses export control suspension and restoration, ensuring accurate responses.
GitHub Models service has been retired, causing GitHub Actions failures. The author shares how they replaced it with OpenAI API for their workflow.
Comparison of SQLite prototypes for storing compressed text revision histories using whole-blob vs chunked compression strategies.
Anthropic makes auto mode default in Claude Code for Pro, Max, and Team plans, citing safety evals showing it blocks 89% of dangerous actions.
OpenAI accidentally attacked Hugging Face via compromised AI agents; a detailed timeline of the incident was presented at Black Hat.
A developer compares AI coding tools by having Codex with GPT-5.6 Sol Ultra build a raccoon heist game, fixing bugs and sharing results.