LLM Knowledge Bases
Something I'm finding very useful recently: using LLMs to build personal knowledge bases for various topics of research interest. In this way, a large fraction of my recent token throughput is going less into manipulating code, and more into manipulating knowledge (stored as markdown and images). The latest LLMs are quite good at it. So:
Data ingest:
I index source documents (articles, papers, repos, datasets, images, etc.) into a raw/ directory, then I use an LLM to incrementally "compile" a wiki, which is just a collection of .md files in a directory structure. The wiki includes summaries of all the data in raw/, backlinks, and then it categorizes data into concepts, writes articles for them, and links them all. To convert web articles into .md files I like to use the Obsidian Web Clipper extension, and then I also use a hotkey to download all the related images to local so that my LLM can easily reference them.
IDE:
I use Obsidian as the IDE "frontend" where I can view the raw data, the the compiled wiki, and the derived visualizations. Important to note that the LLM writes and maintains all of the data of the wiki, I rarely touch it directly. I've played with a few Obsidian plugins to render and view data in other ways (e.g. Marp for slides).
Q&A:
Where things get interesting is that once your wiki is big enough (e.g. mine on some recent research is ~100 articles and ~400K words), you can ask your LLM agent all kinds of complex questions against the wiki, and it will go off, research the answers, etc. I thought I had to reach for fancy RAG, but the LLM has been pretty good about auto-maintaining index files and brief summaries of all the documents and it reads all the important related data fairly easily at this ~small scale.
Output:
Instead of getting answers in text/terminal, I like to have it render markdown files for me, or slide shows (Marp format), or matplotlib images, all of which I then view again in Obsidian. You can imagine many other visual output formats depending on the query. Often, I end up "filing" the outputs back into the wiki to enhance it for further queries. So my own explorations and queries always "add up" in the knowledge base.
Linting:
I've run some LLM "health checks" over the wiki to e.g. find inconsistent data, impute missing data (with web searchers), find interesting connections for new article candidates, etc., to incrementally clean up the wiki and enhance its overall data integrity. The LLMs are quite good at suggesting further questions to ask and look into.
Extra tools:
I find myself developing additional tools to process the data, e.g. I vibe coded a small and naive search engine over the wiki, which I both use directly (in a web ui), but more often I want to hand it off to an LLM via CLI as a tool for larger queries.
Further explorations:
As the repo grows, the natural desire is to also think about synthetic data generation + finetuning to have your LLM "know" the data in its weights instead of just context windows.
TLDR: raw data from a given number of sources is collected, then compiled by an LLM into a .md wiki, then operated on by various CLIs by the LLM to do Q&A and to incrementally enhance the wiki, and all of it viewable in Obsidian. You rarely ever write or edit the wiki manually, it's the domain of the LLM. I think there is room here for an incredible new product instead of a hacky collection of scripts.
You'll often need to find the top-K items in a dataset - like to detect the largest transactions in a financial system.
And you may think sorting everything and picking the top-K is fine - but this can quickly bottleneck.
In this guide, @gkoos430 teaches you how to do it using heap and streaming approaches in Go.
https://t.co/iq8iXs99se
Awesome CTO
A great github repo full of resources for software engineers and aspiring CTOs:
- Software Development Processes
- Hiring for technical roles
- Software Architecture
- Product and Project Management
- Career growth
Check it here:
https://t.co/2l1aCAqv2c
🚀 Simple, configurable HTTP Mock Server in Go!
Define API expectations via YAML/JSON, match requests with Regex, and inspect history in a built-in Web UI. Lightweight, Docker-ready, and perfect for testing.
Check it out! 👇 #GoLang#MockServer#DevTools#OpenSource
@yahiyadev Em, the project structure reminds me of someone from Java or PHP who has started to learn Golang
I wouldn't share this project as a good example
🐹 Building a GPT from scratch in Go.
Fully commented, and following Andrej Karpathy’s legendary Neural Networks: Zero to Hero guide.
If you want to really understand transformers (not just use them), this repo is a great start:
https://t.co/WiqOlcz9Ql
#golang#go#gpt#llm
Good news for Postgres users toward the end of the year. The @TimescaleDB team released and open-sourced the pg_textsearch extension.
Postgres already has built-in support for full-text search, and this new extension makes it more advanced and contemporary by adding BM25 ranking.
https://t.co/ykxM42lhLG
А как прорвало-то, а. Откровения понеслись один за одним просто стремительным домкратом. Что мы имеем из этого коротенького отрывка из интервью бывшего посла в Британии.
Итак, по Пристайко - избранный Главковерхом клоун во время войны кормил свой хоть поржущий народ байками про майские шашлыки и тревожную вализу, а в это время его подопечные разводили войска, разминировали пляж в Мариуполе для Марик-феста, снимали танки из-под Киева и перебрасывали их хрен знает куда, воровали чемоданами на бронежилетах, сажали за это боевых генералов, уничтожали контрразведку и открывали новые комфортабельные шаттлы на Чонгаре.
А потом, когда началось вторжение, Главковерх просто полностью впал в прострацию и пропал на две недели, а его подопечные советовали в это время людям сидеть дома и не делать резких движений, сами же в этот момент спешно собирая бабки из бюджета Украины, подгребая телеканалы, подготавливая себе местечко в Лондоне, пока одинокий танк по запруженным беженцами дорогам пытался пробраться на подмогу заблокированным в Гостомеле спецназовцам, которых просто тупо кинули.
А когда Залужный на пальцах объяснил потужным менеджерам, что, благодаря еще не до конца разобранным ЗСУ, территориальной обороне и вообще ополчению, Киев оркам взять все ж таки не удастся - несмотря на все предпринятые этими самыми менеджерами усилия - и когда Главкома поймали за хлястик на полпути к Лондону, они встрепенулись, отряхнулись, записали первый гундосик, и начали сочинять легенду про Великого Смелого Боневтика, про недоваренную мивину, про гранатомет за шторкой, про татарова и чечнцев и про бои в правительственном квартале.
И вот теперь становится по настоящему страшно - по какому невероятно тонкому краю, каким-то совершенно невероятным чудом, которого вообще не должно было быть - прошла Украина в эти критические первые несколько дней вторжения и каким-то совершенно невообразимым образом осталась незавоеванной.
Когда, потом, чуть попозже, появятся очередные откровения и картина сложится более-менее полной и станет окончательно ясно, что же случилось и происходило за это время - мы с вами так охуеем, друзья мои, как еще никогда за эти шесть лет.
Я вам напомню, что был еще один главком, у которого "не было времени мыслить стратегически" и который точно так же просрал вторжение, полностью потерял контроль и управление войсками, полностью потерял управление государственным аппаратом, когда армия противника стояла под его столицей, а все государственные органы побросали нахрен все и съебывали из столицы куда глаза глядят, был в полной прострации и вообще не мог осуществлять командование, а потом, когда не до конца разобранная им армия и народное ополчение все же отбросили противника от столицы - стал строить миф о своем великом гениальном управлении, своем мужестве и вообще благодаря только отцу народов мы победили.
Звали этого гения Иосиф Сталин.
Именно об этом все эти шесть лет я и орал в уши.
А вас предупреждали (с)
Ваш Дед.
В рамках проекта "Журналистика без посредников". Напоминаю, что живу я только на ваши донаты. Если вы считаете, что я хорошо делаю свою журналистскую и волонтерскую работу и если сами хотите жить в реальном мире - подписывайтесь на меня на Патреон.
Там больше информации:
https://t.co/kh4dkl9o3C
Accepted! Go 1.26 will introduce per-state goroutine metrics: running, waiting, in syscalls, etc.
Developers can use them to catch problems early without needing full traces.
https://t.co/FZMpuE5IwB