精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Python 教你三分鐘用 Bert 搭建問答搜索引擎

開發 前端
今天我們介紹的這個模塊,能讓你在3分鐘內基于BERT算法搭建一個問答搜索引擎。它就是 bert-as-service 項目。這個開源項目,能夠讓你基于多GPU機器快速搭建BERT服務(支持微調模型),并且能夠讓多個客戶端并發使用。

鼎鼎大名的 Bert 算法相信大部分同學都聽說過,它是Google推出的NLP領域“王炸級”預訓練模型,其在NLP任務中刷新了多項記錄,并取得state of the art的成績。

但是有很多深度學習的新手發現BERT模型并不好搭建,上手難度很高,普通人可能要研究幾天才能勉強搭建出一個模型。

沒關系,今天我們介紹的這個模塊,能讓你在3分鐘內基于BERT算法搭建一個問答搜索引擎。它就是 bert-as-service 項目。這個開源項目,能夠讓你基于多GPU機器快速搭建BERT服務(支持微調模型),并且能夠讓多個客戶端并發使用。

1.準備

開始之前,你要確保Python和pip已經成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細Python安裝指南 進行安裝。

(可選1) 如果你用Python的目的是數據分析,可以直接安裝Anaconda:Python數據分析與挖掘好幫手—Anaconda,它內置了Python和pip.

(可選2) 此外,推薦大家用VSCode編輯器,它有許多的優點:Python 編程的最好搭檔—VSCode 詳細指南。

請選擇以下任一種方式輸入命令安裝依賴:1. Windows 環境 打開 Cmd (開始-運行-CMD)。2. MacOS 環境 打開 Terminal (command+空格輸入Terminal)。3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.

pip install bert-serving-server # 服務端
pip install bert-serving-client # 客戶端

請注意,服務端的版本要求:Python >= 3.5,Tensorflow >= 1.10 。

此外還要下載預訓練好的BERT模型,在 https://github.com/hanxiao/bert-as-service#install 上可以下載,如果你無法訪問該網站,也可以在 https://pythondict.com/download/bert-serving-model/ 此處下載。

也可在Python實用寶典后臺回復 bert-as-service 下載這些預訓練好的模型。

下載完成后,將 zip 文件解壓到某個文件夾中,例如 /tmp/uncased_L-24_H-1024_A-16/.

2.Bert-as-service 基本使用

安裝完成后,輸入以下命令啟動BERT服務:

bert-serving-start -model_dir /tmp/uncased_L-24_H-1024_A-16/ -num_worker=4

-num_worker=4 代表這將啟動一個有四個worker的服務,意味著它最多可以處理四個并發請求。超過4個其他并發請求將在負載均衡器中排隊等待處理。

下面顯示了正確啟動時服務器的樣子:

圖片圖片

使用客戶端獲取語句的編碼

現在你可以簡單地對句子進行編碼,如下所示:

from bert_serving.client import BertClient
bc = BertClient()
bc.encode(['First do it', 'then do it right', 'then do it better'])

作為 BERT 的一個特性,你可以通過將它們與 |||(前后有空格)連接來獲得一對句子的編碼,例如

bc.encode(['First do it ||| then do it right'])

圖片圖片

遠程使用 BERT 服務

你還可以在一臺 (GPU) 機器上啟動服務并從另一臺 (CPU) 機器上調用它,如下所示:

# on another CPU machine
from bert_serving.client import BertClient
bc = BertClient(ip='xx.xx.xx.xx') # ip address of the GPU machine
bc.encode(['First do it', 'then do it right', 'then do it better'])

3.搭建問答搜索引擎

我們將通過 bert-as-service 從FAQ 列表中找到與用戶輸入的問題最相似的問題,并返回相應的答案。

FAQ列表其實就是官方文檔的readme.md, 在我提供的下載鏈接里也附帶了。

  • 加載所有問題,并顯示統計數據:
prefix_q = '##### **Q:** '
with open('README.md') as fp:
    questions = [v.replace(prefix_q, '').strip() for v in fp if v.strip() and v.startswith(prefix_q)]
    print('%d questions loaded, avg. len of %d' % (len(questions), np.mean([len(d.split()) for d in questions])))
    # 33 questions loaded, avg. len of 9

