TGINSIGHT CHAT
R4marketing | канал Алексея Селезнёва | Язык R
@R4marketing
ОбразованиеАвтор канала Алексей Селезнёв, украинский аналитик, автор ряда курсов по языку R и пакетов расширяющих его возможности. В канале публикуются статьи, доклады, новости, уроки и заметки по языку R. Для связи: @AlexeySeleznev Реклама: http://bit.ly/39MwJCY
Последние посты
Стр. 1 из 84 · 1,007 постов
Автоматизация разработки в RStudio с помощью Gemini CLI Вновом видео делюсь тем, как у меня сейчас автоматизирован процесс разработки. Речь пойдет про интеграцию RStudio и Gemini CLI. Gemini CLI это аналог Claude Code, но с хорошим бесплатным тарифом, который способен в значительной части покрыть ваши повседневные потребности по разработке и автоматизации, позволяя не переплачивать там, где это не нужно. В видео продемонстрирую пример решения одной из своих реальных задач, по переводу пакета на новую версию API. Разбираем, как запустить этот стек в RStudio и использовать для реальных задач. Что в видео: • Gemini CLI vs Claude Code: Почему я перешел на Gemini и как это экономит бюджет. • Настройка: Установка и получение API ключа. • Интеграция: Подключение CLI к RStudio. • Практика: Рефакторинг и перевод пакета rgoogleads на новую версию Google Ads API. • Паттерны: Как через GEMINI.md заставить модель писать код именно так, как вам нужно. • Расширение возможностей: Работа с MCP серверами. Тайм коды: 00:00 О чём это видео 01:00 Почему gemini cli, а не claude code 02:27 Установка gemini cli 03:56 Создание и установка API ключа 05:25 Подключение gemini cli к RStudio 06:08 Базовый пример использования gemini cli 08:13 Продвинутый пример использования gemini cli, перевод пакета rgoogleads на новую версию Google Ads API 14:30 Использование команд gemini cli 16:13 Как задать паттерны поведения модели в gemini cli, файл GEMINI.md 18:08 Как подключить gemini cli к MCP серверу 20:30 Пример использования MCP сервера в gemini cli 22:31 Заключение #видео_уроки_по_R
Hashtags
Навернякавы в курсе, что проект bookdown.org прекращает свою работу. На данный момент там опубликовано более 7000 книг по R, с 15 января 2026 года на сайт уже нельзя загружать новые книги, а 31 января 2027 года сайт будет недоступен. Все свои курсы я изначально дублировал помимо bookdown на GitHub Pages, так что если у вас где то в закладках сохранены ссылки на bookdown, то лучше их заменить на эти: • Язык R для пользователей Excel • Введение в dplyr 1.0.0 • Циклы и функционалы в языке R • Разработка telegram ботов на языке R • Разработка пакетов на языке R • Язык R для разработки AI инструментов #новости_и_релизы_по_R
Hashtags
Интерфейс для общения с данными на естественном языке: новый урок по пакету querychat В новом уроке курса "Язык R для разработки AI инструментов" мы разбираем, как превратить ваше Shiny-приложение в аналитического ассистента, который понимает вопросы на человеческом языке и самостоятельно пишет SQL-запросы к вашим таблицам. Пакет querychat решает одну из главных проблем интеграции LLM с базами данных — проблему точности и безопасности. Мы разберем архитектуру Text-to-SQL, где модель не галлюцинирует цифрами, а выполняет реальный код в вашем окружении. В этом видео: ● Принцип работы Text-to-SQL: как LLM переводит вопросы в точный программный код ● Безопасность данных: почему querychat передает только метаданные схемы, не отправляя сами данные в облако ● Настройка TableSchema: учим модель понимать структуру ваших таблиц, типы столбцов и категории ● Интеграция в Shiny: использование готовых модулей для быстрого развертывания аналитического чата ● Прозрачность и контроль: визуализация сгенерированного SQL-кода для проверки пользователем ● Использование DuckDB в качестве высокопроизводительного движка для запросов Тайм-коды урока: 00:00 Введение 01:36 Демонстрация интерфейса построенного на основе пакета querychat 04:27 Как работает querychat 06:06 Создание и запуск интерфейса с помощью querychat 09:50 Подключение внешних источников данных 10:53 Предоставление дополнительного контекста 18:22 Интеграция querychat в свои Shiny приложения 27:28 Инструменты в querychat 30:16 Заключение Ссылки: • Видео на Youtube • Курс "Язык R для разработки AI инструментов" #курсы_по_R
Hashtags
Мультиагентные системы в R: пакет mini007 Опубликовал шестой урок курса "Язык R для разработки AI инструментов". Новый урок посвящен проектированию автономных ИИ-команд. Разбираем, как распределять задачи между специализированными агентами и координировать их работу через LeadAgent. Ключевые темы: • Создание и настройка агентов: системные промпты, лимиты и бюджеты. • Автоматизация: генерация и выполнение R-кода, самопроверка ответов (LLM-as-a-judge). • Архитектура MAS: декомпозиция задач, общая память и итерационные циклы. • Human-in-the-loop: интеграция человека в цикл принятия решений для контроля и правки промежуточных результатов. • Агентные диалоги: организация взаимодействия между несколькими моделями для решения сложных кейсов. Тайм-коды: 00:00 Введение 01:08 Создание объекта класса Agent 07:09 Управление бюджетом агента 09:20 Выполнение R-кода агентом 11:43 Проверка качества ответов 18:56 Теория мультиагентных систем 20:43 Настройка MAS в mini007 29:07 Контроль человеком (HITL) 33:44 Диалог двух агентов 39:08 Интеграция в Shiny Ссылки: • Видео на Youtube • Курс "Язык R для разработки AI инструментов" #курсы_по_R
Hashtags
plumber20.2.0 Совсем недавно я рассказывал про plumber2, и вот появился его свежий релиз. Вышла версия 0.2.0, и это уже не просто косметическое обновление. Пакет постепенно доводят до состояния, когда его можно спокойно использовать в продакшене для реальных API-сервисов на R. 1. Поддержка OpenTelemetry Главное нововведение — интеграция с OpenTelemetry. Если коротко, теперь можно: • собирать трассировки запросов; • получать метрики; • логировать события; • подключать внешние системы мониторинга. Это важно для всех, кто строит API не «для себя», а для команды или продукта. Можно видеть, какие эндпоинты тормозят, где возникают ошибки, как распределяется нагрузка. Для микросервисной архитектуры это особенно актуально. OpenTelemetry можно использовать и как систему логирования, а не только для трейсинга. 2. Встроенная аутентификация В 0.2.0 появилась удобная система guards для защиты маршрутов. Поддерживаются разные способы авторизации: basic, bearer-токены, API-ключи, OAuth2, OpenID Connect. Всё подключается через пакет fireproof и настраивается довольно гибко. Можно комбинировать схемы доступа, например разрешать вход по basic или по ключу вместе с Google-аутентификацией. Для корпоративных API это серьёзный шаг вперёд. Теперь не нужно изобретать свою систему доступа поверх plumber2. 3.Datastore через аннотацию Добавили аннотацию @datastore. Раньше хранилища состояния нужно было описывать только в коде. Теперь их можно объявлять рядом с обработчиками. Это упрощает работу с сессиями, токенами и другими persistent-данными. Код становится чище, структура API понятнее. 4. Улучшения report-endpoints Доработали механизм отчётных эндпоинтов. Появилась функция api_report(), которая расширяет возможности тега @report. Можно гибче настраивать параметры, автоматически учитывать их в OpenAPI-документации и отдавать отчёты, например, на базе Quarto. Это удобно для аналитических API, где нужно по запросу формировать отчёты или выгрузки. Ссылки: Более подробно про релиз можно узнать из статьи "plumber2 0.2.0". #новости_и_релизы_по_R
Hashtags
dplyr 1.2.0 Ребята из команды tidyverse выкатили релиз dplyr 1.2.0 — обновление, целиком посвящённое более читаемой и декларативной работе с заменой и исключением значений. Ну а я в свою очередь снял небольшое видео посвящённое этому релизу, и добавил его в курс "Введение в dplyr 1.0.0". В новом видео разбираю ключевые нововведения: • filter_out() — читаемая альтернатива filter(!...) • recode_values() — удобная и безопасная перекодировка значений • replace_values() — массовая замена значений без изменения структуры данных • replace_when() — условная замена значений как развитие case_when() Все примеры — на практике, с пояснениями, где и зачем использовать новые функции. Ссылки: • Видео снято по статье "dplyr 1.2.0" из блога tidyverse. • Рассмотренный в ходе уроке код можно найти тут. #новости_и_релизы_по_R
Hashtags
plumber2 Ребята из Posit переосмыслили plumber и выпустили plumber2. И это не «plumber v2», а полноценный перезапуск API-фреймворка для R. Идея простая: чинить старую архитектуру дальше было бессмысленно — накопилось слишком много компромиссов. В plumber: • смешивались path / query / body параметры • filters и preempt добавляли много магии и мало прозрачности • аннотации и документация были ограничены • архитектура плохо подходила для async и масштабирования В plumber2 это всё пересобрали: • чётко разделили параметры запроса • path → аргументы функции, query → query, body → body • полностью переработали аннотации (типы, default, enum, OpenAPI) • убрали filters и preempt • построили сервер на fiery, request/response — на reqres • заложили поддержку async и WebSockets # Было (plumber) #* @get /user/<id> function(id, name) { ... } # Стало (plumber2) #* @get /user/<id:int> #* @async function(id, query) { # id — строго из пути # query$name — из параметров запроса # Выполняется асинхронно! } Важно: plumber2 не обратно совместим с plumber — это осознанное архитектурное решение. Итог простой: plumber доказал, что API на R возможны, а plumber2 делает их архитектурно нормальными — ближе к FastAPI-подходу, но в R-экосистеме. Со всей документацией можно ознакомиться по ссылке. #новости_и_релизы_по_R
Hashtags
Кастомизация интерфейса AI чата (shinychat) Опубликовал 5 урок курса "Язык R для разработки AI инструментов". В этом уроке мы разбираем, как превратить базовое окно чата в профессиональное приложение. Мы детально изучим возможности пакета shinychat для глубокой кастомизации интерфейса: от визуального оформления до продвинутой логики работы с инструментами и сессиями. Проще говоря, разберемся, как сделать так, чтобы ваш AI-ассистент выглядел и работал как законченный ИТ-продукт. Из видео вы узнаете: • Как кастомизировать иконки, приветственные сообщения и темы оформления • Как добавить систему интерактивных подсказок (suggestions) для управления диалогом • Как закрепить поле ввода внизу экрана и использовать sidebar для интерфейса чата • Как сделать работу AI-инструментов прозрачной для пользователя (отображение вызовов и аргументов) • Как динамически менять иконки и описания в зависимости от результата работы функций • Как реализовать сохранение и восстановление истории переписки через URL-параметры • Как правильно использовать shinychat в сложных модульных Shiny-приложениях Тайм коды: 00:00 Введение 01:04 План урока 03:05 Базовый интерфейс + Кастомизация иконки ассистента + приветственное сообщение 06:03 Добавление в чат подсказок 07:23 Применение тем, и расположение поля ввода запроса внизу страницы 09:33 Расположение интерфейса чата в sidebar 10:49 Как поместить интерфейс чата в карточку 11:30 Отображение в чате вызываемых моделью инструментов 14:10 Кастомизация иконки и описания вызываемых инструментов 17:28 Кастомизация отображения полученного вызываемым инструментом результата 20:13 Опции управления отображения вызываемых моделью инструментов 21:34 Восстановление и сброс диалога 24:51 Как использовать shinychat в модульных shiny приложениях 27:56 Заключение #курсы_по_R
Hashtags
Курспо разработке AI-инструментов на R Не так давно я писал, что планирую собрать единый курс из своей серии уроков по внедрению ИИ в рабочие процессы. Сегодня проект официально запущен. Это полноценный интерактивный учебник на Bookdown, где каждое видео дополнено подробным конспектом, готовым кодом, схемами и вопросами для самопроверки. Что в программе на текущий момент: 1. Введение в разработку AI инструментов: Работа с API через ellmer, управление контекстом и создание первого интерфейса на shinychat. 2. LLM в Telegram боте: Проектируем архитектуру бота, способного поддерживать диалог и работать с множеством пользователей. 3. Язык R как MCP сервер и клиент: Выходим за рамки чата. Учим модель использовать ваши локальные данные и функции как инструменты. 4. RAG (Retrieval-Augmented Generation): Подключаем ИИ к собственной базе знаний на DuckDB. Делаем так, чтобы модель отвечала строго по вашим документам. Эта база закрывает 90% задач, с которыми вы столкнетесь при разработке реальных AI-ассистентов для аналитики и бизнеса. Важно: Программа не финальная. Я планирую расширять курс новыми модулями по мере выхода актуальных решений и развития нашего внутреннего стека. В ближайшие несколько недель будет добавлен 5 урок. Так что не забывайте подписываться, что бы не пропускать обновления. #курсы_по_R
Hashtags
RAG: Подключаем AI чат к собственной базе знаний В этом уроке мы разбираем RAG (Retrieval-Augmented Generation) — подход, который позволяет большим языковым моделям отвечать на вопросы, опираясь не только на свои внутренние знания и системный промпт, но и на вашу собственную базу данных и документы. Если в предыдущих видео мы научились вызывать LLM из R, строить чат-интерфейсы и подключать инструменты, то здесь делаем следующий логичный шаг — подключаем модель к базе знаний. В уроке мы последовательно пройдём весь RAG-пайплайн на примере пакета ragnar: • разберём, что такое RAG и из каких этапов он состоит; • подготовим документы и разобьём их на фрагменты; • создадим эмбединги и запишем их в хранилище; • посмотрим, как устроен векторный и текстовый (VSS и BM25) поиск по базе знаний; • научимся проверять и отлаживать хранилище с помощью Ragnar Store Inspector; • подключим языковую модель к базе знаний; • соберём простой AI-чат с помощью пакета shinychat. В итоге у вас будет чёткое понимание, как в R реализовать полноценный RAG-подход — от документов до работающего AI-ассистента, который отвечает на вопросы на основе ваших данных. Тайм коды: 00:00 О чём это видео 01:54 Что такое RAG 06:02 Создание переменных среды для хранения API ключей 07:31 Подготовка документов 10:44 Разделение документа на фрагменты, эмбендинг и запись фрагментов в хранилище 22:24 Инструмент проверки хранилища Ragnar Store Inspector 24:05 VSS и BM25 поиск по хранилищу 31:13 Подключение LMM к базе знаний 35:08 Создаём интерфейс AI чата с помощью пакета shinychat 38:55 Резюмируем весь рассмотренный в видео материал 41:22 Заключение Ссылки: - Материалы к уроку #видео_уроки_по_R
Hashtags
Опубликован 8 дек.
Новый видеоурок: R и MCP серверы для работы с LLM В этом уроке мы разбираем, как подключать большие языковые модели к вашим инструментам через MCP, и как использовать R как полноценный сервер и клиент для LLM. Проще говоря разберёмся с тем, как из вашего…
Новый видеоурок: R и MCP серверы для работы с LLM В этом уроке мы разбираем, как подключать большие языковые модели к вашим инструментам через MCP, и как использовать R как полноценный сервер и клиент для LLM. Проще говоря разберёмся с тем, как из вашего AI чата сделать полноценного AI ассистента, который умеет не только отвечать на вопросы, но и выполнять различные действия. В видео мы напишем MCP сервер для работы с Google Sheets API. В видео вы увидите: ● Что такое MCP и чем он отличается от обычного function calling ● Как поднять MCP сервер прямо из R ● Как описывать инструменты для LLM и передавать их через MCP ● Как использовать R как MCP клиент и вызывать инструменты удалённо ● Как подключить собственный MCP сервер к Claude Desktop ● Как дать модели доступ к активным R-сессиям с помощью пакета btw ● Чем MCP удобнее прямого вызова функций и когда его стоит применять Тайм коды: 00:00 О чём это видео 01:50 Что такое MCP сервер 03:10 R как MCP сервер 13:03 R как MCP клиент 20:24 Подключаем написанный ранее MCP сервер к Claude Desktop 23:10 Подключаемся через Claude Desktop к активным R сессиям (пакет btw) 27:09 Заключение Ссылки: - репозиторий со всеми материалами к уроку #видео_уроки_по_R
Hashtags