Использование суммирования текста
Сводка текста предназначена для сокращения содержимого, которое пользователи считают слишком длинным для чтения. Извлекаемая и абстрактная сводка конденсируют статьи, документы или документы к ключевым предложениям.
Извлечение сводных данных: создает сводку, извлекая предложения, которые вместе представляют наиболее важные или релевантные сведения в исходном содержимом.
Абстрактная сводка: создает сводку, создавая сводные предложения из документа, захватывающего основную идею.
Сводные данные, ориентированные на запросы: позволяет использовать запрос при сводных данных.
Каждая из этих возможностей может суммировать интересующие элементы при указании.
Модели ИИ для этого API предоставляются службой, вам нужно лишь отправить содержимое для анализа.
Для упрощения навигации здесь приведены ссылки на соответствующие разделы для каждой службы:
Аспект | Section |
---|---|
Добывающий | Извлечение сводных данных |
Абстрактный | Абстрактная сводка |
Ориентированные на запросы | Сводка, ориентированная на запросы |
Функции
Совет
Если вы хотите начать использовать эти функции, ознакомьтесь со статьей краткого руководства, чтобы приступить к работе. Вы также можете делать примеры запросов с помощью Language Studio без написания кода.
API резюмирования с выдержками использует методы обработки естественного языка для поиска ключевых предложений в неструктурированном текстовом документе. Эти предложения в сочетании содержат основную идею документа.
Функция резюмирования с выдержками возвращает в системном ответе оценку ранжирования (ранг), а также извлеченные предложения и их положение в исходных документах. Ранг — это мера того, насколько релевантно предложение относительно основной идеи документа. В модели предусмотрен балл от 0 и 1 (включительно) для каждого предложения, и она возвращает по запросу предложения с максимальной оценкой. Например, если вы запрашиваете сводку с тремя предложениями, служба возвращает три предложения с наибольшим рейтингом.
Существует еще одна функция в языке ИИ Azure, извлечении ключевых фраз, которые могут извлекать ключевые сведения. При выборе между извлечением ключевых фраз и резюмированием с выдержками учитывайте указанные ниже моменты.
- Извлечение ключевых фраз возвращает фразы, а извлечение суммирования возвращает предложения.
- Извлечение суммирования возвращает предложения вместе с оценкой ранжирования, а предложения верхнего ранга возвращаются на запрос.
- Извлечение сводных данных также возвращает следующие позиционные сведения:
- Смещение: начальная позиция каждого извлеченного предложения.
- Длина: длина каждого извлеченного предложения.
Определение способа обработки данных (необязательно)
Отправка данных
Документы отправляются в API в виде строк текста. Анализ выполняется при получении запроса. Так как API является асинхронным, может возникнуть задержка между отправкой запроса API и получением результатов.
При использовании этой функции результаты API доступны в течение 24 часов с момента приема запроса и указываются в ответе. По истечении этого периода результаты очищаются и больше не будут доступны для извлечения.
Получение результатов формирования сводных данных по тексту
При получении результатов от функции распознавания языка можно передать результаты в приложение или сохранить выходные данные в файл в локальной системе.
Ниже приведен пример содержимого, которое можно отправить для формирования сводных данных и для которого в целях демонстрации выполняется извлечение выдержек с из статьи блога Майкрософт Комплексное представление интегрированного ИИ. Эта статья является только примером, API может принимать более длинный входной текст. Дополнительные сведения см. в разделе "Ограничения данных".
"Корпорация Майкрософт работает над задачей по расширению возможностей применения ИИ за пределы существующих методик за счет реализации более целостного, ориентированного на человека подхода к обучению и распознаванию. Как главный технический директор служб ИИ Azure, я работал с командой удивительных ученых и инженеров, чтобы превратить этот поиск в реальность. Я использую в работе уникальный подход, основанный на рассмотрении взаимосвязей между тремя аспектами когнитивной деятельности человека: одноязычный текст (X), звуковые или визуальные сигналы (Y) и многоязычное восприятие (Z). На пересечении этих трех областей происходит настоящее волшебство, которое мы называем кодом XYZ (см. рис. 1). Это общее представление направления работы по созданию более эффективного ИИ, который сможет лучше говорить, слышать, видеть и понимать человека. Мы считаем, что XYZ-code позволяет нам реализовать наше долгосрочное видение: перекрестное обучение, охватывающие модальности и языки. Наша цель состоит в том, чтобы предварительно обученные модели могли совместно изучать представления для поддержки широкого спектра нижестоящих задач ИИ, как сегодня это делают люди. За последние пять лет мы смогли достичь показателей человека по результатам эталонных тестов по распознаванию разговорной речи, машинному переводу, ответам на вопросы в форме диалога, пониманию машинного чтения и созданию субтитров для изображений. Достижения по этим пяти направлениям дали нам твердую уверенность в возможности реализации более амбициозных задач, которые помогли бы нам совершить настоящий прорыв в области ИИ за счет мультисенсорного многоязычного обучения, которое по своей сути ближе к тому, как учатся и воспринимают информацию люди. Я полагаю, что этот совместный код XYZ может стать фундаментом для такого рывка при наличии соответствующих внешних источников знаний в нижестоящих задачах ИИ".
Запрос API суммирования текста обрабатывается при получении запроса путем создания задания для серверной части API. Если задание выполнено успешно, возвращается результат API. Выходные данные доступны для получения в течение 24 часов. По прошествии этого времени выходные данные очищаются. Из-за поддержки многоязычных и эмодзи ответ может содержать смещения текста. Дополнительные сведения см. в статье Смещение текста в выводе API Анализа текста.
При использовании приведенного выше примера API может возвращать следующие сводные предложения:
Извлечение сводных данных:
- "Корпорация Майкрософт работает над задачей по расширению возможностей применения ИИ за пределы существующих методик за счет реализации более целостного, ориентированного на человека подхода к обучению и распознаванию".
- "Мы считаем, что XYZ-code позволяет нам реализовать наше долгосрочное видение: перекрестное обучение, охватывающие модальности и языки".
- "Цель состоит в том, чтобы иметь предварительно обученные модели, которые могут совместно изучать представления для поддержки широкого спектра подчиненных задач ИИ, много в том, как люди делают сегодня".
Абстрактная сводка:
- "Корпорация Майкрософт принимает более целостный, ориентированный на человека подход к обучению и пониманию. Мы считаем, что XYZ-code позволяет нам реализовать наше долгосрочное видение: перекрестное обучение, охватывающие модальности и языки. За последние пять лет мы достигли человеческой производительности на тестах в".
Попробуйте извлечь из текста сводные данные
Вы можете использовать извлечение текста для получения сводок статей, документов или документов. Пример см. в статье краткого руководства.
Этот параметр можно использовать sentenceCount
для указания количества возвращаемых предложений, при 3
этом используется значение по умолчанию. Допустимый диапазон: от 1 до 20.
Вы также можете использовать sortby
параметр, чтобы указать, в каком порядке возвращаются извлеченные предложения — Offset
или Rank
, если Offset
используется значение по умолчанию.
Значение параметра | Description |
---|---|
Rank | Предложения упорядочиваются в соответствии с их релевантностью содержимого входного документа, степень которой определяется службой. |
Смещение | Сохраняется исходный порядок, в котором предложения появляются во входном документе. |
Попробуйте абстрактное обобщение текста
В следующем примере вы начинаете работу с абстрактной сводкой текста:
- Скопируйте приведенную ниже команду в текстовый редактор. В примере BASH используется
\
символ продолжения строки. Если в консоли или терминале используется другой символ продолжения строки, используйте этот символ.
curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2023-04-01 \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
'
{
"displayName": "Text 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 enables us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pretrained 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": "Text Abstractive Summarization Task 1",
}
]
}
'
При необходимости внесите следующие изменения в команду.
- Замените значение
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": "Text Abstractive Summarization Task Example",
"tasks": {
"completed": 1,
"failed": 0,
"inProgress": 0,
"total": 1,
"items": [
{
"kind": "AbstractiveSummarizationLROResults",
"taskName": "Text 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.
Сводка на основе запросов
API сводных данных на основе запросов — это расширение для существующего API сводных данных текста.
Самое большое различие — это новое query
поле в тексте запроса (в разделе>tasks
parameters
>query
).
Совет
Суммирование на основе запросов имеет некоторое различие в использовании элемента управления длиной на основе типа сводных данных на основе запросов, которое вы используете:
- Извлечение на основе запросов поддерживает элемент управления длиной, указав предложениеCount.
- Абстрактная сводка на основе запросов не поддерживает элемент управления длиной.
Ниже приведен пример запроса:
curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2023-11-15-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
'
{
"displayName": "Text Extractive 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 enables us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pretrained 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": "Query-based Abstractive Summarization",
"parameters": {
"query": "XYZ-code",
"summaryLength": "short"
}
}, {
"kind": "ExtractiveSummarization",
"taskName": "Query_based Extractive Summarization",
"parameters": {
"query": "XYZ-code"
}
}
]
}
'
Элемент управления суммарной длины
Использование параметра summaryLength в абстрактной сводке
Если не указать summaryLength
, модель определяет суммарную длину.
summaryLength
Для параметра принимаются три значения:
- oneSentence: создает сводку по большей части 1 предложения с около 80 токенов.
- short: создает сводку в основном 2-3 предложения с около 120 токенов.
- средний: создает сводку в основном 4-6 предложений с около 170 токенов.
- long: создает сводку в основном более 7 предложений с около 210 токенов.
Ниже приведен пример запроса:
curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2023-04-01 \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
'
{
"displayName": "Text 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 enables us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pretrained 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": "Length controlled Abstractive Summarization",
"parameters": {
"sentenceLength": "short"
}
}
]
}
'
Использование параметра sentenceCount в извлечении сводных данных
sentenceCount
Для параметра можно ввести значение 1–20, чтобы указать требуемое количество выходных предложений.
Ниже приведен пример запроса:
curl -i -X POST https://<your-language-resource-endpoint>/language/analyze-text/jobs?api-version=2023-11-15-preview \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
'
{
"displayName": "Text Extractive 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 enables us to fulfill our long-term vision: cross-domain transfer learning, spanning modalities and languages. The goal is to have pretrained 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": "ExtractiveSummarization",
"taskName": "Length controlled Extractive Summarization",
"parameters": {
"sentenceCount": "5"
}
}
]
}
'
Ограничения службы и данных
Сведения о размере и числе запросов, которые можно отправлять в минуту и секунду, см. в статье об ограничениях службы.