Skip to main content
更多

知識庫SearchFilters

如果您在請求 Retrieve 介面時返回的結果包含較多幹擾資訊,可以參考本文樣本,在請求時傳入SearchFilters設定個人化的檢索條件,對語義檢索結果進行過濾,以排除與查詢Query無關的資訊(該方法尤其適合結構化資料)。

指知識庫的Retrieve介面。

效果對比

請求Retrieve介面(未傳入SearchFilters)請求Retrieve介面(傳入SearchFilters)
Retrieve請求體:
{
  "indexId": "o73yjlxxxx",
  "query": "公司中姓名為張三的員工"
}
Retrieve請求體:
{
  "indexId": "o73yjlxxxx",
  "query": "公司中姓名為張三的員工",
  "searchFilters": [
    {
      "姓名": "張三"
    }
  ]
}
Retrieve請求返回:
object {1}
  nodes [3]
    0 {3}
      metadata {13}
      score: 0.509829580783844
      text: 姓名:張三 年齡:25 崗位:技術員 性別:男
    1 {3}
      metadata {12}
      score: 0.24424360692501068
      text: 姓名:李四 年齡:31 崗位:銷售 性別:女
    2 {3}
      metadata {12}
      score: 0.21872329711914062
      text: 姓名:王五 年齡:36 崗位:經理 性別:男
傳統語義檢索返回了一些與查詢Query(張三)不太相關的文本切片。
Retrieve介面返回:
▼ object {1}
  ▼ nodes [1]
    ▼ 0 {3}
      ► metadata {13}
      score : 0.509623825550793
      text : 姓名:張三 年齡:25 崗位:技術員 性別:男
通過設定檢索條件(SearchFilters),過濾語義檢索結果中與查詢Query(張三)無關的文本切片。

文法說明

SearchFilters可以包含一個或多個子分組(如下方樣本包含了兩個子分組)。每個子分組由一組或多組Key-Value索引值對(檢索欄位:欄位值)組成,對通過使用者提示詞找到的文本切片進行進一步過濾。子分組之間預設採用 AND 語義,且不可更改。關於如何使用子分組,請參見子分組查詢樣本
{
  "searchFilters": [
    {
      "姓名": "張三",
      "性別": "男"
    },
    {
      "崗位": "技術員"
    }
  ]
}
子分組內的檢索欄位支援單值查詢多值查詢範圍查詢模糊查詢標籤(Tag)查詢
  • 單值查詢:欄位類型只支援數值(long或double)、字串(string)。關於如何使用單值查詢,請參見單值查詢樣本
  • 多值查詢:只支援由純數值(long或double)或純字串(string)組成的數組。關於如何使用多值查詢,請參見多值查詢樣本
  • 範圍查詢:支援等值查詢區間查詢。關於如何使用範圍查詢,請參見範圍查詢樣本
    • 等值查詢:支援 eq(等於)、neq(不等於) 屬性,欄位類型支援數值(long或double)和字串(string)。一個欄位不可配置多個值(不區分大小寫)。
    • 區間查詢:支援 gt(大於)、gte(大於等於)、lt(小於)、lte(小於等於) 屬性,欄位類型只支援數值(long, double)。
  • 模糊查詢:欄位類型只支援字串(string)。支援like 屬性。關於如何使用模糊查詢,請參見模糊查詢樣本
  • 標籤(Tag)查詢:只支援文檔搜尋類知識庫。關於如何使用標籤查詢,請參見標籤(Tag)查詢樣本

前置步驟

完整程式碼範例

展開下方摺疊面板,查看本文提供的Python和Java完整範例程式碼(其他語言需參考樣本自行實現)。
在調用範例程式碼之前,需擷取AccessKey和AccessKey Secret並配置到環境變數
  • Python
  • Java
# 範例程式碼僅供參考,請勿在生產環境中直接使用
import json
import os
import sys
from typing import List

from alibabacloud_bailian20231229 import models as bailian_20231229_models
from alibabacloud_bailian20231229.client import Client as bailian20231229Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient

