Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
- Telegram Web
Telegram Web
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем собственного AI-помощника для кодинга в JupyterLab с использованием Ollama и Hugging Face

Недавно я исследовал возможности создания собственного AI-помощника для написания кода. Цель — иметь полноценного помощника, работающего локально, без зависимости от облака и внешних API.

Вот как я это сделал:


🧠 Что такое Ollama?

Ollama — это инструмент для локального запуска LLM (Large Language Models). Он поддерживает модели вроде codellama, llama2, mistral и другие. Всё работает на вашем компьютере, без необходимости обращаться к внешним сервисам.

Пример установки и запуска:


curl -fsSL https://ollama.com/install.sh | sh
ollama run codellama


После запуска вы можете взаимодействовать с моделью через CLI или REST API.



🤖 Интерфейс с JupyterLab

Теперь объединим Ollama с JupyterLab, чтобы создать AI-помощника, с которым можно взаимодействовать прямо в ноутбуке.

Установка расширения:

Устанавливаем jupyter-ai, который интегрируется с LLM в Jupyter:


pip install jupyter-ai
jupyter labextension install @jupyterlab/ai-extension
jupyter ai init


Настройка Ollama в Jupyter AI

Файл jupyter_ai_config.toml:


[jupyter_ai]
default_provider = "ollama"

[jupyter_ai.providers.ollama]
url = "http://localhost:11434"
model = "codellama"


Теперь ваш JupyterLab знает, куда отправлять запросы.



🚀 Использование в Jupyter

Теперь можно использовать магические команды:


%%ai
Напиши функцию на Python, которая сортирует список по возрастанию.


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



🧩 Альтернатива: Hugging Face + Text Generation Inference

Если вы хотите использовать модели из Hugging Face — можно установить text-generation-inference, который поддерживает множество моделей, оптимизированных для inference.

Команда запуска:


docker run --gpus all -p 8080:80 ghcr.io/huggingface/text-generation-inference \
--model-id bigcode/starcoder2 \
--quantize gptq


В конфиге JupyterAI:


[jupyter_ai.providers.huggingface_tgi]
url = "http://localhost:8080"
model = "bigcode/starcoder2"




💡 Итоги

Теперь у вас есть полностью локальный AI-кодинг помощник, работающий в JupyterLab, без отправки данных в облако. Отличное решение для конфиденциальной работы, кастомизации и обучения.

https://towardsdatascience.com/build-your-own-ai-coding-assistant-in-jupyterlab-with-ollama-and-hugging-face/

👉 @bigdata_1
OpenCharacter: обучение настраиваемых LLM для ролевого взаимодействия с использованием масштабных синтетических персон

Настраиваемое ролевое взаимодействие в больших языковых моделях (LLM) — это эффективный и экономичный способ разработки и внедрения агентов диалога с определёнными ролями. В данной работе исследуется подход масштабного синтеза данных, направленный на развитие у LLM способности к обобщению характеров.

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


Постановка задачи

i) Ролевое взаимодействие в рамках обучающей выборки (in-domain)
- Модель θ обучается (например, методом дообучения с учителем (SFT)) на диалогах с персонажами, в которых участвуют пользователь и определённый персонаж Cs. Диалоги могут быть вручную размечены или синтетическими.

ii) Ролевое взаимодействие вне обучающей выборки (out-of-domain)
- Требует, чтобы модель θ могла вести себя как новые персонажи Cx, отсутствующие в тренировочных данных.
- Чтобы добиться этого, модель должна обобщать на новые роли, что возможно при обучении на качественно подобранных данных с большим разнообразием персонажей, насыщенными профилями и качественными диалогами.



Обобщение персонажей через синтез данных

i) Синтез профилей персонажей
- Модель побуждают создать синтетический профиль персонажа на основе входной персоны, воображая следующие атрибуты: имя, возраст, пол, раса, место рождения, внешность, жизненный опыт и личность.

ii) Переформулировка ответов с учётом персонажа (OpenCharacter-R)
- Инструкции x из общедоступных наборов инструкций сохраняются, а оригинальный ответ y переписывается в yC, соответствующий стилю и биографии персонажа C.

iii) Генерация ответов с учётом персонажа (OpenCharacter-G)
- Модель побуждают сгенерировать ответ yC на инструкцию x, основываясь на профиле персонажа C.
- В отличие от OpenCharacter-R, который переписывает целую сессию диалога одним промптом, OpenCharacter-G работает пошагово, генерируя ответы по очереди для каждого обмена репликами.



