Делаю тут для ULCAMP 2024 бота с памятью. По идее, он должен отвечать на любые вопросы на тему конференции, показывать пользователю его покупки (билеты, палатки, автобус), и менять заказ (отправлять сообщение о необходимости изменений в поддержку).
Решил показать, как эта самая память работает.
Хранить/вводить информацию решили через Google таблицы — как самый простой и быстрый инструмент. Процесс понятен (на изображении справа):
Взаимодействие пользователя с ботом происходит через мою универсальную библиотеку AgentBot, над которой я работаю уже более полугода. Все мои боты работают сейчас на ней. Она позволяет взаимодействовать с разными моделями и отвечает за хранение контекста для каждого пользователя.
Самое главное, что, с учетом того, что LLM модели не требуется широта знаний (ведь всю самую важную информацию мы уже ей отдаем в запросе), мы можем использовать самые дешевые модели, и они будут отлично справляться.
Можете попробовать сами: @ulcampbot (версия не финальная, но вполне рабочая, если у вас куплены билеты на Ulcamp, то обязательно свяжите личный кабинет). Название тоже не финальное. Уже неделю прошу организаторов придумать мне его. Буду рад любым баг-репортам.
Кстати, мне сделали код на скидку на билеты на ULCAMP — BIZNESBOT10.
@sergiobulaev - AI и всё такое.
Решил показать, как эта самая память работает.
Хранить/вводить информацию решили через Google таблицы — как самый простой и быстрый инструмент. Процесс понятен (на изображении справа):
1. Контент-менеджер вводит небольшие статьи в таблицу, которые состоят из заголовка и текста (но по факту все равно объединяются в один элемент контента). Решили сделать его в среднем 500-1000 символов длиной (но это не жестко).
2. Раз в 15 минут мой скрипт проходит по таблице и считывает все данные. Проверяет, чего у нас еще нет, а что изменилось. Далее все, что надо добавить/изменить, переводится в вектора — Embeddings и сохраняется в векторной базе данных Pinecone. Поскольку у OpenAI и Anthropic разные форматы векторов, то я делаю сразу обе версии, чтобы иметь возможность переключать модели.
Взаимодействие пользователя с ботом происходит через мою универсальную библиотеку AgentBot, над которой я работаю уже более полугода. Все мои боты работают сейчас на ней. Она позволяет взаимодействовать с разными моделями и отвечает за хранение контекста для каждого пользователя.
1. Пользователь отправляет запрос боту, он попадает сразу в дочерний класс AgentBot, который называется UlcampBot.
2. UlcampBot переводит запрос в Embeddings и отправляет запрос в Pinecone.
3. Pinecone подбирает несколько статей, наиболее близких по векторам (а значит наиболее релевантных по смыслу), и возвращает эти статьи боту.
4. В случае, если пользователь — участник, мы делаем запрос к информации о его покупках из личного кабинета.
5. Информация передается обратно боту.
6. Бот подмешивает в системное сообщение справочную информацию из Pinecone и личную информацию из кабинета и передает на обработку родительскому классу AgentBot.
7. AgentBot исполняет свою обычную работу, формируя контекст и используя системное сообщение, делает запрос к LLM модели.
8. LLM модель в свою очередь генерирует ответ, используя переданную информацию, и возвращает его.
9. Ответ отправляется пользователю.
Самое главное, что, с учетом того, что LLM модели не требуется широта знаний (ведь всю самую важную информацию мы уже ей отдаем в запросе), мы можем использовать самые дешевые модели, и они будут отлично справляться.
Можете попробовать сами: @ulcampbot (версия не финальная, но вполне рабочая, если у вас куплены билеты на Ulcamp, то обязательно свяжите личный кабинет). Название тоже не финальное. Уже неделю прошу организаторов придумать мне его. Буду рад любым баг-репортам.
Кстати, мне сделали код на скидку на билеты на ULCAMP — BIZNESBOT10.
@sergiobulaev - AI и всё такое.
❤14👍5
Иллюстрации к предыдущему посту: самая главная часть кода и схема работы всей системы.
@sergiobulaev - про AI и всё такое.
@sergiobulaev - про AI и всё такое.
👍10
На днях выйдет фильм “The Last Screenwriter” (Последний сценарист)
Сценарий полностью написан ChatGPT. Работа авторов ограничилась отбором и сокращением предложенных им сцен. Весь сюжет, персонажи и диалоги - исключительно результат ChatGPT. Авторы не вносили изменений в диалоги и не переставляли сцены.
Премьера в лондонском Prince Charles Cinema была отменена после волны жалоб на использование ИИ вместо реального сценариста. Однако если посмотреть трейлер - мне кажется фильм важен, так как он как раз об этой самой проблеме.
Авторы проекта, считают: их работа не заслуживает строчки в титрах за сценарий. По правилам гильдии сценаристов, для получения такого права нужно написать минимум 30% сценария.
Создатели сделали скриншоты каждого сгенерированного ChatGPT текста. Они предлагают любому желающемy дать ChatGPT существующий сюжет, список персонажей и те же промты. Он должен написать сопоставимые по содержанию и качеству сцены.
Ключевой вопрос: должен ли ИИ заменить сценаристов? Авторы однозначно говорят: "Конечно, нет!". Но считают важным изучить возможности ИИ для поиска правильного пути развития индустрии.
Фильм и сценарий будут доступны для скачивания 27 июня на официальном сайте.
Использование ИИ в кинопроизводстве - это не просто техно прорыв, а переосмысление творческого процесса. Интересно, как это повлияет на качество контента и рабочие места в индустрии. Очевидно, мы на пороге новой страницы кинематографа, где ИИ станет инструментом, расширяющим возможности человеческого творчества, а не заменой сценаристов.
@sergiobulaev - об AI и всём в этом роде
Сценарий полностью написан ChatGPT. Работа авторов ограничилась отбором и сокращением предложенных им сцен. Весь сюжет, персонажи и диалоги - исключительно результат ChatGPT. Авторы не вносили изменений в диалоги и не переставляли сцены.
Премьера в лондонском Prince Charles Cinema была отменена после волны жалоб на использование ИИ вместо реального сценариста. Однако если посмотреть трейлер - мне кажется фильм важен, так как он как раз об этой самой проблеме.
Авторы проекта, считают: их работа не заслуживает строчки в титрах за сценарий. По правилам гильдии сценаристов, для получения такого права нужно написать минимум 30% сценария.
Создатели сделали скриншоты каждого сгенерированного ChatGPT текста. Они предлагают любому желающемy дать ChatGPT существующий сюжет, список персонажей и те же промты. Он должен написать сопоставимые по содержанию и качеству сцены.
Ключевой вопрос: должен ли ИИ заменить сценаристов? Авторы однозначно говорят: "Конечно, нет!". Но считают важным изучить возможности ИИ для поиска правильного пути развития индустрии.
Фильм и сценарий будут доступны для скачивания 27 июня на официальном сайте.
Использование ИИ в кинопроизводстве - это не просто техно прорыв, а переосмысление творческого процесса. Интересно, как это повлияет на качество контента и рабочие места в индустрии. Очевидно, мы на пороге новой страницы кинематографа, где ИИ станет инструментом, расширяющим возможности человеческого творчества, а не заменой сценаристов.
@sergiobulaev - об AI и всём в этом роде
👍20🤔9🍾4
This media is not supported in your browser
VIEW IN TELEGRAM
Claude Engineer
Интерактивный CLI, использующий модель Claude-3.5-Sonnet для помощи в разработке (и даже самостоятельной разработке) программного обеспечения. Автор - Пьетро Ширано (Pietro Schirano).
Сочетает возможности LLM с операциями файловой системы и функцией веб-поиска. Позволяет создавать, читать и редактировать файлы с кодом и папки через простой чат.
Интерактивный чат-интерфейс с Claude-3.5-Sonnet, операции с файловой системой, возможности веб-поиска через API Tavily, подсветку синтаксиса для фрагментов кода, создание и управление структурой проекта, а также анализ кода и предложения по его улучшению.
По сути, Claude Engineer это что то вроде локального Claude Artefacts с дополнительным преимуществом создания целых проектов напрямую на диске компьютера.
Проект доступен в виде репозитория на GitHub. Просто устанавливаете в каталог вашего проекта или же в новый. Доступ у него будет только к нему.
Примеры использования:
- Создай структуру для нового проекта на Python для веб приложения.
- Объясни код в file.py и посоветуй что улучшить.
- Поищи как лучше сделать [ТОТО]
- Помоги мне отладить ошибку [ОШИБКА]
Скоро появится веб приложение для работы с дектопа.
#ИИагенты
@sergiobulaev - AI и всё такое.
Интерактивный CLI, использующий модель Claude-3.5-Sonnet для помощи в разработке (и даже самостоятельной разработке) программного обеспечения. Автор - Пьетро Ширано (Pietro Schirano).
Сочетает возможности LLM с операциями файловой системы и функцией веб-поиска. Позволяет создавать, читать и редактировать файлы с кодом и папки через простой чат.
Интерактивный чат-интерфейс с Claude-3.5-Sonnet, операции с файловой системой, возможности веб-поиска через API Tavily, подсветку синтаксиса для фрагментов кода, создание и управление структурой проекта, а также анализ кода и предложения по его улучшению.
По сути, Claude Engineer это что то вроде локального Claude Artefacts с дополнительным преимуществом создания целых проектов напрямую на диске компьютера.
Проект доступен в виде репозитория на GitHub. Просто устанавливаете в каталог вашего проекта или же в новый. Доступ у него будет только к нему.
Примеры использования:
- Создай структуру для нового проекта на Python для веб приложения.
- Объясни код в file.py и посоветуй что улучшить.
- Поищи как лучше сделать [ТОТО]
- Помоги мне отладить ошибку [ОШИБКА]
Скоро появится веб приложение для работы с дектопа.
#ИИагенты
@sergiobulaev - AI и всё такое.
🔥16❤5 1
Media is too big
VIEW IN TELEGRAM
Figma AI
Вчера Figma представила набор инструментов на базе ИИ для дизайнеров. Новые функции призваны помочь в преодолении творческого кризиса и воплощении идей.
Возможности Figma AI:
- Visual Search: поиск похожих дизайнов по изображению или текстовому запросу
- AI-enhanced Asset Search: интеллектуальный поиск компонентов, понимающий контекст запроса
- Работа с текстом: перевод, сокращение, переписывание одним кликом
- Генерация контента: создание реалистичных текстов и изображений для макетов
- Обработка изображений: автоматическое удаление фона
- Быстрое прототипирование: превращение статичных макетов в интерактивные прототипы
- Автоматическое переименование слоев: поддержание порядка в файлах
- Make Designs: генерация UI-макетов и компонентов по текстовому описанию
Figma AI будет бесплатной для всех пользователей в течение бета-периода до конца 2024 года. Компания не использует приватные файлы клиентов для обучения ИИ-моделей. Пользователи смогут контролировать, используются ли данные их команды для обучения ИИ. В будущем планируется интеграция с популярными дизайн-системами, например Google's Material 3. Цель разработчиков - сделать ИИ "настоящим творческим партнером" для дизайнеров.
@sergiobulaev - об AI и всём таком
Вчера Figma представила набор инструментов на базе ИИ для дизайнеров. Новые функции призваны помочь в преодолении творческого кризиса и воплощении идей.
Возможности Figma AI:
- Visual Search: поиск похожих дизайнов по изображению или текстовому запросу
- AI-enhanced Asset Search: интеллектуальный поиск компонентов, понимающий контекст запроса
- Работа с текстом: перевод, сокращение, переписывание одним кликом
- Генерация контента: создание реалистичных текстов и изображений для макетов
- Обработка изображений: автоматическое удаление фона
- Быстрое прототипирование: превращение статичных макетов в интерактивные прототипы
- Автоматическое переименование слоев: поддержание порядка в файлах
- Make Designs: генерация UI-макетов и компонентов по текстовому описанию
Figma AI будет бесплатной для всех пользователей в течение бета-периода до конца 2024 года. Компания не использует приватные файлы клиентов для обучения ИИ-моделей. Пользователи смогут контролировать, используются ли данные их команды для обучения ИИ. В будущем планируется интеграция с популярными дизайн-системами, например Google's Material 3. Цель разработчиков - сделать ИИ "настоящим творческим партнером" для дизайнеров.
@sergiobulaev - об AI и всём таком
👍7🔥5❤4
Безуспешно сейчас пытался вместе с Claude Engineer реализовать небольшой домашний проект по созданию бота для удаленной печати фотографий на моём домашнем принтере (я тут просто на месяц уезжаю и переживаю что головка с краской засохнет).
Итог: всего за 20 минут он израсходовал мой дневной лимит токенов про который я не знал. Кстати он оказался 1 млн. Так и не доделал приложение. В результате во всех моих ботах sonnet отключился до завтра. Ulcamp бота перевёл на haiku.
Итог: всего за 20 минут он израсходовал мой дневной лимит токенов про который я не знал. Кстати он оказался 1 млн. Так и не доделал приложение. В результате во всех моих ботах sonnet отключился до завтра. Ulcamp бота перевёл на haiku.
😁11❤4👍3🤔3
CriticGPT: ИИ для поиска ошибок ИИ
OpenAI рассказала о новой модели CriticGPT, основанной на GPT-4, для выявления ошибок в коде, сгенерированном GPT-4.
Возможности CriticGPT:
🔶 Анализ кода, созданного ChatGPT и выявление неточностей
🔶 Написание критических замечаний к ответам ChatGPT
🔶 Помощь людям-тренерам в оценке выходных данных ИИ
🔶 Балансировка между агрессивным поиском проблем и точностью обнаружения
Ключевые факты:
Модель обучена с помощью RLHF (Усиление обучения с помощью людского фидбэка), как и ChatGPT, но на данных с намеренно внесенными ошибками. CriticGPT способна находить как искусственно внесенные, так и естественные ошибки ChatGPT. По мнению тренеров, критика CriticGPT лучше, чем критика ChatGPT в 63% случаев при работе с естественными ошибками.
Было обнаружено, что можно генерировать более длинные и всесторонние критические замечания, используя дополнительный поиск во время тестирования против модели вознаграждения критики. Этот поиск, называемый Принудительным выбором с использованием поиска по лучам (FSBS), позволяет балансировать агрессивность поиска проблем в коде и настраивать компромисс между точностью и полнотой обнаружения ошибок. В результате генерируются замечания, максимально полезные для RLHF. Подробнее в документе.
Ограничения CriticGPT включают возможные галлюцинации, сложность оценки длинных и комплексных задач, а также проблемы с обнаружением ошибок, распределенных по всему ответу.
OpenAI планирует интегрировать подобные CriticGPT модели в процесс обучения своих ИИ-систем и видит в этом подходе перспективу для создания более совершенных инструментов оценки сложных ИИ-систем.
Так то 63% не супер сильно отличается от 50…
@sergiobulaev - об AI и не только
OpenAI рассказала о новой модели CriticGPT, основанной на GPT-4, для выявления ошибок в коде, сгенерированном GPT-4.
Возможности CriticGPT:
🔶 Анализ кода, созданного ChatGPT и выявление неточностей
🔶 Написание критических замечаний к ответам ChatGPT
🔶 Помощь людям-тренерам в оценке выходных данных ИИ
🔶 Балансировка между агрессивным поиском проблем и точностью обнаружения
Ключевые факты:
Модель обучена с помощью RLHF (Усиление обучения с помощью людского фидбэка), как и ChatGPT, но на данных с намеренно внесенными ошибками. CriticGPT способна находить как искусственно внесенные, так и естественные ошибки ChatGPT. По мнению тренеров, критика CriticGPT лучше, чем критика ChatGPT в 63% случаев при работе с естественными ошибками.
Было обнаружено, что можно генерировать более длинные и всесторонние критические замечания, используя дополнительный поиск во время тестирования против модели вознаграждения критики. Этот поиск, называемый Принудительным выбором с использованием поиска по лучам (FSBS), позволяет балансировать агрессивность поиска проблем в коде и настраивать компромисс между точностью и полнотой обнаружения ошибок. В результате генерируются замечания, максимально полезные для RLHF. Подробнее в документе.
Ограничения CriticGPT включают возможные галлюцинации, сложность оценки длинных и комплексных задач, а также проблемы с обнаружением ошибок, распределенных по всему ответу.
OpenAI планирует интегрировать подобные CriticGPT модели в процесс обучения своих ИИ-систем и видит в этом подходе перспективу для создания более совершенных инструментов оценки сложных ИИ-систем.
Так то 63% не супер сильно отличается от 50…
@sergiobulaev - об AI и не только
This media is not supported in your browser
VIEW IN TELEGRAM
Прикольные свежие примеры видео генераций Gen3, часть промптов:
@sergiobulaev - об AI и всём таком
1. Сверхбыстрый дезориентирующий круговой гиперлапс-пролет через все этапы жизни
2. Кинематографический кадр отвратительного монстра, поднимающегося из реки Темзы в Лондоне
3. Видео таймлапс с видом сверху, показывающее процесс создания карандашного рисунка рукой художника, от начала до конца - это изображение девушки с волосами кролика
4. Стильная женщина на улице Токио
5. Пролёт сквозь замок в Ирландии, который превращается в футуристический кибер-панк город с небоскрёбами
@sergiobulaev - об AI и всём таком
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Опять занимался ботом для ULCAMP. Добавил ему возможность устанавливать, показывать и удалять напоминания, а также отправлять сообщения в поддержку.
Изучал, как работает передача и запуск функций модели (сегодня был Claude). Оказалось, всё довольно просто. Функции описываются текстом, указывается, какие параметры им нужны для работы:
Далее это описание передаётся модели вместе с промптом, и она понимает, что может применить эти функции по необходимости. Соответственно, если она решает, что надо запустить функцию в процессе генерации - она останавливается и передает ответ о необходимости запуска и предоставляет параметры.
Функцию я запускаю сам, и дальше у меня есть выбор - либо сразу предоставить результат работы пользователю, либо вернуть результат обратно и дождаться нового сгенерированного ответа. Работает довольно чётко.
Бот если что здесь, но в процессе тестирования.
@sergiobulaev - об AI и не только.
Изучал, как работает передача и запуск функций модели (сегодня был Claude). Оказалось, всё довольно просто. Функции описываются текстом, указывается, какие параметры им нужны для работы:
{
"name": "set_reminder",
"description": "Add reminder for the user to the database. In case he asks that he wants to go to some event or use a bus or any other activity connected to time. Date time format is YYYY-MM-DD HH:MM:SS",
"input_schema": {
"type": "object",
"properties": {"message": {"type": "string"}, "event": {"type": "string"}, "date-time": {"type": "string"}},
},
},
{
"name": "delete_reminder",
"description": "Delete reminder for the user. Reminder id is two digits number in string format like 01 or 22",
"input_schema": {
"type": "object",
"properties": {"reminder_id": {"type": "string"}},
},
}
Далее это описание передаётся модели вместе с промптом, и она понимает, что может применить эти функции по необходимости. Соответственно, если она решает, что надо запустить функцию в процессе генерации - она останавливается и передает ответ о необходимости запуска и предоставляет параметры.
Функцию я запускаю сам, и дальше у меня есть выбор - либо сразу предоставить результат работы пользователю, либо вернуть результат обратно и дождаться нового сгенерированного ответа. Работает довольно чётко.
Бот если что здесь, но в процессе тестирования.
@sergiobulaev - об AI и не только.
С радостью обнаружил что Anthropic перевёл меня на второй таер с лимитом 2,5 млн токенов в день, что гораздо лучше чем 1. Это заставляет надеятся что постепенно можно дойти и до действительно нормальных лимитов.