【Hugging Face】Ep.2 初探新手村, 打造專屬的翻譯官

閱讀時間約 7 分鐘
圖片來源
我們已經介紹過關於Transformer模型的平台「【Hugging Face】Ep.1 平凡人也能玩的起的AI平台」,而這次就來實際動手進行開發,讓我們自己的AI自己做。
由於AI模型的訓練往往都會比較耗時, 因此建議需要有GPU環境會比較有效率一些, 否則訓練模行動輒好幾個小時才能看到結果, 一來一往之間, 當我們調好一版可用的模型時已經浪費了不少青春去了…。
基本上怎麼開始呢? 其實有分為兩條路徑, 一條是全部自己擁有, 將環境架設於本地端, 另一種則是使用雲端服務, 例如學術研究的Google Colab, 我們都會分別示範如何開始。

主題

這次的任務是自行打造一個翻譯官, 幫我們將中文翻譯成英文, 預計使用的模型為「Helsinki-NLP/opus-mt-zh-en」, 就讓我們分別示範如何在本地端與Google Colab上使用吧!

本地端

當我們非常Care數據是應該私有的, 不流於雲上時, 這時候本地端架設會是較好的選擇, 但相對應的也要有足夠的硬體, 成本相對較高。
另外會建議基於Docker、Container這種容器化技術為基礎進行環境架設, 如此一來才能夠避免因為系統環境的因素導致訓練失敗或者辨識失敗…等狀況。
首先請安裝一下Docker, 請參考「Install Docker Engine」, 至於什麼是Docker, 我們之後會另外撰寫一篇來進行介紹, 並在此補充, 這邊假設您已經是Docker/Container專家為基礎進行說明。
安裝完畢後就是選用合適的image了, 所謂image就是所謂的映像檔(虛擬機時期常常聽到的), 這邊會建議使用nvidia官方的image「PyTorch Release Notes」, 這邊我們會選用「nvcr.io/nvidia/pytorch:22.12-py3」這個版本來進行示範。
基本上Docker安裝完畢之後, 我們會用docker compose來管理配置的部份, 大致上如下:
version: "3.8"
services:
jupyter:
image: nvcr.io/nvidia/pytorch:22.12-py3
tmpfs:
- /tmp
ports:
- "8888:8888"
volumes:
- ./:/workspace
runtime: nvidia
command: jupyter notebook --ip=0.0.0.0 --port=8888 --allow-root --NotebookApp.token='test'
接著啟動我們的環境
docker compose up -d
再來開啟jupyter的網站:http://127.0.0.1:8888/login, 然後將token=text輸入就可以進行登錄了。
登入成功之後, 我們就可以來創建一個筆記本。
安裝一下必要元件。
!pip install transformers

# This tokenizer cannot be instantiated. Please make sure you have `sentencepiece` installed in order to use this tokenizer.
!pip install sentencepiece

!pip install sacremoses
接著進行翻譯任務。
from transformers import pipeline
translator = pipeline("translation", model='Helsinki-NLP/opus-mt-zh-en') #使用翻譯任務
translator('這是一個很困難的問題')
最終結果如下,成功幫我們進行翻譯。

Google Colab

當我們不想維護硬體時, 雲端的Google Colab就是最好的選擇了, 因為它整合了完整的python環境, 讓我們可以透過類似Jupyter的方式進行開發, 並分享腳本, 基本上比較適合學生、數據資料學家或是 AI 研究人員, 可以快速驗證概念或者訓練方向是否正確, 支援CPU、GPU甚至TPU, 但要注意的是除了CPU以外其他的運算單元都是會有額度限制的, 超過額度可是得付費的。
怎麼開始使用Google Colab呢? 請參考「【Google Colab系列】台股分析預備式: Colab平台與Python如何擦出火花?」, 假設你已經學會如何開筆記本了, 那就讓我們開始吧!
首先安裝一下最重要的Transformers元件吧
!pip install transformers

# This tokenizer cannot be instantiated. Please make sure you have `sentencepiece` installed in order to use this tokenizer.
!pip install sentencepiece

!pip install sacremoses
接著進行翻譯任務。
from transformers import pipeline
translator = pipeline("translation", model='Helsinki-NLP/opus-mt-zh-en') #使用翻譯任務
translator('這是一個很困難的問題')
最終得到翻譯結果。
今天的範例都在這裡「📦huggingface/opus_mt_zh_en.ipynb」歡迎自行取用。

結語

整個過程非常的簡單, 幾行指令就讓我們完成翻譯的任務, 過往可能需要付費才能使用的API,如今都可以自行擁有了, HuggingFace上有很多模型及任務可以使用, 不妨親自動手玩看看, 會讓我們對於AI領域有更進一步的認識喔, 下一個篇章將會陸續介紹不同的任務與不同的模型, 甚至自己動手訓練模型, 就讓我們持續學習下去吧!
喜歡撰寫文章的你,不妨來了解一下:
歡迎加入一起練習寫作,賺取知識!

更多關於【Hugging Face 系列】…

即將進入廣告,捲動後可繼續閱讀
為什麼會看到廣告
avatar-img
117會員
262內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
阿Han的沙龍 的其他內容
它到底是什麼? 簡單說Hugging Face是人工智慧開源平台,開發者發表和共享預訓練模型、資料庫和示範檔案等。Hugging Face共享超過10萬個預訓練模型,上萬資料庫,包括微軟、Google、彭博、英特爾等各行業上萬機構都有使用Hugging Face。 理念與目標 我們都知道最近火紅的O
正常來說這種大型LLM公司都會有內容審查功能, 照理說不應該讓AI回答有害的、暴力的…等負面回應, 以Chatgpt來說經實驗後確實是如此, 但仍可以透過欺騙的方式讓它間接的回答, 有一點挖坑給AI跳的概念…。 好人形象的ChatGPT 非常聰明的閃避掉違法的問題, 看來內部已經經過嚴格的審查過程,
雖然ChatGPT這種基於大型語言模型(LLM)的助手, 在大部分的場景都能滿足我們的需求, 但也並非完美, 在使用時仍需注意一些隱患。 以下是LLM的一些缺陷及需要注意的點。 弱弱的數學造成明顯錯誤 過份樂觀帶來錯誤資訊 相信常常使用ChatGPT的朋友應該都有發現到, 不論我們怎麼提問, Cha
前一篇我們有提到「【Generative AI - Prompt篇】Ep.3 讓AI身歷其境的角色提示法」如何催眠AI成為專家,藉著該提示技巧讓AI可以針對該領域進行專業的回答,但…這還不夠,我們還希望AI可以更強大,可以根據我們設計的範本,進行相同規格的輸入與輸出。 我們在前面幾個篇章也玩過一些P
倖存者偏差(Survivorship bias)是一種認知偏差,指的是在觀察研究對象時,只關注了「倖存」或「成功」的部分,而忽略了已經「消失」或「失敗」的部分。 這種偏差通常發生在樣本不完整或有遺漏的情況下,而且容易導致對結果做出誤導性的評估或推論。 尤其AI的時代來臨,基石源自於數據,數據相當於燃
前面我們有介紹「【Generative AI — Prompt篇】Ep.1 什麼是Prompt Engineering?」相信對於下指令給AI應該已經具有基本知識,那麼這一次我們來介紹Prompt技巧中的其中一環「角色提示法」,這是什麼樣的一種魔法呢? 很簡單,我們就是讓AI變身成專家,賦予特定領域
它到底是什麼? 簡單說Hugging Face是人工智慧開源平台,開發者發表和共享預訓練模型、資料庫和示範檔案等。Hugging Face共享超過10萬個預訓練模型,上萬資料庫,包括微軟、Google、彭博、英特爾等各行業上萬機構都有使用Hugging Face。 理念與目標 我們都知道最近火紅的O
正常來說這種大型LLM公司都會有內容審查功能, 照理說不應該讓AI回答有害的、暴力的…等負面回應, 以Chatgpt來說經實驗後確實是如此, 但仍可以透過欺騙的方式讓它間接的回答, 有一點挖坑給AI跳的概念…。 好人形象的ChatGPT 非常聰明的閃避掉違法的問題, 看來內部已經經過嚴格的審查過程,
雖然ChatGPT這種基於大型語言模型(LLM)的助手, 在大部分的場景都能滿足我們的需求, 但也並非完美, 在使用時仍需注意一些隱患。 以下是LLM的一些缺陷及需要注意的點。 弱弱的數學造成明顯錯誤 過份樂觀帶來錯誤資訊 相信常常使用ChatGPT的朋友應該都有發現到, 不論我們怎麼提問, Cha
前一篇我們有提到「【Generative AI - Prompt篇】Ep.3 讓AI身歷其境的角色提示法」如何催眠AI成為專家,藉著該提示技巧讓AI可以針對該領域進行專業的回答,但…這還不夠,我們還希望AI可以更強大,可以根據我們設計的範本,進行相同規格的輸入與輸出。 我們在前面幾個篇章也玩過一些P
倖存者偏差(Survivorship bias)是一種認知偏差,指的是在觀察研究對象時,只關注了「倖存」或「成功」的部分,而忽略了已經「消失」或「失敗」的部分。 這種偏差通常發生在樣本不完整或有遺漏的情況下,而且容易導致對結果做出誤導性的評估或推論。 尤其AI的時代來臨,基石源自於數據,數據相當於燃
前面我們有介紹「【Generative AI — Prompt篇】Ep.1 什麼是Prompt Engineering?」相信對於下指令給AI應該已經具有基本知識,那麼這一次我們來介紹Prompt技巧中的其中一環「角色提示法」,這是什麼樣的一種魔法呢? 很簡單,我們就是讓AI變身成專家,賦予特定領域
你可能也想看
Google News 追蹤
Thumbnail
徵的就是你 🫵 超ㄅㄧㄤˋ 獎品搭配超瞎趴的四大主題,等你踹共啦!還有機會獲得經典的「偉士牌樂高」喔!馬上來參加本次的活動吧!
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 的重要性已經被公認了,因此在 Hugging Face 中亦有被實作,呼叫方式如下: !pip -q install transformers
Thumbnail
Docker是由GO語言實現,是一個在GitHub上開發原始碼的專案。它的目標是實現羽量級的作業系統虛擬化。讓使用者操作Docker,就像是操作一個羽量級的虛擬機器。 優勢 快速發表和部署 高效的部署和擴充 資源使用率高 管理簡單 核心 Image映像檔 Docker
工欲善其事,必先利其器,要打造屬於自己的Chat GPT之前,我們先學習怎麼建立Google免費提供的Colab環境,它可以免費使用GPU來加速AI的運算,非常適合沒有錢添購GPU,但又想學習前沿AI技術的人。 第一步:打開Google瀏覽器,並點選右上方的「方格子點點」,接著選擇「雲端硬碟」
延續使用Meta釋出的模型,實作Chat GPT - Part 2 我們已經確定可以進入HuggingFace之後,就要來載入模型,其對應程式為: Model_Config = transformers.AutoConfig.from_pretrained( Mode
接著載入Part 2需要的相關依賴,其分別為: from torch import cuda, bfloat16import import transformers 然後選擇我們要的Meta模型,這邊可以是Llama 2或者是Llama 3,後者是Meta最新釋出的模型。 同時我們也讓系統自
第一步先在Python環境中安裝本次專案需要用到的Library,相關指令如下: !pip install accelerate==0.21.0 !pip install transformers==4.31.0 !pip install tokenizers==0.13.3 !pip insta
Thumbnail
在 AI 研究的領域中,理解和解釋語言模型如何處理和回應特定輸入始終是一項巨大挑戰。這種復雜性不僅限於模型的規模和結構,還涉及到它們如何在內部做出決策。為了應對這一挑戰,OpenAI 推出了一款名為 Transformer Debugger (TDB) 的工具,旨在深入探索小型語言模型的行為
Thumbnail
本文透過 Cloud Native Taiwan User Group 之 Infra Labs 雲端主機進行深度學習環境部署,包含 Nvidia GPU driver、PyTorch、Jupyter Lab 等,並進行相關安裝過程說明。
Thumbnail
前言 大家好在先前我們講了什麼是 Docker,Docker 好處有什麼以及怎麼安裝 Docker,今天我們要來開始初體驗 Docker 容器,使用後您會發現 Docker 非常的方便快速 Docker Hub 介紹 首先在開始學怎麼抓取 Docker Image 之前,我們要先來介紹 Doc
Thumbnail
前言 上次我們講到 Docker 的功用與好處,今天我們要在講解,如何安裝 Docker 這個容器,讓我們在之後的教學應用更好的實作與練習,現在讓我們開始吧 Docker Engine 與 Docker Desktop 首先在講解怎麼安裝 Docker 時,我們先講解 Docker Engin
Thumbnail
徵的就是你 🫵 超ㄅㄧㄤˋ 獎品搭配超瞎趴的四大主題,等你踹共啦!還有機會獲得經典的「偉士牌樂高」喔!馬上來參加本次的活動吧!
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 的重要性已經被公認了,因此在 Hugging Face 中亦有被實作,呼叫方式如下: !pip -q install transformers
Thumbnail
Docker是由GO語言實現,是一個在GitHub上開發原始碼的專案。它的目標是實現羽量級的作業系統虛擬化。讓使用者操作Docker,就像是操作一個羽量級的虛擬機器。 優勢 快速發表和部署 高效的部署和擴充 資源使用率高 管理簡單 核心 Image映像檔 Docker
工欲善其事,必先利其器,要打造屬於自己的Chat GPT之前,我們先學習怎麼建立Google免費提供的Colab環境,它可以免費使用GPU來加速AI的運算,非常適合沒有錢添購GPU,但又想學習前沿AI技術的人。 第一步:打開Google瀏覽器,並點選右上方的「方格子點點」,接著選擇「雲端硬碟」
延續使用Meta釋出的模型,實作Chat GPT - Part 2 我們已經確定可以進入HuggingFace之後,就要來載入模型,其對應程式為: Model_Config = transformers.AutoConfig.from_pretrained( Mode
接著載入Part 2需要的相關依賴,其分別為: from torch import cuda, bfloat16import import transformers 然後選擇我們要的Meta模型,這邊可以是Llama 2或者是Llama 3,後者是Meta最新釋出的模型。 同時我們也讓系統自
第一步先在Python環境中安裝本次專案需要用到的Library,相關指令如下: !pip install accelerate==0.21.0 !pip install transformers==4.31.0 !pip install tokenizers==0.13.3 !pip insta
Thumbnail
在 AI 研究的領域中,理解和解釋語言模型如何處理和回應特定輸入始終是一項巨大挑戰。這種復雜性不僅限於模型的規模和結構,還涉及到它們如何在內部做出決策。為了應對這一挑戰,OpenAI 推出了一款名為 Transformer Debugger (TDB) 的工具,旨在深入探索小型語言模型的行為
Thumbnail
本文透過 Cloud Native Taiwan User Group 之 Infra Labs 雲端主機進行深度學習環境部署,包含 Nvidia GPU driver、PyTorch、Jupyter Lab 等,並進行相關安裝過程說明。
Thumbnail
前言 大家好在先前我們講了什麼是 Docker,Docker 好處有什麼以及怎麼安裝 Docker,今天我們要來開始初體驗 Docker 容器,使用後您會發現 Docker 非常的方便快速 Docker Hub 介紹 首先在開始學怎麼抓取 Docker Image 之前,我們要先來介紹 Doc
Thumbnail
前言 上次我們講到 Docker 的功用與好處,今天我們要在講解,如何安裝 Docker 這個容器,讓我們在之後的教學應用更好的實作與練習,現在讓我們開始吧 Docker Engine 與 Docker Desktop 首先在講解怎麼安裝 Docker 時,我們先講解 Docker Engin