Узнайте, как создать аудиоприложение LangChain на Python всего за 5 минут!

В этом руководстве вы узнаете, как импортировать аудиоданные с помощью Langchain и разработать приложение, способное отвечать на запросы об аудиофайле, благодаря новейшей интеграции LangChain с AssemblyAI.

Что такое LangChain?

Разработанная Харрисоном Чейзом и дебютировавшая в октябре 2022 г. LangChain представляет собой платформу с открытым исходным кодом, предназначенную для создания надежных приложений на основе больших языковых моделей, таких как чат-боты типа ChatGPT и различные специализированные приложения.

Langchain призвана вооружить инженеров по обработке данных всеобъемлющим набором инструментов для использования больших языковых моделей в различных областях применения, таких как чат-боты, автоматизированные ответы на вопросы, резюмирование текстов и т.д.

Подробнее о LangChain и больших языковых моделях (LLM) читайте в другом моем учебном пособии.

AssemblyAI предлагает самый быстрый путь к аудиорешениям на базе ИИ. Воспользуйтесь простым API, чтобы подключиться к готовым моделям ИИ, предназначенным для транскрипции и понимания речи. Компания AssemblyAI, специализирующаяся на прикладном ИИ, занимается разработкой, обучением и внедрением передовых моделей ИИ, которые разработчики и команды разработчиков могут легко внедрять в свои приложения и продукты.

Учебное пособие

LangChain предлагает интеграцию с AssemblyAI, которая позволяет импортировать аудиоданные, используя всего несколько строк кода.

Создание и активация новой виртуальной среды

# Mac/Linux:
python3 -m venv venv
. venv/bin/activate
# Windows:
python -m venv venv
.\venv\Scripts\activate.bat

Установите пакет LangChain и пакет AssemblyAI Python

pip install langchain
pip install assemblyai

Установите свой API-ключ AssemblyAI. Вы можете получить свой бесплатный API-ключ здесь

[Примечание: В данном учебном примере мы будем использовать ссылку на аудиофайл в формате mp3. Аудиозапись представляет собой интервью с Питером ДиКарло, доцентом кафедры гигиены окружающей среды и инженерии Университета Джона Хопкинса, в котором он обсуждает влияние канадских лесных пожаров на качество воздуха в США. В интервью рассматриваются факторы, способствующие распространению дыма, риски для здоровья, связанные с высоким содержанием твердых частиц в воздухе, уязвимые группы населения, а также возможность ухудшения ситуации в связи с изменением климата].

Создайте python-файл demo.py и добавьте в него следующий код.

import assemblyai as aai

# replace with your API token
aai.settings.api_key = f"Your API Key"

# URL of the file to transcribe
FILE_URL = "https://github.com/AssemblyAI-Examples/audio-examples/raw/main/20230607_me_canadian_wildfires.mp3"

transcriber = aai.Transcriber()
transcript = transcriber.transcribe(FILE_URL)

print(transcript.text)

Теперь запустите приложение с помощью следующей команды.

Python3 demo.py

Вы должны увидеть расшифровку аудиоссылки, которую мы указали в заявке.

Добавим возможность задавать вопросы и отвечать на них с помощью OpenAI

Получите ключ API OpenAI и установите его.

На терминале в папке с приложением установите ключ API OPENAI.

export OPENAI_API_KEY=<Your API Key>

Вернитесь к файлу demo.py и измените код для работы с форматом вопросов и ответов.

from langchain.document_loaders import AssemblyAIAudioTranscriptLoader
from langchain.llms import OpenAI
from langchain.chains.question_answering import load_qa_chain

FILE_URL = "https://github.com/AssemblyAI-Examples/audio-examples/raw/main/20230607_me_canadian_wildfires.mp3"

loader = AssemblyAIAudioTranscriptLoader(FILE_URL)
docs = loader.load()

llm = OpenAI()
qa_chain = load_qa_chain(llm, chain_type="stuff")

answer = qa_chain.run(input_documents=docs,
                      question="Where did the wildfire start?")
print(answer)

Запустите приложение командой Python3 demo.py и вы увидите следующий результат. Это должен быть ответ на ваш вопрос.

Лесные пожары начались в Канаде.

Изменим вопрос еще раз. Спросим, как звали профессора, которого вызвали рассказать о лесных пожарах в Канаде.

Ответ должен быть Питер ДиКарло.

Спросим, как это повлияло на здоровье людей?
Ниже приводится ответ, который вы должны получить.

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

Продолжайте задавать вопросы, связанные с аудио, и чат-бот будет отвечать на ваши вопросы.

Надеюсь, этот небольшой и простой учебник помог вам научиться настраивать виртуальную среду, устанавливать необходимые пакеты и писать код на Python для расшифровки аудиофайлов. Использование LangChain и AssemblyAI делает его более уникальным. Более того, вы интегрировали API OpenAI и добавили в свое приложение функцию ответа на вопросы, превратив его не просто в инструмент транскрипции, а в интерактивную платформу для анализа аудиоданных.

+1
0
+1
0
+1
0
+1
0
+1
0

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *