生成式 AI 搜尋

事前準備

如要將範例文件匯入 Document AI 倉儲,請參閱快速入門指南

生成式 AI 搜尋會擷取與 (關鍵字或自然語言) 搜尋查詢最相關的前 k 份文件。這項功能會從客戶上傳的文件中找出確切答案,並依關聯性排序搜尋結果。

搜尋要求呼叫端會決定 k,方法是在 qaSizeLimit 欄位中指定 k。大型語言模型會判斷搜尋查詢與文件之間的關聯性。

系統會搜尋哪些資料?

不支援篩選、分頁、直方圖、自訂同義字、文件層級和精細的存取控管。

發出搜尋要求呼叫

如要呼叫搜尋服務,您必須使用搜尋要求,定義如下:

{
  "documentQuery": {
    object (DocumentQuery)
  },
  "qaSizeLimit": integer
}

parent 欄位必須填寫,格式如下:

/projects/PROJECT_ID/locations/LOCATION

生成式 AI 搜尋需要 qaSizeLimit 欄位。

搜尋要求的回應

搜尋回應的定義如下:

{
  "matchingDocuments": [
    {
      object (MatchingDocument)
    }
  ],
  "metadata": {
    object (ResponseMetadata)
  }
}

文件查詢

document_query 欄位的定義如下:

{
  "query": string,
  "isNlQuery": boolean
}

「query」欄位適用於要求使用者的搜尋查詢字詞,可以是關鍵字或自然語言問題。通常來自 UI 中的搜尋欄位。 如要使用生成式 AI 搜尋,請將 isNlQuery 欄位設為 true。

相符文件

相符的文件如下所示:

{
  "document": {
    object (Document)
  },
  "searchTextSnippet": string,
  "qaResult": {
    object (QAResult)
  }
}

SearchTextSnippet 欄位包含可回答使用者自然語言查詢的摘要。不會有 HTML 粗體標記,答案摘要中的醒目顯示會顯示在 QAResult.highlights 中。注意:如需「相符文件」的完整參考資料。

生成式 AI 搜尋結果

這是生成式 AI 搜尋結果資訊。

{
  "highlights": {
    object(Highlight)
  }
  "confidence_score": float
}

醒目顯示

這是搜尋文字片段中的文字範圍,代表醒目顯示的部分,例如答案內容或高度相關的句子。

{
  "start_index": integer
  "end_index": integer
}

從一組文件中尋找問答

如要使用生成式 AI 生成答案,您必須使用含有 documentNameFilter 的搜尋要求,定義如下:

{
  "documentQuery": {
    "query": "QUERY",
    "isNlQuery": "true",
    "documentNameFilter" : [
      "projects/PROJECT_NUMBER/locations/LOCATION/documents/DOCUMENT_ID_1",
      "projects/PROJECT_NUMBER/locations/LOCATION/documents/DOCUMENT_ID_2",
    ]
  },
  "qaSizeLimit": integer
}

請勿在 documentQuery 中新增其他篩選器,因為其他篩選器尚未運作。

如果可以在指定的文件集中找到答案,答案會儲存在 questionAnswer 欄位中。

{
  "document": {
    object (Document)
  },
  questionAnswer: "QUESTION_ANSWER",
}

後續步驟