Knowledgebase - Update

Operación asincrónica para modificar una base de conocimiento.

PATCH {Endpoint}/qnamaker/v4.0/knowledgebases/{kbId}

Parámetros de identificador URI

Name In Required Type Description
Endpoint
path True
  • string

Punto de conexión de Cognitive Services compatible (por ejemplo, https://< qnamaker-resource-name> .api.cognitiveservices.azure.com).

kbId
path True
  • string

Id. de la base de conocimiento.

Encabezado de la solicitud

Name Required Type Description
Ocp-Apim-Subscription-Key True
  • string

Cuerpo de la solicitud

Name Type Description
add

Instancia de CreateKbInputDTO para la operación de adición

defaultAnswerUsedForExtraction
  • string

Cadena de texto que se va a usar como respuesta en cualquier Q-A que no tiene respuesta extraída del documento, pero tiene una jerarquía. Obligatorio cuando el campo EnableHierarchicalExtraction está establecido en True.

delete

Instancia de DeleteKbContentsDTO para la operación de eliminación

enableHierarchicalExtraction
  • boolean

Habilite la extracción jerárquica de Q-A de archivos y direcciones URL. El valor establecido durante la creación de KB se usará si este campo no está presente.

update

Instancia de UpdateKbContentsDTO para la operación de actualización

Respuestas

Name Type Description
202 Accepted

Detalles de la operación asincrónica.

Headers

  • Location: string
Other Status Codes

Respuesta de error.

Seguridad

Ocp-Apim-Subscription-Key

Type: apiKey
In: header

Ejemplos

Successful query

Sample Request

PATCH {Endpoint}/qnamaker/v4.0/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"
}

Definiciones

Add

Instancia de CreateKbInputDTO para la operación de adición

Context

Contexto de una QnA

Delete

Instancia de DeleteKbContentsDTO para la operación de eliminación

Error

Objeto de error. Según las directrices de la API de Microsoft One: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

ErrorCodeType

Uno de los conjuntos de códigos de error definidos por el servidor.

ErrorResponse

Respuesta de error. Según las directrices de la API de Microsoft One: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

FileDTO

DTO para contener detalles de los archivos cargados.

InnerErrorModel

Objeto que contiene información más específica sobre el error. Según las directrices de la API de Microsoft One: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Metadata

Lista de metadatos asociados a la respuesta que se va a actualizar

MetadataDTO

Nombre: par de valores de metadatos.

Operation

Registre para realizar un seguimiento de la operación de larga duración.

OperationStateType

Estado de la operación.

PromptDTO

Solicite una respuesta.

Qna

QnADTO: QnaId o QnADTO deben estar presentes en un objeto PromptDTO.

QnADTO

Objeto Q-A.

Questions

Lista de preguntas asociadas a la respuesta.

Update

Instancia de UpdateKbContentsDTO para la operación de actualización

UpdateKbOperationDTO

Contiene la lista de preguntas y respuestas que se van a actualizar.

UpdateQnaDTO

Esquema de cuerpo PATCH para actualizar lista de Qna

Add

Instancia de CreateKbInputDTO para la operación de adición

Name Type Description
files

Lista de archivos que se van a agregar a la base de conocimiento.

qnaList

Lista de QNA que se va a agregar al índice. El servicio genera identificadores y se debe omitir.

urls
  • string[]

Lista de direcciones URL que se van a agregar a la base de conocimiento.

Context

Contexto de una QnA

Name Type Description
isContextOnly
  • boolean

Para marcar si una solicitud solo es relevante con una pregunta anterior o no. true: no incluya este QnA como resultado de búsqueda para consultas sin contexto false: omite el contexto e incluye esta QnA en el resultado de la búsqueda.

prompts

Lista de mensajes asociados a la respuesta.

Delete

Instancia de DeleteKbContentsDTO para la operación de eliminación

Name Type Description
ids
  • integer[]

Lista de identificadores de Qna que se van a eliminar

sources
  • string[]

Lista de orígenes que se van a eliminar de la base de conocimiento.

Error

Objeto de error. Según las directrices de la API de Microsoft One: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Type Description
code

Uno de los conjuntos de códigos de error definidos por el servidor.

details

Matriz de detalles sobre errores específicos que llevaron a este error notificado.

innerError

Objeto que contiene información más específica que el objeto actual sobre el error.

message
  • string

Representación legible del error.

target
  • string

Destino del error.

ErrorCodeType

Uno de los conjuntos de códigos de error definidos por el servidor.

Name Type Description
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