Дообучение с учителем (Supervised Fine-Tuning)

- Для каждой сессии диалога случайным образом выбираются n синтетических персонажей C1, C2, ..., Cn из пула из M профилей, и синтезируются n пар «инструкция-ответ» вида (x, yC1 ), (x, yC2 ), ..., (x, yCn) путём переписывания или генерации.
- Все пары из разных персонажей объединяются и используются для SFT с моделью LLaMA-3 8B.

Результаты
- Лучшая модель усилила базовую LLaMA-3 8B Instruct и показала результаты, сопоставимые с GPT-4o в задачах ролевого взаимодействия в диалогах.

Paper: https://arxiv.org/abs/2501.15427
Dataset: https://huggingface.co/datasets/xywang1/OpenCharacter

👉 @bigdata_1
🧩 Critique Fine-Tuning (CFT): новая парадигма обучения LLM

Вместо классического Supervised Fine-Tuning (SFT), где модель учится имитировать «правильные» ответы, авторы предлагают Critique Fine-Tuning (CFT) — обучение через генерацию критики к шумным (и часто ошибочным) ответам.

🔬 Суть подхода:
- Вход: (инструкция x + ответ y)
- Цель: сгенерировать содержательную критику c
- Модель обучается анализировать, а не повторять


📦 Данные:
🔹 WebInstruct-CFT (50K) — критику сгенерировал GPT-4o к оригинальным, часто ошибочным ответам
🔹 Также сформированы baseline-наборы:
- WebInstruct-SFT (ошибочные ответы, 50K)
- WebInstruct-verified (вручную верифицированные GPT-4o, 50K)
- WebInstruct-GPT-4o (ответы от GPT-4o, 50K)

Дополнительно:
- WebInstruct-CFT-Tiny (4K) — для экономного fine-tuning моделей 32B
- Сгенерированы критики к MetaMathQA и NuminaMath


🧠 Обучение:
Модели: Qwen2.5, Qwen2.5-Math, DeepSeekMath (7B и 32B)

Обучение — генерация критики, а не ответов
Формат: concat(x, y) → c


📈 Результаты:
7B модели:
- Qwen2.5-Math-7B (base) → 37.8% avg accuracy
- +CFT56.0% — лучший результат среди 7B

32B модели:
- Qwen2.5–32B-Instruct-CFT (4K) превзошла Sky-T1–32B-Preview (17K)


🔗 Ресурсы:
- 📄 Blog
- 🛠️ Paper
- 📊 Code
- 📝 Dataset

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

👉 @bigdata_1
EvalPlanner: модель Thinking-LLM-as-a-Judge, которая учится думать путём планирования и рассуждения при оценке

Модели LLM-as-a-Judge (LLM в роли судьи) генерируют цепочки рассуждений (Chain-of-Thought, CoT), отражающие пошаговый процесс размышлений, лежащий в основе финальной оценки ответа. Однако отсутствие размеченных вручную цепочек CoT затрудняет обучение таких моделей.

Чтобы решить эту проблему, в данной работе представлена EvalPlanner — алгоритм оптимизации предпочтений для Thinking-LLM-as-a-Judge. Он сначала генерирует неограниченный план оценки, затем исполняет его, и только потом выносит итоговый вердикт.


Компоненты
EvalPlanner предполагает, что эффективная цепочка рассуждений для оценки должна состоять из трёх компонентов:

1. План оценки z
— Для данной инструкции план задаёт рецепт оценки предложенных ответов на инструкцию.

2. Исполнение плана
— Отвечает за пошаговое проведение оценки по плану, анализируя пару ответов (a и b) и формируя итоговое суждение y.

3. Итоговый вердикт
— При использовании LLM в роли судьи, параметризованной θ, план z и исполнение e считаются скрытыми переменными.


Генерация синтетических обучающих данных

1. Выбираются общие инструкции и задачи на математическое рассуждение, и генерируются пары ответов.
2. Создаётся универсальный и неограниченный промпт для генерации плана, который задаётся модели-источнику, основываясь только на инструкции.
3. Та же модель-источник используется для выполнения плана на основе инструкции и пары ответов с целью получения вердикта.
4. Формируются пары предпочтений между планами и их исполнениями.


Оптимизация предпочтений планов и исполнений

