Обновить
512K+

Python *

Высокоуровневый язык программирования

336,5
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

RAGу для программиста

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели5.1K

Внедрение AI в программные продукты часто сопровождается необходимостью обогатить контекст LLM специфичными для ваших задач данными. Для обогащения знаний используемой вами модели применяется два подхода:

- fine-tuning — дообучение модели на ваших данных. Тут финансовые затраты идут на обучение модели:

-- ресурсы на fine-tuning в случае on-prem решения,

-- дополнительные средства за дообучение модели по подписке.

- RAG — внешний источник данных, данные из которого передаются в качестве контекста к промпту в LLM. Затраты тут переносятся на размер запроса за счёт увеличения входящего контекста.

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

Читать далее

Новости

Одна франшиза — три адреса и два написания: дедупликация каталога франшиз по открытым данным

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели4.4K

Человек, который вводит в поиск запрос вроде «франшиза каталог для малого», получает несколько каталогов, и в каждом тысячи карточек. Кажется, что из них легко собрать одну таблицу рынка: обойти, склеить, посчитать. Я так и думал, пока не попробовал склеить два каталога и один каталог сам с собой.

Ниже - что я взял за ключ записи, сколько раз каждый ключ подвёл и что в итоге работает. Код на Python, данные сняты 6 и 16 октября 2026 года.

Читать далее

Читаем DataMatrix с конвейера: открытое сравнение четырёх библиотек на 1368 синтетических кадрах

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели5.5K

На производстве код «Честного знака» читает камера над лентой, и символ на кадре мелкий — 2–3 пикселя на модуль, повёрнутый, смазанный, на изогнутом боку бутылки. Мы сравнили, как с такими кадрами справляются ZXing, zxing-cpp, libdmtx и наша библиотека dmr. Кадры, ожидаемые строки и скрипты замера выложены — любую цифру можно проверить.

Коротко: — на 1368 синтетических кадрах dmr прочитал 82 %, zxing-cpp — 70 %, libdmtx — 65 %, ZXing (Java) — 3 %; — ложных чтений — ноль у всех четырёх библиотек; — dmr надёжно читает от 1,4 пикселя на модуль и при любом угле поворота; — zxing-cpp примерно в 2,5 раза быстрее; — есть условия, где соперники читают больше dmr, — разбираем их в статье.

Таблицы, графики и данные

Как Живаго ставит диагноз всей эпохе

Время на прочтение5 мин
Охват и читатели4.2K

С помощью Python проверяю диагнозы доктора Живаго и пытаюсь понять, был ли Юрий Андреевич просто хороший диагност или он проверял патологию всей эпохи.

Читать далее

«Ты сеньор» и «думай пошагово»: проверил шесть приёмов на 30 задачах по Python

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели4.3K

Под прошлой статьёй предложили не спрашивать модель, уверена ли она, а отдельным запросом просить перепроверить и исправить код. Я проверил одну формулировку такой просьбы и ещё пять приёмов — «ты сеньор», «думай пошагово», «меня уволят», «сначала тесты», «только код» — одинаково: 30 задач по Python, скрытые тесты, три модели, по три прогона. Ни один приём не дал обнаружимой разницы в доле прошедших тестов. Переспрос исправил 3 решения из 5 неверных — мало, чтобы делать выводы. «Сначала тесты» дало в 2,6–4,4 раза больше выходных токенов, «только код» — на 10–46 % меньше. Некоторые ошибки повторялись при разных фразах: Haiku отвергал «1h30m» в пяти вариантах из семи. Внутри таблица, тексты фраз дословно и границы того, что из этого следует.

Читать далее

Радар спроса: ловим «ищу разработчика» в чатах, а ИИ-классификатор держит потолок $30 в месяц

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели4K

Я делаю сайты и телеграм-ботов на заказ. Заказчики пишут «ищу, кто сделает лендинг» в профильные чаты и в ленты соцсетей, и кто ответит первым, тот обычно и получает разговор. Читать все чаты глазами я не могу, поэтому собрал робота: он читает чаты и ленты, отсеивает мусор, оценивает каждую находку нейросетью и присылает мне в личку карточку с баллом и черновиком первого ответа. Отвечаю я сам, руками. Робот никому, кроме меня, ничего не отправляет, и это правило закреплено в коде, а не в договорённости с самим собой.

Статья про устройство «трубы», по которой идёт сообщение, про учёт расходов с потолком, про три места, где было больно (зависший event loop, невалидный JSON от модели, пачка находок, которую сервер не успевал принять), и про то, что в итоге получилось по живым цифрам. Код ниже взят из рабочего проекта, лишнее я выкинул, промпты классификатора не привожу: у них своя история, к архитектуре она не относится.

Читать далее

AG‑UI 1.0: у протокола наконец появилась спецификация. Разбираем, что изменилось, на связке AG2 + CopilotKit

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели4.9K

15 октября Tesla показала летающий Roadster, а мы разберём не менее важное: вышел AG-UI 1.0 - мажорный релиз протокола между агентом и интерфейсом. Что в нём нового и как это выглядит на связке AG2 + CopilotKit

Читать далее

Может ли плохая модель победить хорошую? Как Data Leakage обманывает метрики

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели8.5K

Представим обычную ситуацию: мы обучили несколько моделей, сравнили их на тестовой выборке и получили довольно странный результат. Простейшее дерево решений показывает Accuracy почти 97%, а Random Forest из 300 деревьев — всего 91,5%.

Читать далее

Как ускорить ручное тестирование интеграций с RabbitMQ с помощью библиотеки pika

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели6.2K

Чаще всего для ручного тестирования интеграций с RabbitMQ используют UI-клиент. Но не всегда это удобно и позволяет тестировать быстро, особенно когда очередей к функционалу привязано несколько и в каждой нужно отдельно просматривать данные об отправленных сообщениях.

В этой статье я покажу как с помощью python-скрипта можно получать все нужные сообщения из одного/нескольких exchange в отдельную тестовую очередь и просматривать данные из нее в удобном формате в консоли IDE.

Читать далее

Ваши секреты не должны уходить в облако: знакомьтесь, Obscura

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели7.8K

Летом я писал, что будет, если сливать рабочие данные в ChatGPT: логи SOC, конфиги Cisco и FortiGate, внутренние IP, почты сотрудников. Тогда я сделал офлайн-инструмент, который чистит конфиг руками инженера до отправки. Он решает проблему для того, кто помнит им воспользоваться. Но компания не может полагаться на то, что все всегда вспомнят.

Поэтому я сделал следующий шаг: шлюз, который стоит между человеком и нейросетью, проверяет каждый запрос и решает, что с ним делать. Называется Obscura. Он работает on-prem, данные остаются внутри сети.

Как устроен шлюз под капотом

Сутки из жизни G3A1SF: как я учу агента без backprop — днём он живёт, ночью учится

Время на прочтение12 мин
Охват и читатели6.3K

Что происходит с агентом, который не решает одну задачу, а живёт — долго, в мире, который всё время меняется? Я собрал NOWA-Cognitive, когнитивную архитектуру без backprop, без глобальной функции потерь и без языковой модели в контуре решений: днём агент записывает опыт быстро и «начерно», а долговременную память переписывает ночью, во сне. Рассказываю, как это устроено, на примере одних суток одной шиншиллы из колонии — G3A1SF.

Читать далее

Инди космос за 6 лет. От лобби в VR до мультиплеерной игры

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7.1K

Я помню свои первые впечатления от лобби когда я впервые включил Oculus Quest. Космическая станция на орбите. За окном — вселенная. Солнечный свет отражается от стен каюты. За пределами атмосферы солнце кажется необычайно ярким. Вентиляция тихо гудит. Хотелось запрыгнуть в челнок и помчаться по просторам космоса. Но тогда я не знал о существовании подходящей игры. А может, её просто не было. Безумно хотелось летать.

Шесть лет назад появилась идея игры, которая со временем превратилась в Орбиту.

Полетели?

Как я собрал модель для определения стадии диабетической ретинопатии на бесплатном Colab

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели6.8K

Предыстория

Я собрал двухпоточную модель: она смотрит на снимок глазного дна и одновременно получает клинические показатели пациента. На отложенном тесте первый запуск дал QWK 0.834. Потом я стал разбираться, за счёт чего, и оказалось, что клинические признаки в моих данных содержат ответ. Я поставил три контрольных эксперимента, в том числе обучил отдельную модель только по снимкам. У неё QWK 0.713. Ниже весь пайплайн и способы, которыми такая утечка находится.

Читать далее

Ближайшие события

Как строить сканирование активов в MaxPatrol VM. Ч.4 — Автоматизация по API. Ч.0 — авторизация

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели7.7K

Добрый день, дорогие читатели!

Мы с Вами просканировали основные типы активов. Можно выпустить гайды по сканированию сетевого оборудования и виртуализации, но здесь мне нечего добавить поверх официальной документации. Так что, мы переходим к большому пласту автоматизации через API, да еще и с примерами!

Все примеры кода будут на Python. Я уже давно не пишу на С++/С#. Любителей Go прошу понять и простить, за то что я не настолько модный.

Разговор про API начнем с авторизации, получения Bearer-токена и headers, которые будем использовать для каждого API-запроса.

Читать далее

Сколько живёт ссылка в ответе нейросети: сравнил три замера по 20 вопросам

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели6.8K

Если вы следите, ссылается ли нейросеть на ваш сайт, полезно знать, сколько ссылка держится в ответе на один и тот же вопрос. Недолго: через полтора месяца в ответах Алисы AI и Perplexity осталось от четверти до трети прежних ссылок (27,5% у Perplexity, 35,5% у Алисы AI), а больше половины ссылок оказались новыми.

