LangChain LLM — горячая дискуссия в городе. Получите представление о том, что это такое и как вы можете начать с ним работать.
С введением больших языковых моделей (LLM) обработка естественного языка стала предметом разговоров в Интернете. Новые приложения разрабатываются ежедневно благодаря LLM, таким как ChatGPT и LangChain.
LangChain — это среда Python с открытым исходным кодом, позволяющая разработчикам разрабатывать приложения на основе больших языковых моделей. Его приложениями являются чат-боты, обобщение, генеративные вопросы и ответы и многое другое.
В этой статье будет представлено введение в LangChain LLM. В нем будут рассмотрены основные понятия, его сравнение с другими языковыми моделями и способы начала работы с ним.
Понимание LangChain LLM
Прежде чем объяснять, как работает LangChain, сначала вам нужно понять как работают большие языковые модели. Большая языковая модель — это тип искусственного интеллекта (ИИ), который использует глубокое обучение для обучения моделей машинного обучения на больших данных, состоящих из текстовых, числовых и кодовых данных.
Огромный объем данных позволяет модели изучать существующие шаблоны и отношения между словами, цифрами и символами. Эта функция позволяет модели выполнять ряд задач, таких как:
- Генерация текстов, языковой перевод, написание творческого, технического и академического контента, а также точные и актуальные ответы на вопросы.
- Обнаружение объектов на изображениях.
- Обобщение книг, статей и научных работ.
Наиболее существенным ограничением LLM является то, что модели носят очень общий характер. Эта особенность означает, что, несмотря на их способность эффективно выполнять несколько задач, они могут иногда обеспечивать общие ответы на вопросы или подсказки, требующие опыта и глубоких знаний предметной области, а не конкретные ответы.
Платформа LangChain, разработанная Харрисоном Чейзом в конце 2022 года, предлагает инновационный подход к LLM. Процесс начинается с предварительной обработки текстов набора данных путем разбиения его на более мелкие части или резюме. Затем сводки встраиваются в векторное пространство. Модель получает вопрос, ищет сводки и предоставляет соответствующий ответ.
Метод предварительной обработки LangChain является важной функцией, которая неизбежна по мере того, как LLM становятся все более мощными и требуют больших объемов данных. Этот метод в основном используется в случаях кода и семантического поиска, поскольку он обеспечивает сбор данных в реальном времени и взаимодействие с LLM.
LangChain LLM против. Другие языковые модели
Следующий сравнительный обзор направлен на то, чтобы выделить уникальные функции и возможности, которые отличают LangChain LLM от других существующих языковых моделей на рынке:
- Память: Некоторые LLM имеют короткую память, что обычно приводит к потере контекста, если подсказки превышают лимит памяти. Однако LangChain предоставляет предыдущие подсказки и ответы чата, решая проблему ограничения памяти. История сообщений позволяет пользователю повторить предыдущие сообщения LLM, чтобы повторить предыдущий контекст.
- Переключение LLM: по сравнению с другими LLM, которые блокируют ваше программное обеспечение с помощью API одной модели, LangChain предоставляет абстракцию, упрощающую переключение LLM или интеграцию нескольких LLM в ваше приложение. Это полезно, когда вы хотите обновить возможности своего программного обеспечения с помощью компактной модели, такой как StableLM от Stability AI, скажем, от OpenAI GPT-3.5.
- Интеграция: Интеграция LangChain в ваше приложение проста по сравнению с другими LLM. Он обеспечивает конвейерные рабочие процессы через цепи и агенты, что позволяет быстро интегрировать LangChain в ваше приложение. С точки зрения линейных конвейеров, цепи — это объекты, которые по существу соединяют многочисленные части. Агенты более продвинуты, позволяя вам выбирать, как компоненты должны взаимодействовать, используя бизнес-логику. Например, вы можете захотеть использовать условную логику для определения следующего плана действий на основе результатов LLM.
- Передача данных: Из-за общего текстового характера LLM обычно сложно передать данные в модель. LangChain решает эту проблему, используя индексы. Индексы позволяют приложению импортировать данные в переменных форматах и хранить их таким образом, чтобы можно было построчно обслуживать их в LLM.
- Ответы: LangChain предоставляет инструменты синтаксического анализатора вывода для предоставления ответов в подходящем формате, в отличие от других LLM, чьи модельные ответы состоят из общего текста. При использовании ИИ в приложении желательно иметь структурированный ответ, который можно запрограммировать.
Начало работы с LangChain LLM
Теперь вы узнаете, как реализовать LangChain в реальном сценарии использования, чтобы понять, как это работает. Перед началом разработки необходимо настроить среду разработки.
Настройка среды разработки
Первый, создать виртуальную среду и установите следующие зависимости:
- OpenAI: для интеграции API GPT-3 в ваше приложение.
- LangChain: чтобы интегрировать LangChain в ваше приложение.
Используя pip, выполните команду ниже, чтобы установить зависимости:
pipenv установить langchain openai
Приведенная выше команда устанавливает пакеты и создает виртуальную среду.
Импорт установленных зависимостей
Сначала импортируйте необходимые классы, такие как LLMChain, OpenAI, РазговорЦепь, и Шаблон подсказки из длинная цепь упаковка.
от длинная цепь Импортировать ConversationChain, OpenAI, PromptTemplate, LLMChain
от langchain.memory Импортировать РазговорBufferWindowMemory
Классы LangChain определяют и выполняют цепочки языковых моделей.
Доступ к ключу API OpenAI
Затем получите ключ API OpenAI. Чтобы получить доступ к ключу API OpenAI, у вас должна быть учетная запись OpenAI, а затем перейдите к API-платформа OpenAI.
На панели инструментов щелкните значок «Профиль». Затем нажмите кнопку Просмотр ключей API кнопка.
Далее нажмите на Создать новый секретный ключ кнопку, чтобы получить новый ключ API.
Введите запрошенное имя ключа API.
Вы получите Секретный ключ быстрый.
Скопируйте и сохраните ключ API в безопасном месте для использования в будущем.
Разработка приложения с использованием LangChain LLM
Теперь вы приступите к разработке простого приложения для чата следующим образом:
# Настроить шаблон LLM
шаблон = Assistant — это большая языковая модель, обученная OpenAI.{история}
Человек: {human_input}
Ассистент:
приглашение = Шаблон приглашения (input_variables=["история", "человеческий_ввод"], шаблон=шаблон)
Далее вы загрузите цепочку ChatGPT, используя сохраненный ранее ключ API.
chatgpt_chain = LLMChain(
llm=OpenAI(openai_api_key="OPENAI_API_KEY", температура =0),
подсказка = подсказка,
подробный =Истинный,
memory=ConversationBufferWindowMemory (k=2),
)
# Предсказать предложение, используя цепочку chatgpt
вывод = чатgpt_chain.predict(
человек_ввод ="Что такое MakeUseOf?"
)
# Показать ответ модели
печать (вывод)
Этот код загружает цепочку LLM с ключом API OpenAI и шаблоном подсказки. Затем предоставляется пользовательский ввод, и его вывод отображается.
Выше ожидаемый результат.
Растущее влияние LLM
Потребление LLM быстро растет и меняет то, как люди взаимодействуют с машинами знаний. Такие платформы, как LangChain, находятся на переднем крае, предоставляя разработчикам простой и удобный способ предоставления LLM приложениям. Генеративные модели искусственного интеллекта, такие как ChatGPT, Bard и Hugging Face, также не остались в стороне в развитии приложений LLM.