Desenvolver um aplicativo de bate-papo baseado em áudio

Concluído

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

A principal diferença é que os prompts para um chat baseado em áudio incluem mensagens de utilizador compostas por várias partes, contendo tanto um item de conteúdo de texto como um item de conteúdo de áudio.

Diagrama de um prompt de múltiplas partes sendo enviado a um modelo.

A representação JSON de um prompt que inclui uma mensagem de usuário com 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:

  • Um 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 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 o Microsoft Azure AI Model Inference ou APIs OpenAI para enviar prompts baseados em áudio. Essas bibliotecas também fornecem SDKs específicos do idioma que abstraem as APIs REST subjacentes.

No exercício a seguir neste módulo, você pode usar o SDK Python ou .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.