Esta página mostra como transcrever ficheiros de áudio em texto através da API Speech-to-Text no dispositivo isolado do Google Distributed Cloud (GDC).
O serviço de conversão de voz em texto da Vertex AI no dispositivo isolado do GDC reconhece a voz de ficheiros de áudio. A conversão de voz em texto converte o áudio detetado em transcrições de texto através da respetiva API pré-preparada.
Antes de começar
Antes de poder começar a usar a API Speech-to-Text, tem de ter um projeto com a API Speech-to-Text ativada e as credenciais adequadas. Também pode instalar bibliotecas cliente para ajudar a fazer chamadas para a API. Para mais informações, consulte o artigo Configure um projeto de reconhecimento de voz.
Transcreva áudio com o modelo predefinido
A conversão de voz em texto realiza o reconhecimento de voz. Envia o ficheiro de áudio a partir do qual quer reconhecer a voz diretamente como conteúdo no pedido da API. O sistema devolve o texto transcrito resultante na resposta da API.
Tem de fornecer um objeto de configuração RecognitionConfig
quando faz um pedido de reconhecimento de voz. Este objeto indica à API como processar os seus dados de áudio e que tipo de saída espera. Se um modelo não for especificado explicitamente neste objeto de configuração, o Speech-to-Text seleciona um modelo predefinido.
A funcionalidade de conversão de voz em texto no dispositivo isolado do GDC só suporta o modelo predefinido.
Siga estes passos para usar o serviço de conversão de voz em texto a partir de um script Python para transcrever a voz de um ficheiro de áudio:
Instale a versão mais recente da biblioteca cliente Speech-to-Text.
Defina as variáveis de ambiente necessárias num script Python.
Adicione o seguinte código ao script Python que criou:
import base64 from google.cloud import speech_v1p1beta1 import google.auth from google.auth.transport import requests from google.api_core.client_options import ClientOptions audience="https://ENDPOINT:443" api_endpoint="ENDPOINT:443" def get_client(creds): opts = ClientOptions(api_endpoint=api_endpoint) return speech_v1p1beta1.SpeechClient(credentials=creds, client_options=opts) def main(): creds = None try: creds, project_id = google.auth.default() creds = creds.with_gdch_audience(audience) req = requests.Request() creds.refresh(req) print("Got token: ") print(creds.token) except Exception as e: print("Caught exception" + str(e)) raise e return creds def speech_func(creds): tc = get_client(creds) content="BASE64_ENCODED_AUDIO" audio = speech_v1p1beta1.RecognitionAudio() audio.content = base64.standard_b64decode(content) config = speech_v1p1beta1.RecognitionConfig() config.encoding= speech_v1p1beta1.RecognitionConfig.AudioEncoding.ENCODING config.sample_rate_hertz=RATE_HERTZ config.language_code="LANGUAGE_CODE" config.audio_channel_count=CHANNEL_COUNT metadata = [("x-goog-user-project", "projects/PROJECT_ID")] resp = tc.recognize(config=config, audio=audio, metadata=metadata) print(resp) if __name__=="__main__": creds = main() speech_func(creds)
Substitua o seguinte:
ENDPOINT
: o ponto final de conversão de voz em texto que usa para a sua organização. Para mais informações, consulte o estado do serviço e os pontos finais.PROJECT_ID
: o ID do seu projeto.BASE64_ENCODED_AUDIO
: os bytes de dados de áudio codificados numa representação Base64. Esta string começa com carateres semelhantes aZkxhQwAAACIQABAAAAUJABtAA+gA8AB+W8FZndQvQAyjv
.ENCODING
: a codificação dos dados de áudio enviados no pedido, comoLINEAR16
.RATE_HERTZ
: taxa de amostragem em Hertz dos dados de áudio enviados no pedido, como16000
.LANGUAGE_CODE
: o idioma do áudio fornecido como uma etiqueta de idioma BCP-47. Consulte a lista de idiomas suportados e os respetivos códigos de idioma.CHANNEL_COUNT
: o número de canais nos dados de áudio de entrada, como1
.
Guarde o script Python.
Execute o script Python para transcrever áudio:
python SCRIPT_NAME
Substitua
SCRIPT_NAME
pelo nome que deu ao seu script Python, por exemplo,speech.py
.