Для просмотра этого контента требуется подписка на Jove Войдите в систему или начните бесплатную пробную версию.
Method Article
В этом протоколе качество отклика базовой большой языковой модели улучшается за счет дополнения рецензируемыми предметно-ориентированными научными статьями с помощью механизма векторного встраивания. Кроме того, предоставляется код, помогающий сравнивать производительность больших языковых моделей.
Большие языковые модели (LLM) стали популярным ресурсом для генерации информации, релевантной запросу пользователя. Такие модели создаются в результате ресурсоемкого процесса обучения с использованием обширного статического корпуса текстовых данных. Эта статичная природа приводит к ограничениям для внедрения в областях с быстро меняющимися знаниями, конфиденциальной информацией и конфиденциальными данными. В данной работе описываются методы дополнения LLM общего назначения, известных как базовые модели, информацией, специфичной для предметной области, с использованием подхода, основанного на встраиваниях, для включения актуальных, рецензируемых научных рукописей. Это достигается с помощью инструментов с открытым исходным кодом, таких как Llama-Index, и общедоступных моделей, таких как Llama-2, для обеспечения максимальной прозрачности, конфиденциальности и контроля со стороны пользователей, а также воспроизводимости. Хотя в качестве примера используются научные рукописи, этот подход может быть распространен на любой источник текстовых данных. Кроме того, обсуждаются методы оценки производительности модели после этого усовершенствования. Эти методы позволяют быстро разрабатывать LLM-системы для узкоспециализированных областей независимо от полноты информации в учебном корпусе.
Большие языковые модели (LLM), такие как ChatGPT от OpenAI или Llama от Meta AI, быстро стали популярным ресурсом для создания текста, релевантного пользовательскому запросу. Первоначально функционируя для прогнозирования следующих лексических единиц в последовательности, эти модели эволюционировали, чтобы понимать контекст, кодировать клиническую информацию и демонстрировать высокую производительность при выполнении различных задач 1,2,3,4. Несмотря нато, что языковые модели предшествуют таким возможностям и их нынешнему уровню популярности на несколько десятилетий5, последние достижения в области глубокого обучения и вычислительных возможностей сделали предварительно обученные, высококачественные коммерческие LLM широко доступными для пользователей через веб-технологии и интерфейсы прикладных программ (API)6. Тем не менее, существует несколько заметных ограничений для потребления LLM в этом формате.
Задача 1: Статический учебный корпус
LLM обучаются на огромном (например, два триллиона токенов в случае Llama 27), но статичном массиве текстовых данных. Это создает проблему для получения точных ответов, относящихся к областям, которые быстро развиваются или изменяются в литературе. При таком статическом подходе LLM потребовали бы частого переобучения, чтобы идти в ногу с новейшими данными, что непрактично и немасштабируемо. Более того, подсказки, требующие ответов на основе информации, отсутствующей в обучающих данных, могут помешать созданию полезного текста или привести к галлюцинациям. Случаи галлюцинаций или фабрикации фактов вызывают серьезные опасения по поводу надежности LLM, особенно в условиях, где точностьинформации имеет решающее значение.
Проблема 2: Недостаточная специфичность предметной области
Предварительно обученные модели часто создаются для общего использования, в то время как пользователям может потребоваться модель, специально оптимизированная для производительности в определенной области. Кроме того, вычислительные ресурсы и данные, необходимые для обучения модели de novo или выполнения значительной тонкой настройки, непомерно велики для многих пользователей.
Проблема 3: Отсутствие конфиденциальности
Пользователи, использующие приложения, связанные с конфиденциальными данными или служебной информацией, могут не захотеть или не иметь возможности использовать определенные услуги LLM, поскольку у них нет информации о том, как данные могут храниться или использоваться.
Проблема 4: Отсутствие гарантированной стабильности
Услуги с проприетарными LLM могут в любое время изменить доступные модели или поведение, что делает стабильность проблемой для реализации приложений, основанных на этих услугах.
Retrieval-augmented generation (RAG) — это метод, разработанный для повышения производительности LLM, особенно в запросах, связанных с информацией, находящейся за пределами обучающего корпуса модели10,11. Эти системы дополняют LLM, включая контекстную информацию, которую следует учитывать при формировании ответа на запрос пользователя. В различных недавних работах описываются области применения систем RAG и их потенциальные преимущества 12,13,14.
Цель метода, описанного в данной работе, состоит в том, чтобы продемонстрировать построение такой системы и предоставить исследователям основу для быстрого экспериментирования на предметно-специфичных дополненных LLM. Этот метод применим для пользователей, которые хотят дополнить LLM внешним текстовым источником данных. В частности, всеобъемлющей целью этого протокола является предоставление пошагового кода, который может быть расширен для различных практических экспериментов LLM и RAG без необходимости значительных технических знаний в области моделирования языка, хотя для применения этого подхода без модификаций требуется практическое знание Python. Для максимального контроля со стороны пользователей, прозрачности, переносимости и доступности решений используются общедоступные инструменты с открытым исходным кодом. Предлагаемая система решает ранее указанные проблемы следующим образом:
Решения 1 и 2: Статический обучающий корпус и недостаточная специфичность предметной области
Представленная методология использует подход RAG с использованием встраиваний для предоставления информации, специфичной для предметной области, не включенной в исходные обучающие данные. На высоком уровне модели встраивания преобразуют текст или другие данные в представление в виде векторного или одномерного массива чисел. Этот метод полезен, поскольку он преобразует семантическую информацию, содержащуюся в тексте, в плотную числовую форму. Проецируя пользовательский запрос в одно и то же пространство встраивания, можно использовать различные алгоритмы для вычисления расстояния15, а следовательно, и приблизительного семантического сходства, между пользовательским запросом и разделами текстовых документов. Таким образом, создание базы данных таких векторов из документов, разбитых на дискретные разделы, может облегчить поиск среди значительного числа документов текста, наиболее релевантного запросу пользователя (рис. 1). Этот подход может быть расширен на любой текстовый документ. В то время как другие подходы, такие как возможности онлайн-поиска, начинают внедряться для дополнения LLM, этот подход позволяет пользователям выбирать источники, которые считаются достаточно качественными для их сценария использования.
Решение 2: Отсутствие конфиденциальности
В этой реализации для хостинга использовалась безопасная облачная среда, в которой не было никаких пользовательских подсказок, сгенерированных ответов или других данных, покидающих эту экосистему. Однако весь код написан в не зависящей от платформы манере, чтобы гарантировать возможность замены другого поставщика облачных услуг или локального оборудования.
Решение 3: Отсутствие гарантированной стабильности
Этот подход использует библиотеки с открытым исходным кодом и фокусируется на дополнении LLM общедоступными весами, что обеспечивает более высокую степень прозрачности, стабильности и версионности, если это необходимо.
Полная схема предлагаемой нами системы показана на рисунке 2, а подробные инструкции по тиражированию этой или аналогичной системы изложены в разделе протокола. Дополнительным фактором при изменении поведения модели с помощью тонкой настройки или дополнения является оценка производительности. В моделях, генерирующих языки, это представляет собой уникальную проблему, поскольку многие традиционные метрики машинного обучения неприменимы. Несмотря на то, что существует множествометодов16, в этом исследовании для оценки точности и сравнения производительности до и после аугментации, а также с популярными альтернативными методами LLM использовались написанные экспертами вопросы с несколькими вариантами ответов (MCQ).
В сценарии использования, продемонстрированном в этой статье, векторное хранилище было сгенерировано с использованием опубликованных рекомендаций Рабочей группы17 Чикагского консенсуса. Эта экспертная группа была создана для разработки рекомендаций по лечению рака брюшины. Предметная область была выбрана в связи с тем, что она входит в область клинической компетенции исследователей. Доступ к набору статей был получен из онлайн-репозиториев журналов, включая Cancer and the Annals of Surgical Oncology. Для генерации встраивания из исходных документов была использована компактная (33,4 млн параметров) модель встраивания, созданная Пекинской академией искусственного интеллекта (BAAI, https://www.baai.ac.cn/english.html), bge-small-en. Полученная база данных затем была использована для дополнения базовых моделей Llama 2 и Open-AI7. Для удобства читателя код доступен через GitHub (https://github.com/AnaiLab/AugmentedLLM). Чтобы обеспечить воспроизводимость, рекомендуется использовать те же версии библиотек, которые используются в предоставленном списке требований, а также одну и ту же версию Python. Дополнительную информацию об установке или документацию по инструментам, используемым в следующих методах, можно найти на официальных веб-сайтах провайдеров для Python (https://www.python.org), git (https://git-scm.com), Llama-Index (https://llamaindex.ai) и Chroma (https://trychroma.com).
1. Предварительные требования: проверка кода и установка необходимых библиотек
2. Создание векторной базы данных с помощью Llama-Index
3. Дополнение модели ламы векторной базой данных, созданной в разделе 2
4. Программное сравнение альтернативных LLM
Набор из 22 публикаций из руководящих принципов управления Чикагской рабочей группы по консенсусу был использован для дополнения базовой модели Llama-7b model17. Документы были преобразованы в векторный индекс с помощью инструмента Llama-Index для создания Llama-2-7b-CCWG-...
Представленные здесь методы направлены на облегчение исследования предметно-ориентированных приложений LLM без необходимости обучения de novo или обширной тонкой настройки. По мере того, как LLM становятся областью значительного исследовательского интереса, подход...
У авторов нет конфликта интересов, о котором можно было бы заявить.
Эта работа была облегчена несколькими библиотеками с открытым исходным кодом, в первую очередь llama-index (https://www.llamaindex.ai/), ChromaDB (https://www.trychroma.com/) и LMQL (https://lmql.ai/).
Name | Company | Catalog Number | Comments |
pip3 version 22.0.2 | |||
Python version 3.10.12 |
Запросить разрешение на использование текста или рисунков этого JoVE статьи
Запросить разрешениеThis article has been published
Video Coming Soon
Авторские права © 2025 MyJoVE Corporation. Все права защищены