Desenvolver um aplicativo de chat baseado em áudio

Concluído

Para desenvolver um aplicativo cliente que se envolva em chats baseados em áudio com um modelo multimodal, você pode usar as mesmas técnicas básicas usadas para chats baseados em texto. Você precisa de uma conexão com o ponto de extremidade em que o modelo é implantado e usa esse ponto de extremidade para enviar prompts que consistem em mensagens para o modelo e processar as respostas.

A diferença chave é que os prompts para um chat baseado em áudio incluem mensagens de usuário multipartes que contêm um item de conteúdo de texto e um item de conteúdo de áudio.

Diagrama de um prompt de várias partes sendo enviado para um modelo.

A representação JSON de um prompt que inclui uma mensagem de usuário de várias partes tem esta aparência:

{ 
    "messages": [ 
        { "role": "system", "content": "You are a helpful assistant." }, 
        { "role": "user", "content": [  
            { 
                "type": "text", 
                "text": "Transcribe this audio:" 
            },
            { 
                "type": "audio_url",
                "audio_url": {
                    "url": "https://....."
                }
            }
        ] } 
    ]
} 

O item de conteúdo de áudio pode ser:

  • Uma URL para um arquivo de áudio em um site.
  • Dados de áudio binários

Ao usar dados binários para enviar um arquivo de áudio local, o conteúdo audio_url assume a forma de um valor codificado em base64 em um formato de URL de dados:

{
    "type": "audio_url",
    "audio_url": {
       "url": "data:audio/mp3;base64,<binary_audio_data>"
    }
}

Dependendo do tipo de modelo e de onde você o implantou, você pode usar a Inferência de Modelo de IA do Microsoft Azure ou as APIs do OpenAI para enviar prompts baseados em áudio. Essas bibliotecas também fornecem SDKs específicos de linguagem que abstraem as APIs REST subjacentes.

No exercício a seguir neste módulo, você pode usar o SDK do Python ou do .NET para a API de Inferência de Modelo de IA do Azure e a API OpenAI para desenvolver um aplicativo de chat habilitado para áudio.