配置模板:AI搜索开放平台

更新时间:2025-03-28 07:33:10

AI搜索开放平台是阿里云智能开放搜索OpenSearch提供的服务平台,通过将各项服务能力组件化,串联业务专属的RAG链路。您可以选择服务中不同的模型或策略,同时也可结合业务情况进行部分能力的替换。目前,AI搜索开放平台已支持模型部署功能,您可以将来自不同渠道的模型独立部署至AI搜索开放平台。本文介绍如何在ES中使用部署在AI搜索开放平台上的模型进行模型推理服务。

前提条件

步骤一、在AI搜索开放平台部署模型

  1. 前往AI搜索开放平台, 单击模型服务 > 服务部署,进入服务部署页面。

  2. 单击部署服务,进入部署服务页面。

  3. 配置部署服务的各项基础信息后,单击部署即可部署服务。

    说明

    建议在ES同地域部署服务,以便ES可以通过私网访问部署的服务,从而实现更低的时延和更稳定的连接。

    image.png

    参数

    说明

    参数

    说明

    服务名称

    服务名称。您可以自定义名称。

    部署地域

    部署地域。您可以自行选择地域进行部署。

    模型类别

    模型的类别。支持文本向量化(text-embedding)排序服务(text-reranker)两种模型,本示例选择文本向量化(text-embedding)

    模型来源

    模型的来源。仅可选择AI搜索开放平台

    选择模型

    选择模型。所支持的模型类别下的所有模型均已提供支持,本示例选择OpenSearch通用文本向量化服务-002(ops-text-embedding-002)

  4. 等待服务状态正常时,单击目标服务的调用信息,即可查看服务的域名以及访问Token

    说明

    对于同一区域的服务,ES可以通过私网域名进行访问。而对于不同区域的服务,则需要通过公网域名进行访问。

步骤二、在阿里云ES中创建AI搜索开放平台的模型推理服务

说明

您可以在阿里云ES实例的Kibana中运行以下代码,以创建模型推理服务。

各类型方法如下:

text_embedding类型
rerank类型
custom类型

创建模型语法模板:

PUT _inference/text_embedding/os_deployment_emb
{
  "service":"alibaba-cloud-custom-model",
  "service_settings":{
    "secret_parameters":{
      "api_key":"<替换为您的api_key>",
      "Token":"<替换为您的Token>"
    },
    "url":"<替换为您的url>",
    "path":{
      "<替换为您的path>":{
        "POST":{
          "headers":{
            "Authorization": "Bearer ${api_key}",
            "Token":"${Token}"
          },
          "request":{
            "format":"string",
            "content":"""
            {"input":${input},"input_type":"${input_type}"}
            """
          },
          "response":{
            "json_parser":{
              "text_embeddings":"$.embeddings[*].embedding"
            }
          }
        }
      }
    }
  },
  "task_settings":{
    "parameters":{
      "input_type":"document"
    }
  }
}

示例:

PUT _inference/text_embedding/os_deployment_emb
{
  "service":"alibaba-cloud-custom-model",
  "service_settings":{
    "secret_parameters":{
      "api_key":"OS-xxx",
      "Token":"xxx"
    },
    "url":"http://xxx.platform-pre-hangzhou.opensearch.aliyuncs.com",
    "path":{
      "/v3/openapi/deployments/xxx/predict":{
        "POST":{
          "headers":{
            "Authorization": "Bearer ${api_key}",
            "Token":"${Token}"
          },
          "request":{
            "format":"string",
            "content":"""
            {"input":${input},"input_type":"${input_type}"}
            """
          },
          "response":{
            "json_parser":{
              "text_embeddings":"$.embeddings[*].embedding"
            }
          }
        }
      }
    }
  },
  "task_settings":{
    "parameters":{
      "input_type":"document"
    }
  }
}

调用模型:

POST _inference/text_embedding/os_deployment_emb
{
  "input":"hello"
}

POST _inference/text_embedding/os_deployment_emb
{
  "input":["hello", "world"]
}