Respuesta de error. Según las directrices de la API de Microsoft One: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Type Description
error

Objeto de error.

FileDTO

DTO para contener detalles de los archivos cargados.

Name Type Description
fileName
  • string

Nombre de archivo. Los tipos de archivo admitidos son ".tsv", ".pdf", ".txt", ".docx", ".xlsx".

fileUri
  • string

URI público del archivo.

InnerErrorModel

Objeto que contiene información más específica sobre el error. Según las directrices de la API de Microsoft One: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Type Description
code
  • string

Código de error más específico del proporcionado por el error contenedor.

innerError

Objeto que contiene información más específica que el objeto actual sobre el error.

Metadata

Lista de metadatos asociados a la respuesta que se va a actualizar

Name Type Description
add

Lista de metadatos asociados a la respuesta que se van a agregar

delete

Lista de metadatos asociados a la respuesta que se van a eliminar

MetadataDTO

Nombre: par de valores de metadatos.

Name Type Description
name
  • string

nombre de los metadatos.

value
  • string

valor de los metadatos.

Operation

Registre para realizar un seguimiento de la operación de larga duración.

Name Type Description
createdTimestamp
  • string

Marca de tiempo cuando se creó la operación.

errorResponse

Detalles del error en caso de errores.

lastActionTimestamp
  • string

Marca de tiempo en la que se especificó el estado actual.

operationId
  • string

Identificador de operación.

operationState

Estado de la operación.

resourceLocation
  • string

URI relativo a la ubicación del recurso de destino para los recursos completados.

userId
  • string

Id. de usuario

OperationStateType

Estado de la operación.

Name Type Description
Failed
  • string
NotStarted
  • string
Running
  • string
Succeeded
  • string

PromptDTO

Solicite una respuesta.

Name Type Description
displayOrder
  • integer

Índice del símbolo del sistema: se usa para ordenar las solicitudes

displayText
  • string

Texto que se muestra para representar un mensaje de preguntas de seguimiento

qna

QnADTO: QnaId o QnADTO deben estar presentes en un objeto PromptDTO.

qnaId
  • integer

Identificador de Qna correspondiente al símbolo del sistema: si QnaId está presente, se omite el objeto QnADTO.

Qna

QnADTO: QnaId o QnADTO deben estar presentes en un objeto PromptDTO.

QnADTO

Objeto Q-A.

Name Type Description
answer
  • string

Texto de respuesta

context

Contexto de una QnA

id
  • integer

Identificador único para el Q-A.

metadata

Lista de metadatos asociados a la respuesta.

questions
  • string[]

Lista de preguntas asociadas a la respuesta.

source
  • string

Origen desde el que se indizó Q-A. Eg. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs

Questions

Lista de preguntas asociadas a la respuesta.

Name Type Description
add
  • string[]

Lista de preguntas que se van a agregar

delete
  • string[]

Lista de preguntas que se van a eliminar.

Update

Instancia de UpdateKbContentsDTO para la operación de actualización

Name Type Description
name
  • string

Nombre descriptivo de la base de conocimiento.

qnaList

Lista de Q-A (UpdateQnaDTO) que se van a agregar a la base de conocimiento.

urls
  • string[]

Lista de direcciones URL existentes que se van a actualizar. El contenido se extraerá de nuevo y se volverá a indexar.

UpdateKbOperationDTO

Contiene la lista de preguntas y respuestas que se van a actualizar.

Name Type Description
add

Instancia de CreateKbInputDTO para la operación de adición

defaultAnswerUsedForExtraction
  • string

Cadena de texto que se va a usar como respuesta en cualquier Q-A que no tiene respuesta extraída del documento, pero tiene una jerarquía. Obligatorio cuando el campo EnableHierarchicalExtraction está establecido en True.

delete

Instancia de DeleteKbContentsDTO para la operación de eliminación

enableHierarchicalExtraction
  • boolean

Habilite la extracción jerárquica de Q-A de archivos y direcciones URL. El valor establecido durante la creación de KB se usará si este campo no está presente.

update

Instancia de UpdateKbContentsDTO para la operación de actualización

UpdateQnaDTO

Esquema de cuerpo PATCH para actualizar lista de Qna

Name Type Description
answer
  • string

Texto de respuesta

context

Contexto asociado a Qna que se va a actualizar.

id
  • integer

Identificador único para el Q-A

metadata

Lista de metadatos asociados a la respuesta que se va a actualizar

questions

Lista de preguntas asociadas a la respuesta.

source
  • string

Origen desde el que se indizó Q-A. Eg. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs