Пошаговое руководство по использованию модели LLM с API Python, Streamlit и OpenAI

В нашем быстро развивающемся мире инновации в области искусственного интеллекта (ИИ), особенно генеративного ИИ и больших языковых моделей (LLM), являются обычным явлением. Эта постоянная эволюция технологии искусственного интеллекта меняет нашу повседневную жизнь. Таким образом, нам предлагается изучить способы использования этих LLM для упрощения и обогащения нашего опыта.

С этой целью я создал простое, но эффективное приложение Python, которое можно собрать за 10 минут. Цель этого приложения — использовать ключ OpenAI и соединить его с удобным интерфейсом, разработанным с помощью Streamlit, создав тем самым собственную компактную версию ChatGPT.

Теперь у вас может возникнуть вопрос: "Зачем мне личная версия ChatGPT?" Это правильное замечание — возможно, оно вам не понадобится. Однако знания и навыки, полученные в процессе, бесценны. Почему так? Ответ прост. Благодаря опыту, который вы приобретете в ходе этого упражнения, вы сможете разрабатывать другие приложения с использованием OpenAI, Python и Streamlit, а также создавать более продвинутые инструменты, такие как:

  • Автоматический генератор твитов в Твиттере на базе OpenAI
  • Автоматический генератор планов диеты на основе OpenAI, позволяющий продавать свои услуги другим.

И многое другое…

В сущности, процесс прост, но потенциальные результаты значительны.

Что такое Лангчейн?

LangChain — это фреймворк для разработки приложений на основе языковых моделей. Его дизайн направлен на то, чтобы приложения могли подключать языковую модель к другим источникам данных и взаимодействовать с ее средой. Платформа LangChain предоставляет два основных значения:

  1. Компоненты: LangChain предоставляет модульные абстракции для компонентов, необходимых для работы с языковыми моделями. Он также имеет наборы реализаций для всех этих абстракций, предназначенных для простоты использования.
  2. Цепочки конкретных вариантов использования. Их можно рассматривать как сборку компонентов определенным образом для наилучшего выполнения конкретного варианта использования. Эти цепочки предоставляют интерфейс более высокого уровня, позволяющий людям легко начать работу с конкретным вариантом использования, и предназначены для настройки 1​.

LangChain работает со следующими основными типами данных и схемами:

  • Текст: основной интерфейс для взаимодействия с языковыми моделями.
  • Сообщения чата: основной интерфейс, через который конечные пользователи взаимодействуют с языковыми моделями, обычно через интерфейс чата.
  • Примеры: пары входных/выходных данных, представляющие входные данные для функции и ожидаемые выходные данные.
  • Документ: часть неструктурированных данных, состоящая из контента и метаданных​​.

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

Приложение

Задача приложения проста: текстовое поле для ввода сообщений, кнопка для отправки запросов в API OpenAI и информационное поле для отображения и визуализации ответа. Это так просто.

Каковы различные части приложения?

  • LangChain: LLM Framework
  • OpenAI: ​​большая языковая модель
  • Streamlit: веб-фреймворк
  • Вы: Суфлер (P.S. Ссылка за вами — это маленькая шутка, но движок настоящий и удивительный).

Langchain и OpenAI совместно разрабатывают серверную часть приложения, а веб-фреймворк Streamlit создает внешний интерфейс. Благодаря удобному интерфейсу на основе Streamlit пользователи могут вводить подсказки или «вопросы» для взаимодействия с большой языковой моделью OpenAI.

Шаг 1: Создайте ключ OpenAI

Чтобы создать это приложение, вам сначала понадобится ключ OpenAI. Это просто.

  • Перейти на сайт https://openai.com/
  • Создайте учетную запись или войдите
  • Нажмите на «API»

  • Нажмите на свое имя (в правом верхнем углу), а затем на «Просмотреть ключи API».
  • Создать новый секретный ключ
  • Если это еще не сделано, добавьте кредитную карту для использования OpenAI API.

Шаг 2: Кодирование

Лично я использую Anaconda3 для написания кода, но не стесняйтесь использовать любую программу, которую вы уже установили. Если вы предпочитаете не устанавливать дополнительное ПО, настоятельно рекомендую Google Colab (https://colab.research.google.com/). Он бесплатен для использования и полностью соответствует требованиям этого руководства.

Всего в коде 13 строк кода!

pip install streamlit openai langchain

import streamlit as st
from langchain.llms import OpenAI

st.title("Your own ChatGPT based on Langchain and OpenAI")

openai_api_key = "YOUR-OWN-OPEN-AI-KEY"

def generate_response(input_text):
  llm = OpenAI(temperature=0.8, openai_api_key=openai_api_key)
  st.info(llm(input_text))

with st.form('my_form'):
  text = st.text_area("Enter your question")
  submitted = st.form_submit_button('Submit')
  if submitted:
    generate_response(text)

Шаг 3. Проверка результата

В дальнейшем результат будет виден менее чем через 1 минуту. Начните с создания файла Python с именем «streamlit_app.py» и запустите его с помощью следующей команды. Вот и все — ни лишнего, ни меньше. Теперь у вас есть собственный компактный языковой помощник.

streamlit run streamlit_app.py

Заключение

В заключение в статье показано, как за 10 минут создать приложение Langchain с использованием Python, Streamlit и модели LLM OpenAI. Используя эти технологии, вы можете создавать персонализированные приложения с огромными потенциальными результатами.

Платформа Langchain предоставляет модульные абстракции и цепочки для конкретных вариантов использования для эффективного взаимодействия с языковыми моделями.

В статье дана пошаговая инструкция.

Начните создавать собственного языкового помощника сегодня и раскройте преобразующую силу языковых моделей.

Мои самые последние посты:

Вам понравилось? Следуй за мной: Кристоф Аттен

Вы можете найти меня на Medium, Twitter и LinkedIn. Давайте вместе наслаждаться наукой о данных, машинным обучением и инновациями!

Если вам понравилась эта статья и вы хотели бы поддержать мою работу, вы можете угостить меня кофе, нажав на ссылку в конце этого поста:BuyMeACoffee

P.S. Если вы нажмете кнопку «Мне нравится» или оставите комментарий, мое сердце, занимающееся наукой о данных, сделает удар или два, если вы нажмете его дважды ;)



Подпишитесь на DDIntel Здесь.

Посетите наш сайт здесь: https://www.datadriveninvestor.com

Присоединяйтесь к нашей сети здесь: https://datadriveninvestor.com/collaborate