0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

了解亞馬遜云科技搭建智能搜索大語言模型增強方案的快速部署流程

科技新思路 ? 來源:科技新思路 ? 作者:科技新思路 ? 2023-11-10 11:08 ? 次閱讀

背景

知識庫需求在各行各業(yè)中普遍存在,例如制造業(yè)中歷史故障知識庫、游戲社區(qū)平臺的內容知識庫、電商的商品推薦知識庫和醫(yī)療健康領域的掛號推薦知識庫系統(tǒng)等。為保證推薦系統(tǒng)的實效性和準確性,需要大量的數(shù)據(jù)/算法/軟件工程師的人力投入和包括硬件在內的物力投入。那么在自己的環(huán)境中搭建智能搜索大語言模型增強方案是必不可少的。因此,本篇內容主要為大語言模型方案的快速部署。該方案部署流程并不復雜,只需要您對于亞馬遜科技相關服務有一個基本的了解即可。

方案架構圖與功能原理

wKgZomVNnqKAM6EwAAVEXBYRdQk526.png

該方案分為以下幾個核心功能模塊:

前端訪問界面:該方案提供了基于React的前端訪問界面。用戶可以通過網(wǎng)頁以REST API的形式進行智能文檔搜索等功能的操作。

REST API:通過集成了相應Amazon API Gateway和Amazon Lambda函數(shù)的實現(xiàn)和后端搜索引擎,數(shù)據(jù)庫和模型推理端點交互。

企業(yè)搜索引擎:基于Amazon OpenSearch或Amazon Kendra??梢曰陔p向反饋的學習機制,自動持續(xù)迭代提高輸出匹配精準度。同時采用引導式搜索機制,提高搜索輸入描述的精準度。

數(shù)據(jù)源存儲:可選用多種存儲方式如數(shù)據(jù)庫,對象存儲等,在這里Amazon Kendra通過連接器獲取Amazon S3上的對象。

向量化數(shù)據(jù)注入:采用Amazon SageMaker的Notebook模塊或者Amazon Lambda程序將原始數(shù)據(jù)向量化后的數(shù)據(jù)注入Amazon OpenSearch。

智能搜索/引導/問答等功能模塊:采用Amazon Lambda函數(shù)實現(xiàn)和后端搜索引擎,數(shù)據(jù)庫和模型推理端點交互。

記錄數(shù)據(jù)庫:用戶反饋記錄存儲在數(shù)據(jù)庫Amazon DynamoDB。

機器學習模型:企業(yè)可以根據(jù)自身需要構建大語言模型和詞向量模型,將選取好的模型托管到Amazon SageMaker的endpoint節(jié)點。

反饋優(yōu)化:用戶在前端頁面反饋最優(yōu)搜索結果,通過手動或事件觸發(fā)器Amazon EventBridge觸發(fā)新的訓練任務并且重新部署到搜索引擎。

插件式應用:利用該方案核心能力可以與Amazon Lex集成以實現(xiàn)智能會話機器人功能,也可以與Amazon Connect集成實現(xiàn)智能語音客服功能。

實施步驟介紹

以smart-search v1版本為例,為大家講解方案的整個部署流程。

1、環(huán)境準備

首先您需要在您的開發(fā)環(huán)境中安裝好python 3、pip以及npm等通用工具,并保證您的環(huán)境中擁有16GB以上的存儲空間。根據(jù)您的使用習慣,您可以在自己的開發(fā)筆記本(Mac OS或Linux環(huán)境)上部署,也可以選擇EC2或者Cloud9進行部署。

2、CDK自動部署

2.1 獲取代碼安裝Amazon CDK包

獲取代碼后把代碼拷貝到指定目錄下。打開終端窗口,進入smart_search的軟件包,并切換到名為deployment文件夾下:

wKgaomVNnqKAU_8KAAAHUCW1kug676.png

進入到deployment目錄后,相應的CDK部署操作均在該目錄下進行。然后安裝Amazon CDK包。

2.2 安裝CDK自動化部署腳本所需的所有依賴項和環(huán)境變量

在deployment目錄下運行以下命令安裝依賴庫:

wKgZomVNnqKAR7sPAAAHNXAbATQ298.png

