Creating desktop backgrounds using Midjourney
I decided to create a new desktop background for my Mac using [Midjourney](https://midjourney.com/). My laptop has a 16:10 aspect ratio and a retin...
242 words
|
1 minute
Social media cards generated with shot-scraper
My [TIL website](https://til.simonwillison.net/) has social media card images to make links shared from it look slightly more interesting when shar...
876 words
|
4 minutes
Understanding Kristofer Joseph's Single File Web Component
[Via Brian LeRoux](https://twitter.com/brianleroux/status/1453472609518034944) I found [single-file-web-component.html](https://gist.github.com/kri...
377 words
|
2 minutes
Storing and serving related documents with openai-to-sqlite and embeddings
I decide to upgrade the related articles feature on my TILs site. Previously I calculated these [using full-text search](https://til.simonwillison....
1367 words
|
7 minutes
GitHub OAuth for a static site using Cloudflare Workers
My [tools.simonwillison.net](https://tools.simonwillison.net/) site is a growing collection of small HTML and JavaScript applications hosted as sta...
1906 words
|
10 minutes
Named Entity Resolution with dslim/distilbert-NER
I was exploring the original BERT model from 2018, which is mainly useful if you fine-tune a model on top of it for a specific task.
239 words
|
1 minute
Using the ChatGPT streaming API from Python
I wanted to stream the results from the ChatGPT API as they were generated, rather than waiting for the entire thing to complete before displaying ...
274 words
|
1 minute
Google Chrome --headless mode
In the README for [monolith](https://github.com/Y2Z/monolith) (a new Rust CLI tool for archiving HTML pages along with their images and assets) I s...
541 words
|
3 minutes