Traduzir dados no Banco de Dados do Azure para PostgreSQL
Tradução na extensão azure_ai
O serviço de Linguagem de IA do Azure fornece ferramentas avançadas e modelos para trabalhar com dados de texto. As integrações no esquema azure_cognitive
da extensão azure_ai
oferecem acesso a esse conjunto avançado de recursos de compreensão e processamento de linguagem natural acessíveis diretamente do banco de dados. Uma dessas funcionalidades inclui a capacidade de traduzir texto usando a função translate()
.
A função azure_cognitive.translate()
A tradução de idiomas está disponível na função azure_cognitive.translate()
. Essa função aceita texto de entrada e um ou mais idiomas para o(s) qual(is) você deseja traduzi-lo. A função detecta automaticamente o idioma de origem ou você pode atribuir um idioma de origem para o texto de entrada.
A função retorna uma tabela criada no corpo da resposta do serviço de Tradutor de IA do Azure. Essa resposta inclui as seguintes colunas:
Nome | Descrição |
---|---|
translations |
Um objeto JSON que contém uma tupla para cada combinação de idioma de destino e texto traduzido. |
detected_language |
O idioma é baseado na detecção automática de idioma. Se você especificar um idioma usando o parâmetro de entrada source_language , esse parâmetro será definido como NULL. |
source_text |
Um objeto que contém o texto de entrada no script padrão do idioma de origem. Essa opção está disponível somente quando a entrada é expressa em um script diferente do script usual para o idioma. Como se um texto em tailandês estivesse escrito em um script em latim. |
Definir o ponto de extremidade, a chave e a região do serviço de tradução
Para fazer chamadas com êxito no serviço de Linguagem usando a extensão azure_ai
, você deve fornecer o ponto de extremidade do serviço e uma chave. Os comandos a seguir demonstram como as configurações podem ser adicionadas à tabela de configuração azure_ai.settings
.
SELECT azure_ai.set_setting('azure_cognitive.endpoint','{endpoint}');
SELECT azure_ai.set_setting('azure_cognitive.subscription_key', '{key}');
SELECT azure_ai.set_setting('azure_cognitive.region', '{region}');
Chamando a função azure_cognitive.translate()
A instrução SQL a seguir permite que você traduza uma frase de exemplo em inglês para o equivalente em alemão. Essa tradução requer a extensão azure_ai
e as configurações de extensão necessárias já em vigor.
SELECT a.translations
FROM azure_cognitive.translate('Congratulations on successfully configuring Azure AI Translation!', 'de') a;
A execução desse comando retorna uma resposta semelhante à seguinte.
translations
------------------------------------------------------------------------------------------------
{"(de,\"Herzlichen Glückwunsch zur erfolgreichen Konfiguration der Azure AI-Übersetzung!\",)"}
(1 row)
Você também pode executar a tradução para vários idiomas em uma chamada passando uma matriz de idiomas de saída.
SELECT (unnest(a.translations)).TARGET_LANGUAGE, (unnest(a.translations)).TEXT
FROM azure_cognitive.translate(text=>'Congratulations on successfully configuring Azure AI Translation!', target_language=>array['de', 'fr']) a;
Esse comando retorna uma linha por idioma, incluindo colunas separadas para o idioma de destino e o texto de saída.