Обновить
Козлов Василий Иосифович@saintbyteread⁠-⁠only

Пользователь

Отправить сообщение

Вам стоит написать своего агента

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

Некоторые концепции легко усвоить абстрактно. Кипящая вода: греем её и ждём. Другие нужно попробовать самому. Вы думаете, что знаете, как работает велосипед, пока не попробуете покататься на нём.

В вычислительных системах есть большие идеи, которые легко понять. Например, AWS S3 API — самая важная за последние двадцать лет технология хранения данных, и она похожа на кипящую воду. Для понимания других технологий нужно сначала покрутить педали.

К ним относятся и LLM-агенты.

Мнения о LLM и агентах невероятно разнообразны. Но даже если это мошенничество, это серьёзная идея. Они не обязаны вам нравиться, но вы должны быть правы относительно них.

И это одна из причин, по которой вам следует написать агента. Но есть и другая, гораздо более убедительная причина...

Читать далее

Моя б̶е̶з̶умная колонка: часть вторая // программная

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

Привет, Хабр!

В прошлой статье я описал аппаратную реализацию своего голосового ассистента на базе бюджетного одноплатника Orange Pi Zero 2W с 4Гб оперативной памяти. Эту же статью хочу посвятить программной реализации данного устройства. Если стало интересно, то добро пожаловать под кат.
Читать дальше →

Делаем Electron UI более «нативным». Простой гайд из 15 шагов

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

Ниже я приведу примеры, как пустить пыль в глаза юзерам можно улучшить ситуацию с ощущением чужеродности приложения среди других, написанных на честном Gtk, китами из XCode, Windows UWP и прочим с 0% вайбкодинга

Читать далее

Пожиратель токенов (или нет): анатомия протокола MCP для ИИ-агентов

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

Поводом написания этой статьи послужил подслушанный диалог:

— А на чем у вас агенты написаны?

— У нас на MCP!

Для меня MCP всегда был просто протоколом, то есть именно способом отправки и обработки запросов. А когда я слушал выступления или читал некоторые статьи о том, как плох/хорош MCP, меня не покидало ощущение чего-то странного. Но все же решил, что это от незнания, и я чего-то не понимаю. А когда не понимаешь, но очень хочешь понимать, то самый лучший способ — это взять и разобраться.

Именно это предлагаю и сделать в статье, а также замерить MCP, чтобы ответить на вечный вопрос: сколько сжирает MCP, подключать ли его вообще или и так сойдет?

Читать далее

Как научить нейросеть работать руками: создание полноценного ИИ-агента с MCP и LangGraph за час

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

Надоели чат‑боты, которые только болтают? Создаём настоящего ИИ‑помощника: читает файлы, ищет в сети, запоминает всё. LangGraph + MCP — пошаговый гайд для Python‑разработчиков. Меньше теории, больше работающего кода.

— Два готовых агента: классификатор вакансий + файловый помощник
— Поддержка Ollama, OpenAI, DeepSeek — выбирайте любую модель
— Асинхронная архитектура с обработкой ошибок
— Полная интеграция в Python‑проекты без no‑code конструкторов
— Код готов к продакшену: логирование, retry‑механизмы, конфигурация

От настройки окружения до рабочего агента за час.

Читать далее

MCP (Model Context Protocol)

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

В последнее время аббревиатура MCP стала все более часто появляться в некоторых статьях и разделах комментариев на arXiv или Daily Papers Hugging Face, которые я просматриваю. Внезапно осознав, что мое представление об этом лишь приблизительное, я решил изучить его более подробно и поделиться с вами.

Читать далее

Ory Kratos — коробочный SSO

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

Ory Kratos - современный cloud native сервер идентификации с поддержкой PassKeys, MFA, FIDO2, TOTP, WebAuthn, с возможностью управления профилями, схемами пользователей, входом через внешние сервисы, регистрацией, восстановлением аккаунта, с поддержкой passwordless входа. Написан на Go, headless, API-first.