POST _inference/text_embedding/os_deployment_emb
{
  "input":"hello",
  "task_settings":{
    "parameters":{
      "input_type":"query"
    }
  }
}

创建模型语法模板:

PUT _inference/rerank/os_deployment_custom_rerank
{
  "service":"alibaba-cloud-custom-model",
  "service_settings":{
    "secret_parameters":{
      "api_key":"<替换为您的api_key>",
      "Token":"<替换为您的Token>"
    },
    "url":"<替换为您的url>",
    "path":{
      "<替换为您的path>":{
        "POST":{
          "headers":{
            "Authorization": "Bearer ${api_key}",
            "Token":"${Token}"
          },
          "request":{
            "format":"string",
            "content":"""
            {"docs":${input},"query":"${query}"}
            """
          },
          "response":{
            "json_parser":{
              "relevance_score":"$.scores[*]"
            }
          }
        }
      }
    }
  }
}

示例:

PUT _inference/rerank/os_deployment_custom_rerank
{
  "service":"alibaba-cloud-custom-model",
  "service_settings":{
    "secret_parameters":{
      "api_key":"OS-xxx",
      "Token":"xxx"
    },
    "url":"http://xxx.platform-pre-hangzhou.opensearch.aliyuncs.com",
    "path":{
      "/v3/openapi/deployments/xxx/predict":{
        "POST":{
          "headers":{
            "Authorization": "Bearer ${api_key}",
            "Token":"${Token}"
          },
          "request":{
            "format":"string",
            "content":"""
            {"docs":${input},"query":"${query}"}
            """
          },
          "response":{
            "json_parser":{
              "relevance_score":"$.scores[*]"
            }
          }
        }
      }
    }
  }
}

调用模型:

POST _inference/rerank/os_deployment_custom_rerank
{
  "input":["什么是opensearch", "什么是智能问答版", "智能问答版有什么优势"],
  "query":"opensearch产品文档"
}

创建模型语法模板:

PUT _inference/custom/os_deployment_custom
{
  "service":"alibaba-cloud-custom-model",
  "service_settings":{
    "secret_parameters":{
      "api_key":"<替换为您的api_key>",
      "Token":"<替换为您的Token>"
    },
    "url":"<替换为您的url>",
    "path":{
      "<替换为您的path>":{
        "POST":{
          "headers":{
            "Authorization": "Bearer ${api_key}",
            "Token":"${Token}"
          },
          "request":{
            "format":"string",
            "content":"""
            {"input":${input},"input_type":"${input_type}"}
            """
          }
        }
      }
    }
  },
  "task_settings":{
    "parameters":{
      "input_type":"document"
    }
  }
}

示例:

PUT _inference/custom/os_deployment_custom
{
  "service":"alibaba-cloud-custom-model",
  "service_settings":{
    "secret_parameters":{
      "api_key":"OS-xxx",
      "Token":"xxx"
    },
    "url":"http://xxx.platform-pre-hangzhou.opensearch.aliyuncs.com",
    "path":{
      "/v3/openapi/deployments/xxx/predict":{
        "POST":{
          "headers":{
            "Authorization": "Bearer ${api_key}",
            "Token":"${Token}"
          },
          "request":{
            "format":"string",
            "content":"""
            {"input":${input},"input_type":"${input_type}"}
            """
          }
        }
      }
    }
  },
  "task_settings":{
    "parameters":{
      "input_type":"document"
    }
  }
}

调用模型:

POST _inference/custom/os_deployment_custom
{
  "input":"hello"
}

POST _inference/custom/os_deployment_custom
{
  "input":["hello", "world"]
}

POST _inference/custom/os_deployment_custom
{
  "input":"hello",
  "task_settings":{
    "parameters":{
      "input_type":"query"
    }
  }
}
  • 本页导读
  • 前提条件
  • 步骤一、在AI搜索开放平台部署模型
  • 步骤二、在阿里云ES中创建AI搜索开放平台的模型推理服务
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等