jtmoulia’s intermittent journal, guides, and recipes. See recent posts below, and links to archives in the header.

Driving Home and gptel


Happy April 2nd! Drove back home, with CEO, so everything is right with the world. I actually watched the Aus F1 race today. Some numbers from the race that stuck out to me: two red flags leading to three starts, there were eight DNF’s, zero points for Ferrari, and Aston Martin placed third and fourth. The four DRS zones kept throwing cars into overtakes, making it one wild ride.

I configured gptel using my OpenAI plus account – Emacs is where work happens, so let’s introduce them. I wonder how it GPT-4 does writing elisp… of course, the answer is easy to find on the web. @daviwil gives a good run-through of its Emacs-related capabilities on a System Crafters stream.

Read more ⟶

Australia '23 Race Day


Happy April 2nd!

I’m busy this evening, heading North for home tomorrow, but at this moment early in the day it’s my own time. So! Using that time to get a massive sleep in, catch up on the hours I missed over the week. True rest day.

One note on guix: a full garbage collection (guix gc) cleared out nearly 200GB, however many of those packages were used for builds. So, updating my Guix Home profile after the GC resulted in an expensive build dependency resolution step.

Read more ⟶

Continuing down the LangChain


LangChain provides a Pythonic framework for writing LLM powered applications, e.g. tools for asking questions re knowledge bases, personal assistants, chatbots, etc. Given it provides a toolkint to implement “smart” apps, I wanted to go through the motions of implementing something simple + useful.

I started wiring LangChain to my org files and emails but I wasn’t able to fully take it through it’s paces. While most of my organized thoughts are in the org files, there doesn’t seem to be an unstructured parser for it. This means all of the semantic structure (headings, tags, linnks, etc) is lost in raw text parsing & splitting. Solution-wise, should be easy enough to convert the org files to HTML which unstructured will devour happily. Email have their own problem, namely persisting the Chroma vectorstore index because it takes a while to index my tens of thousands of emails. Should also be easy enough with LangChain, but I’m still learning the API calls to pull it off.

Read more ⟶

Setting up LangChain


Aiming for an HIIT exercise given the falling rain outside. Tomorrow’ll be a perfect day (read: not raining) for back & biceps.

LX intro’d me to two generative AI chaps, helping me feed my brain with this space. Specifically, I’d like to know:

  • what are they working on? what are they excited about?
  • is it just the best & biggest model (GPT-4), that works the best?
  • similarly, is fine-tuning worth it?
  • what is the most cost-effective path for self-hosting?

Getting a LangChain environment set up on Guix is teaching me some tricks. I was unable to install the Python hnswlib due to missing a C++ build dependency in my global / home profiles. I spun up a temporary environment with the build deps installed:

Read more ⟶

Further from Lone LA Wednesday


Got to see LX and RN today! Glorious fellas. Now, I am tired and go to bed.

Table 1: Lifting: Legs #6
Exercise Set Weight Reps
BBell Squat 1 45 12
BBell Squat 2 145 13
BBell Squat 3 155 14
BBell Squat 3 155 15
BBell Squat 3 155 10
Read more ⟶