Целью этой статьи не является сравнение с другими популярными сервисами идентификации, которые дальше будут упомянуты, но будет рассмотрен основной функционал и мой опыт использования в пет-проектах.

Читать далее

Самодельная аэромышь с мультимедийным управлением

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

Имея ограниченный бюджет и страсть к DIY‑проектам, я решил создать что‑то полезное, используя те компоненты, которые уже были у меня под рукой. Порывшись в своих запасах, я наткнулся на гироскопический датчик, ESP32-C3 и ёмкостные сенсоры, оставшиеся от предыдущих проектов — и тут меня осенило! Почему бы не собрать воздушную мышь с мультимедийными функциями? Вооружившись этими компонентами и щепоткой креативности, я поставил перед собой цель — собрать Bluetooth HID‑устройство с управлением движением, которое позволит буквально взмахами руки перемещаться по меню, наслаждаясь удобным управлением мультимедиа.

Но и это ещё не всё. Этот мини‑гаджет подходит не только для телевизоров, ПК и Android‑устройств — он также может управлять радиоуправляемыми моделями, роботизированными манипуляторами и другими умными устройствами с плавным управлением движением.

Читать далее

Всё, что вы НЕ хотели бы знать о сервисах онлайн знакомств… [много букОв и иллюстраций + регулярно дополняется]

Время на прочтение60 мин
Охват и читатели438K
Компьютерные сети изменили мир и подарили нам возможность не выбирать «меньшее из зол» из ограниченного числа сложившихся по жизни контактов, а найти по-настоящему любимого человека, даже если он прячется от нас на другом материке. Разумеется, мы можем отказаться от этой возможности и пойти по воспетому российской эстрадой садистско-мазохистскому сценарию «слепила из того, что было, а потом, что было, то и полюбила». И все будут только рады, если у нас всё получится. Но, если мы подведем статистику известных нам счастливых пар, сложившихся по этому сценарию, и трезво оценим вероятность успешного исхода, то, вероятно, путь поиска своего счастья в мировой паутине покажется нам более перспективным. И в этой статье я хочу рассказать вам о тех проблемах с которыми на этом пути можно столкнуться.
Читать дальше →

Я беру джойстик, лечу в поле и зарабатываю 3,6 млн чистой прибыли за сезон

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

В статье расскажу, сколько денег может налетать агродрон, и как быстро можно окупить подобное предприятие.

Читать далее

Использование симулятора Flight Gear в качестве виртуального MEMS

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

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

Читать далее

Я купил детский ARM-ноутбук за 500 рублей, чтобы поставить на него Linux

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

Сегодня компьютером на x86-совместимом процессоре едва ли можно кого-то удивить с гиковской точки зрения. Другое дело — обучающий ноутбук для детей, который работает на интересном и необычном ARM-процессоре от небезызвестной компании VIA. И хотя для запуска произвольных программ его необязательно было хакать — всем гикам известно, надо было ставить Linux!

К чему приводит давняя детская мечта об обучающем ноутбуке, что скрывается внутри устройства за 500 рублей и как на всё это накатить Linux с дуалбутом в родную систему — читайте в сегодняшней подробной статье!

Читать далее

Программируем квадрокоптер на STM32

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

Данный проект представляет собой систему стабилизации квадрокоптера на базе микроконтроллера STM32F411, реализованную на языке C. Включает обработку данных с датчиков (акселерометр, гироскоп), PID-регуляторы для управления моторами и алгоритмы фильтрации. Подходит для образовательных целей и DIY-проектов.

Читать далее

Ходим в Интернет с отключённым IPv4

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

Несколько дней назад в маршрутизаторе моего провайдера после отключения электричества поломался IPv4. К счастью, подключение по IPv6 продолжало работать, но доступна была только малая часть веб-сайтов.

В этом посте я расскажу, как на помощь мне пришли Linux, WireGuard и Hetzner, благодаря которым я смог получить доступ ко всему Интернету через одно лишь соединение IPv6.

Читать далее

Несколько сетей для энтузиастов

Время на прочтение29 мин
Охват и читатели35K
Несмотря на обилие материала в сети, в том числе на русском, в том числе на Хабре, в комментариях к публикациям периодически можно встретить удивление открывшимся фактам в обсуждении. Поэтому я решил написать короткую обзорную статью, перечислив в ней сети, в которых может участвовать любой желающий.

Фактически эта публикация краткий дайджест статей на Хабре о технических хобби, в основном, на грани IT, программирования и радиолюбительства.

И первым в списке станет популярный Народный мониторинг.


The Hitchhiker's Guide to the Habr

Как помочь пользователю ждать. Научные исследования

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

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

Читать далее

Как работает yield

Время на прочтение6 мин
Охват и читатели788K
На StackOverflow часто задают вопросы, подробно освещённые в документации. Ценность их в том, что на некоторые из них кто-нибудь даёт ответ, обладающий гораздо большей степенью ясности и наглядности, чем может себе позволить документация. Этот — один из них.

Вот исходный вопрос:
Как используется ключевое слово yield в Python? Что оно делает?

Например, я пытаюсь понять этот код (**):
def _get_child_candidates(self, distance, min_dist, max_dist):
    if self._leftchild and distance - max_dist < self._median:
        yield self._leftchild
    if self._rightchild and distance + max_dist >= self._median:
        yield self._rightchild

Вызывается он так:
result, candidates = list(), [self]
while candidates:
    node = candidates.pop()
    distance = node._get_dist(obj)
    if distance <= max_dist and distance >= min_dist:
        result.extend(node._values)
        candidates.extend(node._get_child_candidates(distance, min_dist, max_dist))
        return result


Что происходит при вызове метода _get_child_candidates? Возвращается список, какой-то элемент? Вызывается ли он снова? Когда последующие вызовы прекращаются?

** Код принадлежит Jochen Schulz (jrschulz), который написал отличную Python-библиотеку для метрических пространств. Вот ссылка на исходники: http://well-adjusted.de/~jrschulz/mspace/

Подробный и обстоятельный ответ

Телеграм-бот для бронирования столов на вебхуках: FastAPI, Aiogram Dialog, FastStream и RabbitMQ в единой экосистеме

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

В этой статье мы создадим функционального Telegram-бота для бронирования столиков в ресторане «Binary Bites» с использованием современных Python-инструментов. Бот будет работать через вебхуки, взаимодействовать с брокером сообщений RabbitMQ и поддерживать фоновое выполнение задач с помощью FastStream и APScheduler.

Проект объединит FastAPI, SQLAlchemy, Alembic, Uvicorn и другие библиотеки, обеспечивая гибкость и масштабируемость. Готовый бот позволит пользователям бронировать столики, просматривать и отменять брони, а администраторам — управлять заказами.

Читать далее

Как составить резюме для российского рынка: практическое руководство

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

Автор: InfinityProductive

Это руководство поможет вам составить грамотное резюме для российского рынка. В качестве шаблона можно использовать заполненный профиль на HH.ru или готовый макет в Canva.

Читать далее

IBM PalmTop PC 110: легендарный карманный ноутбук, опередивший время

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


Признаюсь: я просто влюблён в ноутбуки от IBM — в моём компьютерном хозяйстве каким-то непостижимым образом образовались аж целых три ThinkPad’а. Изучая продуктовую линейку этой компании, я неожиданно наткнулся на очаровательный ноутбук сверхкомпактного форм-фактора. Глядя на него, я искренне пожалел, что живу не в Японии, поскольку это устройство выпускалось только для японского рынка. Речь идёт о карманном ноутбуке с названием IBM PalmTop PC 110.
Читать дальше →
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Екатеринбург, Свердловская обл., Россия
Дата рождения
Зарегистрирован
Активность