Найти в Дзене
10,3 тыс подписчиков

🟥 Как автоматизировать создание контента для YouTube и блога с помощью LangChain и OpenAI


Часть 1. Базовые настройки
Шаг 1. Настройка среды
Прежде чем начать, нужно убедиться, что у нас установлены все необходимые пакеты.

🔴LangChain: фреймворк, упрощающий использование больших языковых моделей.
🔴OpenAI: большая языковая модель, которую мы будем использовать.
🔴Streamlit: фреймворк для создания веб-приложений на Python.
🔴Python-dotenv: пакет для управления переменными окружения.
Чтобы установить эти пакеты, откройте терминал и запустите:
pip install langchain openai streamlit python-dotenv

Шаг 2. Получение API-ключа OpenAI
Далее вам необходимо получить API-ключ OpenAI. Это уникальный ключ, открывающий доступ к модели GPT-3 (GPT-3.5/ChatGPT, GPT-4). После регистрации учетной записи в OpenAI вы найдете API-ключ на дашборде.

Полученный ключ нужно надежно сохранить в файле .env. В каталоге проекта создайте файл .env и добавьте в него следующую строку:
OPENAI_API_KEY=ваш_ключ_openai

Замените ваш_ключ_openai на свой действительный ключ OpenAI. Этот файл будет использоваться для безопасного хранения API-ключа.

Шаг 3. Настройка файла app.py и импорт библиотек
Создадим главный файл Python, app.py. В нем и будем разрабатывать маркетингового ИИ-помощника.

Начнем с импорта необходимых библиотек и загрузки переменных среды:

from langchain.llms import OpenAI
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain, SimpleSequentialChain, SequentialChain
import os
from dotenv import load_dotenv
load_dotenv()

В этих строках кода импортируется класс OpenAI из модуля langchain.llms, который позволяет взаимодействовать с моделью GPT. Кроме того, импортируются классы PromptTemplate и LLMChain, которые будут использоваться для создания промптов и цепочек.

Функция load_dotenv() загружает переменные среды OPENAI_API_KEY из файла .env.

Часть 2. Компоновочные блоки LangChain
Шаг 4. Обзор основных компонентов
Прежде чем приступить к написанию кода, сделаем краткий обзор компонентов, которые будем использовать.

🔵Большая языковая модель (LLM): экземпляр модели GPT-3.
🔵Шаблон промптов (Prompt Template): простая инструкция для LLM. Она принимает входные переменные и использует их в шаблоне.
🔵Цепочка (Chain): комбинация LLM и шаблона промптов. Она является самой малой рабочей единицей в LangChain.

Эти три компонента будут использованы для разработки генератора публикаций в блоге.

Шаг 5. Создание первой LLMChain
Чтобы создать первую цепочку, нужно инициализировать LLM, разработать шаблон промптов, а затем объединить их в цепочку.

Настройте LLM и первый шаблон промптов:

# Пример LLMChain

# Модель
llm = OpenAI(temperature=0.9)

# Промпт
blog_prompt_template = PromptTemplate(
input_variables = ['product_description'],
template = 'Write a blog post on {product_description}'
)

# Цепочка
blog_chain = LLMChain(llm=llm, prompt=blog_prompt_template, verbose=True)

# Запуск
product_description = 'best eco-friendly coffee'
blog_chain.run(product_description)

СОВЕТ: ПАРАМЕТР TEMPERATURE УПРАВЛЯЕТ РАНДОМНОСТЬЮ ВЫХОДНЫХ ДАННЫХ МОДЕЛИ. ОН ПРИНИМАЕТ ЗНАЧЕНИЯ ОТ 0 ДО 1, ГДЕ МЫ УСТАНОВИЛИ ЗНАЧЕНИЕ 0,9, ПОСКОЛЬКУ ХОТИМ ПОЛУЧИТЬ МНОГО НОВЫХ ИДЕЙ, В ТО ВРЕМЯ КАК МЕНЬШЕЕ ЗНАЧЕНИЕ, НАПРИМЕР 0, ДЕЛАЕТ МОДЕЛЬ БОЛЕЕ ДЕТЕРМИНИРОВАННОЙ.

В приведенном выше коде настраивается LLM и создается шаблон промптов, который принимает описание продукта и генерирует в блоге публикацию о нем. Затем эти два шаблона объединяются, чтобы сформировать цепочку. Потом запускается LLMChain с product_description.

Часть 3. Освоение основ цепочек в LangChain
Шаг 6. Создание SimpleSequentialChain


2 минуты