다음을 통해 공유


Knowledgebase - Create

새 기술 자료를 만드는 비동기 작업입니다.

POST {Endpoint}/qnamaker/v5.0-preview.2/knowledgebases/create

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
Endpoint
path True

string

지원되는 Cognitive Services 엔드포인트(예: qnamaker-resource-name >.api.cognitiveservices.azure.com< https://).

요청 헤더

Name 필수 형식 Description
Ocp-Apim-Subscription-Key True

string

요청 본문

Name 필수 형식 Description
name True

string

기술 자료의 이름입니다.

defaultAnswer

string

KB에서 일치하는 항목이 없으면 사용자에게 전송되는 기본 답변입니다.

defaultAnswerUsedForExtraction

string

문서에서 추출된 답변이 없지만 계층 구조가 있는 Q-A에서 답변으로 사용할 텍스트 문자열입니다. EnableHierarchicalExtraction 필드가 True로 설정된 경우 필요합니다.

enableHierarchicalExtraction

boolean

파일 및 URL에서 Q-A의 계층적 추출을 사용하도록 설정합니다. 이 필드가 없는 경우 False로 간주할 값입니다.

enableMultipleLanguages

boolean

동일한 리소스에 대해 다른 언어로 KB를 만들 수 있도록 하려면 true로 설정합니다.

files

FileDTO[]

Q-A 추출할 파일 목록입니다.

language

string

기술 자료의 언어입니다. 지원되는 언어 목록은 여기를 참조하세요.

qnaList

QnADTO[]

기술 자료에 추가할 QnADTO(QnADTO) 목록입니다. Q-A ID는 서비스에서 할당되며 생략해야 합니다.

urls

string[]

Q-A 추출에 사용할 URL 목록입니다.

응답

Name 형식 Description
202 Accepted

Operation

비동기 작업의 세부 정보입니다.

Other Status Codes

ErrorResponse

오류 응답입니다.

보안

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

정의

Name Description
Context

업데이트할 Qna와 연결된 컨텍스트입니다.

CreateKbDTO

CreateKb 작업에 대한 사후 본문 스키마입니다.

Error

Error 개체. Microsoft One API 지침에 따라 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

ErrorCodeType

서버 정의 오류 코드 집합 중 하나입니다.

ErrorResponse

오류 응답입니다. Microsoft One API 지침에 따라 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

FileDTO

업로드된 파일의 세부 정보를 보관하는 DTO입니다.

InnerErrorModel

오류에 대한 보다 구체적인 정보를 포함하는 개체입니다. Microsoft One API 지침에 따라 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

MetadataDTO

이름 - 메타데이터의 값 쌍입니다.

Operation

장기 실행 작업을 추적하기 위한 레코드입니다.

OperationStateType

작업 상태입니다.

PromptDTO

답변을 묻는 메시지를 표시합니다.

Qna

QnADTO - QnaId 또는 QnADTO가 PromptDTO 개체에 있어야 합니다.

QnADTO

Q-A 개체입니다.

Context

업데이트할 Qna와 연결된 컨텍스트입니다.

Name 형식 Description
isContextOnly

boolean

프롬프트가 이전 질문과만 관련이 있는지 여부를 표시합니다. true - 컨텍스트 false가 없는 쿼리에 대한 검색 결과로 이 QnA를 포함하지 마세요. 컨텍스트를 무시하고 검색 결과에 이 QnA를 포함합니다.

promptsToAdd

PromptDTO[]

qna에 추가할 프롬프트 목록입니다.

promptsToDelete

integer[]

삭제할 qna와 연결된 프롬프트 목록

CreateKbDTO

CreateKb 작업에 대한 사후 본문 스키마입니다.

Name 형식 Description
defaultAnswer

string

KB에서 일치하는 항목이 없으면 사용자에게 전송되는 기본 답변입니다.

defaultAnswerUsedForExtraction

string

문서에서 추출된 답변이 없지만 계층 구조가 있는 Q-A에서 답변으로 사용할 텍스트 문자열입니다. EnableHierarchicalExtraction 필드가 True로 설정된 경우 필요합니다.

enableHierarchicalExtraction

boolean

파일 및 URL에서 Q-A의 계층적 추출을 사용하도록 설정합니다. 이 필드가 없는 경우 False로 간주할 값입니다.

enableMultipleLanguages

boolean

동일한 리소스에 대해 다른 언어로 KB를 만들 수 있도록 하려면 true로 설정합니다.

files

FileDTO[]

Q-A 추출할 파일 목록입니다.

language

string

기술 자료의 언어입니다. 지원되는 언어 목록은 여기를 참조하세요.

name

string

기술 자료의 이름입니다.

qnaList

QnADTO[]

기술 자료에 추가할 QnADTO(QnADTO) 목록입니다. Q-A ID는 서비스에서 할당되며 생략해야 합니다.

urls

string[]

Q-A 추출에 사용할 URL 목록입니다.

Error

Error 개체. Microsoft One API 지침에 따라 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name 형식 Description
code

ErrorCodeType

서버 정의 오류 코드 집합 중 하나입니다.

details

Error[]

이 보고된 오류로 이어진 특정 오류에 대한 세부 정보 배열입니다.

innerError

InnerErrorModel

오류에 대한 현재 개체보다 더 구체적인 정보를 포함하는 개체입니다.

message

string

사람이 읽을 수 있는 오류 표현입니다.

target

string

오류의 대상입니다.

ErrorCodeType

서버 정의 오류 코드 집합 중 하나입니다.

Name 형식 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

오류 응답입니다. Microsoft One API 지침에 따라 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name 형식 Description
error

Error

Error 개체.

FileDTO

업로드된 파일의 세부 정보를 보관하는 DTO입니다.

Name 형식 Description
fileName

string

파일 이름. 지원되는 파일 형식은 ".tsv", ".pdf", ".txt", ".docx", ".xlsx"입니다.

fileUri

string

파일의 공용 URI입니다.

isUnstructured

boolean

지정된 파일이 구조화되지 않은지 지정하는 선택적 플래그입니다.

InnerErrorModel

오류에 대한 보다 구체적인 정보를 포함하는 개체입니다. Microsoft One API 지침에 따라 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name 형식 Description
code

string

포함하는 오류에서 제공한 것보다 더 구체적인 오류 코드입니다.

innerError

InnerErrorModel

오류에 대한 현재 개체보다 더 구체적인 정보를 포함하는 개체입니다.

MetadataDTO

이름 - 메타데이터의 값 쌍입니다.

Name 형식 Description
name

string

메타데이터 이름입니다.

value

string

메타데이터 값입니다.

Operation

장기 실행 작업을 추적하기 위한 레코드입니다.

Name 형식 Description
createdTimestamp

string

작업이 만들어진 타임스탬프입니다.

errorResponse

ErrorResponse

오류 발생 시 오류 세부 정보입니다.

lastActionTimestamp

string

현재 상태가 입력된 타임스탬프입니다.

operationId

string

OperationID

operationState

OperationStateType

작업 상태입니다.

resourceLocation

string

완료된 리소스의 대상 리소스 위치에 대한 상대 URI입니다.

userId

string

User Id

OperationStateType

작업 상태입니다.

Name 형식 Description
Failed

string

NotStarted

string

Running

string

Succeeded

string

PromptDTO

답변을 묻는 메시지를 표시합니다.

Name 형식 Description
displayOrder

integer

프롬프트의 인덱스 - 프롬프트 순서에 사용됨

displayText

string

후속 질문 프롬프트를 나타내기 위해 표시되는 텍스트

qna

Qna

QnADTO - QnaId 또는 QnADTO가 PromptDTO 개체에 있어야 합니다.

qnaId

integer

프롬프트에 해당하는 Qna ID - QnaId가 있는 경우 QnADTO 개체는 무시됩니다.

Qna

QnADTO - QnaId 또는 QnADTO가 PromptDTO 개체에 있어야 합니다.

Name 형식 Description
answer

string

대답 텍스트

context

Context

QnA 컨텍스트

id

integer

Q-A의 고유 ID입니다.

lastUpdatedTimestamp

string

QnA가 마지막으로 업데이트된 타임스탬프입니다.

metadata

MetadataDTO[]

답변과 연결된 메타데이터 목록입니다.

questions

string[]

답변과 관련된 질문 목록입니다.

source

string

Q-A가 인덱싱된 원본입니다. 예. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs

QnADTO

Q-A 개체입니다.

Name 형식 Description
answer

string

대답 텍스트

context

Context

QnA 컨텍스트

id

integer

Q-A의 고유 ID입니다.

lastUpdatedTimestamp

string

QnA가 마지막으로 업데이트된 타임스탬프입니다.

metadata

MetadataDTO[]

답변과 연결된 메타데이터 목록입니다.

questions

string[]

답변과 관련된 질문 목록입니다.

source

string

Q-A가 인덱싱된 원본입니다. 예. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs