Использование формирования сводных данных по документу
Сводные данные по документам предназначены для сокращения содержимого, которое пользователи считают слишком длинным для чтения. Как извлечение, так и абстрактное обобщение сводит статьи, статьи или документы к ключевым предложениям.
Извлечение сводных данных. Создает сводку, извлекая предложения, которые в совокупности представляют наиболее важную или релевантную информацию в исходном содержимом.
Абстрактное обобщение. Создает сводку путем создания сводных предложений из документа, которые фиксируют main идею.
Модели ИИ для этого API предоставляются службой, вам нужно лишь отправить содержимое для анализа.
Компоненты
Совет
Если вы хотите начать использовать эти функции, ознакомьтесь со статьей с кратким руководством , чтобы приступить к работе. Вы также можете делать примеры запросов с помощью Language Studio без написания кода.
API резюмирования с выдержками использует методы обработки естественного языка для поиска ключевых предложений в неструктурированном текстовом документе. Эти предложения в сочетании содержат основную идею документа.
Функция резюмирования с выдержками возвращает в системном ответе оценку ранжирования (ранг), а также извлеченные предложения и их положение в исходных документах. Ранг — это мера того, насколько релевантно предложение относительно основной идеи документа. В модели предусмотрен балл от 0 и 1 (включительно) для каждого предложения, и она возвращает по запросу предложения с максимальной оценкой. Например, если вы запрашиваете сводку с тремя предложениями, служба возвращает три предложения с наибольшим рейтингом.
В языке ИИ Azure есть еще одна функция — извлечение ключевых фраз, которая может извлекать ключевые сведения. При выборе между извлечением ключевых фраз и резюмированием с выдержками учитывайте указанные ниже моменты.
- При извлечении ключевых фраз возвращаются фразы, а при извлечении сводных данных — предложения.
- Извлечение сводных данных возвращает предложения вместе с оценкой ранга, и предложения с наивысшим рейтингом будут возвращены для каждого запроса.
- Извлечение сводных данных также возвращает следующие позиционные сведения:
- Смещение: начальная позиция каждого извлеченного предложения.
- Длина: длина каждого извлеченного предложения.
Определение способа обработки данных (необязательно)
Отправка данных
Документы отправляются в API в виде строк текста. Анализ выполняется при получении запроса. Поскольку этот API является асинхронным, может возникать задержка между отправкой запросов к API и получением результатов.
При использовании этой функции результаты API доступны в течение 24 часов с момента приема запроса и указываются в ответе. По истечении этого периода результаты очищаются и больше не будут доступны для извлечения.
Получение результатов формирования сводных данных по документу
При получении результатов от функции распознавания языка можно передать результаты в приложение или сохранить выходные данные в файл в локальной системе.
Ниже приведен пример содержимого, которое можно отправить для формирования сводных данных и для которого в целях демонстрации выполняется извлечение выдержек с из статьи блога Майкрософт Комплексное представление интегрированного ИИ. Эта статья взята в качестве примера, и API может принимать входной текст гораздо большего объема. Дополнительные сведения см. в разделе "Ограничения данных".
"Корпорация Майкрософт работает над задачей по расширению возможностей применения ИИ за пределы существующих методик за счет реализации более целостного, ориентированного на человека подхода к обучению и распознаванию. Как технический директор служб ИИ Azure, я работаю с командой удивительных ученых и инженеров, чтобы превратить эти поиски в реальность. Я использую в работе уникальный подход, основанный на рассмотрении взаимосвязей между тремя аспектами когнитивной деятельности человека: одноязычный текст (X), звуковые или визуальные сигналы (Y) и многоязычное восприятие (Z). На пересечении этих трех областей происходит настоящее волшебство, которое мы называем кодом XYZ (см. рис. 1). Это общее представление направления работы по созданию более эффективного ИИ, который сможет лучше говорить, слышать, видеть и понимать человека. Мы считаем, что код XYZ позволит нам воплотить в жизнь долгосрочную концепцию по передаче обучения между различными областями с охватом разных модальностей и языков. Наша цель состоит в том, чтобы предварительно обученные модели могли совместно изучать представления для поддержки широкого спектра нижестоящих задач ИИ, как сегодня это делают люди. За последние пять лет мы смогли достичь показателей человека по результатам эталонных тестов по распознаванию разговорной речи, машинному переводу, ответам на вопросы в форме диалога, пониманию машинного чтения и созданию субтитров для изображений. Достижения по этим пяти направлениям дали нам твердую уверенность в возможности реализации более амбициозных задач, которые помогли бы нам совершить настоящий прорыв в области ИИ за счет мультисенсорного многоязычного обучения, которое по своей сути ближе к тому, как учатся и воспринимают информацию люди. Я полагаю, что этот совместный код XYZ может стать фундаментом для такого рывка при наличии соответствующих внешних источников знаний в нижестоящих задачах ИИ".
Запрос API формирования сводных данных по документу обрабатывается после получения запроса путем создания задания для серверной части API. Если задание выполнено удачно, будут возвращены выходные данные API. Выходные данные будут доступны для получения в течение 24 часов. По прошествии этого времени выходные данные очищаются. В связи с поддержкой многоязычности и эмодзи, ответ может содержать смещения текста. Дополнительные сведения см. в статье Смещение текста в выводе API Анализа текста.
Для приведенного выше примера API может вернуть следующие обобщенные предложения:
Извлечение сводных данных:
- "Корпорация Майкрософт работает над задачей по расширению возможностей применения ИИ за пределы существующих методик за счет реализации более целостного, ориентированного на человека подхода к обучению и распознаванию".
- "Мы считаем, что XYZ-код позволит нам реализовать наше долгосрочное видение: междоменного переноса обучения, охватывающих модальности и языки".
- "Цель состоит в том, чтобы иметь предварительно обученные модели, которые могут совместно изучать представления для поддержки широкого спектра нисходящих задач ИИ, во многом так же, как люди делают сегодня".
Абстрактное обобщение:
- "Корпорация Майкрософт использует более целостный, ориентированный на человека подход к обучению и пониманию. Мы считаем, что код XYZ позволит нам воплотить в жизнь долгосрочную концепцию по передаче обучения между различными областями с охватом разных модальностей и языков. За последние пять лет мы добились человеческих результатов по эталонным показателям в".
Попробуйте получение сводных данных по извлечению документов
Вы можете использовать сводные данные по извлечению документов, чтобы получить сводки по статьям, статьям или документам. Пример см. в статье с кратким руководством.
Вы можете использовать параметр , sentenceCount
чтобы определить, сколько предложений будет возвращено, при 3
этом используется значение по умолчанию. Допустимый диапазон: от 1 до 20.
Можно также использовать sortby
параметр, указывающий, в каком порядке будут возвращаться извлеченные предложения: Offset
или Rank
(по умолчанию — Offset
).
Значение параметра | Описание |
---|---|
Ранг | Предложения упорядочиваются в соответствии с их релевантностью содержимого входного документа, степень которой определяется службой. |
Offset | Сохраняется исходный порядок, в котором предложения появляются во входном документе. |
Попробуйте абстрактное обобщение документа
Следующий пример поможет вам начать работу с абстрактным сводных данных документа:
- Скопируйте приведенную ниже команду в текстовый редактор. В примере BASH используется
\
символ продолжения строки. Если в консоли или терминале используется другой символ продолжения строки, используйте этот символ.
curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2022-10-01-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
'
{
"displayName": "Document Abstractive Summarization Task Example",
"analysisInput": {
"documents": [
{
"id": "1",
"language": "en",
"text": "At Microsoft, we have been on a quest to advance AI beyond existing techniques, by taking a more holistic, human-centric approach to learning and understanding. As Chief Technology Officer of Azure AI services, I have been working with a team of amazing scientists and engineers to turn this quest into a reality. In my role, I enjoy a unique perspective in viewing the relationship among three attributes of human cognition: monolingual text (X), audio or visual sensory signals, (Y) and multilingual (Z). At the intersection of all three, there’s magic—what we call XYZ-code as illustrated in Figure 1—a joint representation to create more powerful AI that can speak, hear, see, and understand humans better. We believe XYZ-code will enable us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pre-trained models that can jointly learn representations to support a broad range of downstream AI tasks, much in the way humans do today. Over the past five years, we have achieved human performance on benchmarks in conversational speech recognition, machine translation, conversational question answering, machine reading comprehension, and image captioning. These five breakthroughs provided us with strong signals toward our more ambitious aspiration to produce a leap in AI capabilities, achieving multi-sensory and multilingual learning that is closer in line with how humans learn and understand. I believe the joint XYZ-code is a foundational component of this aspiration, if grounded with external knowledge sources in the downstream AI tasks."
}
]
},
"tasks": [
{
"kind": "AbstractiveSummarization",
"taskName": "Document Abstractive Summarization Task 1",
"parameters": {
"sentenceCount": 1
}
}
]
}
'
Если не указать sentenceCount
, модель будет определять суммарную длину. Обратите внимание, что sentenceCount
представляет собой приблизительное число предложений выходной сводки в диапазоне от 1 до 20.
- При необходимости внесите следующие изменения в команду.
- Замените значение
your-language-resource-key
собственным ключом. - Замените первую часть URL-адреса запроса
your-language-resource-endpoint
URL-адресом своей конечной точки.
Откройте окно командной строки (например, BASH).
Вставьте команду из текстового редактора в окно командной строки, а затем выполните команду .
Получите
operation-location
из заголовка ответа. Значение будет выглядеть аналогично следующему URL-адресу:
https://<your-language-resource-endpoint>/language/analyze-text/jobs/12345678-1234-1234-1234-12345678?api-version=2022-10-01-preview
- Чтобы получить результаты запроса, используйте следующую команду cURL. Обязательно замените
<my-job-id>
числовым значением идентификатора, полученным из предыдущего заголовка ответаoperation-location
:
curl -X GET https://<your-language-resource-endpoint>/language/analyze-text/jobs/<my-job-id>?api-version=2022-10-01-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>"
Пример абстрактного сводных данных в формате JSON
{
"jobId": "cd6418fe-db86-4350-aec1-f0d7c91442a6",
"lastUpdateDateTime": "2022-09-08T16:45:14Z",
"createdDateTime": "2022-09-08T16:44:53Z",
"expirationDateTime": "2022-09-09T16:44:53Z",
"status": "succeeded",
"errors": [],
"displayName": "Document Abstractive Summarization Task Example",
"tasks": {
"completed": 1,
"failed": 0,
"inProgress": 0,
"total": 1,
"items": [
{
"kind": "AbstractiveSummarizationLROResults",
"taskName": "Document Abstractive Summarization Task 1",
"lastUpdateDateTime": "2022-09-08T16:45:14.0717206Z",
"status": "succeeded",
"results": {
"documents": [
{
"summaries": [
{
"text": "Microsoft is taking a more holistic, human-centric approach to AI. We've developed a joint representation to create more powerful AI that can speak, hear, see, and understand humans better. We've achieved human performance on benchmarks in conversational speech recognition, machine translation, ...... and image captions.",
"contexts": [
{
"offset": 0,
"length": 247
}
]
}
],
"id": "1"
}
],
"errors": [],
"modelVersion": "latest"
}
}
]
}
}
параметр | Описание |
---|---|
-X POST <endpoint> |
Указывает конечную точку для доступа к API. |
-H Content-Type: application/json |
Тип содержимого для отправки данных JSON. |
-H "Ocp-Apim-Subscription-Key:<key> |
Указывает ключ для доступа к API. |
-d <documents> |
JSON с документами, которые необходимо отправить. |
Приведенные ниже команды cURL выполняются из оболочки BASH. Измените эти команды, указав имя ресурса, ключ ресурса и значения JSON.
Ограничения службы и данных
Сведения о размере и числе запросов, которые можно отправлять в минуту и секунду, см. в статье об ограничениях службы.