然后將您的12位亞馬遜云科技賬號信息、Acess Key ID、Secret Access Key、以及需要部署的Region ID導入到環(huán)境變量中:

wKgaomVNnqOAb3zKAAAW6lG4ANQ756.png

然后運行“cdk bootstrap”安裝賬戶和目標區(qū)域內的CDK工具包,例如:

wKgZomVNnqOAI0ydAAALN37u1jw400.png

2.3 在cdk.json可以進行自定義配置

該方案的默認配置文件在deployment目錄下的cdk.json文件中,如果想要自行配置需要部署哪些功能模塊,可以根據(jù)需要修改cdk.json的“context”部分。例如,如果需要修改部署哪些功能函數(shù),可以對“selection”值進行修改。

默認的參數(shù)如下所示:

wKgaomVNnqOAPGNLAAAMovFgrlA000.png

如果僅需要使用“支持knn的文檔搜索功能”,可以僅保留“knn_doc”。除此之外,還可以選擇通過修改cdk.json的其他相應參數(shù)來自定義部署方式、部署哪些插件和名稱和路徑等配置。

2.4 CDK命令自動化署

運行下面的命令將驗證環(huán)境并生成Amaon CloudFormation的json模版:

wKgZomVNnqSAfLR2AAADyPQIbvE812.png

如果沒有報錯,則運行以下命令部署全部堆棧。

wKgaomVNnqSAbCyYAAAEzRBl5KY022.png

CDK部署將提供相關Amazon CloudFormation堆棧以及相關資源,例如Amazon Lambda、Amazon API Gateway、Amazon OpenSearch實例和Amazon SageMaker的notebook實例等,預計安裝的部署時間大約為30分鐘左右。

3、利用Amazon SageMaker的Notebook實例部署模型與數(shù)據(jù)導入

3.1 部署模型

3.1.1進入Amazon SageMaker控制臺,進入NoteBook Instances,選擇SmartSearchNoteBook實例,點擊“Open Jupyter”,進入SmartSearch的代碼主目錄,點擊“isearchjupyter”目錄進入,能看到包括Embbeding Model、LLM_Model等目錄,這兩個目錄包含模型部署腳本,而Script-Doc.ipynb腳本則會用于后面的文檔上傳,目錄如下圖所示:

wKgZomVNnqSANpcMAADIeUVskK0551.png

3.1.2首先安裝Embbeding Model,進入“/isearchjupyter/Embbeding Model”目錄,能看到對應的幾個腳本。其中“EmbbedingModel_shibing624_text2vec-base-chinese.ipynb”為中文的詞向量模型,其他兩個為英文,打開相應腳本依次運行單元格,開始部署embbeding model。等待script部署完畢,成功部署后會在Amazon SageMaker的endpoint中看到名為“huggingface-inference-eb”的endpoint,狀態(tài)為“InService”。

3.1.3然后部署大語言模型,LLM_Model目錄下當前包含了中文和英文的大語言模型庫。這里先為大家介紹中文的大語言模型的部署方法,找到isearchjupyter/LLM_Model/llm_chinese/code/inference.py,該文件定義了大語言模型的統(tǒng)一部署方法。大語言模型可以通過唯一的名稱進行部署,把該唯一名稱聲明為“LLM_NAME”的參數(shù)值,作為參數(shù)傳遞給部署腳本??梢愿鶕?jù)大語言模型的文檔來確定“LLM_NAME”的值。打開網(wǎng)址后對照該文檔找到該模型部署的唯一名稱,然后粘貼到為“LLM_NAME”賦值的位置即可,可以參照該方法舉一反三,指定項目中需要使用的大語言模型。修改inference.py文件后進入“isearchjupyter/LLM_Model/llm_chinese/“目錄,運行該目錄的script。等待script 部署完畢,成功部署后會在Amazon SageMaker的endpoint中看到名為“pytorch-inference-llm-v1”的endpoint。

如果選擇部署英文大語言模型,部署方式類似,需要將英文大語言模型的參數(shù)填入LLM_Model/llm_english/code/inference.py文件的“LLM_NAME”參數(shù)中。找到該大語言模型項目名稱,則然后復制該名稱再粘貼到為“LLM_NAME”賦值的位置,可以用該方法進行舉一反三,指定任意一個滿足業(yè)務需求的大語言模型。進入“isearchjupyter/LLM_Model/llm_english/”的目錄下,依次運行該目錄下英文大語言模型的腳本的部署單元格。如下圖所示:

