Knowledgebase - Update
Асинхронная операция изменения базы знаний.
PATCH {Endpoint}/qnamaker/v5.0-preview.2/knowledgebases/{kbId}
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
Endpoint
|
path | True |
string |
Поддерживаемая конечная точка Cognitive Services (например, https://< qnamaker-resource-name >.api.cognitiveservices.azure.com). |
kb
|
path | True |
string |
Идентификатор базы знаний. |
Заголовок запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
Ocp-Apim-Subscription-Key | True |
string |
Текст запроса
Имя | Тип | Описание |
---|---|---|
add |
Экземпляр CreateKbInputDTO для операции добавления |
|
defaultAnswerUsedForExtraction |
string |
Текстовая строка, используемая в качестве ответа в любом Q-A, который не имеет извлеченных ответов из документа, но имеет иерархию. Требуется, если для поля EnableHierarchicalExtraction задано значение True. |
delete |
Экземпляр DeleteKbContentsDTO для операции удаления |
|
enableHierarchicalExtraction |
boolean |
Включите иерархическое извлечение Q-A из файлов и URL-адресов. Значение, заданное во время создания базы знаний, будет использоваться, если это поле отсутствует. |
update |
Экземпляр UpdateKbContentsDTO для операции обновления |
Ответы
Имя | Тип | Описание |
---|---|---|
202 Accepted |
Сведения об асинхронной операции. Headers Location: string |
|
Other Status Codes |
Ответ об ошибке. |
Безопасность
Ocp-Apim-Subscription-Key
Type:
apiKey
In:
header
Примеры
Successful query
Sample Request
PATCH {Endpoint}/qnamaker/v5.0-preview.2/knowledgebases/9d091697-fb8c-4ed5-9ac0-35bf8273bfff
{
"add": {
"qnaList": [
{
"id": 0,
"answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle",
"source": "Custom Editorial",
"questions": [
"How can I change the default message from QnA Maker?"
],
"metadata": []
}
],
"urls": [
"https://docs.microsoft.com/en-us/azure/cognitive-services/Emotion/FAQ"
],
"files": [
{
"fileName": "SurfaceManual.pdf",
"fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf"
}
]
},
"delete": {
"ids": [
13,
35
]
},
"update": {
"name": "QnA Maker FAQ Prompts Bot",
"qnaList": [
{
"id": 2,
"answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create",
"source": "Custom Editorial",
"questions": {
"add": [],
"delete": []
},
"metadata": {
"add": [],
"delete": []
},
"context": {
"isContextOnly": false,
"promptsToAdd": [
{
"displayText": "Add Prompts",
"displayOrder": 0,
"qna": {
"id": 0,
"answer": "Click here to know more https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/how-to/multiturn-conversation",
"source": "Editorial",
"questions": [
"How can I add prompts?"
],
"metadata": [],
"context": {
"isContextOnly": false,
"prompts": []
}
},
"qnaId": 0
},
{
"displayText": "Delete Prompts",
"displayOrder": 0,
"qna": {
"id": 0,
"answer": "Click here to know more https://docs.microsoft.com/en-us/azure/cognitive-services/qnamaker/how-to/multiturn-conversation",
"source": "Editorial",
"questions": [
"How can I delete delete prompts?"
],
"metadata": [],
"context": {
"isContextOnly": false,
"prompts": []
}
},
"qnaId": 0
},
{
"displayText": "Update Knowledgebase",
"displayOrder": 0,
"qna": null,
"qnaId": 3
}
],
"promptsToDelete": [
3
]
}
},
{
"id": 3,
"answer": "You can use our REST apis to update your KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/update",
"source": "Custom Editorial",
"questions": {
"add": [],
"delete": []
},
"metadata": {
"delete": [
{
"name": "category",
"value": "api"
}
],
"add": [
{
"name": "category",
"value": "programmatic"
}
]
},
"context": {
"isContextOnly": false,
"promptsToAdd": [
{
"displayText": "Regenerate Endpoint keys",
"displayOrder": 1,
"qna": null,
"qnaId": 4
}
],
"promptsToDelete": [
4
]
}
}
]
}
}
Sample Response
{
"operationState": "NotStarted",
"createdTimestamp": "2018-03-19T07:38:46Z",
"lastActionTimestamp": "2018-03-19T07:39:29Z",
"userId": "86bb8390-56c0-42c2-9f81-3de161981191",
"operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1"
}
Определения
Имя | Описание |
---|---|
Add |
Экземпляр CreateKbInputDTO для операции добавления |
Context |
Контекст, связанный с Qna, который требуется обновить. |
Delete |
Экземпляр DeleteKbContentsDTO для операции удаления |
Error |
Объект ошибки. В соответствии с рекомендациями по API Microsoft One — https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses. |
Error |
Один из серверных наборов кодов ошибок. |
Error |
Ответ об ошибке. В соответствии с рекомендациями по API Microsoft One — https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses. |
FileDTO |
DTO для хранения сведений о отправленных файлах. |
Inner |
Объект , содержащий более конкретные сведения об ошибке. В соответствии с рекомендациями по API Microsoft One — https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses. |
Metadata |
Список метаданных, связанных с ответом для обновления |
MetadataDTO |
Имя — пара значений метаданных. |
Operation |
Запись для отслеживания длительных операций. |
Operation |
Состояние операции. |
PromptDTO |
Запрос ответа. |
Qna |
QnADTO — В объекте PromptDTO должен присутствовать QnaId или QnADTO. |
QnADTO |
Объект Q-A. |
Questions |
Список вопросов, связанных с ответом. |
Update |
Экземпляр UpdateKbContentsDTO для операции обновления |
Update |
Содержит список вопросов, которые необходимо обновить. |
Update |
Схема текста PATCH для обновления списка вопросов |
Add
Экземпляр CreateKbInputDTO для операции добавления
Имя | Тип | Описание |
---|---|---|
files |
FileDTO[] |
Список файлов, добавляемых в базу знаний. |
qnaList |
QnADTO[] |
Список QNA, добавляемых в индекс. Идентификаторы создаются службой и должны быть опущены. |
urls |
string[] |
Список URL-адресов, добавляемых в базу знаний. |
Context
Контекст, связанный с Qna, который требуется обновить.
Имя | Тип | Описание |
---|---|---|
isContextOnly |
boolean |
Чтобы пометить, является ли запрос актуальным только с предыдущим вопросом или нет. true — не включать этот вопрос в качестве результата поиска для запросов без контекста false — игнорирует контекст и включает этот вопрос в результат поиска. |
promptsToAdd |
Список запросов для добавления в qna. |
|
promptsToDelete |
integer[] |
Список запросов, связанных с qna для удаления |
Delete
Экземпляр DeleteKbContentsDTO для операции удаления
Имя | Тип | Описание |
---|---|---|
ids |
integer[] |
Список идентификаторов Qna, которые необходимо удалить |
sources |
string[] |
Список источников, которые необходимо удалить из базы знаний. |
Error
Объект ошибки. В соответствии с рекомендациями по API Microsoft One — https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.
Имя | Тип | Описание |
---|---|---|
code |
Один из серверных наборов кодов ошибок. |
|
details |
Error[] |
Массив сведений о конкретных ошибках, которые привели к этой сообщаемой ошибке. |
innerError |
Объект , содержащий более конкретные сведения об ошибке, чем текущий объект. |
|
message |
string |
Понятное представление ошибки. |
target |
string |
Целевой объект ошибки. |
ErrorCodeType
Один из серверных наборов кодов ошибок.
Имя | Тип | Описание |
---|---|---|
BadArgument |
string |
|
EndpointKeysError |
string |
|
ExtractionFailure |
string |
|
Forbidden |
string |
|
KbNotFound |
string |
|
NotFound |
string |
|
OperationNotFound |
string |
|
QnaRuntimeError |
string |
|
QuotaExceeded |
string |
|
SKULimitExceeded |
string |
|
ServiceError |
string |
|
Unauthorized |
string |
|
Unspecified |
string |
|
ValidationFailure |
string |
ErrorResponse
Ответ об ошибке. В соответствии с рекомендациями по API Microsoft One — https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.
Имя | Тип | Описание |
---|---|---|
error |
Объект ошибки. |
FileDTO
DTO для хранения сведений о отправленных файлах.
Имя | Тип | Описание |
---|---|---|
fileName |
string |
Имя файла. Поддерживаемые типы файлов: ".tsv", ".pdf", ".txt", ".docx", ".xlsx". |
fileUri |
string |
Общедоступный URI файла. |
isUnstructured |
boolean |
Необязательный флаг, указывающий, является ли данный файл неструктурированным. |
InnerErrorModel
Объект , содержащий более конкретные сведения об ошибке. В соответствии с рекомендациями по API Microsoft One — https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.
Имя | Тип | Описание |
---|---|---|
code |
string |
Более конкретный код ошибки, чем указано в содержающей ошибке. |
innerError |
Объект , содержащий более конкретные сведения об ошибке, чем текущий объект. |
Metadata
Список метаданных, связанных с ответом для обновления
Имя | Тип | Описание |
---|---|---|
add |
Список метаданных, связанных с добавляемого ответа |
|
delete |
Список метаданных, связанных с ответом для удаления |
MetadataDTO
Имя — пара значений метаданных.
Имя | Тип | Описание |
---|---|---|
name |
string |
Имя метаданных |
value |
string |
Значение метаданных. |
Operation
Запись для отслеживания длительных операций.
Имя | Тип | Описание |
---|---|---|
createdTimestamp |
string |
Метка времени создания операции. |
errorResponse |
Сведения об ошибке в случае сбоев. |
|
lastActionTimestamp |
string |
Метка времени ввода текущего состояния. |
operationId |
string |
Идентификатор операции. |
operationState |
Состояние операции. |
|
resourceLocation |
string |
Относительный URI расположения целевого ресурса для завершенных ресурсов. |
userId |
string |
Идентификатор пользователя |
OperationStateType
Состояние операции.
Имя | Тип | Описание |
---|---|---|
Failed |
string |
|
NotStarted |
string |
|
Running |
string |
|
Succeeded |
string |
PromptDTO
Запрос ответа.
Имя | Тип | Описание |
---|---|---|
displayOrder |
integer |
Индекс запроса — используется при упорядочении запросов. |
displayText |
string |
Текст, отображаемый для представления запроса на последующий вопрос |
qna |
QnADTO — В объекте PromptDTO должен присутствовать QnaId или QnADTO. |
|
qnaId |
integer |
Идентификатор Qna, соответствующий запросу. Если QnaId присутствует, объект QnADTO игнорируется. |
Qna
QnADTO — В объекте PromptDTO должен присутствовать QnaId или QnADTO.
Имя | Тип | Описание |
---|---|---|
answer |
string |
Текст ответа |
context |
Контекст QnA |
|
id |
integer |
Уникальный идентификатор для Q-A. |
lastUpdatedTimestamp |
string |
Метка времени последнего обновления QnA. |
metadata |
Список метаданных, связанных с ответом. |
|
questions |
string[] |
Список вопросов, связанных с ответом. |
source |
string |
Источник, из которого индексировался Q-A. Например. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs |
QnADTO
Объект Q-A.
Имя | Тип | Описание |
---|---|---|
answer |
string |
Текст ответа |
context |
Контекст QnA |
|
id |
integer |
Уникальный идентификатор для Q-A. |
lastUpdatedTimestamp |
string |
Метка времени последнего обновления QnA. |
metadata |
Список метаданных, связанных с ответом. |
|
questions |
string[] |
Список вопросов, связанных с ответом. |
source |
string |
Источник, из которого индексировался Q-A. Например. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs |
Questions
Список вопросов, связанных с ответом.
Имя | Тип | Описание |
---|---|---|
add |
string[] |
Список вопросов для добавления |
delete |
string[] |
Список вопросов, которые необходимо удалить. |
Update
Экземпляр UpdateKbContentsDTO для операции обновления
Имя | Тип | Описание |
---|---|---|
defaultAnswer |
string |
Ответ по умолчанию отправляется пользователю, если в базе знаний не найдено подходящего совпадения. |
name |
string |
Понятное имя базы знаний. |
qnaList |
Список Q-A (UpdateQnaDTO), добавляемых в базу знаний. |
|
urls |
string[] |
Список существующих URL-адресов для обновления. Содержимое будет извлечено и переиндексировано. |
UpdateKbOperationDTO
Содержит список вопросов, которые необходимо обновить.
Имя | Тип | Описание |
---|---|---|
add |
Экземпляр CreateKbInputDTO для операции добавления |
|
defaultAnswerUsedForExtraction |
string |
Текстовая строка, используемая в качестве ответа в любом Q-A, который не имеет извлеченных ответов из документа, но имеет иерархию. Требуется, если для поля EnableHierarchicalExtraction задано значение True. |
delete |
Экземпляр DeleteKbContentsDTO для операции удаления |
|
enableHierarchicalExtraction |
boolean |
Включите иерархическое извлечение Q-A из файлов и URL-адресов. Значение, заданное во время создания базы знаний, будет использоваться, если это поле отсутствует. |
update |
Экземпляр UpdateKbContentsDTO для операции обновления |
UpdateQnaDTO
Схема текста PATCH для обновления списка вопросов
Имя | Тип | Описание |
---|---|---|
answer |
string |
Текст ответа |
context |
Контекст, связанный с Qna, который требуется обновить. |
|
id |
integer |
Уникальный идентификатор для Q-A |
metadata |
Список метаданных, связанных с ответом для обновления |
|
questions |
Список вопросов, связанных с ответом. |
|
source |
string |
Источник, из которого индексировался Q-A. Например. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs |