Скоро на нашем YouTube-канале пройдут новые лекции:
🔸 18 апреля в 12:00 Денис Пиманкин, основатель и генеральный директор компании SOTA+, прочитает лекцию «Генеративные модели: между технологическим чудом и обманом», в которой раскроет следующие вопросы:
- Каковы принципы работы современных генеративных моделей?
- Как сравнить и оценить модели генерации изображений и видео?
- Как отличить действительно инновационную модель от пустышки?
🔸 23 апреля в 12:00 Александр Константинов, СТО компании Raft, выступит с лекцией «Co-pilots и LLM для разработчиков», в которой ответит на следующие вопросы:
- Как современные LLM ускоряют процесс разработки?
- Как стать тимлидом «копайлота» и СhatGPT?
- Как сгенерировать целый проект, не написав ни одной строчки кода?
Вопросы лекторам можно оставить под этим постом! Ответим на них в конце трансляций.
- Каковы принципы работы современных генеративных моделей?
- Как сравнить и оценить модели генерации изображений и видео?
- Как отличить действительно инновационную модель от пустышки?
- Как современные LLM ускоряют процесс разработки?
- Как стать тимлидом «копайлота» и СhatGPT?
- Как сгенерировать целый проект, не написав ни одной строчки кода?
Вопросы лекторам можно оставить под этим постом! Ответим на них в конце трансляций.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤1
Сделали обзор на Open Source AI программиста Devika. Программистку, если быть точнее. На русском кажется такого мы еще не встречали. Как и ожидалось - пока очень сырое решение.
Пара UX наблюдений:
1. Devika работает достаточно долго и часто совершенно непонятно чем она там собственно занята - все так же, как и с живыми разработчиками . Было бы здорово как-то детальней отображать статус того, чем конкретно занят агент
2. Агент подгрузил все Ract JS зависимости и попытался отправить в LLM 68млн токенов, если бы ему это удалось, то при цене $10 за 1млн входящих токенов один запрос обошелся бы нам в $680. Выбрать часть кода, необходимую для решения текущей задачи из всего проекта возможно не такая уж и тривиальная задача, которая кроме всего прочего может влиять и на стоимость AI разработки. Представьте, что у вас сотни таких итераций в день.
Итого: проекты обещающие решать любые задачи по программированию пока выглядят неубедительно. Мы планируем пристальнее присмотреться к более узкоспециализированным AI агентам разработчикам, типа CRUD Apps, Text to SQL и т.д.
https://youtu.be/fHM0E5ux4Qs
Пара UX наблюдений:
1. Devika работает достаточно долго и часто совершенно непонятно чем она там собственно занята
2. Агент подгрузил все Ract JS зависимости и попытался отправить в LLM 68млн токенов, если бы ему это удалось, то при цене $10 за 1млн входящих токенов один запрос обошелся бы нам в $680. Выбрать часть кода, необходимую для решения текущей задачи из всего проекта возможно не такая уж и тривиальная задача, которая кроме всего прочего может влиять и на стоимость AI разработки. Представьте, что у вас сотни таких итераций в день.
Итого: проекты обещающие решать любые задачи по программированию пока выглядят неубедительно. Мы планируем пристальнее присмотреться к более узкоспециализированным AI агентам разработчикам, типа CRUD Apps, Text to SQL и т.д.
https://youtu.be/fHM0E5ux4Qs
YouTube
Devika - обзор open source AI агента программиста
Обзор на проект «Devika» - AI агент, который пишет веб и не только приложения и вносит изменения по запросу на естественном языке. Устанавливаем, запускаем, пробуем написать приложение на React JS.
Проект Devika и все ссылки: https://github.com/…
Проект Devika и все ссылки: https://github.com/…
❤1
В пятницу вышла статья от исследователей из Google Deep Mind в которой они утверждают (на основе проведенных испытаний), что если положить в контекст LLM большое количество примеров подобных решаемой задаче, то результат будет лучше. Подход назвали Many-Shot In-Context Learning. В целом кажется логичным и не удивительно, что исследование провели разработчики LLM в которой есть контекстное окно в миллион токенов, в которое, собственно, можно положить это большое (сотни и даже тысячи) количество примеров.
Вот, например, как делали с проверкой адекватности кода: Взяли датасет скриптов решающих задания из датасета GSM8K (набор математических задач), у Гугла такой был c решениями от Gemini 1.0. Датасет представляет из себя набор программ (предположу, что на Python) с разметкой на корректные и некорректные решения. Так вот, если подложить в промпт 128 таких примеров, то точность в проверке кода от LLM (когда вы даете ей код и просите проверить корректность) повышается на 5% относительно случая когда в таком запросе было только 4 примера.
Как использовать в быту? Например, собрать хороший тематический датасет с корректным кодом и багами по проекту и добавить в контекст автоматического ревьюера кода.
Что интересно, также в исследовании отмечено, что датасет с примерами может быть синтетическим, или состоять только из похожих вопросов без ответов и это так же повышает эффективность решений от LLM. Ссылка на arixv.
Вот, например, как делали с проверкой адекватности кода: Взяли датасет скриптов решающих задания из датасета GSM8K (набор математических задач), у Гугла такой был c решениями от Gemini 1.0. Датасет представляет из себя набор программ (предположу, что на Python) с разметкой на корректные и некорректные решения. Так вот, если подложить в промпт 128 таких примеров, то точность в проверке кода от LLM (когда вы даете ей код и просите проверить корректность) повышается на 5% относительно случая когда в таком запросе было только 4 примера.
Как использовать в быту? Например, собрать хороший тематический датасет с корректным кодом и багами по проекту и добавить в контекст автоматического ревьюера кода.
Что интересно, также в исследовании отмечено, что датасет с примерами может быть синтетическим, или состоять только из похожих вопросов без ответов и это так же повышает эффективность решений от LLM. Ссылка на arixv.
👍4
Делимся подборкой статей о RAG
"Сегодня мы наблюдаем экспоненциальный рост интереса к проектированию и использованию RAG. Практически все разрабатываемые приложения LLM теперь содержат интеграцию LLM и RAG. Мы предлагаем вашему вниманию одно из наиболее подробных и практичных изложений основ построения RAG и их эволюции за последний год. Автор цикла публикаций Florian June, молодой исследователь ИИ, пишет статьи о больших языковых моделях, структурах данных и алгоритмах, а также НЛП с точки зрения практики построения, основанной на его личном опыте и экспериментах. Это делает материал доступным и полезным для наших разработчиков программных систем, использующих LLM", — заметил профессор В. В. Крылов.
Итак, статьи:
• A Brief Introduction to Retrieval Augmented Generation (RAG)
• Advanced RAG 01: Problems of Naive RAG
• Advanced RAG 02: Unveiling PDF Parsing
• Advanced RAG 03: Using RAGAs + LlamaIndex for RAG evaluation
• Advanced RAG 04: Re-ranking
• Advanced RAG 05: Exploring Semantic Chunking
• Advanced RAG 06: Exploring Query Rewriting
• Advanced RAG 07: Exploring RAG for Tables
• Advanced RAG 08: Self-RAG
• Advanced RAG 09: Prompt Compression
• Advanced RAG 10: Corrective Retrieval Augmented Generation (CRAG)
Как вы видите, материалы написаны на английском, но мы планируем перевести их на русский и опубликовать на Хабре.
P.S. Статьи размещены на платформе Medium, так что вам понадобится VPN, чтобы их прочитать☺️
"Сегодня мы наблюдаем экспоненциальный рост интереса к проектированию и использованию RAG. Практически все разрабатываемые приложения LLM теперь содержат интеграцию LLM и RAG. Мы предлагаем вашему вниманию одно из наиболее подробных и практичных изложений основ построения RAG и их эволюции за последний год. Автор цикла публикаций Florian June, молодой исследователь ИИ, пишет статьи о больших языковых моделях, структурах данных и алгоритмах, а также НЛП с точки зрения практики построения, основанной на его личном опыте и экспериментах. Это делает материал доступным и полезным для наших разработчиков программных систем, использующих LLM", — заметил профессор В. В. Крылов.
Итак, статьи:
• A Brief Introduction to Retrieval Augmented Generation (RAG)
• Advanced RAG 01: Problems of Naive RAG
• Advanced RAG 02: Unveiling PDF Parsing
• Advanced RAG 03: Using RAGAs + LlamaIndex for RAG evaluation
• Advanced RAG 04: Re-ranking
• Advanced RAG 05: Exploring Semantic Chunking
• Advanced RAG 06: Exploring Query Rewriting
• Advanced RAG 07: Exploring RAG for Tables
• Advanced RAG 08: Self-RAG
• Advanced RAG 09: Prompt Compression
• Advanced RAG 10: Corrective Retrieval Augmented Generation (CRAG)
Как вы видите, материалы написаны на английском, но мы планируем перевести их на русский и опубликовать на Хабре.
P.S. Статьи размещены на платформе Medium, так что вам понадобится VPN, чтобы их прочитать
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🥰1
Хотим обратить ваше внимание на интересный фреймворк: DSPy –𝗗eclarative 𝗦elf-improvement of language 𝗣rograms (in p𝘆thon). Т.е. фреймворк для алгоритмической оптимизации промптов и весов для пайплайнов из LM (языковых моделей) и RM ( моделей поиска). Главный слоган сообщества - Programming—not prompting. Проект от группы исследователей Stanford NLP, 10000+ звезд на гитхабе, 760 форков.
Суть – не выдумываем промпты для решения задач, а собираем решение задачи из модулей, и далее алгоритмически оптимизируем веса и промпты внутри решения.
Как применять? Оптимизировать ваши решения с применением языковых моделей не на основе выдумывания идеального промпта, а на основе математики, т.е. более предсказуемо и обоснованно (Так это должно работать, мы пока пробовали только учебные примеры).
Основные понятия в фреймворке это Signatures, Modules и Optimizers (они же ex Teleprompters). Signatures описывает какую задачу решает система, чего должна выдать модель, избегая диктовки конкретных промптов, например "context, question -> answer". Из модулей (например ChainOfThought или Predict) собирается пайплайн и передается оптимайзерам вместе с входными данными. Оптимайзеры итеративно выбирают лучшие варианты из генерируемых пайплайнов. Т.е. для оптимизации датасеты конечно нужны и чем больше данных тем лучше, но создатели утверждают что и с несколькими примерами можно получить результаты. Есть несколько разных оптимайзеров, например по методу k-ближайших соседей.
Во так это может выглядеть:
или
Сам проект, документация, примеры и сообщество на Github.
«Попытка программистов потянуть одеяло обратно на себя», - как сформулировал это Владимир Владимирович Крылов.
Суть – не выдумываем промпты для решения задач, а собираем решение задачи из модулей, и далее алгоритмически оптимизируем веса и промпты внутри решения.
Как применять? Оптимизировать ваши решения с применением языковых моделей не на основе выдумывания идеального промпта, а на основе математики, т.е. более предсказуемо и обоснованно (Так это должно работать, мы пока пробовали только учебные примеры).
Основные понятия в фреймворке это Signatures, Modules и Optimizers (они же ex Teleprompters). Signatures описывает какую задачу решает система, чего должна выдать модель, избегая диктовки конкретных промптов, например "context, question -> answer". Из модулей (например ChainOfThought или Predict) собирается пайплайн и передается оптимайзерам вместе с входными данными. Оптимайзеры итеративно выбирают лучшие варианты из генерируемых пайплайнов. Т.е. для оптимизации датасеты конечно нужны и чем больше данных тем лучше, но создатели утверждают что и с несколькими примерами можно получить результаты. Есть несколько разных оптимайзеров, например по методу k-ближайших соседей.
Во так это может выглядеть:
self.generate_answer = dspy.ChainOfThought("context, question -> answer")
или
sentence = "it's a charming and often affecting journey."
# 1) Declare with a signature.
classify = dspy.Predict('sentence -> sentiment')
# 2) Call with input argument(s).
response = classify(sentence=sentence)
# 3) Access the output.
print(response.sentiment)
Сам проект, документация, примеры и сообщество на Github.
«Попытка программистов потянуть одеяло обратно на себя», - как сформулировал это Владимир Владимирович Крылов.
GitHub в лице RnD подразделения GitHubNext заявили о выпуске GitHub Copilot Workspace – пока вот тут можно записаться в лист ожидания.
Планируется, что это будет решение позволяющее реализовывать проекты по разработке ПО от начала до конца на естественном языке или совмещая программирование на естественном языке с классическим программированием. В обзоре обещают task-centric подход с возможностью контролировать каждый шаг: задача, план решения, реализация, коммит.
По концепции все это очень похоже на Devin, Devika, GPT-Engineer и т.д. (мы обозревали их выше), только теперь об этом заявляют серьезные игроки, а значит больше шансов, что у них действительно все получится. Почитать пост в блоге создателей и посмотреть видео тут.
Планируется, что это будет решение позволяющее реализовывать проекты по разработке ПО от начала до конца на естественном языке или совмещая программирование на естественном языке с классическим программированием. В обзоре обещают task-centric подход с возможностью контролировать каждый шаг: задача, план решения, реализация, коммит.
По концепции все это очень похоже на Devin, Devika, GPT-Engineer и т.д. (мы обозревали их выше), только теперь об этом заявляют серьезные игроки, а значит больше шансов, что у них действительно все получится. Почитать пост в блоге создателей и посмотреть видео тут.
Amazon выпустили новую версию AI помощника разработчика - Q-Developer. В ней присутствуют плагины для Visual Studio и JetBrain IDE в которых предоставляется бесплатный доступ к Amazon Q Developer Agent for software development и Amazon Q Developer Agent for code transformation.
Developer Agent позволяет составить и при необходимости скорректировать план для решения задачи (например: «Add an API to list all support cases. Expose this API as a new Lambda function»), а после того как вы утвердите план, плагин напишет код по нажатию кнопки «Insert code».
Agent for Сode Transformation - с этой штукой вы можете автоматически переписать приложение написанное на Java 8 и11 использующее Apache Maven на Java 17. Тул анализирует все зависимости, проводит обновления до последних версий популярных фреймворков (это было и в прошлой версии), автоматически переписывает вызовы deprecated методов (это новая фича), создает и запускает юнит тесты, исправляя обнаруженные баги.
В рамках AWS Q Developer также умеет:
• Перечислять и листать список ресурсов на естественном языке (например: "List my Lambda functions in the Singapore Region").
• Писать команды для командного окна AWS CLI (например: "Change the timeout for Lambda function <NAME of AWS LAMBDA FUNCTION> in the Singapore Region to 10 seconds."), копипастить в терминал и запускать надо самостоятельно.
• Отвечать на вопросы по затратам на сервисы (например: "What were the top three highest-cost services in Q1? List services in my account which increased the most from February to March?") Ответ предоставляется со ссылкой для визуализации в AWS Cost Explorer.
Больше подробностей в официальном блоге.
Developer Agent позволяет составить и при необходимости скорректировать план для решения задачи (например: «Add an API to list all support cases. Expose this API as a new Lambda function»), а после того как вы утвердите план, плагин напишет код по нажатию кнопки «Insert code».
Agent for Сode Transformation - с этой штукой вы можете автоматически переписать приложение написанное на Java 8 и11 использующее Apache Maven на Java 17. Тул анализирует все зависимости, проводит обновления до последних версий популярных фреймворков (это было и в прошлой версии), автоматически переписывает вызовы deprecated методов (это новая фича), создает и запускает юнит тесты, исправляя обнаруженные баги.
В рамках AWS Q Developer также умеет:
• Перечислять и листать список ресурсов на естественном языке (например: "List my Lambda functions in the Singapore Region").
• Писать команды для командного окна AWS CLI (например: "Change the timeout for Lambda function <NAME of AWS LAMBDA FUNCTION> in the Singapore Region to 10 seconds."), копипастить в терминал и запускать надо самостоятельно.
• Отвечать на вопросы по затратам на сервисы (например: "What were the top three highest-cost services in Q1? List services in my account which increased the most from February to March?") Ответ предоставляется со ссылкой для визуализации в AWS Cost Explorer.
Больше подробностей в официальном блоге.
Сегодня в 10:00 am PCT (20:00 по московскому времени) состоится презентация OpenAI на которой продемонстрируют обновления ChatGPT и GPT-4.
Напомним, что на прошлой неделе было много обсуждений загадочной модели «im-a-good-gpt2-chatbot» которая неожиданно появилась в списке LMSYS и показала очень высокие результаты в программировании и решении математических задач (общественность предположила, что это как раз таки OpenAI тестирует обновление продукта). Ждем разъяснений от Сэма Альтмана и возможности попробовать поработать с новой более умной версией GPT!
В качестве ссылки на презентацию OpenAI указывают свой сайт: https://openai.com/
Напомним, что на прошлой неделе было много обсуждений загадочной модели «im-a-good-gpt2-chatbot» которая неожиданно появилась в списке LMSYS и показала очень высокие результаты в программировании и решении математических задач (общественность предположила, что это как раз таки OpenAI тестирует обновление продукта). Ждем разъяснений от Сэма Альтмана и возможности попробовать поработать с новой более умной версией GPT!
В качестве ссылки на презентацию OpenAI указывают свой сайт: https://openai.com/
Openai
We believe our research will eventually lead to artificial general intelligence, a system that can solve human-level problems. Building safe and beneficial AGI is our mission.
👍4
Вот первая информация после презентации GPT-4o от команды Open AI : https://openai.com/index/hello-gpt-4o/ . Мне было приятно узнать, что модель радикально сменила токенизатор и теперь число токенов промпта для языков, отличных от английского существенно сократится. Так для русского языка в 1.7 раза: Russian 1.7x fewer tokens (from 39 to 23)
"Привет, меня зовут GPT-4o. Я — новая языковая модель, приятно познакомиться!" Впечатляет как модель работает с кодом, (посмотрите сюда - https://codepen.io/shir-man/pen/GRaKzLg), но об этом потом.
"Привет, меня зовут GPT-4o. Я — новая языковая модель, приятно познакомиться!" Впечатляет как модель работает с кодом, (посмотрите сюда - https://codepen.io/shir-man/pen/GRaKzLg), но об этом потом.
Openai
Hello GPT-4o
We’re announcing GPT-4 Omni, our new flagship model which can reason across audio, vision, and text in real time.
👍1
Вчера Google провели очередную конференцию с последними новостями - Google I/O 24. Мы переводили ее on-line на русский на нашем канале. Сегодня кратко пересказываем для тех, кто не готов смотреть 2 часа видео. В целом все про большое контекстное окно и мультимодальность:
• Анонсировали Gemini 1.5 Pro с контекстным окном 2 млн. токенов. Модель мультимодальная, попробовать пока не дают.
• Представили проект Astra - универсальный AI агент, который может через камеру телефона прочитать и объяснить код с экрана, и по видео комнаты напомнить где в комнате вы забыли очки.
• Анонсировали Gemini 1.5 Flash - уменьшенная версия модели, более быстрая и легковесная, но все еще мультимодальная с большим (каким точно не ясно) контекстным окном.
• Анонсировали Gemini Nano способна работать на смартфоне, также мультимодальная.
• Анонсировали набор открытых моделей Gemma, включая уже доступную PaliGemma – языковая модель способная работать с картинками. В июне анонсируется Gemma 2 на 27 млрд параметров.
• Анонсировали Learn LM – модель специализирующуюся на обучении, которую например можно прикрутить к видео на Youtube, и дополнительно позадавать ей вопросы или попросить подготовить и затем пройти тест по пройденному материалу.
• Veo –Анонсировали модель для генерации видео по тексту, конкурент Sora от Open AI. Пока можно записаться в вейтлист.
• Анонсировали музыкалную модель.
• Анонсировали Gemini 1.5 в продуктах Google: в Gmail – помогает с поиском и саммаризацией по письмам, а также в поиске по фоткам.
• Анонсировали, что планируют до конца года встроить Gemini в поиск, включая видео запросы, т.е. вы что-то снимаете на телефон и параллельно голосом спрашивае, а Google вам отвечает
• Выпустили новые процессоры Trillium для датацентров, а так же планируют предоставлять NVIDA Blackwell в 2025ом году.
• Анонсировали Gemini 1.5 Pro с контекстным окном 2 млн. токенов. Модель мультимодальная, попробовать пока не дают.
• Представили проект Astra - универсальный AI агент, который может через камеру телефона прочитать и объяснить код с экрана, и по видео комнаты напомнить где в комнате вы забыли очки.
• Анонсировали Gemini 1.5 Flash - уменьшенная версия модели, более быстрая и легковесная, но все еще мультимодальная с большим (каким точно не ясно) контекстным окном.
• Анонсировали Gemini Nano способна работать на смартфоне, также мультимодальная.
• Анонсировали набор открытых моделей Gemma, включая уже доступную PaliGemma – языковая модель способная работать с картинками. В июне анонсируется Gemma 2 на 27 млрд параметров.
• Анонсировали Learn LM – модель специализирующуюся на обучении, которую например можно прикрутить к видео на Youtube, и дополнительно позадавать ей вопросы или попросить подготовить и затем пройти тест по пройденному материалу.
• Veo –Анонсировали модель для генерации видео по тексту, конкурент Sora от Open AI. Пока можно записаться в вейтлист.
• Анонсировали музыкалную модель.
• Анонсировали Gemini 1.5 в продуктах Google: в Gmail – помогает с поиском и саммаризацией по письмам, а также в поиске по фоткам.
• Анонсировали, что планируют до конца года встроить Gemini в поиск, включая видео запросы, т.е. вы что-то снимаете на телефон и параллельно голосом спрашивае, а Google вам отвечает
• Выпустили новые процессоры Trillium для датацентров, а так же планируют предоставлять NVIDA Blackwell в 2025ом году.
YouTube
🌍🔴 Google I/O '24 на русском с комментариями разработчиков
Приглашаем вас присоединиться к просмотру прямой трансляции Google Keynote (Google I/O '24) с русскоязычным переводом и комментариями экспертов по искусственному интеллекту! 🎥🇷🇺
📅 Дата и время: 14 мая в 19.45 по МСК
🎙️ Наши эксперты будут делиться своими…
📅 Дата и время: 14 мая в 19.45 по МСК
🎙️ Наши эксперты будут делиться своими…
🔥2
Учитывая необычайный спрос на умения разрабатывать RAG для приложений с использованием LLM , рекомендую посмотреть это подробное изложение построения RAG на открытых моделях.
https://youtu.be/HRvyei7vFSM?feature=shared
https://youtu.be/HRvyei7vFSM?feature=shared
YouTube
Building a RAG application using open-source models (Asking questions from a PDF using Llama2)
GitHub Repository: https://github.com/svpino/llm
I teach a live, interactive program that'll help you build production-ready machine learning systems from the ground up. Check it out at https://www.ml.school.
Twitter/X: https://www.twitter.com/svpino
I teach a live, interactive program that'll help you build production-ready machine learning systems from the ground up. Check it out at https://www.ml.school.
Twitter/X: https://www.twitter.com/svpino
👍3
Провел эксперимент с моделями на https://arena.lmsys.org/. Если вдруг вы не в курсе - это портал с рейтингом LLM. Работает так:
1. Вы формулируете задачу, а две LLM выбранные вслепую или указанные вами из списка (Arena side-by-side) ее решают
2. Вы голосуете какое решение лучше, на основе таких голосов собирается рейтинг. Можно попробовать все модели в одном месте и бесплатно.
Возможно вы уже слышали, что пару недель назад там появилась темные лошадки - две LLM под именами:
1. im-a-good-gpt2-chatbot
2. im-also-a-good-gpt2-chatbot,
которые показали удивительно хорошие результаты в программировании. В отчетах их тестировали на написании игр, мне же было интересно попробовать с более прикладными задачами. Как раз потребовалось написать python метод, на вход ему прилетает JSON c данными – доходы, расходы, дата, описание. Метод должен положить эти данные в google sheet на один лист (в разные колонки доходы и расходы) и отсортировать вместе с уже имеющимися на листе данными по датам отдельно доходы, отдельно расходы. Звучит не очень сложно, но на деле получилось под сотню строчек кода и справилась только одна LLM.
В моем соревновании участвовали:
3. GPT4o
4. Yi-large-preview
5. Claude 3 Opus
6. Im-a-good-gpt2-chatbot
7. Im-also-a-good-gpt2-chatbot
Итог: полностью справилась с задачей только im-also-a-good-gpt2-chatbot.
Подробнее:
1. Im-also-a-good-gpt2-chatbot - написала полностью работающий код, данные сортируются. Запустился с первого раза, я поправил руками один небольшой баг.
2. GPT4o – код запустился, но сортировка уже имеющихся данных в таблице реализована некорректно. Т.е. сортировались только данные из JSON и дописывались в конец таблицы
3. Im-a-good-gpt2-chatbot – аналогично GPT4o - код запустился, сортировка проигнорирована
4. Claude 3 Opus – код на вид самый изящный, учитывающий сортировку, но промучившись минут 15 с багами запустить я его так и не смог. LLM запуталась и в сортировке, и в записи в таблицы, и в авторизации.
5. Yi-large-preview - Аналогично с Claude не запустилось, запуталась в сортировке.
6. Все модели использовали deprecated библиотеку oauth2client, а im-a-good-gpt2-chatbot продолжала ее использовать даже после того, как я прямо попросил в промте ее не использовать. Через пару попыток перестал.
7. Промпт по-прежнему имеет значение. Например, такой прием как попросить модель повторить вопрос перед тем, как давать ответ повысил вероятность того, что код запустится. Но об этом в одном из следующих постов.
1. Вы формулируете задачу, а две LLM выбранные вслепую или указанные вами из списка (Arena side-by-side) ее решают
2. Вы голосуете какое решение лучше, на основе таких голосов собирается рейтинг. Можно попробовать все модели в одном месте и бесплатно.
Возможно вы уже слышали, что пару недель назад там появилась темные лошадки - две LLM под именами:
1. im-a-good-gpt2-chatbot
2. im-also-a-good-gpt2-chatbot,
которые показали удивительно хорошие результаты в программировании. В отчетах их тестировали на написании игр, мне же было интересно попробовать с более прикладными задачами. Как раз потребовалось написать python метод, на вход ему прилетает JSON c данными – доходы, расходы, дата, описание. Метод должен положить эти данные в google sheet на один лист (в разные колонки доходы и расходы) и отсортировать вместе с уже имеющимися на листе данными по датам отдельно доходы, отдельно расходы. Звучит не очень сложно, но на деле получилось под сотню строчек кода и справилась только одна LLM.
В моем соревновании участвовали:
3. GPT4o
4. Yi-large-preview
5. Claude 3 Opus
6. Im-a-good-gpt2-chatbot
7. Im-also-a-good-gpt2-chatbot
Итог: полностью справилась с задачей только im-also-a-good-gpt2-chatbot.
Подробнее:
1. Im-also-a-good-gpt2-chatbot - написала полностью работающий код, данные сортируются. Запустился с первого раза, я поправил руками один небольшой баг.
2. GPT4o – код запустился, но сортировка уже имеющихся данных в таблице реализована некорректно. Т.е. сортировались только данные из JSON и дописывались в конец таблицы
3. Im-a-good-gpt2-chatbot – аналогично GPT4o - код запустился, сортировка проигнорирована
4. Claude 3 Opus – код на вид самый изящный, учитывающий сортировку, но промучившись минут 15 с багами запустить я его так и не смог. LLM запуталась и в сортировке, и в записи в таблицы, и в авторизации.
5. Yi-large-preview - Аналогично с Claude не запустилось, запуталась в сортировке.
6. Все модели использовали deprecated библиотеку oauth2client, а im-a-good-gpt2-chatbot продолжала ее использовать даже после того, как я прямо попросил в промте ее не использовать. Через пару попыток перестал.
7. Промпт по-прежнему имеет значение. Например, такой прием как попросить модель повторить вопрос перед тем, как давать ответ повысил вероятность того, что код запустится. Но об этом в одном из следующих постов.
👍9❤1
Выпустили на Хабре статью "Шпаргалка для создания идеального промпта для LLM". Это перевод статьи, ссылку на которую которую мы уже публиковали тут в канале месяц назад. За это время уже довольно много поменялось и мы дополнили ее своими комментариями. Там, кстати, есть пример промпта, которым я генерил код из предыдущего поста.
Хабр
Шпаргалка для создания идеального промпта LLM
Большие языковые модели могут производить любую последовательность символов на каком угодно языке в любом формате данных (включая языки программирования, аудио и видео). Соответственно, качество этой...
👍3
Одна из лучших на сегодня LLM для генерации кода на 80 языках программирования и других задач с кодом открыта для пользователей
Mistral has released a new code model.
It is called Codestral-22B, trained on more than 80 programming languages, and it outperforms bigger models such as Llama 3 70B in code benchmarks!
You can try it here
Click the link, then sign in and click the model drop down and select “codestral” it’s got nothing on GPT-4o but still free and fun. (And opensource!)
Mistral has released a new code model.
It is called Codestral-22B, trained on more than 80 programming languages, and it outperforms bigger models such as Llama 3 70B in code benchmarks!
You can try it here
Click the link, then sign in and click the model drop down and select “codestral” it’s got nothing on GPT-4o but still free and fun. (And opensource!)
🔥6
YouTube
Близкие контакты с LLM. Эволюция промптинга
После появления ChatGPT термин «промптинг» стал быстро распространяться как в профессиональной среде людей, близких к программированию и ИТ, так и среди школьников и студентов, журналистов и юристов, физиков и лириков. 23 мая в 12:00 по МСК профессор Владимир…
Продолжая разговор о промптинге, делимся ссылкой на новую лекцию профессора В. В. Крылова, в которой он рассказал об эволюции промптинга.
В лекции разобрали:
🔸 Как изменялось понимание важности правильного формулирования промпта для получения от LLM желаемого, правильного, полезного ответа?
🔸 Как и почему появился «промпт инжиниринг»?
🔸 Как развивались техники проектирования эффективных промптов?
«Основное внимание в лекции уделяется трендам в развитии приложений, основанных на применении LLM, превратившим разработку промптов в часть общего проектирования программных систем. Вы узнаете о том, какие технологии используются для реализации встроенных промптов в концепциях RAG и AI Agents. Лекция познакомит с подходом сведения промтинга к программированию и перспективой новой технологии общения с LLM – Flow Engineering», — уточнил сам лектор.
💬 Если при просмотре лекции у вас возникнут вопросы, пишите их в комментариях к этому посту, чтобы Владимир Владимирович ответил на них.
Оставляем ссылку на подкаст AI4Dev для тех, кому удобнее слушать лекции, а не смотреть.
В лекции разобрали:
«Основное внимание в лекции уделяется трендам в развитии приложений, основанных на применении LLM, превратившим разработку промптов в часть общего проектирования программных систем. Вы узнаете о том, какие технологии используются для реализации встроенных промптов в концепциях RAG и AI Agents. Лекция познакомит с подходом сведения промтинга к программированию и перспективой новой технологии общения с LLM – Flow Engineering», — уточнил сам лектор.
💬 Если при просмотре лекции у вас возникнут вопросы, пишите их в комментариях к этому посту, чтобы Владимир Владимирович ответил на них.
Оставляем ссылку на подкаст AI4Dev для тех, кому удобнее слушать лекции, а не смотреть.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2
Сделали youtube обзор на SWE-Agent. Это опенсорсный AI разработчик, созданный инженерами из Принстона для исправления багов и issues из GitHub репозиториев. Запустили для реального бага из небольшого Python проекта. Спойлер – баг он реально пофиксил, впрочем, только правильно описанный баг. В очередной раз сталкиваемся с тем, что задачу надо корректно и точно сформулировать, а после формулировки часто уже остается и не так много работы.
Еще отмечу, что процесс исправления бага оказался раз в десять дороже, чем если бы я просто задал такой же вопрос чату GPT и самостоятельно скопипастил полученное решение. Но надо понимать, что это автономный агент, он действовал без человека, т.е. теоретически что-то легко масштабируемое.
Вывод: хотя пока и видны слабые места, но концепция классная, я думаю уже через год-два такие агенты будут работать с нами бок о бок в рамках стандартных процессов разработки.
Еще отмечу, что процесс исправления бага оказался раз в десять дороже, чем если бы я просто задал такой же вопрос чату GPT и самостоятельно скопипастил полученное решение. Но надо понимать, что это автономный агент, он действовал без человека, т.е. теоретически что-то легко масштабируемое.
Вывод: хотя пока и видны слабые места, но концепция классная, я думаю уже через год-два такие агенты будут работать с нами бок о бок в рамках стандартных процессов разработки.
YouTube
SWE-Agent - AI разработчик исправляет баги из GitHub репозиториев, тестируем на реальном проекте
Пробуем на реальном проекте разработку из Принстона SWE-Agent.
Опенсорсный AI разработчик, созданный для исправления багов и issues из GitHub репозиториев. Запускаем с GPT4 для бага в Pyhthon коде.
Наш Telegram канал: https://t.iss.one/LLM4dev
SWE-Agent:…
Опенсорсный AI разработчик, созданный для исправления багов и issues из GitHub репозиториев. Запускаем с GPT4 для бага в Pyhthon коде.
Наш Telegram канал: https://t.iss.one/LLM4dev
SWE-Agent:…
👍3
AI-агенты, AI-агенты… А зачем они собственно нужны в разработке ПО? LLM прекрасно пишут код при общении напрямую через чат и мы, как и несколько миллионов разработчиков, с удовольствием этим пользуемся. Однако не все задачи в разработке можно решить через чат с LLM. Чем же конкретно нам могут помочь AI агенты?
Синергия агентов, управление сложными проектами
В фреймворке с агентами несколько агентов могут работать одновременно, каждый из которых специализируется на определенном типе задач, как в обычной проектной команде. Это позволяет распределить работу и добиться более высокого качества выполнения. Например, один агент может заниматься управлением и хранением кода, коммитами, CI и т.д., другой —планированием, третий – написанием backend кода, еще один— тестированием. Уложить все эти активности в один запрос LLM, да так чтобы они корректно выполнились – нереальная задача. Если вы создаете под каждую роль разработки отдельных агентов и агента-менеджера, который оркестрирует всю вашу команду, задача кажется куда более решаемой. Крупные проекты требуют координации большого количества задач. При работе с LLM напрямую через чат, где каждая задача решается отдельно без связи с остальными, координация остается за кадром. Это ответственность живого человека - разработчика, который решает отдельные задачи через LLM, а потом сам собирает это все в единый проект. Агенты же могут самостоятельно работать над большим проектом.
Автономность
Агенты способны функционировать автономно, без постоянного вмешательства человека. Это особенно важно в крупных проектах, где необходимо выполнять множество разных задач. Работа с LLM напрямую подразумевает генерацию ответа на один запрос. Если этот ответ не удовлетворяет требованиям, пользователю приходится повторно формулировать запрос, а потом еще, и еще, и еще. AI-агенты могут автоматически корректировать свои действия на основе промежуточных результатов, пока не добьются ожидаемого результата, т.е. полностью берут на себя работу с задачей.
При этом использование агентов создает некоторые риски, о которых тоже стоит упомянуть:
Риск бесконечных циклов
Обратная сторона автономности агентов – риск бесконечных циклов. Пытаясь решить задачу, агент может впасть в цикл, раз за разом отправляя в LLM последовательность одинаковых или очень похожих запросов. Это может привести к потере времени и ресурсов.
Высокая стоимость запросов
При интенсивном использовании агенты могут отправлять сотни запросов к LLM, что может значительно увеличить затраты на использование облачных сервисов и API. Задачу, которую человек решит с LLM за один запрос, агент может решать десятками и сотнями запросов.
Сложность настройки и управления
Создание и управление агентами требует высокого уровня технических знаний и навыков. Мы пока еще не видели AI-агентов разработчиков которые могли бы решать много сложных разнообразных задач на равных с людьми. Это не так просто придумать и запрограммировать, но все впереди!
Синергия агентов, управление сложными проектами
В фреймворке с агентами несколько агентов могут работать одновременно, каждый из которых специализируется на определенном типе задач, как в обычной проектной команде. Это позволяет распределить работу и добиться более высокого качества выполнения. Например, один агент может заниматься управлением и хранением кода, коммитами, CI и т.д., другой —планированием, третий – написанием backend кода, еще один— тестированием. Уложить все эти активности в один запрос LLM, да так чтобы они корректно выполнились – нереальная задача. Если вы создаете под каждую роль разработки отдельных агентов и агента-менеджера, который оркестрирует всю вашу команду, задача кажется куда более решаемой. Крупные проекты требуют координации большого количества задач. При работе с LLM напрямую через чат, где каждая задача решается отдельно без связи с остальными, координация остается за кадром. Это ответственность живого человека - разработчика, который решает отдельные задачи через LLM, а потом сам собирает это все в единый проект. Агенты же могут самостоятельно работать над большим проектом.
Автономность
Агенты способны функционировать автономно, без постоянного вмешательства человека. Это особенно важно в крупных проектах, где необходимо выполнять множество разных задач. Работа с LLM напрямую подразумевает генерацию ответа на один запрос. Если этот ответ не удовлетворяет требованиям, пользователю приходится повторно формулировать запрос, а потом еще, и еще, и еще. AI-агенты могут автоматически корректировать свои действия на основе промежуточных результатов, пока не добьются ожидаемого результата, т.е. полностью берут на себя работу с задачей.
При этом использование агентов создает некоторые риски, о которых тоже стоит упомянуть:
Риск бесконечных циклов
Обратная сторона автономности агентов – риск бесконечных циклов. Пытаясь решить задачу, агент может впасть в цикл, раз за разом отправляя в LLM последовательность одинаковых или очень похожих запросов. Это может привести к потере времени и ресурсов.
Высокая стоимость запросов
При интенсивном использовании агенты могут отправлять сотни запросов к LLM, что может значительно увеличить затраты на использование облачных сервисов и API. Задачу, которую человек решит с LLM за один запрос, агент может решать десятками и сотнями запросов.
Сложность настройки и управления
Создание и управление агентами требует высокого уровня технических знаний и навыков. Мы пока еще не видели AI-агентов разработчиков которые могли бы решать много сложных разнообразных задач на равных с людьми. Это не так просто придумать и запрограммировать, но все впереди!
❤🔥3