wKgaomVNnqWAe0jgAAMfUcMqzx8249.png

3.1.4安裝完成后,看到兩個endpoint已經(jīng)在”InService”狀態(tài),如下圖:

wKgZomVNnqaAL9GDAAFsWk3P7BA671.png

3.2 知識庫數(shù)據(jù)上傳

3.2.1數(shù)據(jù)準備。進入jupyter的目錄“/isearchjupyter”,在“docs”目錄,將上傳所需要的word、excel或pdf等格式的文檔進行上傳,該文件夾下已經(jīng)提供了用于測試的樣例文件“sample.docx”。

3.2.2 進入Script-Doc.ipynb,修改單元格“Hyperparameter”的如下參數(shù),folder_path為指定的docs目錄,index_name為Amazon OpenSearch的index名稱,如下圖:

wKgaomVNnqaAK04yAAJBu9Xds2o376.png

然后從頭運行這個script,完成數(shù)據(jù)導入。

4、配置Web UI

4.1 進入smart_search/ search-web-knn目錄,該目錄包含基于React的前端界面代碼。然后對/src/pages/common/constants.js文件進行編輯,如下圖所示:

wKgZomVNnqiAUeY7AAGhAHeBXBA827.png

Mainapi常變量指定了前端調用的API入口。該值可以從網(wǎng)頁端進入API Gateway中獲取,進入“smartsearch-api”的Stages側邊欄,將prod stage的involke URL賦值給constants.js的mainapi常變量。

4.2 檢查主頁面參數(shù)配置。smart_search/search-web-knn/src/pages/MainSearchDoc.jsx為功能展示頁面,在該文件的last_index參數(shù)設置了頁面自動填充的默認index值,將上文Notebook實例部署的index name填入,如“docs”。

4.3 運行前端界面。進入目錄 search-web-knn,執(zhí)行如下兩條命令:

wKgaomVNnqiAXZ4CAAAD1u0XlR8234.png

然后運行以下命令啟動前端界面:

wKgZomVNnqiAL6xWAAADmwpxB6g782.png

一切順利的話,將得到一個網(wǎng)頁版界面。在本地開發(fā)筆記本部署的默認訪問地址和端口號是localhost:3000,如果是EC2部署,需要啟用對應端口訪問的安全組策略,通過EC2的公網(wǎng)地址加端口號進行訪問。該前端頁面的使用方法為:將問題輸入搜索欄,配置index名稱和k-NN選項,點擊“Search”按鈕后您可以得到一個基于企業(yè)知識庫的大語言模型匯總回答。如下圖所示:

wKgaomVNnqmAcdgAAARyP4EmVQQ146.png

5、安裝擴展插件

5.1 與Amazon Lex集成實現(xiàn)智能聊天機器人

本方案已經(jīng)集成了Amazon Lex的會話機器人功能,Amazon Lex當前在海外區(qū)可用。在cdk.json文件中,將“bot”加入extension鍵值處。

cdk部署成功后進入管理界面可以看到名為“l(fā)lmbot”的對話機器人,如下圖:

wKgZomVNnqqABmczAAE2WV-iqK4858.png

該機器人可以方便地進行前端頁面的集成。

5.2 與Amazon Connect集成實現(xiàn)智能語音客服

Amazon Connect為亞馬遜云科技的云呼叫中心服務,該服務當前在海外區(qū)可用。該方案可以通過Amazon Lex機器人將大語言模型能力集成到Amazon Connect云呼叫中心中,通過以下幾個步驟可以使您獲得一個支持語音呼叫功能的智能客服機器人。

5.2.1 將上一步生成的llmbot機器人集成到現(xiàn)有Amazon Connect實例中。

wKgaomVNnqqAe0gnAAFH2fb4i0A454.png

5.2.2 然后進入Amazon Connect實例中,將smart-search/extension/connect里面的文件導入到Contact Flow中,并保存和發(fā)布。

