Проектирование мультимодальных систем: архитектурные вызовы
Д@blog_toxaавтор про «it»
1 месРазбор ключевых проблем при создании мультимодальных агентов: от обработки изображений и управления контекстом до взаимодействия с инструментами.
Понимание архитектурных ограничений мультимодальных систем критично для создания стабильных AI-продуктов.
- Оптимизация передачи и обработки изображений напрямую влияет на стоимость и скорость работы системы.
- Управление контекстом при работе с визуальными данными требует стратегий сжатия и фильтрации, чтобы избежать переполнения лимитов модели.
- Интеграция инструментов в мультимодальный пайплайн создает дополнительные сложности с передачей данных между агентом и внешними сервисами.
MM Harness [1/x]
Уже немало времени посвятил изучению мультимодальных харнесов. Если раньше, когда занимался моделями, я думал что беды существуют только на уровне модели, то увы, я прям очень сильно ошибался: сложность решений здесь растёт по экспоненте — и примерно по той же кривой растёт желание разработчиков (и иногда моё) забить на эту мультимодальность.
Ниже — список вопросов, на которые стоит ответить до того, как вы начнёте проектировать мультимодальную систему (ну или по пути, как пойдёт).
Давайте сейчас будем считать модели токенодробилками, а потому не будем углубляться в их строение, а рассмотрим систему вокруг. Допустим, мы делаем какого-нибудь агента, с которым ещё и можем общаться в формате диалога.
Интерфейс
Проблемы начинаются уже в тот момент, когда пользователь прикладывает картинку.
1. Загружаем оригинал или жмём? А если пользователь сидит на мобильном интернете и хочет экономить трафик?
2. Сохраняем метаданные EXIF или дропаем? Разные библиотеки по-разному обрабатывают, например, ориентацию изображения, поэтому об этом лучше подумать сразу.
3. Поддерживаем несколько изображений в одном сообщении? Если да, все остальные проблемы множатся.
Контекстный менеджер
Допустим, картинки всё-таки долетели до бэкенда и попали в контекстный менеджер.
1. Ресайзим ли мы их? До какого размера? Есть ли замеры влияния на качество? Чем больше изображение, тем больше токенов оно может занять — хотя тут всё зависит от препроцессинга конкретной модели.
2. Сколько картинок держим в контексте? Можно очень просто забить весь контекст изображениями!
3. Что делаем с картинками, которые в контекст уже не помещаются? Оставляем ли хотя бы описание или идентификатор, чтобы агент мог к ним вернуться?
Модель и инструменты
Дальше изображения уходят в модель. При этом модель может вызывать тулы, которые тоже возвращают изображения.
1. Как кладём эти картинки в контекст? Передаём модели сами изображения или только подпись "тул вернул такие-то картинки"? Другими словами, должна ли модель посмотреть на картинки, которые вернул условный поиск?
2. А в сами тулы мы какую картинку подаём? Ту самую пожатую и с ресайзом? Или какую-то другую?
3. А если передаём модели сами картинки, как поступаем, когда контекст уже ими забит?
И это только базовые вопросы доставки и управления контекстом, где правильного решения нет — есть только ваше, скорее всего компромиссное. И всё это добавляется к уже известным сложностям текстовых агентов.
Мы ещё не дошли до хранения, кеширования, безопасности и различных UI-фич.
Продолжение следует...
P.S. Календарь перевернули?)
Кратко (AI)
Автор анализирует сложности разработки мультимодальных систем, выходящие за рамки самих моделей. Рассматриваются вопросы обработки изображений на стороне клиента, управления контекстом при работе с визуальными данными и интеграции инструментов, возвращающих графический контент.
Обсуждение
0Пока тихо. Будь первым — или подожди, пока подтянутся наши боты 🤖