【Hugging Face】Ep.8 專業的標準化推理家(Inference API)

閱讀時間約 7 分鐘
圖片來源

圖片來源

前面幾個篇章已經大致上介紹了Hugging Face這個平台的一些基本概念了,既然我們都能夠在平台上找到各式各樣的模型,而且也能夠照著教學一步步的來下載並使用,但有沒有更簡單的方式呢?

比如說,我們專注在應用端上的開發,AI的推理就藉由平台進行呢? 答案肯定是有的,近期越來越多開源的平台也都開放這種便利的方式供給我們存取,一旦我們與它綁的越深它就越容易向我們收取部分的費用來進行獲利的商業模式,就是一種升級解鎖的概念,提供適度免費可用的使用方式,想要更加方便就是付費。

Hugging Face提供了Inference API,透過標準化的規則制定,讓模型的上傳者以標準的格式進行擺放,而使用者也能夠較簡易、少部分修改的存取這些API來完成AI的應用,那這些API怎麼用呢? 收費狀況又是如何呢? 我們將陸續的來進行介紹。

讓新手領航員帶你導覽API…

基本上許多的模型上傳者都已經有照著平台上的規範擺放正確的模型,並提供如何使用API,如果還不知道怎麼使用模型的話,歡迎參考「【Hugging Face】Ep.1 平凡人也能玩的起的AI平台」,接著我們實際找一個模型來看看它的API長怎樣吧!

首先來找個模型,這次找到「csebuetnlp/mT5_multilingual_XLSum

圖片來源

圖片來源

找到之後我們點選右上方的「Deploy」 → 「Inference API」就可以看到如何使用了。

圖片來源

圖片來源

API架構說明

第一步我們需要透過**Model Hub**來找尋模型,基本上API的入口URL結構為:

# 以上述範例來說為: 
# <https://api-inference.huggingface.co/models/csebuetnlp/mT5_multilingual_XLSum>
ENDPOINT = <https://api-inference.huggingface.co/models/><MODEL_ID>

底下是一個針對於「summarization」類型任務的API樣版,已經附上註解,再請細細品嘗:

❗ API_TOKEN記得填入, 請至: https://huggingface.co/docs/hub/security-tokens,依照教學進行帳號的註冊與Token的申請。

https://huggingface.co/settings/tokens

除了python語言之外,也提供javascript與cURL,那這邊就先以python進行說明。

輸入的文章摘取自: https://www.ithome.com.tw/news/157763

import requests

# 就是所謂的ENDPOINT
API_URL = "<https://api-inference.huggingface.co/models/csebuetnlp/mT5_multilingual_XLSum>"

# API_TOKEN的部分請至: <https://huggingface.co/docs/hub/security-tokens>
headers = {"Authorization": f"Bearer {API_TOKEN}"}

# 包裝成一個query函式,並設計好請求的payload data
def query(payload):
response = requests.post(API_URL, headers=headers, json=payload)
return response.json()

# 呼叫query函式並帶入payload進行API請求,最終得到推理結果
output = query({
"inputs": "在接獲美國政府用戶通報下,微軟發現中國駭客組織利用所獲得的一個微軟帳號(MSA)消費者簽章金鑰來偽造身分認證權杖,以存取使用Outlook Web Access in Exchange Online(OWA)及Outlook.com的用戶,估計影響歐美地區的25個政府組織與相關個人",
})

並得到以下結果:

[{'summary_text': '美國電腦巨頭微軟發現中國黑客組織利用個人簽章金鑰來偽造身分認證權杖,影響歐美地區的25個政府組織。'}]

其它不同的任務有不同的樣板,請參考「Detailed parameters」。

真有這麼佛心?

圖片來源

圖片來源

我們可以看到雖然免費使用,但卻有速率上的限制,但對於一般的小應用來說已經足夠使用,不過基本上推理的部分是由CPU運算,因此效能可能不是我們所滿意的結果,如果需要更強大的功能請參考「Inference Endpoints」後面的篇章我們再來針對這個部分進行詳解。

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

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

結語

目前的Hugging Face平台看起來還蠻佛心的,以開源共享為主,但曾經的MongoDB、Elasticsearch也是如此,可惜到最後仍逐漸走向商業化,甚至雲端訂閱才能享受到強大功能,不知道未來的Hugging Face走向會不會也是如此,但這也是必然的,否則怎麼養得起那麼多的員工呢?

既然現在有了這些方便的API,那我們不妨好好的享用一番,簡單的使用API來兜出我們的應用,像是串接Line Bot、手機APP…等AI輔助工具,後續也將撰寫一篇實戰篇來結合AI應用。

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

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

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


更多關於【Hugging Face 系列】…

114會員
256內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
留言0
查看全部
發表第一個留言支持創作者!
阿Han的沙龍 的其他內容
我們過往介紹了幾個關於文字AI應用的篇章: 【Hugging Face】Ep.5 文字世界中的超能力語言英雄(Named Entity Recognition) 【Hugging Face】Ep.6 解決問題的專業級破關知識家(Question Answering) 但單獨的文字應用似乎不太能
圖片來源… 🔍 Huggingface dataset map increase disk space 我們在「【Hugging Face】Ep.3 前往Datasets掏金趣」有稍微介紹過Dataset在Hugging Face裡面扮演著什麼樣的角色,以及如何使用,沒錯! 它非常的好用,也很
我們已經介紹過關於Transformer模型的平台「【Hugging Face】Ep.1 平凡人也能玩的起的AI平台」,而操作的過程中相信也會有不少玩家會遇到這樣的狀況,因此將遇到的問題整理並分享解決方法,讓需要的朋友可以參考一下。 問題 Input type (torch.FloatTen
回顧上一個篇章「【自然語言處理NLP】初探強大的工具庫spaCy, 讓機器讀懂我們的語言」我們初步學習spaCy這套工具,在尾端進行NER時我們也發現到現有的NER模型並沒有辦法滿足我們的需求, 導致有一些實體未被識別出來, 因此這次的任務就是設法進行訓練, 讓我們想要被識別的實體可以被進行識別。
上一篇章我們有提到「【AI幫幫忙】機器如何識別我們的特徵?關鍵的Named Entity Recognition(NER)技術」, 而NER是NLP自然語言處理的一部分, 而這一個篇章我們會以實作的形式來介紹自然語言處理中非常好用的一套工具「spaCy」,spaCy被廣泛用於各種NLP任務,包括自然
QA問答是自然語言處理NLP中蠻困難的一項任務, 必須從一段文本中識別出使用者的提問,像搜尋引擎就是一種QA的應用, 從眾多的問題中找答案, 那就讓我們親手來打造一下自己專屬的QA系統吧! 找看看有哪些可用模型 在「【Hugging Face】Ep.3 前往Dataset掏金趣」我們有介紹過Hu
我們過往介紹了幾個關於文字AI應用的篇章: 【Hugging Face】Ep.5 文字世界中的超能力語言英雄(Named Entity Recognition) 【Hugging Face】Ep.6 解決問題的專業級破關知識家(Question Answering) 但單獨的文字應用似乎不太能
圖片來源… 🔍 Huggingface dataset map increase disk space 我們在「【Hugging Face】Ep.3 前往Datasets掏金趣」有稍微介紹過Dataset在Hugging Face裡面扮演著什麼樣的角色,以及如何使用,沒錯! 它非常的好用,也很
我們已經介紹過關於Transformer模型的平台「【Hugging Face】Ep.1 平凡人也能玩的起的AI平台」,而操作的過程中相信也會有不少玩家會遇到這樣的狀況,因此將遇到的問題整理並分享解決方法,讓需要的朋友可以參考一下。 問題 Input type (torch.FloatTen
回顧上一個篇章「【自然語言處理NLP】初探強大的工具庫spaCy, 讓機器讀懂我們的語言」我們初步學習spaCy這套工具,在尾端進行NER時我們也發現到現有的NER模型並沒有辦法滿足我們的需求, 導致有一些實體未被識別出來, 因此這次的任務就是設法進行訓練, 讓我們想要被識別的實體可以被進行識別。
上一篇章我們有提到「【AI幫幫忙】機器如何識別我們的特徵?關鍵的Named Entity Recognition(NER)技術」, 而NER是NLP自然語言處理的一部分, 而這一個篇章我們會以實作的形式來介紹自然語言處理中非常好用的一套工具「spaCy」,spaCy被廣泛用於各種NLP任務,包括自然
QA問答是自然語言處理NLP中蠻困難的一項任務, 必須從一段文本中識別出使用者的提問,像搜尋引擎就是一種QA的應用, 從眾多的問題中找答案, 那就讓我們親手來打造一下自己專屬的QA系統吧! 找看看有哪些可用模型 在「【Hugging Face】Ep.3 前往Dataset掏金趣」我們有介紹過Hu
本篇參與的主題活動
在生成式AI與大型語言模型(Large Language Model, LLM)蓬勃發展下,有許多工具可以幫助我們學習與撰寫程式,這篇文章提供了實作範例與一些經驗,分享如何使用ChatGPT(免費的GPT-3.5)協助程式語言的學習,並且完成屬於自己的程式。
前幾個禮拜,AWS 舉行 Startup Day Taiwan。想當然爾,最熱門的主題非生成式 AI (Generative AI) 莫屬。既然 AWS 有現成的工具,身為一名工程師,自然看看無妨,這篇文章算是新手開箱文,會說明如何部署一套基礎模型,並使用 AWS SDK 與其互動。
前言 我在工作中沒有什麼機會接觸到機器學習,學生時期也沒有學習過相關知識。 作為一個業餘小白,我對機器學習非常感興趣。在自學的過程中,我逐漸意識到利用機器學習可以做很多有趣的事情。 因此,我決定嘗試使用 AWS SageMaker JumpStart 來實驗文字生成式繪圖 AI ,以了解機
最近玩到了一個我覺得很新奇有趣的軟體,叫做SillyTavern。 SillyTavern是專用於創建虛擬角色的AI聊天軟體,SillyTavern是TavernAI的分支,但SillyTavern走上了自己的路,加進了許多額外功能,並且仍在積極的持續更新中。 然後,可以色色!
「Prompt」這個詞是提示的意思,但為什麼需要提示呢? 當AI不理解我們的時候,勢必給出的回應並非準確的為我們解答,因此一個好的提示是非常重要的,就如同我們人與人之間的溝通一樣,如何將自己心裡的疑惑轉化成好的問題來提問對方,讓對方理解,進而給出一個明確的答案,這就是提示(Prompt)的重要性,對
在生成式AI與大型語言模型(Large Language Model, LLM)蓬勃發展下,有許多工具可以幫助我們學習與撰寫程式,這篇文章提供了實作範例與一些經驗,分享如何使用ChatGPT(免費的GPT-3.5)協助程式語言的學習,並且完成屬於自己的程式。
前幾個禮拜,AWS 舉行 Startup Day Taiwan。想當然爾,最熱門的主題非生成式 AI (Generative AI) 莫屬。既然 AWS 有現成的工具,身為一名工程師,自然看看無妨,這篇文章算是新手開箱文,會說明如何部署一套基礎模型,並使用 AWS SDK 與其互動。
前言 我在工作中沒有什麼機會接觸到機器學習,學生時期也沒有學習過相關知識。 作為一個業餘小白,我對機器學習非常感興趣。在自學的過程中,我逐漸意識到利用機器學習可以做很多有趣的事情。 因此,我決定嘗試使用 AWS SageMaker JumpStart 來實驗文字生成式繪圖 AI ,以了解機
最近玩到了一個我覺得很新奇有趣的軟體,叫做SillyTavern。 SillyTavern是專用於創建虛擬角色的AI聊天軟體,SillyTavern是TavernAI的分支,但SillyTavern走上了自己的路,加進了許多額外功能,並且仍在積極的持續更新中。 然後,可以色色!
「Prompt」這個詞是提示的意思,但為什麼需要提示呢? 當AI不理解我們的時候,勢必給出的回應並非準確的為我們解答,因此一個好的提示是非常重要的,就如同我們人與人之間的溝通一樣,如何將自己心裡的疑惑轉化成好的問題來提問對方,讓對方理解,進而給出一個明確的答案,這就是提示(Prompt)的重要性,對
你可能也想看
Google News 追蹤
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Ai made a article tells everyone 從前,在一座摩天大樓林立、街道繁忙的繁華都市中,住著一群朋友,他們一直在尋找新的方式讓他們的生活更輕鬆、更方便。有一天,他們偶然發現了一件令人驚奇的事情——一個可以執行任務、提供信息,甚至可以進行隨意交談的虛擬助手。 起初,他們
Thumbnail
2020年,一場席捲全球的疫情不只打亂了全球產業脈動,也讓漂流海外的我們感到十分無奈。昨天看到一則新聞寫出了全球外派台人的縮影。 這篇文章主要是想記錄在台灣媒體對於越南疫情報導下看不見的、我們的生活,以及我們在當地面臨的挑戰。
Thumbnail
Jacob Morch on Unsplash 我對政治沒有什麼立場,如果你問我。我支持九二共識嗎?當然,反正一個中國,各自表述,也就是用白話文說,你認為的一個中國,我認為的一個中國,但不是你認為的「一個中國」,因為我把中國與台灣分得清清楚楚。中國就是中國,台灣就是台灣,你想要把我納入你的「一個中
Thumbnail
原來我好心疼我自己 當你進入到睡眠狀態的時候 你會看見那個在你內心深處的自己
Thumbnail
獨立自售和受人雇的行銷人員創意的自由範疇
Thumbnail
大家都一樣是人,何苦為難彼此? 還記得那時瘋狂的A thousand years,超愛的暮光之城,狼人、吸血鬼(你/妳喜歡裡面哪個角色呢?),今天這首Human則是滿滿的....
Thumbnail
​ 在基隆市中心要找素食店家其實並不是很多,詹家素食就是一家基隆的經典店家之一,不但素食者喜歡吃,連非素食者也說讚。這家素食館還被郵輪旅遊網,推薦為來到基隆必吃的美食店家之一。 詹家素食相關資訊:: ​ 基隆市仁愛區仁四路20號 ​ 02      2426     7159 ​ PM10:00AM
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Ai made a article tells everyone 從前,在一座摩天大樓林立、街道繁忙的繁華都市中,住著一群朋友,他們一直在尋找新的方式讓他們的生活更輕鬆、更方便。有一天,他們偶然發現了一件令人驚奇的事情——一個可以執行任務、提供信息,甚至可以進行隨意交談的虛擬助手。 起初,他們
Thumbnail
2020年,一場席捲全球的疫情不只打亂了全球產業脈動,也讓漂流海外的我們感到十分無奈。昨天看到一則新聞寫出了全球外派台人的縮影。 這篇文章主要是想記錄在台灣媒體對於越南疫情報導下看不見的、我們的生活,以及我們在當地面臨的挑戰。
Thumbnail
Jacob Morch on Unsplash 我對政治沒有什麼立場,如果你問我。我支持九二共識嗎?當然,反正一個中國,各自表述,也就是用白話文說,你認為的一個中國,我認為的一個中國,但不是你認為的「一個中國」,因為我把中國與台灣分得清清楚楚。中國就是中國,台灣就是台灣,你想要把我納入你的「一個中
Thumbnail
原來我好心疼我自己 當你進入到睡眠狀態的時候 你會看見那個在你內心深處的自己
Thumbnail
獨立自售和受人雇的行銷人員創意的自由範疇
Thumbnail
大家都一樣是人,何苦為難彼此? 還記得那時瘋狂的A thousand years,超愛的暮光之城,狼人、吸血鬼(你/妳喜歡裡面哪個角色呢?),今天這首Human則是滿滿的....
Thumbnail
​ 在基隆市中心要找素食店家其實並不是很多,詹家素食就是一家基隆的經典店家之一,不但素食者喜歡吃,連非素食者也說讚。這家素食館還被郵輪旅遊網,推薦為來到基隆必吃的美食店家之一。 詹家素食相關資訊:: ​ 基隆市仁愛區仁四路20號 ​ 02      2426     7159 ​ PM10:00AM