Интересное что-то
517 subscribers
2.72K photos
253 videos
138 files
4.52K links
Материалы и мысли, понадерганные отовсюду
Блог: https://t.iss.one/asisakov_channel
Чат: https://t.iss.one/youknowds_chat
Download Telegram
Forwarded from Neural Kovalskii
SGR Deep Research

А почему бы не взять все лучшие идеи из демо и идей ребят из чата
Собрать свои идеи по Deep Research
И сделать самый простой инструмент поиска инфы в интернете через Tavlily API?

А сделать, вот он https://github.com/vakovalskii/sgr-deep-research (звездочки приветствуются)

gpt-4o-mini
Tavily API (1000 реквестов в месяц фри)
SGR-concept

Из интересного что заметил такая модель сама определяет что например чипов M6 у applе не существует и на ходу меняет план рисерча потому что нашла это в данных из инета
Или что термин SGR ей не понятен и просит его расшифровать

Что я закинул туда "навайбкодил"

1. 🤔 Clarification (ВЫСШИЙ ПРИОРИТЕТ)
- При любой неопределенности в запросе
- Неизвестные термины, акронимы, аббревиатуры
- Неоднозначные запросы с множественными интерпретациями
- Отсутствие контекста для специализированных областей

2. 📋 GeneratePlan
- Когда план не существует и запрос ясен
- После получения уточнений от пользователя

3. 🔄 AdaptPlan
- Когда требуется адаптация исследовательского подхода
- При обнаружении неточностей в первоначальных предположениях

4. 🔍 WebSearch
- Когда нужна дополнительная информация И searches_done < 3
- МАКСИМУМ 3-4 поиска на исследование

5. 📄 CreateReport
- При searches_done >= 2 ИЛИ enough_data = True
- Когда собрана информация для полного анализа

6. ReportCompletion
- После создания отчета
- Финализация исследования


Соответствие концепту SGR верифицировало Ринатом 😂

Предлагайте ваши эксперименты! Вон даже ребята из Cбера подключились!
Быстро о мотивации и задачах

Недавно смотрел пару докладов, которые можно гармонично совместить в простую схему мотивации относительно выдаваемых людям задач. Легко взять на вооружение начинающим тимлидам. Как всегда, пишу об этом только потому, что видел примеры, когда такое не делается и люди сильно приунывают от этого, руки у них опускаются, а сами они становятся понурыми и безучастными.

Мысль №1
В докладе Анны Обуховой про то, как выглядят проявления власти и авторитета https://www.youtube.com/watch?v=BmxfUvG7jAY я услышал про эксперимент с крысами. Альфу и омежку посадили в одну клетку и омежка даже не пыталась рыпнуться, сразу отдав всё влияние альфе. Потом омежку несколько раз сажали с другими омежками, где она в бою побеждала их (так они разбираются, кто здесь власть), а после этого посадили опять к альфе. И омежка, уже поверив в себя, готова была с альфой зарубиться.

Мысль №2
В одном из видео Миши Токовинина услышал хорошую, но коротко сформулированную мысль, что сложно (или невозможно) какими-то уговорами и волшебными вдохновляющими словами людей мотивировать на выполнение задач. Надо просто давать им не слишком легкие задачи, чтобы они не заскучали, и не слишком сложные, чтобы они в них не уперлись, как в непреодолимое препятствие, и не решили, что они ничтожества недостойные.

Комбинируем
Задачи не слишком легкие. Например, одного моего знакомого, хорошего разработчика, наняли и бездумно давали ему вечные багфиксы. В итоге он через несколько месяцев такой работы ушел.

Задачи не слишком сложные. Как-то на заре моей карьеры в разработке мне досталась не то, что задача, а целый проект. Да еще с нуля, да еще я неопытный, да еще никто не декомпозировал ничего, да еще никто не приглядывал и не помогал. Я оооочень сильно приуныл за два-три месяца барахтанья во всём этом.

Вспоминаем крыс и понимаем, что люди эти задачи будут не просто выполнять, но и поднимать свою мотивацию, видеть, что они молодцы, у них получается, не закрывать, не бежать и не отнекиваться, получат позитивное подкрепление. Со временем они будут получать задачи посложнее, но всё равно смело их выполнять. Так будут профессионально расти и не грустить.