一共有33個問題被加載,平均長度是9.

  • 然后使用預訓練好的模型:uncased_L-12_H-768_A-12 啟動一個Bert服務:
bert-serving-start -num_worker=1 -model_dir=/data/cips/data/lab/data/model/uncased_L-12_H-768_A-12
  • 接下來,將我們的問題編碼為向量:
bc = BertClient(port=4000, port_out=4001)
doc_vecs = bc.encode(questions)
  • 最后,我們準備好接收用戶的查詢,并對現有問題執行簡單的“模糊”搜索。

為此,每次有新查詢到來時,我們將其編碼為向量并計算其點積  doc_vecs 然后對結果進行降序排序,返回前N個類似的問題:

while True:
    query = input('your question: ')
    query_vec = bc.encode([query])[0]
    # compute normalized dot product as score
    score = np.sum(query_vec * doc_vecs, axis=1) / np.linalg.norm(doc_vecs, axis=1)
    topk_idx = np.argsort(score)[::-1][:topk]
    for idx in topk_idx:
        print('> %s\t%s' % (score[idx], questions[idx]))

完成!現在運行代碼并輸入你的查詢,看看這個搜索引擎如何處理模糊匹配:

圖片圖片

完整代碼如下,一共23行代碼:

import numpy as np
from bert_serving.client import BertClient
from termcolor import colored

prefix_q = '##### **Q:** '
topk = 5

with open('README.md') as fp:
    questions = [v.replace(prefix_q, '').strip() for v in fp if v.strip() and v.startswith(prefix_q)]
    print('%d questions loaded, avg. len of %d' % (len(questions), np.mean([len(d.split()) for d in questions])))

with BertClient(port=4000, port_out=4001) as bc:
    doc_vecs = bc.encode(questions)

    while True:
        query = input(colored('your question: ', 'green'))
        query_vec = bc.encode([query])[0]
        # compute normalized dot product as score
        score = np.sum(query_vec * doc_vecs, axis=1) / np.linalg.norm(doc_vecs, axis=1)
        topk_idx = np.argsort(score)[::-1][:topk]
        print('top %d questions similar to "%s"' % (topk, colored(query, 'green')))
        for idx in topk_idx:
            print('> %s\t%s' % (colored('%.1f' % score[idx], 'cyan'), colored(questions[idx], 'yellow')))

夠簡單吧?當然,這是一個基于預訓練的Bert模型制造的一個簡單QA搜索模型。

你還可以微調模型,讓這個模型整體表現地更完美,你可以將自己的數據放到某個目錄下,然后執行 run_classifier.py 對模型進行微調,比如這個例子:

https://github.com/google-research/bert#sentence-and-sentence-pair-classification-tasks

責任編輯:武曉燕 來源: Python實用寶典
相關推薦

2021-10-27 05:47:53

通信協議協議網絡技術

2024-05-16 11:13:16

Helm工具release

2024-12-18 10:24:59

代理技術JDK動態代理

2009-11-09 12:55:43

WCF事務

2022-01-06 18:20:20

Scarlet AndroidWebSocket

2021-08-09 10:36:49

Python搜索引擎命令

2021-04-20 13:59:37

云計算

2022-02-17 09:24:11

TypeScript編程語言javaScrip

2023-12-27 08:15:47

Java虛擬線程

2024-01-16 07:46:14

FutureTask接口用法

2024-08-30 08:50:00

2025-10-27 01:35:00

2020-06-30 10:45:28

Web開發工具

2013-06-28 14:30:26

棱鏡計劃棱鏡棱鏡監控項目

2022-02-21 18:16:38

Go語言枚舉

2020-08-17 17:20:36

pythonJAVA代碼

2021-12-17 07:47:37

IT風險框架

2025-02-24 10:40:55

2024-10-15 09:18:30

2020-06-29 07:42:20

邊緣計算云計算技術
點贊
收藏

51CTO技術棧公眾號

热久久国产精品| 亚洲av成人精品一区二区三区在线播放 | 全球成人免费直播| 亚洲美女区一区| 国产精品第10页| 欧美视频www| 日本免费一区二区三区等视频| 亚洲免费av高清| 欧美精品v日韩精品v国产精品| 一级片在线免费观看视频| 黄色亚洲在线| 色婷婷**av毛片一区| 国产精品天天av精麻传媒| 久草中文在线观看| 337p粉嫩大胆噜噜噜噜噜91av| 成人精品久久久| 欧产日产国产69| 欧美视频官网| 色婷婷综合久久久久| 国产精品手机在线观看| 未满十八勿进黄网站一区不卡| 天天影视色香欲综合网老头| 一本一道久久a久久精品综合| 午夜国产在线视频| 免费精品视频在线| 日产精品久久久一区二区福利| 你懂的在线观看网站| 国产黄色精品| 亚洲青青青在线视频| 久久五月天婷婷| 国产一级淫片a视频免费观看| 91成人免费| 日韩欧美不卡在线观看视频| 免费一级特黄录像| 欧美aa视频| 欧美性猛xxx| 国产v片免费观看| 免费在线国产视频| 亚洲人123区| 中文字幕免费高| 色综合久久影院| 中文字幕不卡的av| 日韩欧美亚洲在线| 裸体xxxx视频在线| 国产亚洲精品bt天堂精选| 久久国产精品久久精品国产| 欧美一级免费片| 嫩草成人www欧美| 2019av中文字幕| 丰满少妇乱子伦精品看片| 欧美视频官网| 国内精品小视频| 亚洲精品国产精品国自| 中日韩免视频上线全都免费| 精品在线观看国产| 三上悠亚影音先锋| 精品久久久中文字幕| 一区二区三区视频免费| 粉嫩精品久久99综合一区| 日本一区二区在线看| 日韩中文娱乐网| 成人免费视频国产免费观看| 66视频精品| 欧美高清一级大片| 日本少妇激情舌吻| 一区二区久久| 国产精品久久久91| 国产精品区在线观看| 国产一区二区三区国产| www日韩av| 午夜在线视频免费| 中日韩av电影| 波多野结衣与黑人| 黄色在线网站噜噜噜| 日韩欧美999| 亚洲精品www.| 成人午夜三级| 3d动漫精品啪啪1区2区免费| 日本免费不卡一区二区| 天堂资源在线| 亚洲国产wwwccc36天堂| 缅甸午夜性猛交xxxx| 自拍偷拍亚洲视频| 欧美日韩在线综合| 北条麻妃在线观看| 国产一区二区三区四区五区3d| 欧美美女黄视频| 亚洲一二三av| 欧美一区 二区| 日韩在线播放一区| 毛片a片免费观看| 久久久久国产精品一区三寸| 91精品久久久久久久久久入口| 黄色美女一级片| 国产精品一区二区在线观看不卡 | 天天色天天射综合网| 日韩成人在线免费观看| 三区四区在线观看| 亚洲高清免费| 成人女保姆的销魂服务| 亚洲av成人无码网天堂| 最新久久zyz资源站| 漂亮人妻被中出中文字幕| 一区二区三区| 欧美日韩精品一区二区在线播放| 97超碰免费在线观看| 亚洲第一福利专区| 欧美大片免费观看在线观看网站推荐| 亚洲无码精品一区二区三区| 国产91对白在线观看九色| 亚洲激情电影在线| 在线观看v片| 精品久久久久久久久久久久久久久 | 久久天堂av| 精品国产乱码久久久久久牛牛 | 天堂av资源在线| 国产精品家庭影院| 欧美日韩在线中文| www.久久东京| 久久亚洲春色中文字幕| 国产成人自拍偷拍| 不卡的av中国片| 三级在线免费观看| 日韩av黄色| 伊人青青综合网站| 国产一区二区99| 国产欧美在线| 97神马电影| 国内外激情在线| 欧美日韩精品免费观看视频| 久久久亚洲av波多野结衣| 精品av久久久久电影| 7777精品伊久久久大香线蕉语言| 午夜小视频在线| 欧美亚一区二区| 免费一级做a爰片久久毛片潮| 1024成人| 韩国一区二区三区美女美女秀| 日本中文字幕中出在线| 欧美一级片在线观看| 久久久久久久久久影视| 7777久久香蕉成人影院| 成人av在线亚洲| 黄网站免费在线观看| 欧美久久一区二区| 亚洲熟女少妇一区二区| 男人的j进女人的j一区| 亚洲春色在线视频| 日韩国产一二三区| 久久久av免费| 亚洲AV无码成人片在线观看| 有码一区二区三区| 精品无码国模私拍视频| 国产伦精品一区二区三区在线播放| 欧美国产高跟鞋裸体秀xxxhd| 国产丰满美女做爰| 久久久久88色偷偷免费| 综合久久国产| 高清一区二区中文字幕| 久久成人国产精品| 成人毛片视频免费看| 亚洲成在人线免费| 老司机福利av| 日韩极品在线观看| 中文字幕色一区二区| 亚洲精品一二三**| 午夜免费日韩视频| 黄色免费在线播放| 69久久99精品久久久久婷婷| 免费一级全黄少妇性色生活片| 福利一区福利二区| 久久久久久久久久久福利| 欧洲杯足球赛直播| 91夜夜揉人人捏人人添红杏| 欧美性爽视频| 亚洲精品资源在线| 在线观看视频二区| 一区二区三区精品视频| 国产伦精品一区二区三区妓女| 日韩国产欧美一区二区三区| 一区二区三区四区国产| 亚洲一区二区免费在线观看| 欧美一级黄色网| 日韩子在线观看| 亚洲丁香婷深爱综合| 无码人妻精品一区二区蜜桃色欲| 国产精品麻豆网站| 午夜剧场免费看| 麻豆精品国产91久久久久久| 免费精品视频一区二区三区| 亚洲精品555| 欧美日韩国产二区| 国产高清第一页| 欧美色欧美亚洲高清在线视频| 精品手机在线视频| 波多野结衣一区二区三区| 色戒在线免费观看| 99精品久久| 法国空姐在线观看免费| 最新国产一区| 国产精品乱码一区二区三区| 成人性生交大片免费看在线播放| 亚洲免费av网址| www.五月婷婷| 在线观看网站黄不卡| 国产又大又黑又粗免费视频| 成人欧美一区二区三区1314| 疯狂揉花蒂控制高潮h| 国产激情91久久精品导航| 能在线观看的av网站| 亚洲午夜av| 成人免费看片视频在线观看| av亚洲在线观看| 精品亚洲欧美日韩| 一本一道久久a久久| 国产精品一二区| 北岛玲heyzo一区二区| 欧美国产精品日韩| 麻豆影院在线| 在线看日韩欧美| 可以在线观看的黄色| 日韩成人中文字幕在线观看| 性欧美8khd高清极品| 欧美日本一区二区| 亚洲婷婷久久综合| 日本精品免费观看高清观看| 国产欧美日韩另类| 亚洲国产成人精品视频| 日本老熟俱乐部h0930| 国产精品国产三级国产普通话三级| 国产人妻人伦精品1国产丝袜| 国产精品中文字幕日韩精品| 一区二区三区四区毛片| 久久er99热精品一区二区| 黑森林精品导航| 日本网站在线观看一区二区三区| 日本一区二区黄色| 性伦欧美刺激片在线观看| 极品粉嫩国产18尤物| 在线日本成人| 热99这里只有精品| 99热免费精品在线观看| 毛片在线视频播放| 久久成人亚洲| 91淫黄看大片| 美女网站一区二区| 色戒在线免费观看| 国产曰批免费观看久久久| 亚洲一二区在线观看| 国产一区中文字幕| 亚洲av综合色区无码另类小说| 在线视频亚洲| 日韩黄色片视频| 三级精品在线观看| 色播五月综合网| 国产综合色产在线精品| 日本55丰满熟妇厨房伦| 成人av在线一区二区| 性欧美丰满熟妇xxxx性久久久| 91免费国产视频网站| 中文字幕人妻一区二区| 中文字幕第一页久久| 久久久久亚洲av片无码| 亚洲已满18点击进入久久| 国产稀缺真实呦乱在线| 欧美性xxxxxxx| 中文字幕在线视频第一页| 亚洲成人777| 综合激情网五月| 欧洲国内综合视频| 亚洲中文字幕一区二区| 精品久久久网站| 九色网友自拍视频手机在线| 丝袜亚洲另类欧美重口| 日韩伦理av| 国产成人精品视频在线| 精品国产鲁一鲁****| 狠狠色噜噜狠狠色综合久| 欧美美女视频| 国产免费一区二区视频| 日韩综合一区二区| 91丨porny丨九色| 91香蕉视频黄| 极品久久久久久| 欧美性高潮床叫视频| 在线观看中文字幕av| 日韩午夜av一区| 欧美精品少妇| 欧美裸身视频免费观看| 精品91久久| 91久久精品www人人做人人爽| 国产a久久精品一区二区三区 | 日本不卡三区| 97碰在线观看| 国产日韩在线观看视频| 免费亚洲精品视频| 欧美日韩久久| 精品亚洲一区二区三区四区| 成人午夜视频在线| 天海翼在线视频| 色综合久久综合网欧美综合网| 久草免费在线观看视频| 色妹子一区二区| 亚洲乱码精品久久久久..| 国产一区二区激情| 超碰在线99| 亚洲xxxx视频| 欧美xxxxx视频| 国产精品免费成人| 波多野结衣中文字幕一区二区三区| 青花影视在线观看免费高清| 色激情天天射综合网| 日本xxxxxwwwww| 欧美成人性色生活仑片| 亚洲精品国产嫩草在线观看| 国产精品一区二区欧美黑人喷潮水| 日本a级不卡| 欧美精品色婷婷五月综合| 成人免费视频视频在线观看免费 | 在线中文字幕不卡| 性感美女视频一二三| 欧美二区在线播放| 国产日韩一区二区三免费高清| 亚洲精品一卡二卡三卡四卡| 美女精品在线| 免费看污黄网站在线观看| 亚洲国产综合91精品麻豆| www.桃色av嫩草.com| 久久亚洲精品一区二区| 9999精品视频| 香蕉精品视频在线| 久久99精品久久久| 午夜三级在线观看| 欧美日韩免费观看一区二区三区| 国产三级视频在线| 中文字幕精品在线| 欧美亚洲大片| 欧美中文娱乐网| 久久亚洲综合| av电影网站在线观看| 91九色02白丝porn| 国产高清免费在线播放| 国产精品第3页| 欧美日韩一区二区综合| 亚洲天堂网一区| 国产精品伦一区二区三级视频| 中文字幕资源网| 久久九九亚洲综合| 日韩三级网址| www.国产在线视频| 91老司机福利 在线| 国产成人在线视频观看| 亚洲欧美日韩网| 久久99久久久精品欧美| 午夜啪啪免费视频| 国产麻豆视频精品| 国产一级视频在线观看| 亚洲国产精品系列| 国产网友自拍视频导航网站在线观看| 91精品久久久久久久久久久久久| 久久精品国内一区二区三区水蜜桃| 性鲍视频在线观看| 亚洲18女电影在线观看| 青青草在线视频免费观看| 理论片在线不卡免费观看| 久久免费精品| 欧美久久久久久久久久久久久| 91蜜桃在线免费视频| 欧美高清69hd| 久久99精品国产99久久6尤物| 久久超级碰碰| 9l视频白拍9色9l视频| 一区二区三区成人| 毛片在线免费| 97人人香蕉| 日韩国产成人精品| 激情综合网五月天| 亚洲欧美在线免费| 国产精品1区| 久久无码高潮喷水| 亚洲视频在线观看三级| 深爱激情五月婷婷| 国产精品中文久久久久久久| 国产精品v欧美精品v日本精品动漫| 黄色a一级视频| 欧美一区二区在线视频| 91电影在线播放| av一区二区三区四区电影| 久久久久99| 国产精品第二十页| 最新的欧美黄色| 女同另类激情重口| 污污视频网站在线| 色综合久久久久综合体桃花网| 国产原创在线观看| 日本一区二区三区免费观看| 国产不卡免费视频| 一区二区视频网站| 日本午夜在线亚洲.国产| 欧美ab在线视频|