Knowledgebase - Create

Operasi asinkron untuk membuat basis pengetahuan baru.

POST {Endpoint}/qnamaker/v4.0/knowledgebases/create

Parameter URI

Name In Required Type Description
Endpoint
path True
  • string

Titik akhir Cognitive Services yang didukung (misalnya, https://< qnamaker-resource-name> .api.cognitiveservices.azure.com).

Header Permintaan

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

Isi Permintaan

Name Required Type Description
name True
  • string

Nama yang ramah untuk pangkalan pengetahuan.

defaultAnswerUsedForExtraction
  • string

String teks yang akan digunakan sebagai jawaban dalam Q-A apa pun yang tidak memiliki jawaban yang diekstrak dari dokumen tetapi memiliki hierarki. Diperlukan saat bidang EnableHierarchicalExtraction diatur ke True.

enableHierarchicalExtraction
  • boolean

Aktifkan ekstraksi hierarki Q-A dari file dan url. Nilai yang akan dianggap False jika bidang ini tidak ada.

files

Daftar file untuk Mengekstrak Q-A.

language
  • string

Bahasa pangkalan pengetahuan. Temukan daftar bahasa yang didukung di sini.

qnaList

Daftar Q-A (QnADTO) yang akan ditambahkan ke pangkalan pengetahuan. Id Q-A ditetapkan oleh layanan dan harus dihilangkan.

urls
  • string[]

Daftar URL yang akan digunakan untuk mengekstrak Q-A.

Respons

Name Type Description
202 Accepted

Detail operasi asinkron.

Other Status Codes

Respons kesalahan.

Keamanan

Ocp-Apim-Subscription-Key

Type: apiKey
In: header

Contoh

Successful query

Sample Request

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

Definisi

Context

Konteks QnA

CreateKbDTO

Skema isi pos untuk operasi CreateKb.

Error

Objek kesalahan. Sesuai panduan Microsoft One API - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

ErrorCodeType

Salah satu set kode kesalahan yang ditentukan server.

ErrorResponse

Respons kesalahan. Sesuai panduan Microsoft One API - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

FileDTO

DTO untuk menyimpan detail file yang diunggah.

InnerErrorModel

Objek yang berisi informasi yang lebih spesifik tentang kesalahan tersebut. Sesuai panduan Microsoft One API - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

MetadataDTO

Nama - pasangan nilai metadata.

Operation

Rekam untuk melacak operasi jangka panjang.

OperationStateType

Status operasi.

PromptDTO

Minta jawaban.

Qna

QnADTO - Baik QnaId atau QnADTO perlu ada dalam objek PromptDTO

QnADTO

Objek Q-A.

Context

Konteks QnA

Name Type Description
isContextOnly
  • boolean

Untuk menandai apakah perintah hanya relevan dengan pertanyaan sebelumnya atau tidak. true - Jangan sertakan QnA ini sebagai hasil pencarian untuk kueri tanpa konteks false - mengabaikan konteks dan menyertakan QnA ini dalam hasil pencarian

prompts

Daftar perintah yang terkait dengan jawabannya.

CreateKbDTO

Skema isi pos untuk operasi CreateKb.

Name Type Description
defaultAnswerUsedForExtraction
  • string

String teks yang akan digunakan sebagai jawaban dalam Q-A apa pun yang tidak memiliki jawaban yang diekstrak dari dokumen tetapi memiliki hierarki. Diperlukan saat bidang EnableHierarchicalExtraction diatur ke True.

enableHierarchicalExtraction
  • boolean

Aktifkan ekstraksi hierarki Q-A dari file dan url. Nilai yang akan dianggap False jika bidang ini tidak ada.

files

Daftar file untuk Mengekstrak Q-A.

language
  • string

Bahasa pangkalan pengetahuan. Temukan daftar bahasa yang didukung di sini.

name
  • string

Nama yang ramah untuk pangkalan pengetahuan.

qnaList

Daftar Q-A (QnADTO) yang akan ditambahkan ke pangkalan pengetahuan. Id Q-A ditetapkan oleh layanan dan harus dihilangkan.

urls
  • string[]

Daftar URL yang akan digunakan untuk mengekstrak Q-A.

Error

Objek kesalahan. Sesuai panduan Microsoft One API - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Type Description
code

Salah satu set kode kesalahan yang ditentukan server.

details

Array detail tentang kesalahan tertentu yang menyebabkan kesalahan yang dilaporkan ini.

innerError

Objek yang berisi informasi yang lebih spesifik daripada objek saat ini tentang kesalahan.

message
  • string

Representasi kesalahan yang dapat dibaca manusia.

target
  • string

Target kesalahan.

ErrorCodeType

Salah satu set kode kesalahan yang ditentukan server.

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

Respons kesalahan. Sesuai panduan Microsoft One API - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Type Description
error

Objek kesalahan.

FileDTO

DTO untuk menyimpan detail file yang diunggah.

Name Type Description
fileName
  • string

Nama file. Jenis file yang didukung adalah ".tsv", ".pdf", ".txt", ".docx", ".xlsx".

fileUri
  • string

URI publik file.

InnerErrorModel

Objek yang berisi informasi yang lebih spesifik tentang kesalahan tersebut. Sesuai panduan Microsoft One API - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Type Description
code
  • string

Kode kesalahan yang lebih spesifik daripada yang disediakan oleh kesalahan yang berisi.

innerError

Objek yang berisi informasi yang lebih spesifik daripada objek saat ini tentang kesalahan.

MetadataDTO

Nama - pasangan nilai metadata.

Name Type Description
name
  • string

Nama metadata.

value
  • string

Nilai metadata.

Operation

Rekam untuk melacak operasi jangka panjang.

Name Type Description
createdTimestamp
  • string

Tanda waktu saat operasi dibuat.

errorResponse

Detail kesalahan jika terjadi kegagalan.

lastActionTimestamp
  • string

Tanda waktu ketika status saat ini dimasukkan.

operationId
  • string

Id Operasi.

operationState

Status operasi.

resourceLocation
  • string

URI relatif terhadap lokasi sumber daya target untuk sumber daya yang telah selesai.

userId
  • string

Id Pengguna

OperationStateType

Status operasi.

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

PromptDTO

Minta jawaban.

Name Type Description
displayOrder
  • integer

Indeks perintah - digunakan dalam urutan perintah

displayText
  • string

Teks ditampilkan untuk mewakili petunjuk pertanyaan tindak lanjut

qna

QnADTO - Baik QnaId atau QnADTO perlu ada dalam objek PromptDTO

qnaId
  • integer

Id Qna yang sesuai dengan perintah - jika QnaId ada, objek QnADTO diabaikan.

Qna

QnADTO - Baik QnaId atau QnADTO perlu ada dalam objek PromptDTO

QnADTO

Objek Q-A.

Name Type Description
answer
  • string

Teks jawaban

context

Konteks QnA

id
  • integer

Id unik untuk Q-A.

metadata

Daftar metadata yang terkait dengan jawabannya.

questions
  • string[]

Daftar pertanyaan yang terkait dengan jawabannya.

source
  • string

Sumber tempat Q-A diindeks. Misalnya. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs