Mark's blog
329 subscribers
109 photos
2 videos
1 file
63 links
Thoughts of a part-time online troll and software engineer.

My DM — @difhel

@persikfanclub @MyTonWalletEn @elaning

https://difhel.dev
Download Telegram
Death to MCP (?)

Все, кто причастен к процессу, с легкой руки Андрея Карпаты названного вайб-кодингом, слышали про Model Context Protocol (MCP) — это стандартизированный протокол для того, чтобы LLM-агенты могли вызывать сторонние сервисы (tools) — например, чтобы автоматически подтянуть issue с GitHub по ссылке или найти что-то через веб-поиск по запросу.

MCP придумали в Anthropic и, честно говоря, название со словом «protocol» слишком громкое для простой идеи: давайте опишем формат JSON-ов и заставим LLM включать в выходных данных JSON-ы в заданном формате, чтобы потом провалидировать их и подсунуть на вход результат от внешнего сервиса.

Простота этой идеи оказалась настолько заманчива, что никто особо не задумывался над её практичностью. И вот тут всё очень-очень плохо:
• LLM непросто генерировать JSON-ы
• LLM непросто следовать инструкциям по structured output, чтобы сгенерировать корректный вызов tool
• JSON закладывает немалый оверхед на используемое число токенов моделью, из-за чего инференс дороже и быстрее съедает контекст
все входные и выходные данные для tool также засоряют контекст.

Например, вы попросили LLM с помощью тула fetch_logs достать логи вашего сервиса за последний день и потом вывести топ 10 ошибок с помощью тула analyze_logs. Что придется сделать модели в классическом MCP: сначала она вызовет fetch_logs, а потом составит запрос с кучей данных из fetch_logs для тула analyze_logs. Результат: модель сгаллюцинировала где-то посередине из-за неспособности поддерживать точность на заполненном контексте, миллионы токенов потрачены впустую на перегонку данных для вызова тула, а привязка карточки с автооплатой к аккаунту OpenAI оказалась очень грустным решением.

Получается, что MCP как способ дать LLM способность вызывать сторонние инструменты плох как с точки зрения эффективного использования контекста и максимального объёма полезной работы, так и с точки зрения cost efficiency (пишу пост на ночь глядя и забываю русский язык, что поделать).
1🔥3👍2
Как сказал когда-то Сталин, критикуешь — предлагай (c) Versus Battle, Oxxxymiron* vs. Слава КПСС, 6 августа 2017, Санкт-Петербург


И предложить на самом деле есть что. Индустрия придумала как минимум два более эффективных подхода, чем MCP.

1️⃣ Первый — это так называемый Code Mode. Можно почитать доклад от Cloudflare по этому подходу. Если коротко, то идея такая: мы даем модели .d.ts файлы с декларациями доступных API на TypeScript; LLM генерирует код на TypeScript, который использует эти API; далее этот код исполняется в безопасном окружении (Cloudflare предлагает подход с использованием инструментов изоляции в V8 JS engine; впрочем, если у вас бесконечно много денег от инвесторов, то можно просто поднимать виртуальную машину на Debian 12 с дохренищей ресурсов, как делает ChatGPT для запуска внутренних инструментов).

Почему это лучше? Потому что решает самые серьезные проблемы MCP:
• в обучающих данных по очевидным причинам гораздо больше примеров кода на TypeScript, чем примеров правильных вызовов тулов через JSON-овые structured outputs, поэтому LLM гораздо легче генерировать рабочие вызовы
• так как это программа на TypeScript, достаточно просто написать последовательный вызов тулов, и контекст не засоряется. Пример выше с анализом логов решается в пару строчек и ноль (0!!) лишних затраченных токенов (очень условно):
const logs = await FetchLogsService.fetchLogs();
const top = await AnalyzeLogsService.process({ $limit: 10, $sort: { count: DESCENDING } });
console.log(top);


2️⃣ Второй — это Skills, подход, выпущенный как дополнение (или альтернатива?) MCP. Подробнее почитать можно тут, но идея такая: вместо сложных спецификаций, как вызывать тот или иной тул по MCP, можно сделать папку, в которой будут лежать готовые скрипты и один Markdown файл с описанием, как этими скриптами пользоваться.