5.2.3 最后在Amazon Connect中將呼入號碼與上一步配置的Contact Flow進行關聯(lián)。則所有呼入該號碼的語音通話將會連接到智能客服的呼叫服務流程。

正常情況下,智能客服將會識別呼入人的語音輸入,隨后集成到Amazon Connect的智能客服機器人會基于企業(yè)知識庫信息和大語言模型的能力進行以接近人類的邏輯方式進行語音回答。

6、資源清理

想要將資源進行清理時,請使用以下命令將所有堆棧進行刪除:

wKgZomVNnquAdFpbAAAE_YXVcKs829.png

注意:通過Amazon SageMaker的Notebook實例創(chuàng)建的推理模型資源需要進行手動刪除,在Amazon SageMaker的“inference”邊欄進入“endpoint”,點擊“delete”,將所有endpoint進行刪除。

當堆棧創(chuàng)建的Amazon S3桶中已經(jīng)有了數(shù)據(jù)或者存在其他手動創(chuàng)建或修改的資源時,則也需要手動刪除。

總結

通過此次部署,已經(jīng)成功掌握了該方案的部署方法,也對該方案有了更深的了解。亞馬遜云科技將會對該方案進行持續(xù)的迭代與優(yōu)化以支持更多的數(shù)據(jù)類型、模型庫與擴展功能,進而將方案的能力延伸到更多的業(yè)務場景中去。該方案可以解決許多行業(yè)和領域的專業(yè)或通用場景,通過使用該方案可以使用人工智能最新進展和亞馬遜云科技的產(chǎn)品來為行業(yè)發(fā)展注入新的活力。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 語言模型
    +關注

    關注

    0

    文章

    487

    瀏覽量

    10201
  • 亞馬遜
    +關注

    關注

    8

    文章

    2602

    瀏覽量

    82850
