wordpress調(diào)用網(wǎng)站標(biāo)題愛站網(wǎng)長(zhǎng)尾關(guān)鍵詞搜索
過(guò)去,我們使用翻譯接口時(shí),往往都是使用百度等的接口,每天有一定量的免費(fèi)額度。今天為大家介紹一個(gè)可以進(jìn)行翻譯的模型,具備英譯中、中譯英的能力。并且在這個(gè)過(guò)程中,向大家介紹一個(gè)如何在本地部署模型。在之前的”五天入門RAG“中,我們介紹過(guò)如何線上運(yùn)行,但這是需要網(wǎng)絡(luò)條件的,當(dāng)你不具備時(shí),可以在本地安裝使用。
這個(gè)模型就是Helsinki-NLP/opus-mt-zh-en和Helsinki-NLP/opus-mt-en-zh。在后面,我們會(huì)再帶大家體驗(yàn)具備語(yǔ)音翻譯,轉(zhuǎn)錄的模型SeamlessM4T。
首先進(jìn)入:https://huggingface.co/
搜索:Helsinki-NLP/opus-mt-zh-en
點(diǎn)擊右邊的compute試一下,翻譯效果還不錯(cuò)。
然后點(diǎn)擊files卡片。
主要下載如下的幾個(gè)文件。
放到自己本地目錄下:
然后輸入我們的翻譯代碼:
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM# 模型名稱,如果模型已經(jīng)下載到本地,可以直接指定路徑
modelName = "D:/workspace/work/translate/bert_model/"
srcText = [
"大家好,我是一只來(lái)自中國(guó)的大熊貓",
"在這種方式下,我們的transformers才能發(fā)揮最大的作用",
"啊!華山,你可真是壯美",
]#---------------------------------tokenizer = AutoTokenizer.from_pretrained(modelName)
model = AutoModelForSeq2SeqLM.from_pretrained(modelName)
translated = model.generate(**tokenizer(srcText, return_tensors="pt", padding=True))
# 返回結(jié)果
r = [tokenizer.decode(t, skip_special_tokens=True) for t in translated]print(r)
代碼可能會(huì)提示錯(cuò)誤
那么我們安裝這個(gè)就是了,代碼如下:
pip install SentencePiece
然后再運(yùn)行:
["Hello. I'm a big panda from China.",
"In this way, our transformers will be most effective.",
"Oh, you're so beautiful, Wahshan."]
同樣的,英譯中使用另一個(gè)模型即可。
我們簡(jiǎn)單解釋一下代碼!
AutoTokenizer.from_pretrained
用于加載預(yù)訓(xùn)練的文本處理模型(Tokenizer),以便將文本數(shù)據(jù)轉(zhuǎn)換為模型可以接受的輸入格式。這個(gè)方法接受多個(gè)參數(shù),以下是這些參數(shù)的詳細(xì)說(shuō)明:
1.pretrained_model_name_or_path (str):
-這是最重要的參數(shù),指定要加載的預(yù)訓(xùn)練模型的名稱或路徑??梢允悄P兔Q(例如 “bert-base-uncased”)或模型文件夾的路徑。
\2. inputs (additional positional arguments, optional)
它表示額外的位置參數(shù),這些參數(shù)會(huì)傳遞給標(biāo)記器(Tokenizer)的__init__()方法。這允許你進(jìn)一步自定義標(biāo)記器的初始化。
\3. config ([PretrainedConfig
], optional)
這個(gè)配置對(duì)象用于確定要實(shí)例化的分詞器類。
4.cache_dir (str, optional):
用于緩存模型文件的目錄路徑
\5. force_download (bool, optional):
如果設(shè)置為 True
,將強(qiáng)制重新下載模型配置,覆蓋任何現(xiàn)有的緩存。
\6. resume_download (bool, optional):
-這是可選參數(shù),如果設(shè)置為 True,則在下載過(guò)程中重新開始下載,即使部分文件已經(jīng)存在。
\7. proxies (Dict[str, str]
, optional)
proxies(可選參數(shù)):這是一個(gè)字典,用于指定代理服務(wù)器的設(shè)置。代理服務(wù)器允許您在訪問(wèn)互聯(lián)網(wǎng)資源時(shí)通過(guò)中繼服務(wù)器進(jìn)行請(qǐng)求,這對(duì)于在受限網(wǎng)絡(luò)環(huán)境中使用 Transformers 庫(kù)來(lái)加載模型配置信息非常有用。
? proxies = { “http”: “http://your_http_proxy_url”, “https”: “https://your_https_proxy_url” }
\8. revision (str, optional):
指定要加載的模型的 Git 版本(通過(guò)提交哈希)。
\9. subfolder (str
, optional)
如果相關(guān)文件位于 huggingface.co 模型倉(cāng)庫(kù)的子文件夾內(nèi)(例如 facebook/rag-token-base),請(qǐng)?jiān)谶@里指定。
\10. use_fast (bool
, optional, defaults to True
)
這是一個(gè)布爾值,指示是否強(qiáng)制使用 fast tokenizer,即使其不支持特定模型的功能。默認(rèn)為 True。
\11. tokenizer_type (str
, optional)
參數(shù)用于指定要實(shí)例化的分詞器的類型
\12. trust_remote_code (bool
, optional, defaults to False
)
trust_remote_code=True:
默認(rèn)情況下,trust_remote_code 設(shè)置為 True。這意味著當(dāng)您使用 from_pretrained() 方法加載模型配置文件時(shí),它將下載來(lái)自 Hugging Face 模型中心或其他在線資源的配置文件。這是一個(gè)方便的默認(rèn)行為,因?yàn)橥ǔ_@些配置文件是由官方提供的,且是可信的。
trust_remote_code=False:
如果您將 trust_remote_code 設(shè)置為 False,則表示您不信任從遠(yuǎn)程下載的配置文件,希望加載本地的配置文件。這對(duì)于安全性或定制性要求較高的場(chǎng)景可能是有用的。
在這種情況下,您需要提供一個(gè)本地文件路徑,以明確指定要加載的配置文件
總之,trust_remote_code 參數(shù)允許您在使用 Hugging Face Transformers 庫(kù)時(shí)控制是否信任從遠(yuǎn)程下載的配置文件。默認(rèn)情況下,它被設(shè)置為 True,以方便加載官方提供的配置文件,但您可以將其設(shè)置為 False 并提供本地配置文件的路徑,以進(jìn)行更精細(xì)的控制。
AutoModel.from_pretrained()
AutoModel.from_pretrained() 是 Hugging Face Transformers 庫(kù)中的一個(gè)函數(shù),用于加載預(yù)訓(xùn)練的深度學(xué)習(xí)模型。它允許你加載各種不同的模型,如BERT、GPT-2、RoBERTa 等,而無(wú)需為每個(gè)模型類型編寫單獨(dú)的加載代碼。以下是 AutoModel.from_pretrained() 函數(shù)的主要參數(shù):
\1. pretrained_model_name_or_path (str):
-這是一個(gè)字符串參數(shù),用于指定要加載的預(yù)訓(xùn)練模型的名稱或路徑??梢允悄P偷拿Q(如 “bert-base-uncased”)或模型文件夾的路徑。
\2. *model_args
直接傳參的方式,傳入配置項(xiàng),例如,我們將編碼器層數(shù)改為3層
model = AutoModel.from_pretrained(“./models/bert-base-chinese”, num_hidden_layers=3)
加載模型時(shí),指定配置類實(shí)例
model = AutoModel.from_pretrained(“./models/bert-base-chinese”, config=config)
3.trust_remote_code (bool
, optional, defaults to False
)
trust_remote_code=True:
默認(rèn)情況下,trust_remote_code 設(shè)置為 True。這意味著當(dāng)您使用 from_pretrained() 方法加載模型配置文件時(shí),它將下載來(lái)自 Hugging Face 模型中心或其他在線資源的配置文件。這是一個(gè)方便的默認(rèn)行為,因?yàn)橥ǔ_@些配置文件是由官方提供的,且是可信的。
trust_remote_code=False:
如果您將 trust_remote_code 設(shè)置為 False,則表示您不信任從遠(yuǎn)程下載的配置文件,希望加載本地的配置文件。這對(duì)于安全性或定制性要求較高的場(chǎng)景可能是有用的。
在這種情況下,您需要提供一個(gè)本地文件路徑,以明確指定要加載的配置文件
總之,trust_remote_code 參數(shù)允許您在使用 Hugging Face Transformers 庫(kù)時(shí)控制是否信任從遠(yuǎn)程下載的配置文件。默認(rèn)情況下,它被設(shè)置為 True,以方便加載官方提供的配置文件,但您可以將其設(shè)置為 False 并提供本地配置文件的路徑,以進(jìn)行更精細(xì)的控制。
hub_kwargs_names = [
“cache_dir”, #同上面
“force_download”,#同上面
“l(fā)ocal_files_only”,
“proxies”, #同上面
“resume_download”, #同上面
“revision”, #同上面
“subfolder”, #同上面
“use_auth_token”,
]
local_files_only:
如果設(shè)置為True,將只嘗試從本地文件系統(tǒng)加載模型。如果本地文件不存在,它將不會(huì)嘗試從Hugging Face模型存儲(chǔ)庫(kù)下載模型文件。如果本地存在模型文件,它將從本地加載。如果設(shè)置為False(默認(rèn)值),它將首先嘗試從本地加載,如果本地不存在模型文件,它將嘗試從Hugging Face模型存儲(chǔ)庫(kù)下載模型文件并緩存到本地,然后加載。
from transformers import AutoModel
model = AutoModel.from_pretrained(“bert-base-uncased”, local_files_only=True)
詳解 use_auth_token 參數(shù):
默認(rèn)值:use_auth_token 參數(shù)的默認(rèn)值通常為 None,這意味著在默認(rèn)情況下不使用身份驗(yàn)證令牌。
作用:Hugging Face Model Hub 上的一些模型可能需要身份驗(yàn)證令牌才能訪問(wèn)。這通常是因?yàn)槟P偷膭?chuàng)建者希望對(duì)其進(jìn)行訪問(wèn)控制,或者出于其他原因需要進(jìn)行身份驗(yàn)證。如果模型需要身份驗(yàn)證令牌,你可以在 use_auth_token 參數(shù)中提供有效的令牌,以便在下載模型時(shí)使用。
獲取身份驗(yàn)證令牌:要獲得有效的身份驗(yàn)證令牌,你需要注冊(cè)并登錄到 Hugging Face Model Hub,然后訪問(wèn)你的個(gè)人配置文件(profile),那里會(huì)提供一個(gè) API 令牌(API token),你可以將其用作 use_auth_token 的值。
from transformers import AutoModel
# 使用身份驗(yàn)證令牌來(lái)加載模型
model = AutoModel.from_pretrained(‘model_name’, use_auth_token=‘your_auth_token’)
大多數(shù)模型不需要身份驗(yàn)證令牌,并且可以在不提供 use_auth_token 參數(shù)的情況下加載。只有在你確實(shí)需要進(jìn)行身份驗(yàn)證才需要使用此參數(shù)。
model.generate()
model()的使用場(chǎng)景:當(dāng)你需要對(duì)輸入數(shù)據(jù)執(zhí)行一次完整的前向計(jì)算時(shí)使用,如分類任務(wù)、特征提取等。
model.generate()的使用場(chǎng)景:當(dāng)你需要模型自動(dòng)生成文本或序列,尤其是在語(yǔ)言模型中,如GPT、T5等。
return_tensors=‘pt’, 自動(dòng)的將所有的結(jié)果都轉(zhuǎn)化成二緯的tensor數(shù)據(jù),因此,后面我們還需要將數(shù)據(jù)進(jìn)行解碼,完成編碼解碼。
如何學(xué)習(xí)大模型 AI ?
由于新崗位的生產(chǎn)效率,要優(yōu)于被取代崗位的生產(chǎn)效率,所以實(shí)際上整個(gè)社會(huì)的生產(chǎn)效率是提升的。
但是具體到個(gè)人,只能說(shuō)是:
“最先掌握AI的人,將會(huì)比較晚掌握AI的人有競(jìng)爭(zhēng)優(yōu)勢(shì)”。
這句話,放在計(jì)算機(jī)、互聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)的開局時(shí)期,都是一樣的道理。
我在一線互聯(lián)網(wǎng)企業(yè)工作十余年里,指導(dǎo)過(guò)不少同行后輩。幫助很多人得到了學(xué)習(xí)和成長(zhǎng)。
我意識(shí)到有很多經(jīng)驗(yàn)和知識(shí)值得分享給大家,也可以通過(guò)我們的能力和經(jīng)驗(yàn)解答大家在人工智能學(xué)習(xí)中的很多困惑,所以在工作繁忙的情況下還是堅(jiān)持各種整理和分享。但苦于知識(shí)傳播途徑有限,很多互聯(lián)網(wǎng)行業(yè)朋友無(wú)法獲得正確的資料得到學(xué)習(xí)提升,故此將并將重要的AI大模型資料包括AI大模型入門學(xué)習(xí)思維導(dǎo)圖、精品AI大模型學(xué)習(xí)書籍手冊(cè)、視頻教程、實(shí)戰(zhàn)學(xué)習(xí)等錄播視頻免費(fèi)分享出來(lái)。
第一階段(10天):初階應(yīng)用
該階段讓大家對(duì)大模型 AI有一個(gè)最前沿的認(rèn)識(shí),對(duì)大模型 AI 的理解超過(guò) 95% 的人,可以在相關(guān)討論時(shí)發(fā)表高級(jí)、不跟風(fēng)、又接地氣的見解,別人只會(huì)和 AI 聊天,而你能調(diào)教 AI,并能用代碼將大模型和業(yè)務(wù)銜接。
- 大模型 AI 能干什么?
- 大模型是怎樣獲得「智能」的?
- 用好 AI 的核心心法
- 大模型應(yīng)用業(yè)務(wù)架構(gòu)
- 大模型應(yīng)用技術(shù)架構(gòu)
- 代碼示例:向 GPT-3.5 灌入新知識(shí)
- 提示工程的意義和核心思想
- Prompt 典型構(gòu)成
- 指令調(diào)優(yōu)方法論
- 思維鏈和思維樹
- Prompt 攻擊和防范
- …
第二階段(30天):高階應(yīng)用
該階段我們正式進(jìn)入大模型 AI 進(jìn)階實(shí)戰(zhàn)學(xué)習(xí),學(xué)會(huì)構(gòu)造私有知識(shí)庫(kù),擴(kuò)展 AI 的能力??焖匍_發(fā)一個(gè)完整的基于 agent 對(duì)話機(jī)器人。掌握功能最強(qiáng)的大模型開發(fā)框架,抓住最新的技術(shù)進(jìn)展,適合 Python 和 JavaScript 程序員。
- 為什么要做 RAG
- 搭建一個(gè)簡(jiǎn)單的 ChatPDF
- 檢索的基礎(chǔ)概念
- 什么是向量表示(Embeddings)
- 向量數(shù)據(jù)庫(kù)與向量檢索
- 基于向量檢索的 RAG
- 搭建 RAG 系統(tǒng)的擴(kuò)展知識(shí)
- 混合檢索與 RAG-Fusion 簡(jiǎn)介
- 向量模型本地部署
- …
第三階段(30天):模型訓(xùn)練
恭喜你,如果學(xué)到這里,你基本可以找到一份大模型 AI相關(guān)的工作,自己也能訓(xùn)練 GPT 了!通過(guò)微調(diào),訓(xùn)練自己的垂直大模型,能獨(dú)立訓(xùn)練開源多模態(tài)大模型,掌握更多技術(shù)方案。
到此為止,大概2個(gè)月的時(shí)間。你已經(jīng)成為了一名“AI小子”。那么你還想往下探索嗎?
- 為什么要做 RAG
- 什么是模型
- 什么是模型訓(xùn)練
- 求解器 & 損失函數(shù)簡(jiǎn)介
- 小實(shí)驗(yàn)2:手寫一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)并訓(xùn)練它
- 什么是訓(xùn)練/預(yù)訓(xùn)練/微調(diào)/輕量化微調(diào)
- Transformer結(jié)構(gòu)簡(jiǎn)介
- 輕量化微調(diào)
- 實(shí)驗(yàn)數(shù)據(jù)集的構(gòu)建
- …
第四階段(20天):商業(yè)閉環(huán)
對(duì)全球大模型從性能、吞吐量、成本等方面有一定的認(rèn)知,可以在云端和本地等多種環(huán)境下部署大模型,找到適合自己的項(xiàng)目/創(chuàng)業(yè)方向,做一名被 AI 武裝的產(chǎn)品經(jīng)理。
- 硬件選型
- 帶你了解全球大模型
- 使用國(guó)產(chǎn)大模型服務(wù)
- 搭建 OpenAI 代理
- 熱身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地計(jì)算機(jī)運(yùn)行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何優(yōu)雅地在阿里云私有部署開源大模型
- 部署一套開源 LLM 項(xiàng)目
- 內(nèi)容安全
- 互聯(lián)網(wǎng)信息服務(wù)算法備案
- …
學(xué)習(xí)是一個(gè)過(guò)程,只要學(xué)習(xí)就會(huì)有挑戰(zhàn)。天道酬勤,你越努力,就會(huì)成為越優(yōu)秀的自己。
如果你能在15天內(nèi)完成所有的任務(wù),那你堪稱天才。然而,如果你能完成 60-70% 的內(nèi)容,你就已經(jīng)開始具備成為一名大模型 AI 的正確特征了。
這份完整版的大模型 AI 學(xué)習(xí)資料已經(jīng)上傳CSDN,朋友們?nèi)绻枰梢晕⑿艗呙柘路紺SDN官方認(rèn)證二維碼免費(fèi)領(lǐng)取【保證100%免費(fèi)
】