Недавно ChatGPT с радостью соглашался поделиться zip-архивом своей папки /home/oai, в которой было много всего вкусного: todo комментарии в коде с именами разработчиков и много-много исходного кода инструментов и костылей. Там как раз используется этот подход со Skills: есть папочка skills, в которой лежат папочки docx, pdfs и spreadsheets, в каждой из которых лежит набор скриптов и skill.md с описанием, как эти скрипты вызывать и что туда передавать. Это очень интересно поизучать, в посте ниже я скину этот архив, а то вдруг уже закрыли эту дыру.

Почему это лучше:
• тут тоже не нужно генерировать JSON-ы и structured outputs, сгенерировать sh-команду для запуска нужного скрипта очень просто
• тратится меньше токенов
• такие скиллы гораздо удобнее разрабатывать, использовать и поддерживать, чем тулы с MCP протоколом

* — так называемое министерство юстиции РФ считает так называемым иностранным агентом
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥1
ЖОСКИЙ СЛИВ /home/oai, как и обещал.
7🙈21
Вообще хорошо, что передовые LLM разрабатываются в США, а не в России.

Сообщения это же мега чувствительная информация. Персональные данные (например, если используете ИИ для заполнения документов), данные о здоровье (если обсуждаете симптомы или результаты обследований с ChatGPT, а не с Google, чтобы было не так страшно 😁), данные о геолокации ("Какие места посетить за 5 дней в Дубае?"), данные об использовании сервисов для фишинговых атак или соц. инженерии, если используете Codex/Claude Code/whatever — то еще и кодовая база ваших проектов, причем вероятнее всего вместе с секретами, потому что не существует в природе способа надежно защитить .env файл от прочтения и при этом обеспечить ИИшке доступ к дебагу.

Думаю, что если бы условный <российский LLM нейм без упоминания названия, чтобы мне не пришел иск> заменил по популярности в мире (да даже в России) ChatGPT, то все ваши переписки можно было бы читать в онлайн-режиме в доксинг-ботах.

Вместе с 50-ю навайбкоженными за прошлую неделю SaaSами (недоделанными).
👍9😁61
За полчаса до закрытия приезжаю к мавзолею Gur-e-Amir, отстаиваю небольшую очередь. На кассе выясняется, что ровно в момент моего появления терминал «временно не работает», а все наличные к этому времени уже были успешно инвестированы в Сиабский базар.

И тут — раз! На парковку заворачивает черный бус без номеров, из которого синхронно высыпается десант в одинаковых белых футболках Soliq. Спешу разочаровать: это не маски шоу и не внезапная проверка кассовой дисциплины, а культурный досуг — налоговая просто приехала на экскурсию. Судя по всему, никаких вопросов к оплате наличными, как можно было бы подумать, зная, как ФНС пакостит малому бизнесу в России, у них не возникло.

Когда-то тут ходили эмиры, а теперь — Soliq Service team building 2026. Все же некая преемственность присутствует.
😁103
🍕 Happy Bitcoin Pizza Day!

Конкретно эта пицца была куплена на доллары США, полученные в обмен на Toncoin на BestChange. Думаю, это тоже считается.

Мтонга. Депнуть во фьючи. Подписаться.
Please open Telegram to view this post
VIEW IN TELEGRAM
10😁4🌚1
Недавно во время перелёта из страны А в страну Б удалось транзитом на один день попасть в 🇬🇪 Грузию — решил взять билеты так, чтобы захватить ещё одну страну (НЕ В ЭТОМ СМЫСЛЕ).

Летел без каких-либо особых ожиданий и был шокирован красотой, которая мне открылась.

Горы с канаткой, тифлисские серные бани в районе Абанотубани (говорят, даже некий кент Александр Сергеевич Пушкин заценил их во время путешествий по Кавказу — я, кстати, тоже их заценил, отличное завершение дня), сохранённый в малейших деталях старый город, который сочетается с футуристичными постройками, типа моста Мира, зелёные парки. На любой улице можно свернуть в сторону и попасть в скрытое подпространство с кучей баров и световым оформлением.

Я думаю, Тбилиси однозначно самый гулябельный и один из самых красивых городов, которые я посещал.

Даже фотки скинуть не могу, это было бы преступлением против красоты города — камера Pixel 6 спустя 3 года уже очень плохо передаёт виды через ночную съёмку( Но немного все равно скину.
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥5