你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
将 Azure Database for PostgreSQL 灵活服务器与 Azure 认知服务集成
Azure AI 扩展支持直接从数据库中调用 Azure AI 语言服务,例如情绪分析。
先决条件
注意
你需要从创建的资源获取密钥、终结点和区域,以便将扩展连接到 API。
使用 Azure 认知服务配置 azure_ai 扩展
在“语言资源”的“资源管理”>“密钥和终结点”下,可以找到语言资源的终结点、密钥和位置/区域。 使用终结点和密钥启用 azure_ai
扩展来调用模型部署。 只有翻译功能需要位置/区域设置。
select azure_ai.set_setting('azure_cognitive.endpoint','https://<endpoint>.cognitiveservices.azure.com');
select azure_ai.set_setting('azure_cognitive.subscription_key', '<API Key>');
-- the region setting is only required for the translate function
select azure_ai.set_setting('azure_cognitive.region', '<Region>');
情绪分析
情绪分析 为传递给模型的文本提供情绪标签(negative
、positive
、neutral
)和置信度分数。
azure_cognitive.analyze_sentiment
azure_cognitive.analyze_sentiment(text text, language text DEFAULT NULL::text, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.analyze_sentiment(text text[], language text DEFAULT NULL::text, batch_size integer DEFAULT 10, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.analyze_sentiment(text text[], language text[] DEFAULT NULL::text[], batch_size integer DEFAULT 10, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
参数
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
language
text
或 text[]
单个值或值数组,具体取决于所使用的函数的重载,以及输入写入的语言的双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。
batch_size
integer DEFAULT 10
一次要处理的记录数(仅适用于参数 input
为 text[]
类型的函数的重载)。
disable_service_logs
boolean DEFAULT false
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
max_attempts
integer DEFAULT 1
扩展将重试调用 Azure 语言服务终结点进行情绪分析的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次调用 Azure 语言服务终结点进行情绪分析之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
有关详细信息,请参阅 https://aka.ms/cs-compliance 处的认知服务合规性和隐私说明,以及 https://www.microsoft.com/ai/responsible-ai 处的 Microsoft 负责任 AI 原则。
返回类型
azure_cognitive.sentiment_analysis_result
或 TABLE(result azure_cognitive.sentiment_analysis_result)
单个元素或单列表,具体取决于所用函数的重载,以及输入文本的情绪预测。 其中包含情绪,可以是 positive
、negative
、neutral
和 mixed
;以及文本中发现的积极、中立或消极的分数表示为介于 0 和 1 之间的实数。 例如,在 (neutral,0.26,0.64,0.09)
中,情绪为 neutral
,positive
分数为 0.26
,中立分数为 0.64
,消极分数为 0.09
。
语言检测
Azure AI 中的语言检测会自动检测文档的语言。
azure_cognitive.detect_language
azure_cognitive.detect_language(text text, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.detect_language(text text[], batch_size integer DEFAULT 1000, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
参数
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
batch_size
integer DEFAULT 1000
一次要处理的记录数(仅适用于参数 input
为 text[]
类型的函数的重载)。
disable_service_logs
boolean DEFAULT false
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
max_attempts
integer DEFAULT 1
扩展将重试调用 Azure 语言服务终结点进行语言检测的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次调用 Azure 语言服务终结点进行语言检测之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
有关详细信息,请参阅 https://aka.ms/cs-compliance 处的认知服务合规性和隐私说明,以及 https://www.microsoft.com/ai/responsible-ai 处的 Microsoft 负责任 AI 原则。
返回类型
azure_cognitive.language_detection_result
或 TABLE(result azure_cognitive.language_detection_result)
单个元素或单列表,具体取决于所用函数的重载、检测到的语言名称、其双字母 ISO 639-1 表示形式以及检测的置信度分数。 例如,在 (Portuguese,pt,0.97)
中,语言为 Portuguese
,检测置信度为 0.97
。
关键短语提取
Azure AI 中的关键短语提取 提取文本中的主要概念。
azure_cognitive.extract_key_phrases
azure_cognitive.extract_key_phrases(text text, language text DEFAULT NULL::text, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.extract_key_phrases(text text[], language text DEFAULT NULL::text, batch_size integer DEFAULT 10, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.extract_key_phrases(text text[], language text[] DEFAULT NULL::text[], batch_size integer DEFAULT 10, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
参数
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
language
text
或 text[]
单个值或值数组,具体取决于所使用的函数的重载,以及写入输入所使用的语言的双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。
batch_size
integer DEFAULT 10
一次要处理的记录数(仅适用于参数 input
为 text[]
类型的函数的重载)。
disable_service_logs
boolean DEFAULT false
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
max_attempts
integer DEFAULT 1
扩展将重试调用 Azure 语言服务终结点进行关键短语提取的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次调用 Azure 语言服务终结点进行关键短语提取之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
有关详细信息,请参阅 https://aka.ms/cs-compliance 处的认知服务合规性和隐私说明,以及 https://www.microsoft.com/ai/responsible-ai 处的 Microsoft 负责任 AI 原则。
返回类型
text[]
或 TABLE(key_phrases text[])
单个元素或单列表,包含在文本中标识的关键短语。 例如,如果是使用设置为 'For more information, see Cognitive Services Compliance and Privacy notes.'
的 text
调用的,并且将 language
设置为 'en'
,则可能会返回 {"Cognitive Services Compliance","Privacy notes",information}
。
实体链接
Azure AI 中的实体链接识别和消除文本中实体标识的歧义,并将实体链接到已知知识库。
azure_cognitive.linked_entities
azure_cognitive.linked_entities(text text, language text DEFAULT NULL::text, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.linked_entities(text text[], language text DEFAULT NULL::text, batch_size integer DEFAULT 5, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.linked_entities(text text[], language text[] DEFAULT NULL::text[], batch_size integer DEFAULT 5, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
参数
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
language
text
或 text[]
单个值或值数组,具体取决于所使用的函数的重载,以及输入写入的语言的双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。
batch_size
integer DEFAULT 5
一次要处理的记录数(仅适用于参数 input
为 text[]
类型的函数的重载)。
disable_service_logs
boolean DEFAULT false
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
disable_service_logs
boolean DEFAULT false
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
max_attempts
integer DEFAULT 1
扩展将为链接标识重试调用 Azure 语言服务终结点的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次为链接标识调用 Azure 语言服务终结点之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
有关详细信息,请参阅 https://aka.ms/cs-compliance 处的认知服务合规性和隐私说明,以及 https://www.microsoft.com/ai/responsible-ai 处的 Microsoft 负责任 AI 原则。
返回类型
azure_cognitive.linked_entity[]
或 TABLE(entities azure_cognitive.linked_entity[])
数组或单列表,包含在文本中标识的关键短语、链接实体的集合,其中每个实体定义名称、数据源实体标识符、语言、数据源、URL、azure_cognitive.linked_entity_match
集合(定义文本和置信度分数),最后定义必应实体搜索 API 标识符。 例如,如果是使用设置为 'For more information, see Cognitive Services Compliance and Privacy notes.'
的 text
调用的,并且将 language
设置为 'en'
,则可能会返回 {"(\"Cognitive computing\",\"Cognitive computing\",en,Wikipedia,https://en.wikipedia.org/wiki/Cognitive_computing,\"{\"\"(\\\\\"\"Cognitive Services\\\\\"\",0.78)\ "\"}\",d73f7d5f-fddb-0908-27b0-74c7db81cd8d)","(\"Regulatory compliance\",\"Regulatory compliance\",en,Wikipedia,https://en.wikipedia.org/wiki/Regulatory_compliance ,\"{\"\"(Compliance,0.28)\"\"}\",89fefaf8-e730-23c4-b519-048f3c73cdbd)","(\"Information privacy\",\"Information privacy\",en,Wikipedia,https://en.wikipedia.org/wiki /Information_privacy,\"{\"\"(Privacy,0)\"\"}\",3d0f2e25-5829-4b93-4057-4a805f0b1043)"}
。
azure_cognitive.recognize_entities
Azure AI 中的命名实体识别 (NER) 功能可以识别非结构化文本中的实体并进行分类。
azure_cognitive.recognize_entities(text text, language text DEFAULT NULL::text, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.recognize_entities(text text[], language text DEFAULT NULL::text, batch_size integer DEFAULT 5, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.recognize_entities(text text[], language text[] DEFAULT NULL::text[], batch_size integer DEFAULT 5, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
参数
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
language
text
或 text[]
单个值或值数组,具体取决于所使用的函数的重载,以及输入写入的语言的双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。
batch_size
integer DEFAULT 5
一次要处理的记录数(仅适用于参数 input
为 text[]
类型的函数的重载)。
disable_service_logs
boolean DEFAULT false
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
max_attempts
integer DEFAULT 1
扩展将为链接标识重试调用 Azure 语言服务终结点的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次为链接标识调用 Azure 语言服务终结点之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
有关详细信息,请参阅 https://aka.ms/cs-compliance 处的认知服务合规性和隐私说明,以及 https://www.microsoft.com/ai/responsible-ai 处的 Microsoft 负责任 AI 原则。
返回类型
azure_cognitive.entity[]
或 TABLE(entities azure_cognitive.entity[])
数组或单列表,包含实体,其中每个实体定义标识实体的文本、实体类别和匹配的置信度分数。 例如,如果是使用设置为 'For more information, see Cognitive Services Compliance and Privacy notes.'
的 text
调用的,并且将 language
设置为 'en'
,则可能会返回 {"(\"Cognitive Services\",Skill,\"\",0.94)"}
。
个人身份数据 (PII) 检测
标识在输入文本中找到的PII 数据,并将这些实体分类。
azure_cognitive.recognize_pii_entities
azure_cognitive.recognize_pii_entities(text text, language text DEFAULT NULL::text, domain text DEFAULT 'none'::text, disable_service_logs boolean DEFAULT true, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.recognize_pii_entities(text text[], language text DEFAULT NULL::text, domain text DEFAULT 'none'::text, batch_size integer DEFAULT 5, disable_service_logs boolean DEFAULT true, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.recognize_pii_entities(text text[], language text[] DEFAULT NULL::text[], domain text DEFAULT 'none'::text, batch_size integer DEFAULT 5, disable_service_logs boolean DEFAULT true, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
参数
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
language
text
或 text[]
单个值或值数组,具体取决于所使用的函数的重载,以及输入写入的语言的双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。
domain
text DEFAULT 'none'::text
,用于个人数据实体识别的个人数据域。 对于未指定域,有效值为 none
,对于个人运行状况信息,有效值为 phi
。
batch_size
integer DEFAULT 5
一次要处理的记录数(仅适用于参数 input
为 text[]
类型的函数的重载)。
disable_service_logs
boolean DEFAULT true
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
max_attempts
integer DEFAULT 1
扩展将为链接标识重试调用 Azure 语言服务终结点的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次为链接标识调用 Azure 语言服务终结点之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
有关详细信息,请参阅 https://aka.ms/cs-compliance 处的认知服务合规性和隐私说明,以及 https://www.microsoft.com/ai/responsible-ai 处的 Microsoft 负责任 AI 原则。
返回类型
azure_cognitive.pii_entity_recognition_result
或 TABLE(result azure_cognitive.pii_entity_recognition_result)
单个值或单列表,其中包含经过编修的文本和作为 azure_cognitive.entity[]
的实体。 每个实体都包含未经过编辑的文本、个人数据类别、子类别和实体与已标识的子字符串正确匹配的置信度分数。 例如,如果是使用设置为 'My phone number is +1555555555, and the address of my office is 16255 NE 36th Way, Redmond, WA 98052.'
的 text
调用的,并且将 language
设置为 'en'
,则可能会返回 ("My phone number is ***********, and the address of my office is ************************************.","{""(+1555555555,PhoneNumber,\\""\\"",0.8)"",""(\\""16255 NE 36th Way, Redmond, WA 98052\\"",Address,\\""\\"",1)""}")
。
文档摘要
文档摘要将使用自然语言处理技术为文档生成摘要。
azure_cognitive.summarize_abstractive
文档抽象摘要将生成一个摘要,该摘要可能不会使用与文档中相同的字词,而是抓住其主要思想。
azure_cognitive.summarize_abstractive(text text, language text DEFAULT NULL::text, sentence_count integer DEFAULT 3, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.summarize_abstractive(text text[], language text DEFAULT NULL::text, sentence_count integer DEFAULT 3, batch_size integer DEFAULT 25, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.summarize_abstractive(text text[], language text[] DEFAULT NULL::text[], sentence_count integer DEFAULT 3, batch_size integer DEFAULT 25, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
参数
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
language
text
或 text[]
单个值或值数组,具体取决于所使用的函数的重载,以及输入写入的语言的双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。
sentence_count
integer DEFAULT 3
,摘要应包含的最大句子数。
batch_size
integer DEFAULT 25
一次要处理的记录数(仅适用于参数 input
为 text[]
类型的函数的重载)。
disable_service_logs
boolean DEFAULT false
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
max_attempts
integer DEFAULT 1
扩展将为链接标识重试调用 Azure 语言服务终结点的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次为链接标识调用 Azure 语言服务终结点之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
有关详细信息,请参阅 https://aka.ms/cs-compliance 处的认知服务合规性和隐私说明,以及 https://www.microsoft.com/ai/responsible-ai 处的 Microsoft 负责任 AI 原则。
返回类型
text[]
或 TABLE(summaries text[])
数组或单列摘要表,其中每个摘要不超过定义的 sentence_count
。 例如,如果是使用设置为 'PostgreSQL features transactions with atomicity, consistency, isolation, durability (ACID) properties, automatically updatable views, materialized views, triggers, foreign keys, and stored procedures. It is designed to handle a range of workloads, from single machines to data warehouses or web services with many concurrent users. It was the default database for macOS Server and is also available for Linux, FreeBSD, OpenBSD, and Windows.'
的 text
调用的,并且将 language
设置为 'en'
,则可能会返回 {"PostgreSQL is a database system with advanced features such as atomicity, consistency, isolation, and durability (ACID) properties. It is designed to handle a range of workloads, from single machines to data warehouses or web services with many concurrent users. PostgreSQL was the default database for macOS Server and is available for Linux, BSD, OpenBSD, and Windows."}
。
azure_cognitive.summarize_extractive
文档提取摘要将生成一个提取了文档中的关键句子的摘要。
azure_cognitive.summarize_extractive(text text, language text DEFAULT NULL::text, sentence_count integer DEFAULT 3, sort_by text DEFAULT 'offset'::text, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.summarize_extractive(text text[], language text DEFAULT NULL::text, sentence_count integer DEFAULT 3, sort_by text DEFAULT 'offset'::text, batch_size integer DEFAULT 25, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.summarize_extractive(text text[], language text[] DEFAULT NULL::text[], sentence_count integer DEFAULT 3, sort_by text DEFAULT 'offset'::text, batch_size integer DEFAULT 25, disable_service_logs boolean DEFAULT false, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
参数
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
language
text
或 text[]
单个值或值数组,具体取决于所使用的函数的重载,以及输入写入的语言的双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。
sentence_count
integer DEFAULT 3
,要提取的最大句子数。
sort_by
text DEFAULT ``offset``::text
,提取句子的顺序。 有效值为 rank
和 offset
。
batch_size
integer DEFAULT 25
一次要处理的记录数(仅适用于参数 input
为 text[]
类型的函数的重载)。
disable_service_logs
boolean DEFAULT false
语言服务会将你的输入文本记录 48 小时,仅用于排查问题。 将此属性设置为 true
后,会禁用输入日志记录,并可能会限制我们调查所发生的问题的能力。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
max_attempts
integer DEFAULT 1
扩展将为链接标识重试调用 Azure 语言服务终结点的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次为链接标识调用 Azure 语言服务终结点之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
有关详细信息,请参阅 https://aka.ms/cs-compliance 处的认知服务合规性和隐私说明,以及 https://www.microsoft.com/ai/responsible-ai 处的 Microsoft 负责任 AI 原则。
返回类型
azure_cognitive.sentence[]
或 TABLE(sentences azure_cognitive.sentence[])
提取的句子的数组或单列表及其排名分数。
例如,如果是使用设置为 'PostgreSQL features transactions with atomicity, consistency, isolation, durability (ACID) properties, automatically updatable views, materialized views, triggers, foreign keys, and stored procedures. It is designed to handle a range of workloads, from single machines to data warehouses or web services with many concurrent users. It was the default database for macOS Server and is also available for Linux, FreeBSD, OpenBSD, and Windows.'
的 text
调用的,并且将 language
设置为 'en'
,则可能会返回 {"(\"PostgreSQL features transactions with atomicity, consistency, isolation, durability (ACID) properties, automatically updatable views, materialized views, triggers, foreign keys, and stored procedures.\",0.16)","(\"It is designed to handle a range of workloads, from single machines to data warehouses or web services with many concurrent users.\",0)","(\"It was the default database for macOS Server and is also available for Linux, FreeBSD, OpenBSD, and Windows.\",1)"}
。
语言翻译
Azure AI 文本翻译支持实时快速准确地进行目标语言翻译。
azure_cognitive.translate
azure_cognitive.translate(text text, target_language text, source_language text DEFAULT NULL::text, text_type text DEFAULT 'Plain'::text, profanity_action text DEFAULT 'NoAction'::text, profanity_marker text DEFAULT 'Asterisk'::text, suggested_source_language text DEFAULT NULL::text, source_script text DEFAULT NULL::text, target_script text DEFAULT NULL::text, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.translate(text text, target_language text[], source_language text DEFAULT NULL::text, text_type text DEFAULT 'Plain'::text, profanity_action text DEFAULT 'NoAction'::text, profanity_marker text DEFAULT 'Asterisk'::text, suggested_source_language text DEFAULT NULL::text, source_script text DEFAULT NULL::text, target_script text[] DEFAULT NULL::text[], timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.translate(text text[], target_language text, source_language text DEFAULT NULL::text, text_type text DEFAULT 'Plain'::text, profanity_action text DEFAULT 'NoAction'::text, profanity_marker text DEFAULT 'Asterisk'::text, suggested_source_language text DEFAULT NULL::text, source_script text DEFAULT NULL::text, target_script text DEFAULT NULL::text, batch_size integer DEFAULT 1000, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
azure_cognitive.translate(text text[], target_language text[], source_language text DEFAULT NULL::text, text_type text DEFAULT 'Plain'::text, profanity_action text DEFAULT 'NoAction'::text, profanity_marker text DEFAULT 'Asterisk'::text, suggested_source_language text DEFAULT NULL::text, source_script text DEFAULT NULL::text, target_script text[] DEFAULT NULL::text[], batch_size integer DEFAULT 1000, timeout_ms integer DEFAULT NULL::integer, throw_on_error boolean DEFAULT true, max_attempts integer DEFAULT 1, retry_delay_ms integer DEFAULT 1000)
注意
翻译仅在 azure_ai 扩展的 0.2.0 版本中可用。 若要检查版本,请查看 pg_available_extensions 目录视图。
select * from pg_available_extensions where name = 'azure_ai';
参数
有关参数的详细信息,请参阅 Translator API。
text
text
或 text[]
单个文本或文本数组,具体取决于所用函数的重载,以及要处理的输入。
target_language
text
或 text[]
单个值或值数组,具体取决于所使用的函数的重载,以及输入写入的语言的双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。
source_language
输入文本所用语言的 text DEFAULT NULL
双字母 ISO 639-1 表示形式。 查看语言支持,了解允许的值。 如果未指定该参数,则会应用自动语言检测来确定源语言。
text_type
boolean DEFAULT 'plain'
定义要翻译的文本的类型。 有效值为“plain”或“html”。 任何 HTML 都需要格式正确。
profanity_action
boolean DEFAULT 'NoAction'
指定在翻译时如何处理不雅内容。 有效值为“NoAction”、“Marked”或“Deleted”。 “NoAction”是默认行为,不雅内容从源传递到目标。 “Deleted”表示不替换的情况下删除不雅字词。 “Marked”用 profanity_marker 参数替换输出中的标记单词。
profanity_marker
boolean DEFAULT 'Asterisk'
指定在翻译时如何标记不雅内容。 可能的值为“Asterisk”或“Tag”,前者表示用 *** 替代亵渎字词,后者表示用“<profanity></profanity>”标记替代亵渎字词。
suggested_source_language
text DEFAULT NULL
:指定在无法确定输入文本的语言时使用的回退语言。
source_script
text DEFAULT NULL
指定输入文本的脚本。
target_script
text DEFAULT NULL
指定输入文本的脚本。
batch_size
integer DEFAULT 1000
一次要处理的记录数(仅适用于参数 text
为 text[]
类型的函数的重载)。
timeout_ms
操作停止之前的 integer DEFAULT 3600000
超时(以毫秒为单位)。
throw_on_error
如果函数引发导致包装事务回滚的异常,则在出错时为 boolean DEFAULT true
。
max_attempts
integer DEFAULT 1
扩展将为链接标识重试调用 Azure 语言服务终结点的次数(如果它失败并出现任何可重试错误)。
retry_delay_ms
integer DEFAULT 1000
在再次为链接标识调用 Azure 语言服务终结点之前,扩展将等待的时间(毫秒)(如果它失败并出现任何可重试错误)。
返回类型
azure_cognitive.translated_text_result
或 TABLE(result azure_cognitive.translated_text_result)
已翻译文本的数组或单列表。 可以在响应正文中找到响应正文的详细信息。
示例
情绪分析示例
select b.*
from azure_cognitive.analyze_sentiment('The book was not great, It is mediocre at best','en') b
摘要示例
SELECT
bill_id,
unnest(azure_cognitive.summarize_abstractive(bill_text, 'en')) abstractive_summary
FROM bill_summaries
WHERE bill_id = '114_hr2499';
翻译示例
-- Translate into Portuguese
select a.*
from azure_cognitive.translate('Language Translation in real time in multiple languages is quite cool', 'pt') a;
-- Translate to multiple languages
select (unnest(a.translations)).*
from azure_cognitive.translate('Language Translation in real time in multiple languages is quite cool', array['es', 'pt', 'zh-Hans']) a;
个人数据检测示例
select
'Contoso employee with email Contoso@outlook.com is using our awesome API' as InputColumn,
pii_entities.*
from azure_cognitive.recognize_pii_entities('Contoso employee with email Contoso@outlook.com is using our awesome API', 'en') as pii_entities