Создание транскриптов звонков клиентов

Мультимодальные системы с OpenAI API

James Chapman

Curriculum Manager, DataCamp

Введение в практический пример

Изображение чат-бота

$$

  • AI-инженер в DataCamp
  • Обрабатывает голосовые сообщения
  • Речевой чат-бот поддержки клиентов

$$

$$

Команда поддержки клиентов в DataCamp

Мультимодальные системы с OpenAI API

Введение в практический пример

Изображение чат-бота

Мультимодальные системы с OpenAI API

Введение в практический пример

Шаг: транскрибировать аудио

Мультимодальные системы с OpenAI API

Введение в практический пример

Шаг: определить язык

Мультимодальные системы с OpenAI API

Введение в практический пример

Шаг: перевести на английский

Мультимодальные системы с OpenAI API

Введение в практический пример

Шаг: сгенерировать ответ

Мультимодальные системы с OpenAI API

Введение в практический пример

Шаг: ответить на языке оригинала

Мультимодальные системы с OpenAI API

Введение в практический пример

Шаг: модерация

Мультимодальные системы с OpenAI API

План практического примера

$$

$$

  1. Транскрибировать аудио в текст
  2. Определить язык
  3. Перевести на английский
  4. Уточнить текст

$$

Шаг: перевести на английский

Мультимодальные системы с OpenAI API

Шаг 1: транскрибирование аудио

from openai import OpenAI

client = OpenAI(api_key="ENTER YOUR KEY HERE")

# Open the mp3 file
audio_file = open("recording.mp3", "rb")

# Create a transcript
response = client.audio.transcriptions.create(
                  model="whisper-1", 
                  file=audio_file)
Мультимодальные системы с OpenAI API

Шаг 1: транскрибирование аудио

# Extract and print the transcript
transcript = response.text
print(transcript)

$$

Транскрипт на украинском

Мультимодальные системы с OpenAI API

Шаг 2: определение языка

response = client.chat.completions.create(
    model="gpt-4o-mini",
    max_completion_tokens=5,

messages=[{"role": "user", "content": f"""Identify the language of the following text and respond only with the country code (e.g., 'en', 'uk', 'fr'): {transcript}"""}])
# Extract detected language language = response.choices[0].message.content print(language)
uk
Мультимодальные системы с OpenAI API

Шаг 3: перевод на английский

response = client.chat.completions.create(
    model="gpt-4o-mini",
    max_completion_tokens=300,
    messages=[
        {"role": "user", "content": f"""Translate this customer transcript
        from country code {language} to English: {transcript}"""}])

# Extract translated text
translated_text = response.choices[0].message.content
Мультимодальные системы с OpenAI API

Шаг 3: перевод на английский

print(translated_text)

Переведённый текст — необработанный

Мультимодальные системы с OpenAI API

Шаг 3: перевод на английский

print(translated_text)

Переведённый текст (с выделением) — необработанный

Мультимодальные системы с OpenAI API

Шаг 4: уточнение текста

response = client.chat.completions.create(
    model="gpt-4o-mini",
    max_completion_tokens=300,
    messages=[
    {"role": "user", 
     "content": f"""You are an AI assistant that corrects transcripts by fixing 
     misinterpretations, names, and terminology. Please refine the following
     transcript:\n\n{translated_text}"""}])

# Extract corrected text
corrected_text = response.choices[0].message.content
Мультимодальные системы с OpenAI API

Шаг 4: уточнение текста

print(corrected_text)

Исправленный текст (с выделением)

Мультимодальные системы с OpenAI API

Итоги

$$

  • Транскрибировали аудио
  • Определили и перевели язык
  • Уточнили текст

$$

  • OpenAI API вызван четыре раза ⭐

Транскрипт на украинском

Переведённый текст (с выделением) — необработанный

Исправленный текст (с выделением)

Мультимодальные системы с OpenAI API

Давайте потренируемся!

Мультимодальные системы с OpenAI API

Preparing Video For Download...