Criando transcrições de chamadas de clientes

Sistemas Multimodais com a API da OpenAI

James Chapman

Curriculum Manager, DataCamp

Introdução ao estudo de caso

Uma imagem de chatbot

$$

  • Engenheiro(a) de IA na DataCamp
  • Lida com mensagens de voz
  • Chatbot de suporte por voz

$$

$$

Equipe de suporte ao cliente na DataCamp

Sistemas Multimodais com a API da OpenAI

Introdução ao estudo de caso

Uma imagem de chatbot

Sistemas Multimodais com a API da OpenAI

Introdução ao estudo de caso

Etapa: transcrever áudio

Sistemas Multimodais com a API da OpenAI

Introdução ao estudo de caso

Etapa: detectar idioma

Sistemas Multimodais com a API da OpenAI

Introdução ao estudo de caso

Etapa: traduzir para inglês

Sistemas Multimodais com a API da OpenAI

Introdução ao estudo de caso

Etapa: gerar uma resposta

Sistemas Multimodais com a API da OpenAI

Introdução ao estudo de caso

Etapa: responder no idioma original

Sistemas Multimodais com a API da OpenAI

Introdução ao estudo de caso

Etapa: moderação

Sistemas Multimodais com a API da OpenAI

Plano do estudo de caso

$$

$$

  1. Transcrever o áudio em texto
  2. Detectar o idioma
  3. Traduzir para inglês
  4. Refinar o texto

$$

Etapa: traduzir para inglês

Sistemas Multimodais com a API da OpenAI

Etapa 1: transcrever áudio

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)
Sistemas Multimodais com a API da OpenAI

Etapa 1: transcrever áudio

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

$$

Transcrição em ucraniano

Sistemas Multimodais com a API da OpenAI

Etapa 2: detectar idioma

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
Sistemas Multimodais com a API da OpenAI

Etapa 3: traduzir para inglês

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
Sistemas Multimodais com a API da OpenAI

Etapa 3: traduzir para inglês

print(translated_text)

Texto traduzido - bruto

Sistemas Multimodais com a API da OpenAI

Etapa 3: traduzir para inglês

print(translated_text)

Texto traduzido (destacado) - bruto

Sistemas Multimodais com a API da OpenAI

Etapa 4: refinar o texto

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
Sistemas Multimodais com a API da OpenAI

Etapa 4: refinar o texto

print(corrected_text)

Texto corrigido (destacado)

Sistemas Multimodais com a API da OpenAI

Recapitulando

$$

  • Transcreveu o áudio
  • Detectou e traduziu o idioma
  • Refinou o texto

$$

  • Chamou a OpenAI API quatro vezes ⭐

Transcrição em ucraniano

Texto traduzido (destacado) - bruto

Texto corrigido (destacado)

Sistemas Multimodais com a API da OpenAI

Hora de praticar!

Sistemas Multimodais com a API da OpenAI

Preparing Video For Download...