Включает цикл самообучения:
- Начинается с модели-источника, на которой проводится SFT (Supervised Fine-Tuning) на подмножестве «выбранных» CoT, чтобы получить модель \( M₁^{SFT} \).
- Затем выполняются две итерации Direct Preference Optimization (DPO) на парах предпочтений CoT, в результате чего получаются модели \( M₁^{DPO} \) и \( M₂^{DPO} \).


Результаты

- EvalPlanner достигает нового SOTA (state-of-the-art) результата для генеративных reward-моделей на бенчмарке RewardBench (со счётом 93.9), несмотря на меньшее количество и синтетическую природу пар предпочтений.
- Планы EvalPlanner адаптированы под конкретную инструкцию, эффективны с точки зрения данных и выигрывают от итеративной оптимизации рассуждений.

- 📄 Blog
- 🛠️ Paper

👉 @bigdata_1
⚡️Хотите стать востребованным экспертом в области рекомендательных систем?

Курс OTUS «Рекомендательные системы» — это практические занятия, живые лекции от ведущих DS/ML-специалистов и актуальные инструменты, которые используют крупнейшие компании. Вы научитесь создавать персонализированные рекомендации, внедрять системы под задачи e-commerce и стриминговых сервисов, эффективно сегментировать пользователей и проводить A/B-тесты.

После курса вы сможете реализовывать решения, которые принесут пользу бизнесу.

👉Оставьте заявку и получите скидку на обучение: https://vk.cc/cKTBkL

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🖼️ Describe Anything (DAM) — новая модель от NVIDIA и UC Berkeley, способная создавать подробные описания выбранных областей на изображениях и видео.


🔍 Что делает DAM?
• Генерирует детальные описания для указанных пользователем областей (точки, рамки, маски, штрихи) на изображениях и видео.
• Адаптируется к стилю и детализации описания по инструкции пользователя.
• Отвечает на вопросы о выделенных областях без дополнительного обучения.


🧠 Как это работает?
• Использует “focal prompt” — сочетание общего изображения и увеличенной области интереса.
• Интегрирует локальные и глобальные признаки через специализированную архитектуру.
• Обучена с помощью полусупервизируемого пайплайна DLC-SDP, расширяющего существующие датасеты.


📊 Почему это важно?
• Устанавливает новые стандарты в задачах детализированного описания изображений и видео.
• Превосходит предыдущие модели на 7 бенчмарках, включая PACO и Flickr30k Entities.
• Открытый код, модели и данные доступны для сообщества.


🔗 Подробнее: https://describe-anything.github.io/

Демо: https://huggingface.co/spaces/nvidia/describe-anything-model-demo

Код: https://github.com/NVlabs/describe-anything

👉 @bigdata_1
🛠️ UTGEN + UTDEBUG: обучаем LLM генерировать модульные тесты для автоматической отладки кода

Модульные тесты помогают LLM исправлять ошибки в коде. Но сложно одновременно подобрать тесты к багованному коду и правильно предсказать ожидаемый результат без эталона.
Решение: UTGEN учит LLM генерировать входы и правильные выходы тестов на основе описания задачи и кода-кандидата.
+ UTDEBUG — пайплайн отладки, который использует эти тесты, чтобы повышать качество исправлений.

Как работает:
- Портят эталонный код → создают баги.
- Генерируют тесты, оставляя только те, что выявляют ошибки.
- Добавляют цепочки рассуждений (CoT) к тестам.
- При отладке используют голосование по нескольким ответам и откат, если изменения не улучшают процент прохождения тестов.

Результаты:
- UTGEN лучше базовых методов на +7.59%.
- С UTDEBUG модель Qwen-2.5 7B показывает рост pass@1 на +3% (HumanEval-Fix) и +12.35% (MBPP+).

Blog https://medium.com/@techsachin/teaching-llms-to-generate-unit-tests-for-automated-debugging-of-code-78c62778e4b2
Paper https://arxiv.org/abs/2502.01619
Code https://github.com/archiki/UTGenDebug

👉 @bigdata_1
Хотите узнать, как популярные приложения угадывают ваши предпочтения? Матричная факторизация — мощный подход для построения рекомендаций.

На открытом вебинаре 30 апреля в 20:00 МСК вы разберетесь с принципами работы моделей матричной факторизации (SVD, ALS), поймёте, как реализовать их на Python с помощью библиотеки implicit и получите практические навыки, которые сразу сможете применить.