Не всегда есть выбор
Иной раз не всегда есть выбор для каждого члена команды таких задач. Иногда может быть оверсложная задача и её кому-то надо отдать. Или пучок легких проблем, которые надо зарешать. Здесь я могу тимлидам только посоветовать держать руку на пульсе и соблюдать баланс.

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

Ну и каждому могу, как всегда, посоветовать быть самому кузнецом своего счастья. Говорить, что не так, обсуждать, придумывать пути решения. Сам о себе не позаботишься – только хороший руководитель позаботится (а таких мало).

Итог
Можете показать этот пост начинающим тимлидам, которые увязли в куче разных теорий про мотивацию. Кластеризуют людей по Герчикову, потом еще красят по DISC’у, а сверху обмазывают Минцбергом с Герцбергом.
Можно начать с того, чтобы следить за балансом, чтобы в среднем люди получали задачи не слишком легкие, не слишком сложные и подкрепляли уверенность в своих силах на этих победах.
Привет, товарищи-статистики!

На днях Дима Лунин из Авито выпустил свою 5-ую статью на хабре (с чем и поздравим!) по базе AB: "Методичка по AB-тестированию от аналитиков Авито". И когда пишет такой специалист как Дима, то прочитать стоит вне зависимости от того, база это или нет, так как, возможно, какие-то очень хорошо знакомые понятия предстанут вам под другим углом, такие углы ищу и я, корректируя и уточняя формулировки для курса.

Со своей стороны оставил ряд комментариев к статье (и не только к ней, кстати!), думаю, они могут быть полезны.

Читать комментарии к статье от Димы

P.S. В пятницу ждите пост про новый поток по AB, пора, мои товарищи, пора!
Почему SGR в агентных задачах - плохая идея?

Ринат в последнее время пишет про SGR и его применение в агентных задачах. Про сам SGR подробнее можно посмотреть здесь.

TL;DR: SGR — частный случай Structured Output, где перед финальным ответом задаются «поля», которые позволяют вести LLM более контролируемо к нужной области ответа, а затем, учитывая пункты, которые она написала «выше», LLM формирует финальный ответ (или выполняет действие, которое также жёстко задано JSON-схемой).

В чём вообще отличие? Если и SGR, и Tools приводят к JSON для вызова тула?

Кажется, результат должен быть одинаковым — и в SGR мы даже можем что-то дополнительно контролировать. Звучит супер!
Как LLM пишет ответ в случае SGR (например, для тулзы)?
LLM генерирует ответ; отдельный бэкенд (например, xgrammar) выступает в роли конечного автомата: читает переданную схему, строит грамматику и «не даёт» LLM писать токены, не соответствующие схеме.

В знаменитом chat.completions() нам вернётся сообщение вида {role: 'assistant', content: '<JSON-строка>', tool_calls: []}; потом мы парсим content и подкладываем в историю сообщение вида {role: 'tool', content: '<результат тула>'}. Я намеренно опустил пару деталей для наглядности, но в общих чертах так оно и выглядит.

Не видите подвоха?
1) В chat-template поле tools пустое (даже если LLM поддерживает tools).
2) LLM пишет какой-то JSON, а в ответ ей прилетает следующее сообщение с ролью tool (хотя тулов у LLM «нет» — они не были явно переданы через tools).

Следствие.
LLM пишет JSON, а в ответ получает результат тула. Если посмотреть на известные бенчмарки по tool calling, такого поведения вообще не ожидается: модели обычно обучаются и оцениваются в сценариях, где доступные инструменты передаются явно, а вызов идёт через структурированное поле function/tool-calls.
Представляете, что происходит в голове у LLM, когда подобных диалогов нет ни в открытых датасетах, ни в референсных туториалах провайдеров: даже семантика вызова tools теряется. В чат-истории внезапно появляются «инструменты», хотя их не передавали через tools, и «вызов» сделан абстрактным JSON в content, а не через нативное поле tool_calls. Официальные гайды OpenAI/Anthropic учат обратному: передайте список tools в шаблон, модель выберет нужную функцию и сформирует аргументы в структурированном поле; не вызывайте того, чего нет в tools.

