Подскажите, РАГ, доводка или переобучение? Руководство по выбору правильного подхода к генеративному ИИ
Подскажите, РАГ, доводка или переобучение? Руководство по выбору правильного подхода к генеративному ИИ

1. Предисловие

В этом блоге предпринята попытка предоставить рекомендации по выбору правильного подхода к генеративному ИИ для вашего варианта использования на основе некоторых общих количественных показателей.

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

  • Подскажите проект(Prompt Engineering
  • Генерация улучшений поиска(Retrieval Augmented Generation,RAG
  • тонкая настройка(Fine-tuning
  • Обучение основам с нуля Модель(Foundation Model

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

2. Основное содержание

Как происходит сравнение? Анализ основан на следующих показателях

  • Точность (Насколько точен ответ?)
  • Сложность реализации (Насколько сложен процесс реализации?)
  • Усилия (сколько усилий требуется для достижения?)
  • Общая стоимость владения (TCO) (Какова общая стоимость владения решением?)
  • возобновлятьи Легкость внесения изменений(Архитектура Степень связи низкая??заменять{/} Легко ли обновить компоненты? )

Гипотеза: мы будем оценивать каждое решение на основе этих показателей, а анализ предназначен только для сравнения и не подлежит обобщению. Например: если Prompt Engineering имеет низкий рейтинг по определенному показателю, что означает, что он работает хуже по этому показателю, чем другие варианты, это не обязательно означает, что он работает плохо по этому показателю в целом.

Сначала давайте поговорим о вопросе, который привлекает больше всего внимания: какой метод дает наиболее точный ответ?

  • Подскажите проект(Prompt Engineering)Суть в том, чтобы предоставить как можно больше контекстной информации, при этом,Лучше поймите свой вариант использования, предоставив несколько примеров (малократное обучение). Хотя результаты выглядят впечатляюще по отдельности,Но по сравнению с другими методами, обсуждаемыми в этой статье,Он дает наименее точные результаты.
  • Генерация улучшений поиска(Retrieval Augmented Generation,RAG)Высококачественные результаты обусловлены расширенным контекстом конкретного варианта использования, полученным непосредственно из хранилища векторизованной информации.。и Он дает значительно лучшие результаты по сравнению с Tip Engineering, с очень низкой вероятностью галлюцинаций.
  • тонкая настройка(Fine-tuning)Обеспечивает достаточно высокие результаты по точности.,其输出质量и RAG Сопоставимо. Поскольку мы обновляем веса Модели с помощью данных, специфичных для предметной области, эта Модель способна выдавать больше контекстных ответов. и RAG по сравнению с,Качество могло бы быть немного лучше,Это зависит от использования. поэтому,Важно оценить, действительно ли стоит тратить время на анализ компромисса между ними. Часто точная настройка выбирается не только по причинам точности.,Также включает в себяданные Изменить частоту、Артефакты модели управления в соответствии с правилами、Соображения соответствия и воспроизводимости.
  • Обучение с нуля дает высочайший качественный результат. Поскольку Модель обучается на основе данных для конкретного варианта использования.,Вероятность галлюцинаций практически равна нулю.,И точность вывода также очень высока.

Сложность реализации. Давайте посмотрим, насколько легко или сложно реализовать эти методы.

  • Подскажите проект(Prompt Engineering)Сложность реализации,Потому что это практически не требует программирования. Требуется хорошее знание английского (или другого языка, который интерпретируется человеком) и знание предметной области.,Хороший совет по формулированию контекстного подхода к обучению и подхода к обучению с помощью нескольких шагов.
  • Генерация улучшений поиска(Retrieval Augmented Generation,RAG) Это сложнее, чем оперативное проектирование, поскольку для реализации такого решения нужны навыки программирования. В соответствии с RAG В зависимости от выбранного в Архитектуре инструмента сложность может быть выше.
  • тонкая настройка(Fine-tuning)的复杂性甚至比Подскажите проекти RAG Еще выше,потому что Модельмасса{/} Параметры изменяются путем настройки сценария, что требует научных знаний и опыта машинного обучения.
  • Обучение с нуля имеет высочайшую сложность реализации.,Потому что это требует большой отделки и обработки.,И для обучения значительной базовой модели требуются глубокие научные знания в области данных и машинного обучения.

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

  • Подскажите проект(Prompt Engineering)Для достижения совершенства требуется много повторных усилий。большой язык Модель Более чувствителен к формулировке подсказок,Иногда изменение слова или даже глагола может привести к совершенно другой реакции. поэтому,Чтобы соответствующая большая языковая модель выдавала желаемые результаты,Чтобы сделать это правильно, требуется несколько итераций.
  • Генерация улучшений поиска(Retrieval Augmented Generation,RAG) Также требует умеренных усилий, немного больше, чем оперативное проектирование, поскольку оно предполагает создание Embeddings и задача по настройке векторного хранилища.
  • тонкая настройка(Fine-tuning)是一项比Подскажите проекти RAG Более трудоемкие задачи. Хотя Fine-tuning Может быть выполнено с очень небольшим количеством данных (в некоторых случаях даже с небольшими данными). 30 или меньше примеров), но установка Fine-tuning А получение корректных настраиваемых значений требует времени.
  • Обучение с нуля – самый трудоемкий из всех методов. Это требует много итеративной разработки,Чтобы получить лучшую Модель с правильными техническими и бизнес-результатами. Процесс начинается со сбора и сортировки данных.,Модель дизайна Архитектура,и попробовать разные подходы к моделированию,чтобы найти лучшую модель для конкретного случая использования. Этот процесс может быть очень длительным (недели или месяцы).,И это требует много вычислительных ресурсов.

Общая стоимость владения (TCO), ниже приводится сравнение совокупной стоимости владения.

пожалуйста, обрати внимание,Мы говорим не только об обслуживании{/} Стоимость компонентов, а, скорее, стоимость непосредственного владения решением, включая время квалифицированного инженера, затраченное на создание и поддержку решения, стоимость самостоятельного обслуживания инфраструктуры, время простоя для установки исправлений и обновлений, настройку каналов поддержки, найм, повышение квалификации. и другие прочие расходы.

  • Подскажите проект(Prompt Engineering) Стоимость может быть очень низкой, так как вам нужно только поддерживать оперативные шаблоны проектов и своевременно обновлять их при изменении версии Большой Модели или появлении совершенно новой Большой Модели. В дополнение к этому, будут некоторые, которые обычно связаны с хостингом больших моделей или с бессерверным хостингом. API За его использование взимаются сборы.
  • Генерация улучшений поиска(Retrieval Augmented Generation,RAG) Стоимость будет выше, чем у срочного проекта, поскольку в Архитектуре задействовано несколько компонентов. Это будет зависеть от используемого Embedding Модель, векторное хранилищебольшой Модель。поэтому,Это стоит дороже по сравнению с разработкой наконечников.,Потому что вам нужно платить за три разных компонента, а не за одну большую модель.
  • тонкая настройка(Fine-tuning)Стоимость будет выше, чем RAG и Подскажите проект,Потому что вы настраиваете Модель, которая требует мощной вычислительной мощности, глубоких навыков машинного обучения и понимания Архитектуры Модели. в частности,Поскольку настройка требуется каждый раз, когда обновляется базовая версия Модели или поступает новая партия данных.,Стоимость обслуживания такого решения выше,и переносить самую свежую информацию о вариантах использования.
  • Обучение с нуля имеет самую высокую общую стоимость,Потому что команда должна нести ответственность за весь процесс обработки данных, обучения, настройки и развертывания машинного обучения. Для этого потребуется команда высококвалифицированных специалистов в области машинного обучения. Из-за необходимости частого переобучения Модели для ее обновления новой информацией, касающейся варианта использования.,Поэтому стоимость поддержки такого решения очень высока.

Будьте гибкими в изменении, давайте рассмотрим ваши варианты обновлений и изменений.

  • Подскажите проект(Prompt Engineering) Очень высокая гибкость, поскольку вам нужно изменить шаблон приглашения только в зависимости от изменений в вашем большом сценарии использования Модели.
  • Генерация улучшений поиска(Retrieval Augmented Generation,RAG) Максимальная гибкость в плане изменений Архитектуры. Вы можете самостоятельно изменить Embedding Модель, векторное хранилище LLM оказывают небольшое или умеренное влияние на другие компоненты. Это также обеспечивает гибкость для добавления в процесс дополнительных компонентов, таких как сложные авторизации, не затрагивая другие компоненты.
  • тонкая настройка(Fine-tuning)Низкая адаптивность к изменениям.,Потому что любые изменения входных данных требуют еще одного раунда тонкой настройки.,Это может быть очень сложным и трудоемким процессом. также,Адаптация одной и той же точно настроенной модели к различным вариантам использования также требует больших усилий.,потому что相同的Модельмасса{/} Параметры могут работать плохо в других областях.
  • Обучение с нуля предлагает минимальную гибкость. Потому что в этом случае,Модель построена с нуля.,Обновление Модели запускает новый цикл переобучения. Можно сказать,Мы также можем точно настроить Модель вместо того, чтобы переобучать ее с нуля.,Однако точность будет разной.

3. Резюме

Как показывают все приведенные выше сравнения, явного победителя на самом деле нет. Практическое применение зависит от разработки генеративных AI решениечасКакие показатели являются наиболее важными для вашей организации?

Подводя итог вышесказанному, руководство по выбору правильного подхода к генеративному ИИ:

  • Вам нужна большая гибкость при изменении большого шаблона приглашения «Модели».,и ваш вариант использования не содержит большого количества контекста предметной области,请使用Подскажите проект(Prompt Engineering)。
  • 使用Генерация улучшений поиска(Retrieval Augmented Generation,RAG)час,Вы можете поддерживать высокое качество вывода,,Получите высочайшую степень гибкости при изменении различных компонентов (данные исходники, встраивания, большие модели, векторные движки).
  • 使用тонкая настройка(Fine-tuning)час,У вас есть лучший контроль над сборкой и управлением версиями Модели. Когда термины, специфичные для предметной области, очень важны для данных (например, право, биология и т. д.),Это может быть очень полезно.
  • Если ни один из вышеперечисленных способов вам не помог,И у вас есть возможность построить сеть с триллионами тщательно проверенных токенизированных образцов, передовой аппаратной инфраструктурой и командой высококвалифицированных экспертов по машинному обучению.,Затем вы сможете обучить базовую большую Модель с нуля. конечно,Это требует достаточно дорогих бюджетных и временных затрат на внедрение и внедрение приложения.

📚️ Справочные ссылки:

boy illustration
Последний выпуск 2023 года, самое полное руководство по обучению Spring Boot во всей сети (с интеллект-картой).
boy illustration
[Решено — Практическая работа] SaTokenException: запрос не может быть получен в контексте, отличном от Интернета. Решение проблем — Практическая работа.
boy illustration
HikariPool-1 - Connection is not available, request timed out after 30000ms
boy illustration
Power Query: автоматическое суммирование ежемесячных данных с обновлением одним щелчком мыши.
boy illustration
установка Ubuntu в среде npm
boy illustration
3 Бесплатные системы управления складом (WMS) .NET с открытым исходным кодом
boy illustration
Глубокое погружение в библиотеку Python Lassie: мощный инструмент для автоматизации извлечения метаданных
boy illustration
Объяснение прослушивателя серии Activiti7 последней версии 2023 года
boy illustration
API-интерфейс Jitu Express для электронных счетов-Express Bird [просто для понимания]
boy illustration
Каковы архитектуры микросервисов Java. Серверная часть плавающей области обслуживания
boy illustration
Описание трех режимов жизненного цикла службы внедрения зависимостей Asp.net Core.
boy illustration
Java реализует пользовательские аннотации для доступа к интерфейсу без проверки токена.
boy illustration
Серверная часть Unity добавляет поддержку .net 8. Я еще думал об этом два дня назад, и это сбылось.
boy illustration
Проект с открытым исходным кодом | Самый элегантный метод подписки на публичные аккаунты WeChat на данный момент
boy illustration
Разрешения роли пользователя Gitlab Гость, Репортер, Разработчик, Мастер, Владелец
boy illustration
Spring Security 6.x подробно объясняет механизм управления аутентификацией сеанса в этой статье.
boy illustration
[Основные знания ASP.NET] — Аутентификация и авторизация — Использование удостоверений для аутентификации.
boy illustration
Соединение JDBC с базой данных MySQL в jsp [легко понять]
boy illustration
[Уровень няни] Полный процесс развертывания проекта Python (веб-страницы Flask) в Docker.
boy illustration
6 способов чтения файлов свойств, рекомендуем собрать!
boy illustration
Графическое объяснение этапа строительства проекта IDEA 2021 Spring Cloud (базовая версия)
boy illustration
Подробное объяснение технологии междоменного запроса данных JSONP.
boy illustration
Учебное пособие по SpringBoot (14) | SpringBoot интегрирует Redis (наиболее полный во всей сети)
boy illustration
Подробное объяснение механизма подтверждения выпуска сообщений RabbitMQ.
boy illustration
На этот раз полностью поймите протокол ZooKeeper.
boy illustration
Реализуйте загрузку файлов с использованием минимального WEB API.
boy illustration
Демо1 Laravel5.2 — генерация и хранение URL-адресов
boy illustration
Spring boot интегрирует Kafka и реализует отправку и потребление информации (действительно при личном тестировании)
boy illustration
Мысли о решениях по внутренней реализации сортировки методом перетаскивания
boy illustration
Междоменный доступ к конфигурации nginx не может вступить в силу. Междоменный доступ к странице_Page