После занятия вы сможете создавать эффективные рекомендательные системы и использовать потенциал данных вашего бизнеса для персонализированных решений.

⚡️Регистрируйтесь на открытый урок и получите скидку на программу обучения «Рекомендательные системы»: https://vk.cc/cLe0ky

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Atropos — RL Gym для LLM от Nous Research

Atropos — это серия мощных, специализированных моделей LLM, разработанных Nous Research. Она построена на базе архитектуры Mixtral и была обучена с нуля с использованием 4 триллионов токенов данных высокого качества. В серии представлены как полные модели, так и чаты, доступные в формате 7B, с открытым доступом к весам.

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

https://nousresearch.com/introducing-atropos/

https://github.com/NousResearch/Atropos

👉 @bigdata_1
🧠 ThinkPRM: Новый стандарт в верификации решений через Chain-of-Thought

🤖 Верификаторы пошаговых рассуждений (PRMs) — мощный инструмент масштабирования проверки решений на этапе инференса. Но их обучение требует дорогостоящей покадровой разметки.

🔍 Представляем ThinkPRMdata-efficient PRM, который генерирует цепочку верификации (Chain-of-Thought) для каждого шага решения, опираясь на всего 1% меток из PRM800K — и при этом превосходит LLM-as-a-Judge и дискриминативные PRM.


❗️Что не так с LLM-as-a-Judge:

* чувствительность к формулировке инструкции
* ошибки в логике и невалидные итоговые решения
* неправильный формат ответа
* зацикливание и “overthinking”, приводящее к превышению лимита токенов


🧪 Метод ThinkPRM:

1️⃣ Синтетические данные:

* Модель QwQ-32B-Preview генерирует цепочки верификации
* Отбираются только те, где шаги соответствуют PRM800K и укладываются в токен-бюджет

2️⃣ Обучение на 1K цепочках:

* Модель тонко настраивается на выбранных верификациях
* Тестируется на ProcessBench и сравнивается с LLM-as-a-Judge


📊 Результаты:

* 🔝 ThinkPRM превосходит базовые модели на ProcessBench, MATH-500 и AIME’24
* 🧬 На GPQA-Diamond и LiveCodeBench — выигрывает у дискриминативных моделей на 8% и 4.5%
* 📈 При том же токен-бюджете ThinkPRM эффективнее масштабирует верификацию, +7.2% на ProcessBench


💡 ThinkPRM показывает, что меньшее — значит умнее.
Настраивай, не размечай.
Проверяй умно, шаг за шагом.

Blog: https://medium.com/@techsachin/thinkprm-generative-process-reward-model-for-solution-verification-via-long-cot-reasoning-2016f1e1387d

Paper: https://arxiv.org/abs/2504.16828

Dataset: https://huggingface.co/datasets/launch/thinkprm-1K-verification-cots

Models:
- ThinkPRM-14B: https://huggingface.co/launch/ThinkPRM-14B
- ThinkPRM-1.5B: https://huggingface.co/launch/ThinkPRM-1.5B

👉 @bigdata_1
🧑🏻‍💻Как улучшить точность рекомендаций в своих проектах?

На открытом вебинаре 12 мая в 20:00 МСК вы узнаете, как работает обучение ранжированию, что такое функции потерь и как они влияют на качество рекомендаций. Понимание этих функций — ключ к эффективному предсказанию предпочтений пользователей.

Освойте практику на реальных данных с использованием модели BPRMF и получите ценные знания, которые помогут улучшить ваши результаты.

⚡️Присоединяйтесь к открытому уроку и получите скидку на программу обучения «Рекомендательные системы»: https://vk.cc/cLEzhI

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🌟 MatAnyone: модель для выделения по маске людей на видео.

MatAnyOne - memory-based модель для видео-маттинга, разработанная для получения стабильных и точных результатов в сценариях реального постпродакшена. В отличие от методов, требующих дополнительного аннотирования, MatAnyOne использует только кадры видео и маску сегментации целевого объекта, определенную на первом кадре.

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

При создании модели применялась уникальная стратегия обучения, которая опирается на данные сегментации для улучшения стабильности выделения объекта. В отличие от распространенных практик, MatAnyOne использует эти данные непосредственно в той же ветви, что и данные маски. Это достигается путем применения регионально-специфичных потерь: пиксельная потеря для основных областей и улучшенная DDC-потеря для граничных областей.

