跳到主要內容

【Hugging Face】Ep.6 解決問題的專業級破關知識家(Question Answering)

 

圖片來源

QA問答是自然語言處理NLP中蠻困難的一項任務, 必須從一段文本中識別出使用者的提問,像搜尋引擎就是一種QA的應用, 從眾多的問題中找答案, 那就讓我們親手來打造一下自己專屬的QA系統吧!

找看看有哪些可用模型

在「【Hugging Face】Ep.3 前往Dataset掏金趣」我們有介紹過HuggingFace平台如何精準的找出我們需要的模型, 那這次我們要找的任務是「Question Answering」,語言為「Chinese」, 我們就來選用最多人使用的「timpal0l/mdeberta-v3-base-squad2」吧!

圖片來源

安裝套件

!pip install transformers

給予知識文章

這邊透過Chatgpt幫我們產生Google的基礎知識並做為問答系統的基礎知識。

context = """
Google是一家全球知名的科技公司,成立於1998年,總部位於美國加利福尼亞州的山景城。Google以其在搜尋引擎技術方面的卓越表現而聞名,早期推出的Google搜尋引擎迅速成為全球最受歡迎和廣泛使用的搜尋引擎之一。

除了搜尋引擎外,Google還開發和提供了許多其他互聯網產品和服務。其中包括谷歌地圖、谷歌郵箱(Gmail)、谷歌翻譯、谷歌雲端硬碟(Google Drive)等。此外,Google還擁有Android操作系統,該操作系統目前是全球最受歡迎的移動操作系統之一。

Google也涉足硬體領域,推出了自己的智慧型手機系列Pixel,以及Pixelbook筆記型電腦、Google Home智慧音箱等產品。此外,Google還在人工智慧(AI)和機器學習領域投入了大量資源,並推出了許多與AI相關的產品和服務,如Google Assistant智慧助理和Google Lens圖像識別技術。

除了互聯網產品和服務,Google還在廣告業務方面表現出色。其廣告平台Google Ads為廣告客戶提供了廣告投放和行銷解決方案,並通過廣告收入成為Google的主要盈利來源之一。

Google在全球範圍內擁有廣泛的影響力和使用者基礎。其創始人之一拉里·佩奇(Larry Page)和謝爾蓋·布林(Sergey Brin)一直是科技行業的知名人物,Google也是全球最具價值的品牌之一。公司在全球各地設有辦事處和數據中心,員工遍布世界各地。

Google一直秉持著使訊息普遍可用和受人們歡迎的使命,致力於提供高質量的產品和服務,並不斷推動科技的創新和發展。
"""

打造QA任務機器人

這邊我們選用timpal0l/mdeberta-v3-base-squad2這個模型進行任務。

from transformers import pipeline, AutoTokenizer, AutoModelForQuestionAnswering
tokenizer = AutoTokenizer.from_pretrained("timpal0l/mdeberta-v3-base-squad2")
model = AutoModelForQuestionAnswering.from_pretrained("timpal0l/mdeberta-v3-base-squad2")
qa = pipeline("question-answering", model=model, tokenizer=tokenizer)

問與答

回答雖然不盡完美, 但已經能夠精確的理解我們的問題並給予接近正確的回答, 見到如此成效, 對於商業嗅覺敏感的朋友來說, 或許已經想到要如何打造一個知識庫問答機器人了吧!

後面的章節也會介紹如何自行訓練私有資料庫,並真正的打造私有的專屬問答知識家。

questions = [
    '請問Google的主要產品是什麼?',
    '請問創始人是誰?',
    '請問什麼時候開始的?'
]

for question in questions:
  result = qa(question = question, context = context)
  print(result['answer'])

圖片來源

今天的範例都在這裡「📦huggingface/huggingface_qa.ipynb」歡迎自行取用。

如何使用請參閱「【Google Colab系列】台股分析預備式: Colab平台與Python如何擦出火花?」。

結語

藉由Hugging Face平台, 我們可以親手打造各式各樣的AI機器人, 上面也已經有許多前輩分享的模型可供使用, 對於我們來說只要站在巨人的肩膀上即可, 也期望有朝一日我們也能訓練出對這世界更有幫助的AI模型。

喜歡撰寫文章的你,不妨來了解一下:

Web3.0時代下為創作者、閱讀者打造的專屬共贏平台 - 為什麼要加入?

歡迎加入一起練習寫作,賺取知識!

更多關於【Hugging Face 系列】…

留言

這個網誌中的熱門文章

java西元民國轉換_各種不同格式

C#資料庫操作(新增、修改、刪除、查詢)