开放搜索查询分析服务架构解读
特邀嘉賓:
項招貴(項公)--阿里巴巴高級技術專家
視頻地址:https://yqh.aliyun.com/live/opensearch
查詢分析介紹
查詢分析在搜索中的作用
在搜索請求的處理過程中可以在工程實現上分為兩個階段,召回和排序。在召回階段需要盡可能的把用戶想要的文檔在引擎中找到,在排序階段需要將最滿足需求的文檔排在最前面去返回給用戶。
通過查詢分析可以快速進行處理和分析,比如,往往在實際的生產環境中,用戶往往會有一些錯誤的輸入,需要進行query糾錯。 其次我們需要對query分詞并且識別其中不同詞的重要程度,這有助于我們在召回和排序中去使用。 同時由于實際的環境中存在一詞多意,所以要進行同義詞的擴展。 其次需要對用戶的query進行改寫去幫助引擎更高效的去執行召回。在query處理的階段,會輸出一些信息去以幫助我們在排序時候跟文檔去算一些文檔的相關性、類目相關性、以及通過一些將文本進行向量化去算它的語義相關性等。
查詢分析鏈路
總的來說,查詢分析的作用就是對用戶輸入的query進行分析和改寫,去提升我們系統的召回的準確率和排序的相關性。 下面通過簡單的例子介紹開放搜索的查詢分析的功能。
自建搜索服務面臨的問題
開放搜索查詢分析特點
- 面向行業提供完整的查詢分析解決方案
針對特定領域提供算法功能,以及對某些特定的算法功能進行優化。例如,電商行業,開放搜索提供了實體識別。教育行業,往往不僅是文本,也有可能是副文本或圖片,所以對query進行了一個文本向量化的功能。有些功能在不同的行業里面我們也會針對性的去做優化,像拼寫糾錯或同義詞的挖掘等等。
- 查詢分析每一個功能均可干預
干預是實時生效的, 包含實體識別、拼寫糾錯、停用詞、詞權重,同義詞,類目預測等。
- 輕量化的去定制服務
根據客戶不同的業務場景去配置他的查詢分析的能力,開放搜索提供這些能力功能的全集,用戶可以根據實際需求選擇其中一部分能力在實際生產環境中使用。 其次支持用戶使用多種不同類型的查詢分析,或者說是不同的查詢分析的配置。
- 免運維
免除用戶日常的運維的持續的投入。
查詢分析服務架構
算法服務中心
- 算法功能的發布,迭代;
- 用戶模型的增刪改查;
- 算法模型的訓練;
- 算法模型的回流;
干預功能
- 用戶干預數據的增刪改查;
- 實時同步干預數據到查詢分析服務中;
查詢分析和類目預測服務
- 加載詞典、模型、數據、配置;
- 不同行業通過不同的服務鏈配置來實現;
- 加載用戶干預數據;
查詢過程
- 根據用戶配置的功能執行對應的查詢分析鏈;
- 改寫的query發給引擎執行查詢;
DIIRuntime框架
- 支持多種不同類型的索引,滿足算法對各種不同類型數據的高效訪問;
- 索引構建、分發、加載、查詢統一,降低開發和運維成本;
- 鏈式服務框架,靈活組鏈,支持不同場景的功能;
- 算法開發只需要關注算法功能本身邏輯的實現,簡單快捷;
Elasticsearch兼容架構
開放搜索Elasticsearch引擎查詢分析功能
- 基本對齊開放搜索的查詢分析能力;
- 具備行業分詞能力
- 可干預
- 支持擴展分詞
- 具備行業查詢分析能力
- 可配置
- 可干預
實現架構
1.創建實例
- 創建開放搜索實例,關聯Aliyun Elasticsearch的實例
- 安裝插件
2.配置查詢分析
- Mapping中設置使用響應的分析器
- 插件功能
- 提供通用、行業的分詞能力
- 訪問查詢分析服務,獲取query改寫結果
- 改寫Elasticsearch的查詢query
>>如果有搜索效果深度優化需求,可以填寫專家咨詢問卷,參與試用即可免費獲得開放搜索通用分詞能力。問卷地址:https://c.tb.cn/F3.05Srxl
如果你想與更多開發者們進行交流、了解最前沿的搜索與推薦技術,可以釘釘掃碼加入社群
原文鏈接:https://developer.aliyun.com/article/793236?
版權聲明:本文內容由阿里云實名注冊用戶自發貢獻,版權歸原作者所有,阿里云開發者社區不擁有其著作權,亦不承擔相應法律責任。具體規則請查看《阿里云開發者社區用戶服務協議》和《阿里云開發者社區知識產權保護指引》。如果您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將立刻刪除涉嫌侵權內容。總結
以上是生活随笔為你收集整理的开放搜索查询分析服务架构解读的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 内附PPT下载 | 阿里云资深技术专家
- 下一篇: DataWorks功能实践速览 05——