class SearchFiltersFullExample:
    class QueryObject:
        def __init__(self, prefix):
            self.like = prefix

        def to_dict(self):
            return {
                "like": self.like
            }

    class Range:
        def __init__(self, gte, lte):
            self.gte = gte
            self.lte = lte

        def to_dict(self):
            return {
                "gte": self.gte,
                "lte": self.lte
            }

    def __init__(self):
        pass

    @staticmethod
    def create_client() -> bailian20231229Client:
        """
        使用AK&SK初始化帳號Client
        @return: Client
        @throws Exception
        """
        # 工程代碼泄露可能會導致 AccessKey 泄露,並威脅帳號下所有資源的安全性。以下程式碼範例僅供參考。
        # 建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://www.alibabacloud.com/help/sdk/developer-reference/v2-manage-access-credentials。
        config = open_api_models.Config(
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_ID。,
            access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
            access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        )
        # Endpoint 請參考 https://www.alibabacloud.com/help/model-studio/api-bailian-2023-12-29-endpoint
        config.endpoint = f'bailian.ap-southeast-1.aliyuncs.com'
        return bailian20231229Client(config)

    @staticmethod
    def sub_group_query() -> None:
        try:
            client = SearchFiltersFullExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中叫張三的員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 分組1查詢屬性為姓名,值為張三。分組2查詢屬性為性別,值為女。可替換為實際需要查詢的屬性和值。
            retrieve_request.search_filters = [
                {"姓名": "張三"},
                {"性別": "女"}
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

    @staticmethod
    def single_query() -> None:
        try:
            client = SearchFiltersFullExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中叫張三的員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 單值查詢屬性為姓名,值為張三。可替換為實際需要查詢的屬性和值。
            retrieve_request.search_filters = [
                {"姓名": "張三"}
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

    @staticmethod
    def multi_query() -> None:
        try:
            client = SearchFiltersFullExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中所有員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 建立一個列表,用於存放多值。
            names = ["張三", "李四"]
            # 多值查詢屬性為姓名,對應上方names列表。值為上方指定的多值“張三”和“李四”。可替換為實際需要查詢的屬性和值。
            retrieve_request.search_filters = [{"姓名": json.dumps(names)}]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

    @staticmethod
    def range_query() -> None:
        try:
            client = SearchFiltersFullExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中所有員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 查詢屬性為年齡,值為範圍。可替換為實際需要查詢的屬性和值。
            age_range = SearchFiltersFullExample.Range(20, 27)
            retrieve_request.search_filters = [
                {"崗位": "技術員"},  # 分組1: 崗位篩選條件
                {"年齡": json.dumps(age_range.to_dict())}  # 分組2: 年齡範圍篩選條件
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

    @staticmethod
    def wildcard_query() -> None:
        try:
            client = SearchFiltersFullExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中的男性員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 模糊查詢屬性為崗位,值為技 % 員,此處 % 代表匹配任一字元(包括零個字元)。可替換為實際值。
            position = SearchFiltersFullExample.QueryObject('技%員')
            retrieve_request.search_filters = [
                {"姓名": "張三"},  # 姓名篩選條件。可替換為實際要查詢的屬性和值。
                {"崗位": json.dumps(position.to_dict())}  # 崗位(模糊查詢)篩選條件。可替換為實際要查詢的屬性和值。
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

    @staticmethod
    def tag_query() -> None:
        try:
            client = SearchFiltersFullExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '請提供一些候選人'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 建立一個列表,用於存放標籤。多個標籤之間是或(OR)的關係,不是與(AND)的關係。
            tags = ["A大學", "學生會主席"]
            retrieve_request.search_filters = [
                {"tags": json.dumps(tags)}
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

    @staticmethod
    def tag_query2() -> None:
        try:
            client = SearchFiltersFullExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '請提供一些候選人'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 建立兩個列表,用於存放標籤。
            tag1 = ["A大學"]
            tag2 = ["體育特長生"]
            retrieve_request.search_filters = [
                {"tags": json.dumps(tag1)},
                {"tags": json.dumps(tag2)}
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

    @staticmethod
    def main(args: List[str]) -> None:
        SearchFiltersFullExample.sub_group_query()
        SearchFiltersFullExample.single_query()
        SearchFiltersFullExample.multi_query()
        SearchFiltersFullExample.range_query()
        SearchFiltersFullExample.wildcard_query()
        SearchFiltersFullExample.tag_query()
        SearchFiltersFullExample.tag_query2()

if __name__ == '__main__':
    SearchFiltersFullExample.main(sys.argv[1:])

快速開始

以下介紹如何使用SearchFilters進行查詢。

子分組查詢樣本

子分組用於過濾知識庫的召回結果,僅返回滿足特定條件的文本切片。可將多個子分組(條件)添加到SearchFilters中。子分組之間預設採用 AND 語義,且不可更改。 樣本:檢索員工資訊知識庫,並篩選出姓名張三性別的記錄(該知識庫中不存在這樣的記錄)。
{
  "searchFilters": [
    {
      "姓名": "張三"
    },
    {
      "性別": "女"
    }
  ]
}
展開下方摺疊面板查看範例程式碼。
  • Python
  • Java
# 範例程式碼僅供參考,請勿在生產環境中直接使用
import os
import sys
from typing import List

from alibabacloud_bailian20231229 import models as bailian_20231229_models
from alibabacloud_bailian20231229.client import Client as bailian20231229Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient

class SubGroupQueryExample:
    def __init__(self):
        pass

    @staticmethod
    def create_client() -> bailian20231229Client:
        """
        使用AK&SK初始化帳號Client
        @return: Client
        @throws Exception
        """
        # 工程代碼泄露可能會導致 AccessKey 泄露,並威脅帳號下所有資源的安全性。以下程式碼範例僅供參考。
        # 建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://www.alibabacloud.com/help/sdk/developer-reference/v2-manage-access-credentials。
        config = open_api_models.Config(
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_ID。,
            access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
            access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        )
        # Endpoint 請參考 https://www.alibabacloud.com/help/model-studio/api-bailian-2023-12-29-endpoint
        config.endpoint = f'bailian.ap-southeast-1.aliyuncs.com'
        return bailian20231229Client(config)

    @staticmethod
    def main(
            args: List[str],
    ) -> None:
        try:
            client = SubGroupQueryExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中叫張三的員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 分組1查詢屬性為姓名,值為張三。分組2查詢屬性為性別,值為女。可替換為實際需要查詢的屬性和值。
            retrieve_request.search_filters = [
                {"姓名": "張三"},
                {"性別": "女"}
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

if __name__ == '__main__':
    SubGroupQueryExample.main(sys.argv[1:])
請求參數說明
{
  "indexId": "27ubwxxxxx",
  "WorkspaceId":"llm-4u5xpd1xdjxxxxxx",
  "query": "公司中叫張三的員工",
  "searchFilters": [
    {
      "姓名": "張三"
    },
    {
      "性別": "女"
    }
  ]
}
返回參數說明
{
  "code": "Success",
  "data": {
    "nodes": []
  },
  "message": "success",
  "requestId": "5BA30772-xxxx-560C-B1F7-C1DA737A9D80",
  "status": "200",
  "success": true
}

單值查詢樣本

在單值查詢時,需要為檢索欄位傳入唯一的值。 樣本:檢索員工資訊知識庫,並篩選出姓名張三的記錄。
{
  "searchFilters": [
    {
      "姓名": "張三"
    }
  ]
}
展開下方摺疊面板查看範例程式碼。
  • Python
  • Java
# 範例程式碼僅供參考,請勿在生產環境中直接使用
import os
import sys
from typing import List

from alibabacloud_bailian20231229 import models as bailian_20231229_models
from alibabacloud_bailian20231229.client import Client as bailian20231229Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient

class SingleQueryExample:
    def __init__(self):
        pass

    @staticmethod
    def create_client() -> bailian20231229Client:
        """
        使用AK&SK初始化帳號Client
        @return: Client
        @throws Exception
        """
        # 工程代碼泄露可能會導致 AccessKey 泄露,並威脅帳號下所有資源的安全性。以下程式碼範例僅供參考。
        # 建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://www.alibabacloud.com/help/sdk/developer-reference/v2-manage-access-credentials。
        config = open_api_models.Config(
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_ID。,
            access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
            access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        )
        # Endpoint 請參考 https://www.alibabacloud.com/help/model-studio/api-bailian-2023-12-29-endpoint
        config.endpoint = f'bailian.ap-southeast-1.aliyuncs.com'
        return bailian20231229Client(config)

    @staticmethod
    def main(
            args: List[str],
    ) -> None:
        client = SingleQueryExample.create_client()
        # 建立retrieve_request對象。
        retrieve_request = bailian_20231229_models.RetrieveRequest()
        # 必填,可傳入使用者實際輸入的提示詞。
        retrieve_request.query = '公司中叫張三的員工'
        # 必填,請傳入實際的知識庫ID。
        retrieve_request.index_id = '請傳入實際的知識庫ID'
        # 單值查詢屬性為姓名,值為張三。可替換為實際需要查詢的屬性和值。
        retrieve_request.search_filters = [
            {"姓名": "張三"}
        ]
        try:
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

if __name__ == '__main__':
    SingleQueryExample.main(sys.argv[1:])
請求參數說明
{
  "indexId": "27ubwxxxxx",
  "WorkspaceId":"llm-4u5xpd1xdjxxxxxx",
  "query": "公司中叫張三的員工",
  "searchFilters": [
    {
      "姓名": "張三"
    }
  ]
}
返回參數說明
{
  "code": "Success",
  "data": {
    "nodes": [
      {
        "metadata": {
          "_rc_v_score": 0.32581159472465515,
          "_q_score": 1,
          "source": "0",
          "_score": 0.4556944966316223,
          "doc_id": "table_xxxx75507aab4bd9a24c18d098b2e8ac_10285263_1",
          "性別": "男",
          "_rc_score": 0,
          "姓名": "張三",
          "doc_name": "員工表",
          "_id": "llm-xxxxpd1xdjqp8itj_27ubwxxxxx_table_200275507aab4bd9a24c18d098b2e8ac_10285263_1",
          "年齡": "25",
          "崗位": "技術員"
        },
        "score": 0.4556944966316223,
        "text": "姓名:張三 年齡:25 崗位:技術員 性別:男"
      }
    ]
  },
  "message": "success",
  "requestId": "2FA4113E-xxxx-59C1-BDB2-5B930D8C9B1C",
  "status": "200",
  "success": true
}

多值查詢樣本

多值查詢允許為檢索欄位傳入多個值,效果類似於SQL中的IN操作符。 樣本:檢索員工資訊知識庫,並篩選出姓名張三李四的記錄。
{
  "searchFilters": [
    {
      "姓名": ["張三","李四"]
    }
  ]
}
展開下方摺疊面板查看範例程式碼。
  • Python
  • Java
# 範例程式碼僅供參考,請勿在生產環境中直接使用
import json
import os
import sys
from typing import List

from alibabacloud_bailian20231229 import models as bailian_20231229_models
from alibabacloud_bailian20231229.client import Client as bailian20231229Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient

class MultiQueryExample:
    def __init__(self):
        pass

    @staticmethod
    def create_client() -> bailian20231229Client:
        """
        使用AK&SK初始化帳號Client
        @return: Client
        @throws Exception
        """
        # 工程代碼泄露可能會導致 AccessKey 泄露,並威脅帳號下所有資源的安全性。以下程式碼範例僅供參考。
        # 建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://www.alibabacloud.com/help/sdk/developer-reference/v2-manage-access-credentials。
        config = open_api_models.Config(
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_ID。,
            access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
            access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        )
        # Endpoint 請參考 https://www.alibabacloud.com/help/model-studio/api-bailian-2023-12-29-endpoint
        config.endpoint = f'bailian.ap-southeast-1.aliyuncs.com'
        return bailian20231229Client(config)

    @staticmethod
    def main(
            args: List[str],
    ) -> None:
        try:
            client = MultiQueryExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中所有員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 建立一個列表,用於存放多值。
            names = ["張三", "李四"]
            # 多值查詢屬性為姓名,對應上方names列表。值為上方指定的多值“張三”和“李四”。可替換為實際需要查詢的屬性和值。
            retrieve_request.search_filters = [{"姓名": json.dumps(names)}]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

if __name__ == '__main__':
    MultiQueryExample.main(sys.argv[1:])
請求參數說明
{
  "indexId": "27ubwxxxxx",
  "WorkspaceId":"llm-4u5xpd1xdjxxxxxx",
  "query": "公司中所有員工",
  "searchFilters": [
    {
      "姓名": ["張三", "李四"]
    }
  ]
}
返回參數說明
{
  "code": "Success",
  "data": {
    "nodes": [
      {
        "metadata": {
          "_rc_v_score": 0.3016361088048254,
          "_q_score": 1,
          "source": "0",
          "_score": 0.3322954773902893,
          "doc_id": "table_xxxxad1c331c424780a8023376a73fac_10285263_1",
          "性別": "男",
          "_rc_score": 0,
          "姓名": "張三",
          "doc_name": "員工表",
          "_id": "llm-xxxxpd1xdjqp8itj_27ubwxxxxx_table_xxxxad1c331c424780a8023376a73fac_10285263_1",
          "年齡": "25.0",
          "崗位": "技術員"
        },
        "score": 0.3322954773902893,
        "text": "姓名:張三 年齡:25.0 崗位:技術員 性別:男"
      },
      {
        "metadata": {
          "_rc_v_score": 0.2531493306159973,
          "_q_score": 0.8392540654998252,
          "source": "0",
          "_score": 0.25632044672966003,
          "doc_id": "table_xxxxad1c331c424780a8023376a73fac_10285263_2",
          "性別": "女",
          "_rc_score": 0,
          "姓名": "李四",
          "doc_name": "員工表",
          "_id": "llm-xxxxpd1xdjqp8itj_27ubwxxxxx_table_xxxxad1c331c424780a8023376a73fac_10285263_2",
          "年齡": "31.0",
          "崗位": "銷售"
        },
        "score": 0.25632044672966003,
        "text": "姓名:李四 年齡:31.0 崗位:銷售 性別:女"
      }
    ]
  },
  "message": "success",
  "requestId": "1DFE5E9E-xxxx-5C37-8011-8FA2E2875309",
  "status": "200",
  "success": true
}

範圍查詢樣本

通過範圍查詢,可找出檢索欄位(如年齡)值在指定範圍內滿足條件的所有記錄。 樣本:檢索員工資訊知識庫,並篩選出崗位技術員(單值查詢),且年齡2025歲之間(範圍查詢)的記錄。
{
  "searchFilters": [
    {
      "崗位": "技術員"
    },
    {
      "年齡": {
        "gte": 20,
        "lte": 25
      }
    }
  ]
}
展開下方摺疊面板查看範例程式碼。
  • Python
  • Java
# 範例程式碼僅供參考,請勿在生產環境中直接使用
import json
import os
import sys
from typing import List

from alibabacloud_bailian20231229 import models as bailian_20231229_models
from alibabacloud_bailian20231229.client import Client as bailian20231229Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient

class RangeQueryExample:
    class Range:
        def __init__(self, gte, lte):
            self.gte = gte
            self.lte = lte

        def to_dict(self):
            return {
                "gte": self.gte,
                "lte": self.lte
            }

    def __init__(self):
        pass

    @staticmethod
    def create_client() -> bailian20231229Client:
        """
        使用AK&SK初始化帳號Client
        @return: Client
        @throws Exception
        """
        # 工程代碼泄露可能會導致 AccessKey 泄露,並威脅帳號下所有資源的安全性。以下程式碼範例僅供參考。
        # 建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://www.alibabacloud.com/help/sdk/developer-reference/v2-manage-access-credentials。
        config = open_api_models.Config(
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_ID。,
            access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
            access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        )
        # Endpoint 請參考 https://www.alibabacloud.com/help/model-studio/api-bailian-2023-12-29-endpoint
        config.endpoint = f'bailian.ap-southeast-1.aliyuncs.com'
        return bailian20231229Client(config)

    @staticmethod
    def main(
            args: List[str],
    ) -> None:
        try:
            client = RangeQueryExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中所有員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 查詢屬性為年齡,值為範圍。可替換為實際需要查詢的屬性和值。
            age_range = RangeQueryExample.Range(20, 27)
            retrieve_request.search_filters = [
                {"崗位": "技術員"},  # 分組1: 崗位篩選條件
                {"年齡": json.dumps(age_range.to_dict())}  # 分組2: 年齡範圍篩選條件
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

if __name__ == '__main__':
    RangeQueryExample.main(sys.argv[1:])
請求參數說明
{
  "indexId": "27ubwxxxxx",
  "WorkspaceId":"llm-4u5xpd1xdjxxxxxx",
  "query": "公司中所有員工",
  "searchFilters": [
    {
      "性別": "男"
    },
    {
      "年齡": "{\"gte\":20.0,\"lte\":27.0}"
    }
  ]
}
返回參數說明
{
  "code": "Success",
  "data": {
    "nodes": [
      {
        "metadata": {
          "_rc_v_score": 0.3016361088048254,
          "_q_score": 1,
          "source": "0",
          "_score": 0.3322954773902893,
          "doc_id": "table_xxxxad1c331c424780a8023376a73fac_10285263_1",
          "性別": "男",
          "_rc_score": 0,
          "姓名": "張三",
          "doc_name": "員工表",
          "_id": "llm-xxxxpd1xdjqp8itj_27ubwxxxxx_table_xxxxad1c331c424780a8023376a73fac_10285263_1",
          "年齡": "25.0",
          "崗位": "技術員"
        },
        "score": 0.3322954773902893,
        "text": "姓名:張三 年齡:25.0 崗位:技術員 性別:男"
      }
    ]
  },
  "message": "success",
  "requestId": "AE0B5ABC-xxxx-54A1-9ED4-91865B859DF6",
  "status": "200",
  "success": true
}

模糊查詢樣本

模糊查詢通過指定萬用字元尋找包含特定字元序列的記錄,效果類似於SQL中的LIKE操作符。 SearchFilters模糊查詢支援以下萬用字元(和SQL文法一致):

萬用字元

描述

%

替代 0 個或多個字元。

_

替代一個字元。

樣本:檢索員工資訊知識庫,並篩選出姓名張三崗位包含兩個字(可能是技術員,也可能是技術人員等)的記錄。
{
  "searchFilters": [
    {
      "姓名": "張三"
    },
    {
      "崗位": {
        "like": "技%員"
      }
    }
  ]
}
展開下方摺疊面板查看範例程式碼。
  • Python
  • Java
# 範例程式碼僅供參考,請勿在生產環境中直接使用
import json
import os
import sys
from typing import List

from alibabacloud_bailian20231229 import models as bailian_20231229_models
from alibabacloud_bailian20231229.client import Client as bailian20231229Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient

class WildcardQueryExample:
    class QueryObject:
        def __init__(self, prefix):
            self.like = prefix

        def to_dict(self):
            return {
                "like": self.like
            }

    def __init__(self):
        pass

    @staticmethod
    def create_client() -> bailian20231229Client:
        """
        使用AK&SK初始化帳號Client
        @return: Client
        @throws Exception
        """
        # 工程代碼泄露可能會導致 AccessKey 泄露,並威脅帳號下所有資源的安全性。以下程式碼範例僅供參考。
        # 建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://www.alibabacloud.com/help/sdk/developer-reference/v2-manage-access-credentials。
        config = open_api_models.Config(
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_ID。,
            access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
            access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        )
        # Endpoint 請參考 https://www.alibabacloud.com/help/model-studio/api-bailian-2023-12-29-endpoint
        config.endpoint = f'bailian.ap-southeast-1.aliyuncs.com'
        return bailian20231229Client(config)

    @staticmethod
    def main(
            args: List[str],
    ) -> None:
        try:
            client = WildcardQueryExample.create_client()
            # 建立retrieve_request對象。
            retrieve_request = bailian_20231229_models.RetrieveRequest()
            # 必填,可傳入使用者實際輸入的提示詞。
            retrieve_request.query = '公司中的男性員工'
            # 必填,請傳入實際的知識庫ID。
            retrieve_request.index_id = '請傳入實際的知識庫ID'
            # 模糊查詢屬性為崗位,值為技 % 員,此處 % 代表匹配任一字元(包括零個字元)。可替換為實際值。
            position = WildcardQueryExample.QueryObject('技%員')
            retrieve_request.search_filters = [
                {"姓名": "張三"},  # 姓名篩選條件。可替換為實際要查詢的屬性和值。
                {"崗位": json.dumps(position.to_dict())}  # 崗位(模糊查詢)篩選條件。可替換為實際要查詢的屬性和值。
            ]
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

if __name__ == '__main__':
    WildcardQueryExample.main(sys.argv[1:])
請求參數說明
{
  "indexId": "27ubwxxxxx",
  "WorkspaceId":"llm-4u5xpd1xdjxxxxxx",
  "query": "公司中的男性員工",
  "searchFilters": [
    {
      "姓名": "張三"
    },
    {
      "崗位": "{\"like\":\"技%員\"}"
    }
  ]
}
返回參數說明
{
  "code": "Success",
  "data": {
    "nodes": [
      {
        "metadata": {
          "_rc_v_score": 0.41137335930387275,
          "_q_score": 1,
          "source": "0",
          "_score": 0.46098726987838745,
          "doc_id": "table_xxxxad1c331c424780a8023376a73fac_10285263_1",
          "性別": "男",
          "_rc_score": 0,
          "姓名": "張三",
          "doc_name": "員工表",
          "_id": "llm-xxxxpd1xdjqp8itj_27ubwxxxxx_table_xxxxad1c331c424780a8023376a73fac_10285263_1",
          "年齡": "25.0",
          "崗位": "技術員"
        },
        "score": 0.46098726987838745,
        "text": "姓名:張三 年齡:25.0 崗位:技術員 性別:男"
      }
    ]
  },
  "message": "success",
  "requestId": "FA759FEC-xxxx-50B7-A64D-BE49A7DF56B8",
  "status": "200",
  "success": true
}

標籤(Tag)查詢樣本

檢索文檔搜尋類知識庫時,可通過標籤篩選檔案,提高檢索效率與準確性。 樣本:建立一個文檔搜尋類知識庫,其中包含張三、李四和王五三人的資訊。 以上檔案分別添加了以下標籤:

檔案

標籤

張三簡曆

A大學體育特長生

李四簡曆

B大學

王五簡曆

B大學學生會主席

例如使用SearchFilters查詢人才知識庫,要求返迴文件標籤含A大學學生會主席的相關文本切片:
多個標籤之間是邏輯或(OR)的關係,不是邏輯與(AND)的關係。可通過子分組查詢實現“邏輯與”
{
  "searchFilters": [
    {
      "tags": ["A大學","學生會主席"]
    }
  ]
}
展開下方摺疊面板查看範例程式碼。
  • Python
  • Java
# 範例程式碼僅供參考,請勿在生產環境中直接使用
import json
import os
import sys
from typing import List

from alibabacloud_bailian20231229 import models as bailian_20231229_models
from alibabacloud_bailian20231229.client import Client as bailian20231229Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient

class TagQueryExample:
    def __init__(self):
        pass

    @staticmethod
    def create_client() -> bailian20231229Client:
        """
        使用AK&SK初始化帳號Client
        @return: Client
        @throws Exception
        """
        # 工程代碼泄露可能會導致 AccessKey 泄露,並威脅帳號下所有資源的安全性。以下程式碼範例僅供參考。
        # 建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://www.alibabacloud.com/help/zh/sdk/developer-reference/v2-manage-python-access-credentials。
        config = open_api_models.Config(
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_ID。,
            access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
            access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        )
        # Endpoint 請參考 https://www.alibabacloud.com/help/model-studio/api-bailian-2023-12-29-endpoint
        config.endpoint = f'bailian.ap-southeast-1.aliyuncs.com'
        return bailian20231229Client(config)

    @staticmethod
    def main(
            args: List[str],
    ) -> None:
        client = TagQueryExample.create_client()
        # 建立retrieve_request對象。
        retrieve_request = bailian_20231229_models.RetrieveRequest()
        # 必填,可傳入使用者實際輸入的提示詞。
        retrieve_request.query = '請提供一些候選人'
        # 必填,請傳入實際的知識庫ID。
        retrieve_request.index_id = '請傳入實際的知識庫ID'
        # 建立一個列表,用於存放標籤。多個標籤之間是或(OR)的關係,不是與(AND)的關係。
        tags = ["A大學", "學生會主席"]
        retrieve_request.search_filters = [
            {"tags": json.dumps(tags)}
        ]
        try:
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

if __name__ == '__main__':
    TagQueryExample.main(sys.argv[1:])
請求參數說明
{
  "IndexId": "8mbtdxxxxx",
  "WorkspaceId": "llm-4u5xpd1xdjxxxxxx",
  "Query": "請提供一些候選人",
  "SearchFilters": [{"tags":["A大學", "學生會主席"]}]
}
返回參數說明
{
  "Code": "Success",
  "Data": {
    "Nodes": [
      {
        "Metadata": {
          "file_path": "https://bailian-datahub-data-prod.oss-cn-beijing.aliyuncs.com/10285263/multimodal/docJson/%E5%BC%A0%E4%B8%89%E7%AE%80%E5%8E%86_1746760910599.json?Expires=1747020348&OSSAccessKeyId=YOUR_ACCESS_KEY_ID&Signature=YOUR_SIGNATURE",
          "is_displayed_chunk_content": "true",
          "_rc_v_score": 0.1422617520249937,
          "image_url": [],
          "nid": "ba8a14099f43308734538c29271cc7cd|b99e98835c3c6d8f6496df5a43de0ba5|aa3ed8fc4aae8bbb78872994b01e0fda",
          "_q_score": 0.8935035934804278,
          "source": "0",
          "_score": 0.1736905574798584,
          "title": "",
          "doc_id": "file_e787926158704f95aad6bc967619f176_10285263",
          "content": "姓名:張三性別:男年齡:23",
          "_rc_score": 0,
          "workspace_id": "llm-4u5xpd1xdjxxxxxx",
          "hier_title": "",
          "page_number": [
            0
          ],
          "doc_name": "張三簡曆",
          "pipeline_id": "8mbtdxxxxx",
          "_id": "llm-4u5xpd1xdjxxxxxx_8mbtdxxxxx_file_e787926158704f95aad6bc967619f176_10285263_0_0"
        },
        "Score": 0.1736905574798584,
        "Text": "姓名:張三性別:男年齡:23"
      },
      {
        "Metadata": {
          "file_path": "https://bailian-datahub-data-prod.oss-cn-beijing.aliyuncs.com/10285263/multimodal/docJson/%E7%8E%8B%E4%BA%94%E7%AE%80%E5%8E%86_1746760946844.json?Expires=1747020348&OSSAccessKeyId=YOUR_ACCESS_KEY_ID&Signature=YOUR_SIGNATURE",
          "is_displayed_chunk_content": "true",
          "_rc_v_score": 0.1592178845871759,
          "image_url": [],
          "nid": "ba8a14099f43308734538c29271cc7cd|d4a048b6799ce07e08430f018af091a0|fe90f8248ea64f70ea37c0df7afcfc12",
          "_q_score": 1,
          "source": "0",
          "_score": 0.15737050771713257,
          "title": "",
          "doc_id": "file_63563df5df66488cb8e28bfff11e40eb_10285263",
          "content": "姓名:王五性別:男年齡:23",
          "_rc_score": 0,
          "workspace_id": "llm-4u5xpd1xdjxxxxxx",
          "hier_title": "",
          "page_number": [
            0
          ],
          "doc_name": "王五簡曆",
          "pipeline_id": "8mbtdxxxxx",
          "_id": "llm-4u5xpd1xdjxxxxxx_8mbtdxxxxx_file_63563df5df66488cb8e28bfff11e40eb_10285263_0_0"
        },
        "Score": 0.15737050771713257,
        "Text": "姓名:王五性別:男年齡:23"
      }
    ]
  },
  "Message": "success",
  "RequestId": "12A5F9C6-xxxx-5593-8955-86D52585EE27",
  "Status": 200,
  "Success": true
}
樣本:使用SearchFilters查詢人才知識庫,要求返迴文檔標籤含A大學體育特長生的相關文本切片(邏輯與):
{
  "searchFilters": [
    {
      "tags": ["A大學"]
    },
    {
      "tags": ["體育特長生"]
    }
  ]
}
展開下方摺疊面板查看範例程式碼。
  • Python
  • Java
import json
import os
import sys
from typing import List

from alibabacloud_bailian20231229 import models as bailian_20231229_models
from alibabacloud_bailian20231229.client import Client as bailian20231229Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient

class TagQueryExample2:
    def __init__(self):
        pass

    @staticmethod
    def create_client() -> bailian20231229Client:
        """
        使用AK&SK初始化帳號Client
        @return: Client
        @throws Exception
        """
        # 工程代碼泄露可能會導致 AccessKey 泄露,並威脅帳號下所有資源的安全性。以下程式碼範例僅供參考。
        # 建議使用更安全的 STS 方式,更多鑒權訪問方式請參見:https://www.alibabacloud.com/help/zh/sdk/developer-reference/v2-manage-python-access-credentials。
        config = open_api_models.Config(
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_ID。,
            access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
            # 必填,請確保代碼運行環境設定了環境變數 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
            access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        )
        # Endpoint 請參考 https://www.alibabacloud.com/help/model-studio/api-bailian-2023-12-29-endpoint
        config.endpoint = f'bailian.ap-southeast-1.aliyuncs.com'
        return bailian20231229Client(config)

    @staticmethod
    def main(
            args: List[str],
    ) -> None:
        client = TagQueryExample2.create_client()
        # 建立retrieve_request對象。
        retrieve_request = bailian_20231229_models.RetrieveRequest()
        # 必填,可傳入使用者實際輸入的提示詞。
        retrieve_request.query = '請提供一些候選人'
        # 必填,請傳入實際的知識庫ID。
        retrieve_request.index_id = '請傳入實際的知識庫ID'
        # 建立兩個列表,用於存放標籤。
        tag1 = ["A大學"]
        tag2 = ["體育特長生"]
        retrieve_request.search_filters = [
            {"tags": json.dumps(tag1)},
            {"tags": json.dumps(tag2)}
        ]
        try:
            # 進行檢索,傳入業務空間ID和retrieve_request對象。
            resp = client.retrieve('請傳入實際的業務空間ID', retrieve_request)
            print(UtilClient.to_jsonstring(resp.body))
        except Exception as error:
            # 此處僅做列印展示,請謹慎對待異常處理,在工程專案中切勿直接忽略異常。
            # 錯誤 message
            print(error.message)

if __name__ == '__main__':
    TagQueryExample2.main(sys.argv[1:])
請求參數說明
{
  "IndexId": "8mbtdxxxxx",
  "WorkspaceId": "llm-4u5xpd1xdjxxxxxx",
  "Query": "請提供一些候選人",
  "SearchFilters": [{"tags":["A大學"]},{"tags":["體育特長生"]}]
}
返回參數說明
{
  "Code": "Success",
  "Data": {
    "Nodes": [
      {
        "Metadata": {
          "file_path": "https://bailian-datahub-data-prod.oss-cn-beijing.aliyuncs.com/10285263/multimodal/docJson/%E5%BC%A0%E4%B8%89%E7%AE%80%E5%8E%86_1746760910599.json?Expires=1747020348&OSSAccessKeyId=YOUR_ACCESS_KEY_ID&Signature=YOUR_SIGNATURE",
          "is_displayed_chunk_content": "true",
          "_rc_v_score": 0.1422617520249937,
          "image_url": [],
          "nid": "ba8a14099f43308734538c29271cc7cd|b99e98835c3c6d8f6496df5a43de0ba5|aa3ed8fc4aae8bbb78872994b01e0fda",
          "_q_score": 1,
          "source": "0",
          "_score": 0.1736905574798584,
          "title": "",
          "doc_id": "file_e787926158704f95aad6bc967619f176_10285263",
          "content": "姓名:張三性別:男年齡:23",
          "_rc_score": 0,
          "workspace_id": "llm-4u5xpd1xdjxxxxxx",
          "hier_title": "",
          "page_number": [
            0
          ],
          "doc_name": "張三簡曆",
          "pipeline_id": "8mbtdxxxxx",
          "_id": "llm-4u5xpd1xdjxxxxxx_8mbtdxxxxx_file_e787926158704f95aad6bc967619f176_10285263_0_0"
        },
        "Score": 0.1736905574798584,
        "Text": "姓名:張三性別:男年齡:23"
      }
    ]
  },
  "Message": "success",
  "RequestId": "1ED6CECE-xxxx-5B21-91DB-410E0219412A",
  "Status": 200,
  "Success": true
}

相關文檔

知識庫使用者指南

請參見建立和使用知識庫

檢索知識庫

可調用Retrieve介面檢索知識庫並返迴文本切片。

子帳號調用

RAM使用者(子帳號)請先擷取阿里雲百鍊的資料許可權再調用Retrieve介面,請參見授權RAM使用者API許可權

錯誤碼

如果調用失敗並收到報錯資訊,請參見錯誤中心進行解決。