Я задал обеим нейросетям 20 вопросов одной ниши (как попасть в ответы нейросетей, сколько это стоит, где заказать). На каждый вопрос каждая нейросеть ответила пять раз: три повтора подряд за час, ещё один через 5 дней и ещё один через полтора месяца. Отчёт о том, что вы в ответе, стареет быстрее, чем кажется.

Читать далее

Хватит жечь гигабайты на антидетекты: как RFC 9421 и открытый протокол wbauth ускоряют AI-агентов в 5,5 раза

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели6.3K

TL;DR. Мы перестали маскировать агентов под людей. Теперь они предъявляют криптографический паспорт: подпись Ed25519 по стандарту IETF RFC 9421. Холодный старт — 5 мс вместо 1744 мс. Запрос — 15,8 мс вместо 86,8 мс. Память — 0,76 МБ вместо 500 МБ. Прокси не нужны. Ниже разбираю архитектуру, канонизацию, проверку на WAF, код и методику замеров. Ограничения замеров тоже описаны честно.

Пролог: 40 гигабайт RAM ради того, чтобы притвориться бабушкой

Типичная ферма агентов в 2026 году выглядит так. Есть кластер нод, на каждой крутятся десятки Camoufox, Playwright или AdsPower. Каждый процесс съедает от 500 МБ до 1,5 ГБ памяти. Есть пул резидентских IP, за который платят по гигабайту трафика. Есть отдельный модуль, который рисует кривые Безье, чтобы курсор двигался «по-человечески». И есть дежурный инженер, который в 3 часа ночи разбирается, почему после обновления fingerprint-эвристик у WAF отвалилось 30% сессий.

Посмотрите на это как архитектор. Мы строим систему, вся ценность которой в том, чтобы лгать о своей природе. Противоположная сторона строит систему, вся ценность которой в том, чтобы ловить эту ложь. Это гонка вооружений с нулевой суммой. Обе стороны платят за железо, никто не выигрывает, а цена растёт каждый квартал.

Антидетект — не инженерное решение, а костыль, который пытается решить задачу идентификации средствами мимикрии.

Задача идентификации в распределённых системах давно решена, и решается она криптографией.

Читать далее

Giga IDE Pro больше не будет. Но это хорошая новость

Время на прочтение6 мин
Охват и читатели14K

Pro-сборка была важным этапом в развитии GigaIDE: она позволила быстрее развивать профессиональные инструменты, собирать обратную связь от корпоративных пользователей и проверять сценарии, которые выходят за рамки Community-версии. Но у отдельного дистрибутива есть и обратная сторона: пользователю нужно выбирать сборку, командам — отдельно управлять установками, а продукту — поддерживать лишнюю развилку там, где её уже можно убрать.

Читать далее

Кэш не работал восемь недель. Всё это время он честно писал об этом в лог

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели5.4K

Redis у сервиса прогнозов не было восемь недель: контейнер упал с кодом 255 и больше не поднялся. Всё это время каждый запрос считался заново, 1,9 секунды вместо 11 миллисекунд. При этом авария не была тихой. В обработчике ошибки стоит self.redis_client = None с комментарием про заглушку, но заглушки там нет, поэтому каждый вызов get и set падал с AttributeError, ловился своим же except и писал ERROR в лог. Две строки на каждый запрос, восемь недель подряд. Разбираю, почему я этого не видел, почему health сервиса всё это время отдавал вписанное в код «ok» с таймстампом из мая 2025 года, и чем аккуратно обработанный отказ отличается от обычной поломки.

Читать далее

Гауссовы сплаты как система частиц: разрушаемые корпуса для рогалика на Godot

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели6K

Корпус дрона игрока и боссов в нашем рогалике AsterMaster — не меш, а облако из ~6000 гауссиан, выученное по рендерам из Blender и упакованное в полмегабайта. Поэтому его можно мять, дырявить, рвать на куски и собирать обратно — целиком в вершинном шейдере Godot.

В статье: зачем Gaussian Splatting в игре, где персонаж занимает сотню пикселей; пайплайн «Blender → gsplat → свой бинарный формат → Godot Compatibility» с тренировкой за 21 секунду; запечённые каналы, энтропийная бинаризация и чистка флоатеров; деструкция — кратеры, «луковица», граф опоры и куски по материалам; и честные пост-мортемы того, что не взлетело — с цифрами.

Читать далее

Лимиты больше не кусаются

Уровень сложностиПростой
Время на прочтение1 мин
Охват и читатели5.3K

Лить воду в 2026ом давно бессмысленно, и её здесь нет, весь текст написан моею рукой и отражает факты как есть, просто и кратко.

Итак, написан небольшой скилл — эксплойт псевдостраха модели. Он иммерсивно погружает агента в конечный, исчерпывающийся промежуток реального времени: процент использования 5-часового окна Claude или недельного лимита Codex, снятый со счётчика провайдера, того же, что видите вы.

Как это меняет всё?
1
23 ...