Vicuna: чат-бот с открытым исходным кодом, впечатляющий GPT-4 с качеством ChatGPT 90%*
Обзор
Быстрое развитие больших языковых моделей (LLM) произвело революцию в системах чат-ботов, что привело к беспрецедентным уровни интеллекта, как показано в ChatGPT OpenAI. Однако, несмотря на впечатляющую производительность, детали обучения и архитектуры ChatGPT остаются неясными, что препятствует исследованиям и инновациям с открытым исходным кодом в этой области. Вдохновленные проектом Meta LLaMA и Stanford Alpaca, мы представляем Vicuna-13B, чат-бота с открытым исходным кодом, поддерживаемого расширенным набором данных и простой в использовании масштабируемой инфраструктурой. Благодаря точной настройке базовой модели LLaMA на основе общих разговоров пользователей, собранных с ShareGPT.com, Vicuna-13B продемонстрировала конкурентоспособную производительность по сравнению с другими моделями с открытым исходным кодом, такими как Stanford Alpaca. В этом сообщении блога представлена предварительная оценка характеристик Vicuna-13B, а также описана инфраструктура его обучения и обслуживания. Мы также приглашаем сообщество поработать с нашей онлайн-демоверсией, чтобы проверить возможности этого чат-бота.
Насколько хорош Vicuna?
После тонкой настройки Vicuna с помощью 70 тысяч общих разговоров ChatGPT, которыми пользуются пользователи, мы обнаруживаем, что Vicuna становится способной генерирования более подробных и хорошо структурированных ответов по сравнению с Alpaca (см. примеры ниже), с качеством на уровне ChatGPT.
Онлайн-демо
Попробуйте демо-версию Vicuna-13B здесь!
Обучение
Vicuna создается путем тонкой настройки базовой модели LLaMA с использованием примерно 70 тысяч общих разговоров пользователей, собранных на ShareGPT.com с общедоступными API. Чтобы обеспечить качество данных, мы конвертируем HTML обратно в уценку и отфильтровываем некоторые неподходящие или некачественные образцы. Кроме того, мы делим длинные разговоры на более мелкие сегменты, которые соответствуют максимальной длине контекста модели.
- Многоходовые разговоры. Мы корректируем потери на обучение, чтобы учесть многоходовые разговоры, и вычисляем потери при точной настройке исключительно на основе вывод чат-бота.
- Оптимизация памяти. Чтобы Викуна могла понимать длинный контекст, мы увеличиваем максимальную длину контекста с 512 в альпаке до 2048, что существенно увеличивает требования к памяти графического процессора. Мы справляемся с нехваткой памяти, используя контрольные точки градиента и мгновенное внимание.
- Снижение затрат за счет спотового инстанса. Увеличение в 40 раз набора данных и четырехкратная длина последовательности для обучения создают значительную проблему с точки зрения затрат на обучение. Мы используем управляемые спотовые инстансы SkyPilot, чтобы снизить затраты за счет использования более дешевых спотовых инстансов с автоматическим восстановлением для приоритетных операций и автоматическим переключением зон. Это решение сокращает затраты на обучение модели 7B примерно со 140, а модели 13B примерно с 300.
Обслуживание
Мы создаем систему обслуживания, которая способна обслуживать несколько моделей с распределенными рабочие. Он поддерживает гибкое подключение работников графических процессоров как из локальных кластеров, так и из облака. Благодаря использованию отказоустойчивого контроллера и функции управляемого спота в SkyPilot эта обслуживающая система может хорошо работать с более дешевыми спотовыми инстансами из нескольких облаков, что позволяет снизить затраты на обслуживание. В настоящее время это упрощенная реализация, и мы работаем над интеграцией в нее большего количества наших последних исследований.
Как оценить чат-бота?
Оценка чат-ботов с искусственным интеллектом — сложная задача, поскольку она требует изучения понимания языка, рассуждения, и осведомленность о контексте. Поскольку чат-боты с искусственным интеллектом становятся все более продвинутыми, текущих открытых тестов может быть уже недостаточно. Например, чат-боты SOTA могут эффективно отвечать на набор оценочных данных, используемый в Стэнфордской программе самообучения «Альпака», что затрудняет людям различение различий в производительности. Дополнительные ограничения включают загрязнение данных обучения/тестирования и потенциально высокую стоимость создания новых тестов. Чтобы решить эти проблемы, мы предлагаем систему оценки на основе GPT-4 для автоматизации оценки производительности чат-ботов.
Ограничения
Мы заметили, что, как и другие модели большого языка, Vicuna имеет определенные ограничения. Например, он плохо справляется с задачами, связанными с рассуждением или математикой, и у него могут быть ограничения в точной идентификации или обеспечении фактической точности его результатов. Кроме того, он не был достаточно оптимизирован, чтобы гарантировать безопасность или снизить потенциальную токсичность или предвзятость. Чтобы решить проблемы безопасности, мы используем API модерации OpenAI для фильтрации неуместных пользовательских данных в нашей онлайн-демо. Тем не менее, мы ожидаем, что Vicuna может послужить открытой отправной точкой для будущих исследований по устранению этих ограничений.
Релиз
В нашем первом выпуске мы поделимся кодом обучения, обслуживания и оценки в репозитории GitHub: https://github.com/lm-sys/FastChat. Также мы выпустили модельные гири «Викуна-13Б». Публикация набора данных не планируется. Присоединяйтесь к нашему серверу Discord и следите за нашим Twitter, чтобы получать последние обновления.
Насколько хороша Викунья?
После тонкой настройки Викуньи с помощью 70 000 общих бесед ChatGPT, которыми пользуются пользователи, мы обнаружили, что Викунья становится способной генерировать более подробные и хорошо структурированные ответы по сравнению с Альпакой (см. примеры ниже). ), с качеством на уровне ChatGPT.
Онлайн-демо
Попробуйте демо-версию Vicuna-13B
здесь< /a>!
Обзор
Быстрое развитие больших языковых моделей (LLM) произвело революцию в системах чат-ботов, что привело к беспрецедентному уровню интеллекта, как это видно в ChatGPT от OpenAI. Однако, несмотря на впечатляющую производительность, детали обучения и архитектуры ChatGPT остаются неясными, что препятствует исследованиям и инновациям с открытым исходным кодом в этой области. Вдохновленные проектом Meta LLaMA и Stanford Alpaca, мы представляем Vicuna-13B, чат-бота с открытым исходным кодом, поддерживаемого расширенным набором данных и простой в использовании масштабируемой инфраструктурой. Благодаря точной настройке базовой модели LLaMA на основе общих разговоров пользователей, собранных с ShareGPT.com, Vicuna-13B продемонстрировала конкурентоспособную производительность по сравнению с другими моделями с открытым исходным кодом, такими как Stanford Alpaca. В этом сообщении блога представлена предварительная оценка характеристик Vicuna-13B, а также описана инфраструктура его обучения и обслуживания. Мы также приглашаем сообщество поработать с нашей онлайн-демоверсией, чтобы проверить возможности этого чат-бота.
Обучение
Vicuna создается путем тонкой настройки базовой модели LLaMA с использованием примерно 70 тысяч пользователей. общие беседы, собранные на ShareGPT.com, с общедоступными API. Чтобы обеспечить качество данных, мы конвертируем HTML обратно в уценку и отфильтровываем некоторые неподходящие или некачественные образцы. Кроме того, мы делим длинные разговоры на более мелкие сегменты, соответствующие максимальной длине контекста модели.
Обслуживание
Мы создаем систему обслуживания, способную обслуживать несколько моделей с распределенными рабочими процессами. Он поддерживает гибкое подключение работников графических процессоров как из локальных кластеров, так и из облака. Благодаря использованию отказоустойчивого контроллера и функции управляемого спота в SkyPilot эта обслуживающая система может хорошо работать с более дешевыми спотовыми инстансами из нескольких облаков, что позволяет снизить затраты на обслуживание. В настоящее время это упрощенная реализация, и мы работаем над интеграцией в нее наших последних
исследований.
Как Оценить чат-бота?
Оценка чат-ботов с искусственным интеллектом — непростая задача, поскольку она требует изучения понимания языка, рассуждения и понимания контекста. Поскольку чат-боты с искусственным интеллектом становятся все более продвинутыми, текущих открытых тестов может быть уже недостаточно. Например, на набор оценочных данных, используемый в Стэнфордской Альпаке,
self-instruct, можно эффективно ответить, Чат-боты SOTA, затрудняющие людям различение различий в производительности. Дополнительные ограничения включают загрязнение данных обучения/тестирования и потенциально высокую стоимость создания новых тестов. Чтобы решить эти проблемы, мы предлагаем систему оценки на основе GPT-4 для автоматизации оценки производительности чат-бота.
Ограничения
Мы заметили, что, как и в других крупных языковых моделях, Vicuna имеет определенные ограничения. Например, он плохо справляется с задачами, связанными с рассуждением или математикой, и у него могут быть ограничения в точной идентификации или обеспечении фактической точности его результатов. Кроме того, он не был достаточно оптимизирован, чтобы гарантировать безопасность или снизить потенциальную токсичность или предвзятость. Чтобы решить проблемы безопасности, мы используем API
модерации
OpenAI, чтобы отфильтровывать недопустимые вводимые пользователем данные в нашей онлайн-демо. . Тем не менее, мы ожидаем, что Викунья может послужить открытой отправной точкой для будущих исследований по устранению этих ограничений.