Для обучения был специально создан кастомный набор данных VM800, который вдвое больше, разнообразнее и качественнее, чем VideoMatte240K, что по итогу значительно улучшило надежность обучения объектному выделению на видео.

В тестах MatAnyOne показал высокие результаты по сравнению с существующими методами как на синтетических, так и на реальных видео:

🟠На VideoMatte и YouTubeMatte, MatAnyOne - лучшие результаты по MAD (средняя абсолютная разница) и dtSSD (расстояние преобразования формы);

🟢В бенчмарке с реальными видео MatAnyOne достиг MAD 0.18, MSE 0.11 и dtSSD 0.95, что значительно лучше, чем у RVM10 (MAD 1.21, MSE 0.77, dtSSD 1.43) и MaGGIe12 (MAD 1.94, MSE 1.53, dtSSD 1.63.


⚠️ Согласно обсуждению в issues репозитория, MatAnyOne способен работать локально от 4 GB VRAM и выше с видео небольшой длительности. Реальных технических критериев разработчик не опубликовал.


Страница проекта
Модель
Arxiv
Demo
GitHub

👉 @bigdata_1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Rag | самое понятное объяснение!

В этом подробном гайд‑видео я раскрываю всё, что нужно знать о RAG (Retrieval Augmented Generation) — передовом подходе, который выводит большие языковые модели (LLM, GPT‑4, ChatGPT и др.) на новый уровень, добавляя к их генеративным возможностям живую, актуальную базу знаний. Вы увидите, как на практике связать эмбеддинги, векторное хранилище, retriever и generator, чтобы буквально «подпитать» модель свежим контентом и получить точные, аргументированные ответы без «галлюцинаций».

Я пошагово показываю архитектуру, объясняю ключевые нюансы (latency, стоимость, обновление данных), визуально скетчу процесс, разбираю реальные сценарии применения: чат‑бот поддержки, интеллектуальный поиск по корпоративным документам, персонализированный ассистент и многое другое. Параллельно я делюсь лайфхаками, где RAG приносит максимальную пользу, а где лучше отказаться от него в пользу классических решений. После просмотра у вас будет чёткая дорожная карта: как спроектировать, собрать и оптимизировать собственную RAG‑систему под ваш use case.

автор: AIRANEZ

👉 @bigdata_1
🧠 ThinkPRM — умный верификатор решений через цепочки рассуждений

Новая модель ThinkPRM проверяет решения пошагово, генерируя цепочку верификации (Chain-of-Thought) — и делает это точнее и в разы дешевле, чем классические PRM, требующие дорогой разметки.

Что нового:

— Использует всего 1% разметки от PRM800K
— Превзошла LLM-as-a-Judge и дискриминативные PRM на задачах из ProcessBench, MATH-500 и AIME'24
— Лучше справляется с зацикливанием, форматом вывода и «переосмыслением»

📊 Вне домена: +8% на GPQA-Diamond, +4.5% на LiveCodeBench
📦 Модель доступна:
👉 [ThinkPRM-14B]
👉 [ThinkPRM-1.5B]

🔗 [Блог] | [Статья] | [Датасет]

👉 @bigdata_1
Проект для профи, делайте курс вместе с Яндекс Практикумом!

Яндекс Практикум Грейд — это новый сервис онлайн-образования, ориентированный на корпоративных клиентов. Наша цель — помочь уже работающим специалистам расти и развивать свои навыки. Сейчас есть возможность присоединиться к команде и разработать курс Deep Learning.

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

Кандидату предлагают удалёнку, нагрузку от 10 часов в неделю, гибкую занятость. А главное, возможность развиваться вместе с Яндекс Практикумом нон-стоп.

Нужен эксперт с опытом работы с глубокими моделями машинного обучения (любая доменная область) и уверенным пониманием области применения DL-моделей, а также их ограничений.

Узнать подробности и откликнуться
DiffusionInst: Diffusion Model for Instance Segmentation

DiffusionInst — первый алгоритм диффузионной модели для сегментации объектов.

🖥 Github:https://github.com/chenhaoxing/DiffusionInst

🌐 Instruction: https://github.com/chenhaoxing/DiffusionInst/blob/main/GETTING_STARTED.md

Paprer: https://arxiv.org/abs/2212.02773v2

⭐️ Dataset: https://paperswithcode.com/dataset/lvis

👉 @bigdata_1
2025/05/30 00:54:27
Back to Top
HTML Embed Code: