Knowledgebase - Create
Асинхронная операция создания новой базы знаний.
POST {Endpoint}/qnamaker/v5.0-preview.2/knowledgebases/create
Параметры URI
Имя | В | Обязательно | Тип | Описание |
---|---|---|---|---|
Endpoint
|
path | True |
string |
Поддерживаемая конечная точка Cognitive Services (например, https://< qnamaker-resource-name >.api.cognitiveservices.azure.com). |
Заголовок запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
Ocp-Apim-Subscription-Key | True |
string |
Текст запроса
Имя | Обязательно | Тип | Описание |
---|---|---|---|
name | True |
string |
Понятное имя базы знаний. |
defaultAnswer |
string |
Ответ по умолчанию отправляется пользователю, если в базе знаний не найдено хорошее совпадение. |
|
defaultAnswerUsedForExtraction |
string |
Текстовая строка, используемая в качестве ответа в любом Q-A, который не имеет извлеченного ответа из документа, но имеет иерархию. Требуется, если для поля EnableHierarchicalExtraction задано значение True. |
|
enableHierarchicalExtraction |
boolean |
Включите иерархическое извлечение Q-A из файлов и URL-адресов. Значение будет считаться False, если этого поля нет. |
|
enableMultipleLanguages |
boolean |
Задайте значение true, чтобы разрешить создание баз знаний на разных языках для одного и того же ресурса. |
|
files |
FileDTO[] |
Список файлов, из которых требуется извлечь Q-A. |
|
language |
string |
Язык базы знаний. Список поддерживаемых языков можно найти здесь. |
|
qnaList |
QnADTO[] |
Список Q-A (QnADTO), добавляемых в базу знаний. Идентификаторы Q-A назначаются службой и должны быть опущены. |
|
urls |
string[] |
Список URL-адресов, используемых для извлечения Q-A. |
Ответы
Имя | Тип | Описание |
---|---|---|
202 Accepted |
Сведения об асинхронной операции. |
|
Other Status Codes |
Ответ об ошибке. |
Безопасность
Ocp-Apim-Subscription-Key
Type:
apiKey
In:
header
Примеры
Successful query
Sample Request
POST {Endpoint}/qnamaker/v5.0-preview.2/knowledgebases/create
{
"name": "QnA Maker FAQ",
"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": []
},
{
"id": 0,
"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": [
"How do I programmatically create a KB?"
],
"metadata": [
{
"name": "category",
"value": "api"
}
],
"context": {
"isContextOnly": false,
"prompts": [
{
"displayOrder": 1,
"displayText": "Update KB",
"qna": {
"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",
"questions": [
"How do I programmatically update my KB?"
],
"metadata": [
{
"name": "category",
"value": "api"
}
],
"context": {
"isContextOnly": false,
"prompts": [
{
"displayOrder": 1,
"displayText": "Refresh Endpoint Keys",
"qna": {
"answer": "You can use our REST apis to refresh endpoint keys. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/endpointkeys/refreshkeys",
"questions": [
"How do I programmatically refresh endpoint keys?"
]
}
}
]
}
}
}
]
}
}
],
"urls": [
"https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs",
"https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-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"
}
]
}
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"
}
Определения
Имя | Описание |
---|---|
Context |
Контекст, связанный с вопросом, который требуется обновить. |
Create |
Публикация схемы текста для операции CreateKb. |
Error |
Объект 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. |
MetadataDTO |
Имя — пара метаданных значений. |
Operation |
Запись для отслеживания длительной операции. |
Operation |
Состояние операции. |
PromptDTO |
Запрос ответа. |
Qna |
QnADTO — В объекте PromptDTO должен присутствовать QnaId или QnADTO. |
QnADTO |
Объект Q-A. |
Context
Контекст, связанный с вопросом, который требуется обновить.
Имя | Тип | Описание |
---|---|---|
isContextOnly |
boolean |
Чтобы пометить, является ли запрос актуальным только с предыдущим вопросом или нет. true — не включать этот вопрос в качестве результата поиска для запросов без контекста false — игнорирует контекст и включает этот вопрос в результат поиска. |
promptsToAdd |
Список запросов для добавления в qna. |
|
promptsToDelete |
integer[] |
Список запросов, связанных с вопросом, который требуется удалить |
CreateKbDTO
Публикация схемы текста для операции CreateKb.
Имя | Тип | Описание |
---|---|---|
defaultAnswer |
string |
Ответ по умолчанию отправляется пользователю, если в базе знаний не найдено хорошее совпадение. |
defaultAnswerUsedForExtraction |
string |
Текстовая строка, используемая в качестве ответа в любом Q-A, который не имеет извлеченного ответа из документа, но имеет иерархию. Требуется, если для поля EnableHierarchicalExtraction задано значение True. |
enableHierarchicalExtraction |
boolean |
Включите иерархическое извлечение Q-A из файлов и URL-адресов. Значение будет считаться False, если этого поля нет. |
enableMultipleLanguages |
boolean |
Задайте значение true, чтобы разрешить создание баз знаний на разных языках для одного и того же ресурса. |
files |
FileDTO[] |
Список файлов, из которых требуется извлечь Q-A. |
language |
string |
Язык базы знаний. Список поддерживаемых языков можно найти здесь. |
name |
string |
Понятное имя базы знаний. |
qnaList |
QnADTO[] |
Список Q-A (QnADTO), добавляемых в базу знаний. Идентификаторы Q-A назначаются службой и должны быть опущены. |
urls |
string[] |
Список URL-адресов, используемых для извлечения Q-A. |
Error
Объект 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 |
Объект 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 |
Объект, содержащий более конкретные сведения об ошибке, чем текущий объект. |
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 |