收藏 人收藏

    評論

    相關推薦

    GE醫(yī)療與亞馬遜科技達成戰(zhàn)略合作,通過生成式AI加速醫(yī)療健康領域轉型

    GE醫(yī)療已選擇亞馬遜科技作為其戰(zhàn)略服務合作伙伴,致力于推出全新的定制化基礎模型,加速創(chuàng)新醫(yī)療應用快速開發(fā)。 ? GE醫(yī)療將利用
    發(fā)表于 08-29 16:38 ?187次閱讀

    亞馬遜科技接入百川智能和零一萬物基礎模型

    近日,亞馬遜科技在中國峰會上宣布,兩大中文基礎模型——百川智能的Baichuan2-7B和零一萬物的Yi-1.5 6B/9B/34B,即將或已正式登陸中國區(qū)域的SageMaker J
    的頭像 發(fā)表于 06-04 11:53 ?500次閱讀

    【大語言模型:原理與工程實踐】大語言模型的應用

    實際應用前需解決的挑戰(zhàn)。為提升大語言模型的性能,高級的提示詞技術可以促進大語言模型與環(huán)境進行動態(tài)交互,引導其生成和推理規(guī)劃。 檢索增強生成
    發(fā)表于 05-07 17:21

    【大語言模型:原理與工程實踐】探索《大語言模型原理與工程實踐》2.0

    讀者更好地把握大語言模型的應用場景和潛在價值。盡管涉及復雜的技術內容,作者盡力以通俗易懂的語言解釋概念,使得非專業(yè)背景的讀者也能夠跟上節(jié)奏。圖表和示例的運用進一步增強了書籍的可讀性。本
    發(fā)表于 05-07 10:30

    【大語言模型:原理與工程實踐】核心技術綜述

    中應用,需要考慮到性能、可擴展性和安全性等因素。 大語言模型正在快速發(fā)展,新技術不斷涌現(xiàn)。未來的研究可能集中在提高模型效率、理解和可解釋性以及確保
    發(fā)表于 05-05 10:56

    亞馬遜科技與Anthropic加深合作 Amazon Bedrock再添Claude 3模型

    模型具備行業(yè)領先的準確性、性能、速度和成本優(yōu)勢。這一進展將增強各種規(guī)模的企業(yè)在其組織中快速測試、構建和部署生成式AI應用的能力。 "我們與Anthropic展開合作,旨在將領先的生成式
    的頭像 發(fā)表于 03-06 15:45 ?320次閱讀

    源2.0適配FastChat框架,企業(yè)快速本地化部署模型對話平臺

    北京2024年2月28日?/美通社/ -- 近日,浪潮信息Yuan2.0大模型與FastChat框架完成全面適配,推出"企業(yè)快速本地化部署模型對話平臺"
    的頭像 發(fā)表于 02-29 09:57 ?645次閱讀
    源2.0適配FastChat框架,企業(yè)<b class='flag-5'>快速</b>本地化<b class='flag-5'>部署</b>大<b class='flag-5'>模型</b>對話平臺

    開啟智能時代:亞馬遜科技傾力打造大語言模型前沿應用

    近年來,隨著科技的飛速發(fā)展,大語言模型成為人工智能領域的一顆璀璨明珠。在這個信息爆炸的時代,大語言模型以其強大的自學習能力和廣泛的應用領域引
    的頭像 發(fā)表于 12-06 13:57 ?657次閱讀

    語言模型簡介:基于大語言模型模型全家桶Amazon Bedrock

    本文基于亞馬遜科技推出的大語言模型與生成式AI的全家桶:Bedrock對大語言模型進行介紹。大
    的頭像 發(fā)表于 12-04 15:51 ?648次閱讀

    NVIDIA 為部分大型亞馬遜 Titan 基礎模型提供訓練支持

    本文將介紹亞馬遜如何使用 NVIDIA NeMo 框架、GPU 以及亞馬遜科技的 EFA 來訓練其 最大的新一代大語言模型(LLM)。 大
    的頭像 發(fā)表于 11-29 21:15 ?457次閱讀
    NVIDIA 為部分大型<b class='flag-5'>亞馬遜</b> Titan 基礎<b class='flag-5'>模型</b>提供訓練支持

    如何基于亞馬遜科技LLM相關工具打造知識庫

    背景 本篇將為大家闡述亞馬遜科技大語言模型下沉到具體行業(yè)進行場景以及實施案例的介紹,是亞馬遜
    的頭像 發(fā)表于 11-23 17:53 ?845次閱讀
    如何基于<b class='flag-5'>亞馬遜</b><b class='flag-5'>云</b>科技LLM相關工具打造知識庫

    人工智能模型、應用場景、應用部署教程超詳細資料

    人工智能是IC行業(yè)近幾年的熱詞,目前此技術已經(jīng)有很多成熟的模型和落地案例。在此跟大家做個分享,更多詳細資料,請自行搜索:【展銳坦克邦】,坦克邦-智算天地集算法模型、
    發(fā)表于 11-13 14:49

    如何在搜索引擎中應用AI大語言模型,提高企業(yè)生產(chǎn)力?

    人工智能尤其是大型語言模型的應用,重塑了我們與信息交互的方式,也為企業(yè)帶來了重大的變革。將基于大模型的檢索增強生成(RAG)集成到業(yè)務實踐中
    的頭像 發(fā)表于 11-06 08:10 ?467次閱讀
    如何在<b class='flag-5'>搜索</b>引擎中應用AI大<b class='flag-5'>語言</b><b class='flag-5'>模型</b>,提高企業(yè)生產(chǎn)力?

    Hugging Face LLM部署語言模型亞馬遜科技Amazon SageMaker推理示例

    ?本篇文章主要介紹如何使用新的Hugging Face LLM推理容器將開源LLMs,比如BLOOM大型語言模型部署亞馬遜科技Amazo
    的頭像 發(fā)表于 11-01 17:48 ?770次閱讀
    Hugging Face LLM<b class='flag-5'>部署</b>大<b class='flag-5'>語言</b><b class='flag-5'>模型</b>到<b class='flag-5'>亞馬遜</b><b class='flag-5'>云</b>科技Amazon SageMaker推理示例

    新官宣!投資高達40億美元!亞馬遜科技助力Anthropic未來基礎模型開發(fā)

    科技的客戶使用。雙方深化合作的部分內容包括: Anthropic將使用Amazon Trainium和Amazon Inferentia芯片來構建、訓練和部署其未來基礎模型,并充分利用亞馬遜
    的頭像 發(fā)表于 09-28 11:55 ?539次閱讀