jesse_cureton
Joined 6 years ago
Joined 6 years ago
There's a pattern called "embedding search" - you precalculate a set of embeddings for a corpus of text. Then to do a search, you calculate embeddings for your search string. Then you can find the closest vector in that N-dimensional space, which finds you the semantically closest neighbor from the original corpus.
For an embedding search - the OpenAI Embeddings API gives you a ~1500 dimension output vector. When a LLM is working with input text as a vector, I am not sure what the tokenizer is actually feeding into the model. Hopefully someone else can chime in!
Upon reading these I did realize on Linux it’s implemented as a kernel device, but it’s usually a userspace task that has to notify the kernel watchdog interface to actually kick the timer. This makes sense, since userspace being functional is probably what you really care about.
[1] https://www.kernel.org/doc/html/latest/watchdog/watchdog-api...
Generally there’s a hardware watchdog implemented as a counter/timer in the processor. It can have a predefined or configurable period. It counts down, and if it times out then it initiates a hardware reset of the processor.
You can ensure your software/OS is always at least executing code by having a task (in-kernel on Linux, or an RTOS task, or just in your main event loop on baremetal) that resets that timer. Then, if your code stops resetting that timer, it expires and resets the processor.
The proprietary RTOS that runs on the watches is a super cool embedded system dating back to the earliest days of the company. It grew across all the product lines - watches, nav units, aviation equipment, marine chartplotters/sensors, etc. I remember once stumbling on some code written in the very early days by an engineer who went on to be the CEO while I was there.
It was a fun system to work on, and had an impressive amount of code sharing at the OS-level across platforms as tiny as Cortex M0 systems up to large multi-core ARM SoCs from TI and other vendors.
Just wanted to chime in and give you folks some props, I've been using infracost for a few months as a one-man infra team for a small nonprofit I volunteer with. It was super easy to get set up in our CI pipelines in an afternoon, and it makes it much easier for the devs I work with to figure out what their cost impact is. A great product and a great team!
In my account's case it was able to provision my account when I enrolled, but the web portal then threw up some opaque errors and didn't let me complete enrollment. Without the latter steps of 2FA/security questions/etc that I couldn't complete, my account was locked without access until I could reach a phone operator.
I spent the better part of my Sunday calling trying to get my account unlocked, since it was automatically locked when their services collapsed during enrollment on Saturday.
It uses Plaid for its banking backend, and so far is working quite well for me and my partner
I expect we'll see more RP2040 devboards & SOMs coming soon that fill the connectivity niche.
It's been surprisingly fun watching the various takes blow up on TikTok.
They account for the fact that money is fungible and the envelopes are "soft", but still provide a sense of autopilot and integration that I've never been able to get from Mint/YNAB.
You could set aside static "Goal" envelopes just to stash money away, or recurring "Expenses" funded every payday. Auto-deduct from both those sets based on vendor. All the while I could just peek at the app to see my "Safe to Spend" and know what money I could spend for fun with all my base expenses still accounted for. This also worked in joint accounts with my partner, making our shared budgeting trivial.
I will miss this app dearly - it really made a difference in how I manage my money.