I use the hyper+u keyboard shortcut to open a language model playground for convenience.
I might use this 10-20 times a day.
For the last year or so that I’ve been doing this, it has always pointed to https://platform.openai.com/playground.
As of today, I’ve switched it to point to https://console.anthropic.com/workbench?new=1.
Lately, I’ve preferred claude-3-opus
to gpt-4
.
For a while, I had completely stopped looking for other models as gpt-4
seemed to be unchallenged, but it’s exciting to see new options available.
I tried setting up sqlite-vss
with Deno following these instructions but got stuck on this error
❯ deno task dev
Task dev deno run --allow-env --allow-read --allow-write --allow-net --unstable-ffi --allow-ffi --watch main.ts
Watcher Process started.
error: Uncaught (in promise) TypeError: readCstr is not a function
export const SQLITE_VERSION = readCstr(sqlite3_libversion());
^
at https://deno.land/x/[email protected]/src/database.ts:101:31
at eventLoopTick (ext:core/01_core.js:169:7)
so I pivoted to Python. That effort eventually turned into this post.
I’ve spend almost a week, on and off, trying to install ollama
using Nix in such a way that ollama serve
will be run and managed automatically in the background.
Initially, I had tried to install ollama
via home-manager
.
This was straightforward, but finding a way to have ollama serve
run automatically so that I didn’t need to do it myself every time I wanted to interact with or pull a model.
This need send me down that macOS rabbithole of launch agents/daemons and plists.
The macOS-specific nature of this research could have tipped me off that this was a job for nix-darwin
rather than home-manager
.
Eventually, I tried installing ollama
via nix-darwin
and it seemed to Just Work.
I still haven’t been able to figure out where it’s running ollama serve
from.
I spent some time exploring Deepgram’s Next.js starter app. I was hoping I could use it to generate a transcription in realtime but it was more like real-time captions. The responses from the server were sometimes corrections of previous transcriptions. Maybe there is a way to make this a transcription but I wasn’t sure.
I also tried out vocode’s Python library for building voice-based LLM applications. By far the hardest part of this was getting an Azure account, which I believe is used to synthesize the LLM response as speech. I had the demo working end to end but it was a bit sensitive to background noise as they note. I haven’t had a chance to play around with any configurations they provide.
I played around with AgentGPT using Reworkd’s cloud hosted instance.
I tried a few different goals.
The first was travel related.
I was pleasantly surprised (unnerved) to see the agent return links for flights to my proposed location from my actual current origin (I guess they used my IP to determine this).
One of my first impressions was the likeness to Perplexity, particularly in how the links were displayed.
It turns out, Reworkd open sourced code for this exact thing.
AgentGPT also uses inline citations like Perplexity does, though those aren’t shown in the perplexity-style-streaming
demo video.
I tried to get claude-3-opus
to solve today’s Connections.
It did well enough that I am going to try doing this more consistently.
I grew tried of Nix and decided to setup Homebrew as well.
I finally gave in after trying to install llm
and not being able to figure out how to install plugins despite the message
If you want to install extra llm plugins, use llm.withPlugins([]) expression.
In tracing this error, I also learning nixpkgs
can apply patches to libraries in its registry.
I like Nix a lot. I still don’t understand a lot about it. I cannot lose an hour to installing a dependencies when that is a solved problem using Homebrew.
Ok fine, I will manage Homebrew with nix.
Ideal bookmarking from Swyx on Latent Space with Soumith Chintala.
create synthetic data off of your retrieved documents and then fine tune on that
Today I installed Homebrew.
It’s the longest I have ever gone since I learned to code without installing Homebrew on my system.
I’ve been able to rely on Nix for so much, but it’s been time consuming to get everything the way I want it, and I don’t want perfect to be the enemy of good.
I can and plan to use brew
sparingly in the name of reproducibility.
I was using an LLM to assist when playing with Alacritty and tmux configs. The LLM (gpt-4-turbo) gave some amusing advice
Embrace the Limitation
In some cases, the minor visual imperfections may be something to adjust to. Given tmux’s text-based nature and dependency on terminal emulator behavior, some display quirks can be challenging to eliminate entirely.
While Karabiner/Goku can be a fun way to try and configure my keyboard as an app launcher, I’ve found skhd to be much more straightforward. I’ll probably keep Karabiner for the caps lock to hyper key mapping only for now.