Knowledgebase - Update

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

PATCH {Endpoint}/qnamaker/v5.0-preview.2/knowledgebases/{kbId}

Parámetros de identificador URI

Nombre En Requerido Tipo 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

Nombre Requerido Tipo Description
Ocp-Apim-Subscription-Key True

string

Cuerpo de la solicitud

Nombre Tipo Description
add

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

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

Update

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

Respuestas

Nombre Tipo Description
202 Accepted

Operation

Detalles de la operación asincrónica.

Headers

Location: string

Other Status Codes

ErrorResponse

Respuesta de error.

Seguridad

Ocp-Apim-Subscription-Key

Type: apiKey
In: header

Ejemplos

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"
}

Definiciones

Nombre Description
Add

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

Context

Contexto asociado a Qna que se va a actualizar.

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

Nombre Tipo Description
files

FileDTO[]

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

qnaList

QnADTO[]

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 asociado a Qna que se va a actualizar.

Nombre Tipo 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.

promptsToAdd

PromptDTO[]

Lista de mensajes que se van a agregar a qna.

promptsToDelete

integer[]

Lista de solicitudes asociadas a qna que se van a eliminar

Delete

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

Nombre Tipo 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.

Nombre Tipo Description
code

ErrorCodeType

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

details

Error[]

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

innerError

InnerErrorModel

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.

Nombre Tipo 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.

Nombre Tipo Description
error

Error

Objeto de error.

FileDTO

DTO para contener detalles de los archivos cargados.

Nombre Tipo Description
fileName

string

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

fileUri

string

URI público del archivo.

isUnstructured

boolean

Marca opcional para especificar si el archivo especificado es No estructurado.

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.

Nombre Tipo Description
code

string

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

innerError

InnerErrorModel

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

Nombre Tipo Description
add

MetadataDTO[]

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

delete

MetadataDTO[]

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

MetadataDTO

Nombre: par de valores de metadatos.

Nombre Tipo 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.

Nombre Tipo Description
createdTimestamp

string

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

errorResponse

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

OperationStateType

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.

Nombre Tipo Description
Failed

string

NotStarted

string

Running

string

Succeeded

string

PromptDTO

Solicite una respuesta.

Nombre Tipo 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

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.

Nombre Tipo Description
answer

string

Texto de respuesta

context

Context

Contexto de una QnA

id

integer

Identificador único para el Q-A.

lastUpdatedTimestamp

string

Marca de tiempo en la que se actualizó por última vez la QnA.

metadata

MetadataDTO[]

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

QnADTO

Objeto Q-A.

Nombre Tipo Description
answer

string

Texto de respuesta

context

Context

Contexto de una QnA

id

integer

Identificador único para el Q-A.

lastUpdatedTimestamp

string

Marca de tiempo en la que se actualizó por última vez la QnA.

metadata

MetadataDTO[]

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.

Nombre Tipo 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

Nombre Tipo Description
defaultAnswer

string

Respuesta predeterminada enviada al usuario si no se encuentra ninguna coincidencia correcta en la KB.

name

string

Nombre descriptivo de la base de conocimiento.

qnaList

UpdateQnaDTO[]

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.

Nombre Tipo Description
add

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

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

Update

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

UpdateQnaDTO

Esquema de cuerpo PATCH para actualizar lista de Qna

Nombre Tipo Description
answer

string

Texto de respuesta

context

Context

Contexto asociado a Qna que se va a actualizar.

id

integer

Identificador único para el Q-A

metadata

Metadata

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

questions

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