Как работает TOOLS?
Tools - это поле, которое подмешивается в chat-template. На этапе SFT/RL модель учится работать именно с таким протоколом: не вызывать то, чего нет, и вызывать то, что доступно. Это зафиксировано и в провайдерских практиках (OpenAI/Anthropic), и в академических/ресерчерских наборах для оценки агентости (When2Call (NVIDIA) tool hallucination rate тому пример внутри бенча, BFCL/Gorilla включает специальную категорию Function Relevance Detection: когда ни один из переданных тулов не подходит - модель должна не делать call. Есть и Chatting Capability: вообще без переданных тулов, проверяется, что модель пишет ответ как чат-бот, не вызывая функции).
Модель не должна пользоваться тулами, если их не передали в tools. Какие tools передали — такими и пользуется.

«Но мы же теряем reasoning и отладку?»
Нет, не теряем. Никто не запрещает первыми аргументами (по аналогии с SGR) сделать поля в функции — «reasoning», ключевые «якоря» и т. п. За счёт этого вы получаете:

1) более нативное использование инструментов (внутри официального протокола tool-calling),
2) более прозрачную историю сообщений,
3) более стабильную систему.

Да, здесь reasoning идёт в аргументы функции (которых может быть много), а не в выборе нужной функции. Но даже крупные компании не рекомендуют засовывать слишком много функций в один промпт — если модель «теряется», лучше декомпозировать систему/поправить промпты, а не «эмулировать» tool-calls через SGR.

Ради эксперимента можете измерить перплексию на диалогах с параллельными вызовами тулов в форматах SGR vs Tools и посмотреть, какой формат «интуитивнее» для модели.

Чуть с более другой стороны объяснил Валера Ковальский, подробнее тут
Forwarded from Pavel Zloi
Про OCR при помощи VLM

Опубликовал свой новый проект img2md-vlm-ocr, в нём я экспериментирую с использованием Vision-Language моделей (VLM) в роли OCR-движка.

На идею меня подтолкнули публикации Валерия Ковальского (раз, два) про распознавание текста с картинок при помощи сегментатора YOLOv8 заточенного под документы и VLM модели qwen2.5vl (7b, так как 72b дюже большая) запущенной на моей домашней ollama в качестве OCR.

Что умеет система:

- Можно закинуть одну или несколько картинок.
- Система выделяет bounding box при помощи сегментатора и достаёт текст через OCR.
- Вырезает отдельные куски если это не текст, а картинка или график.
- Возвращает результат в формате Markdown.
- Можно скачать итог в виде ZIP-архива (вырезки + распознанный текст).

Где посмотреть:

- Сервис: https://img2md.rpa.icu/
- API-документация: https://img2md.rpa.icu/docs/
- Репозиторий: https://github.com/EvilFreelancer/img2md-vlm-ocr

Дополнительно:

В проекте есть скрипты на Python, которые позволяют массово обрабатывать PDF-файлы и автоматически сшивать полученные Markdown воедино. Это удобно, если нужно конвертировать целые документы и получить структурированный текстовый результат.

PS. Буду рад обратной связи!
Forwarded from Young&&Yandex
🏁 Готовимся к забегу по алгоритмам и ML: что точно пригодится

Перед тем как приступить к тренировкам, захвати свой стартовый пакет. Внутри — полезные материалы:

ML:
🔘Прошлые запуски: первые (основы), вторые (NLP), третьи (CV), а также текстовые разборы некоторых лекций
🔘 Заметки Евгения Соколова с курса Машинного обучения на ФКН ВШЭ
🔘 Блог Александра Дьяконова «Анализ малых данных»
🔘Учебник по ML от ШАД Яндекса
🔘 Книга Mathematics for Machine Learning
🔘 Сайт по RL от одного из сотрудников OpenAI


Алгоритмы:
1. Тестирование
Теория: https://youtube.com/live/c67zB3FWLOs
Практика:https://contest.yandex.ru/contest/66792

2. Множества и словари
Теория: https://youtube.com/live/jQOnYzW8ZOE?feature=share
Практика: https://contest.yandex.ru/contest/59541

3. Одномерное динамическое программирование
Теория: https://www.youtube.com/watch?v=H7lu6h8H9-4
Практика: https://contest.yandex.ru/contest/45469/enter/ и https://contest.yandex.ru/contest/45468/enter/

4. Двумерное динамическое программирование
Теория: https://www.youtube.com/live/U8gzm92fprI
Практика: https://contest.yandex.ru/contest/45469/enter/ и https://contest.yandex.ru/contest/45468/enter/

5. Деревья
Теория: https://youtube.com/live/O9ffppQ05-c?feature=share
Практика: https://contest.yandex.ru/contest/66795

6. Бинарный поиск
Теория: https://youtube.com/live/-B6xvDeGyPg?feature=share
Практика: https://contest.yandex.ru/contest/59542

7. Префиксные суммы, два указателя
Теория: https://youtube.com/live/B4uP6igiVNU?feature=share
Практика: https://contest.yandex.ru/contest/66793

8. Сортировка событий
Теория: https://www.youtube.com/watch?v=hGixDBO-p6Q&t=1s
Практика:https://contest.yandex.ru/contest/27883/enter/


Старт совсем скоро: yandex.ru/yaintern/training

Подписывайся
@Young_and_Yandex
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Maxim.ML - канал
Спонсор вайба на выходных - Илон Маск, а с меня - свежий лайфхак для vibe-кодинга

Начну сразу с главного: два дня тестирую новую Grok Code Fast 1 (xAI), которую сейчас бесплатно раздают в Cursor (аж до 2 сентября, вы тоже успеете потестировать), но все таки, пока что личный фаворит - это Claude 4 Sonnet

Grok Code Fast 1 генерирует код с какой-то нечеловеческой скоростью (авторы заявляют 160 tokens per second). Я с ним за час набросал ядро сложного мультимодального RAG-поиска. А потом пришло время все это собирать воедино с основным сервисом. И пошли проблемы. Ассистент, пытаясь исправить одну ошибку, создавал три новых. Думаю эта ситуация знакома многим

И вот мой лайфхак, который спасает 90% времени и нервов - это тесты с подробными логами. Это ваш единственный объективный критерий того, что все работает как надо

Этот подход можно разбить на две части

Допустим, мы только что собрали мультимодальный RAG-поиск. Мой промпт будет выглядеть так (обычно пишу на английском - субъективно работает лучше и дешевле):

🟡Пишем тесты:
Here is the python module with multi-modal RAG logic [code]. Your job is write an extensive tests for it using pytest. I need at least 20 tests covering huge bunch of cases: from file uploads to API responses and edge cases like empty inputs and hard cases with different input combinations.


Обычно в момент написания все тесты проходят без проблем, но это только пока мы не насоздавали еще десятки зависимостей

🟡А если зависимости все ломают, то дебажим при помощи тестов:
Okay, look. Here is the output of the tests we wrote before. [вставляю лог с ошибками]. 4 / 20 tests failed. Your changes broke the critical functionality. Your one and only goal right now is to fix the code so that all 20 tests pass again. start fixing all failed tests.


И это отлично работает! Особенно когда приходится переключаться между чатами с потерей контекста

Что касается моих впечатлений от Grok Code Fast 1 - модель быстрая, но сыровата, хотя метрики на SWE bench могут впечатлить. Для большинства практических задач связка Claude 4 Sonnet с описанной выше методологией пока остается непревзойденной. Я потратил час на написание фичи с Grok, а потом еще 30 минут дебажил результат с помощью Claude и тестов..

Всем вайбовых выходных!

💃 #vibe_coding@ml_maxim
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from .ml
Почему LLM без Alignment — это риск?

Обучение на миллиардах токенов даёт языковой модели грамотность, но не гарантирует адекватность. Без Alignment она может:

📌 выдавать логически неверные ответы,
📌 генерировать небезопасный контент,
📌 игнорировать бизнес-ограничения.

Что такое Alignment? Это дообучение с учётом предпочтений и ограничений, которое делает модель предсказуемой и управляемой.
Написали статью на Хабр, в которой разбираем:

📝 Методы Alignment: от PPO (Proximal Policy Optimization) до новых подходов DPO и KTO.
📝 Наш опыт: как мы в Точка Банк настроили LLM под конкретные сценарии, обучили модель наград и сократили затраты по сравнению с классическим RLHF.
📝 Грабли и лайфхаки: как работать с несбалансированным датасетом и не дать модели обмануть функцию награды.
📝 Где применять Alignment за пределами LLM: от cost-sensitive классификации до vision-language моделей.

Точно будет полезно, если строите собственную LLM — читайте и задавайте вопросы в комментариях!
Forwarded from Институт AIRI
Все лекции и семинары «Лето с AIRI 2025» теперь в открытом доступе 🔥

Собрали для вас записи выступлений ведущих исследователей и экспертов — от фундаментальных вопросов искусственного интеллекта до практических примеров его применения в науке и индустрии.

📎Сохраняйте ссылки на плейлисты: VK Видео, YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM