Пошаговое руководство по использованию модели LLM с API Python, Streamlit и OpenAI
В нашем быстро развивающемся мире инновации в области искусственного интеллекта (ИИ), особенно генеративного ИИ и больших языковых моделей (LLM), являются обычным явлением. Эта постоянная эволюция технологии искусственного интеллекта меняет нашу повседневную жизнь. Таким образом, нам предлагается изучить способы использования этих LLM для упрощения и обогащения нашего опыта.
С этой целью я создал простое, но эффективное приложение Python, которое можно собрать за 10 минут. Цель этого приложения — использовать ключ OpenAI и соединить его с удобным интерфейсом, разработанным с помощью Streamlit, создав тем самым собственную компактную версию ChatGPT.
Теперь у вас может возникнуть вопрос: "Зачем мне личная версия ChatGPT?" Это правильное замечание — возможно, оно вам не понадобится. Однако знания и навыки, полученные в процессе, бесценны. Почему так? Ответ прост. Благодаря опыту, который вы приобретете в ходе этого упражнения, вы сможете разрабатывать другие приложения с использованием OpenAI, Python и Streamlit, а также создавать более продвинутые инструменты, такие как:
- Автоматический генератор твитов в Твиттере на базе OpenAI
- Автоматический генератор планов диеты на основе OpenAI, позволяющий продавать свои услуги другим.
И многое другое…
В сущности, процесс прост, но потенциальные результаты значительны.
Что такое Лангчейн?
LangChain — это фреймворк для разработки приложений на основе языковых моделей. Его дизайн направлен на то, чтобы приложения могли подключать языковую модель к другим источникам данных и взаимодействовать с ее средой. Платформа LangChain предоставляет два основных значения:
- Компоненты: LangChain предоставляет модульные абстракции для компонентов, необходимых для работы с языковыми моделями. Он также имеет наборы реализаций для всех этих абстракций, предназначенных для простоты использования.
- Цепочки конкретных вариантов использования. Их можно рассматривать как сборку компонентов определенным образом для наилучшего выполнения конкретного варианта использования. Эти цепочки предоставляют интерфейс более высокого уровня, позволяющий людям легко начать работу с конкретным вариантом использования, и предназначены для настройки 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 предоставляет модульные абстракции и цепочки для конкретных вариантов использования для эффективного взаимодействия с языковыми моделями.
В статье дана пошаговая инструкция.
Начните создавать собственного языкового помощника сегодня и раскройте преобразующую силу языковых моделей.
Мои самые последние посты:
- ChatGPT против Bard против Google Gemini: краткое сравнительное исследование языковых моделей ИИ
- Магия автономного ИИ: локальное внедрение GPT4All с помощью Python
- Ответы на вопросы о любых типах документов с использованием Langchain (не GPT3/GPT4)
Вам понравилось? Следуй за мной: Кристоф Аттен
Вы можете найти меня на Medium, Twitter и LinkedIn. Давайте вместе наслаждаться наукой о данных, машинным обучением и инновациями!
Если вам понравилась эта статья и вы хотели бы поддержать мою работу, вы можете угостить меня кофе, нажав на ссылку в конце этого поста:BuyMeACoffee
P.S. Если вы нажмете кнопку «Мне нравится» или оставите комментарий, мое сердце, занимающееся наукой о данных, сделает удар или два, если вы нажмете его дважды ;)
Подпишитесь на DDIntel Здесь.
Посетите наш сайт здесь: https://www.datadriveninvestor.com
Присоединяйтесь к нашей сети здесь: https://datadriveninvestor.com/collaborate