国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于英特爾? Gaudi? 2 AI 加速器的文本生成流水線

這篇具有很好參考價值的文章主要介紹了基于英特爾? Gaudi? 2 AI 加速器的文本生成流水線。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

隨著生成式人工智能 (Generative AI,GenAI) 革命的全面推進(jìn),使用 Llama 2 等開源 transformer 模型生成文本已成為新風(fēng)尚。人工智能愛好者及開發(fā)人員正在尋求利用此類模型的生成能力來賦能不同的場景及應(yīng)用。本文展示了如何基于 Optimum Habana 以及我們實現(xiàn)的流水線類輕松使用 Llama 2 系列模型 (7b、13b 及 70b) 生成文本 - 僅需幾行代碼,即可運行!

我們設(shè)計并實現(xiàn)了一個旨在為用戶提供極大的靈活性和易用性流水線類。它提供了高層級的抽象以支持包含預(yù)處理和后處理在內(nèi)的端到端文本生成。同時,用戶也可以通過多種方法使用該流水線類 - 你可以在 Optimum Habana 代碼庫中直接運行 run_pipeline.py 腳本,也可以在你自己的 python 腳本中調(diào)用該流水線類,還可以用該流水線類來初始化 LangChain。

準(zhǔn)備工作

由于 Llama 2 模型實行的是許可式訪問,因此如果你尚未申請訪問權(quán)限,需要首先申請訪問權(quán)限。方法如下: 首先,訪問 Meta 網(wǎng)站 并接受相應(yīng)條款。一旦 Meta 授予你訪問權(quán)限 (可能需要一兩天),你需要使用你當(dāng)時使用的電子郵箱地址申請 Hugging Face Llama 2 模型庫 的訪問權(quán)限。

獲取訪問權(quán)限后,可通過運行以下命令登錄你的 Hugging Face 帳戶 (此時會需要一個訪問令牌,你可從 你的用戶個人資料頁面 上獲取):

huggingface-cli login

你還需要安裝最新版本的 Optimum Habana 并拉取其代碼庫以獲取后續(xù)要使用的腳本。命令如下:

pip install optimum-habana==1.10.4
git clone -b v1.10-release https://github.com/huggingface/optimum-habana.git

如果想運行分布式推理,還需要根據(jù)你的 SynapseAI 版本安裝對應(yīng)的 DeepSpeed。在本例中,我使用的是 SynapseAI 1.14.0。

pip install git+https://github.com/HabanaAI/DeepSpeed.git@1.14.0

至此,準(zhǔn)備完畢!

方法一: 通過命令直接使用流水線腳本

首先,使用如下命令進(jìn)入 optimum-habana 的相應(yīng)目錄,然后按照 README 中的說明更新 PYTHONPATH

cd optimum-habana/examples/text-generation
pip install -r requirements.txt
cd text-generation-pipeline

如果你想用自己的提示生成文本序列,下面給出了一個示例:

python run_pipeline.py \
  --model_name_or_path meta-llama/Llama-2-7b-hf \
  --use_hpu_graphs \
  --use_kv_cache \
  --max_new_tokens 100 \
  --do_sample \
  --prompt "Here is my prompt"

你還可以傳入多個提示作為輸入,并更改生成的溫度或 top_p 值,如下所示:

python run_pipeline.py \
  --model_name_or_path meta-llama/Llama-2-13b-hf \
  --use_hpu_graphs \
  --use_kv_cache \
  --max_new_tokens 100 \
  --do_sample \
  --temperature 0.5 \
  --top_p 0.95 \
  --prompt "Hello world" "How are you?"

如果想用 Llama-2-70b 等大尺寸模型生成文本,下面給出了一個用 DeepSpeed 啟動流水線的示例命令:

python ../../gaudi_spawn.py \
  --use_deepspeed \
  --world_size 8 run_pipeline.py \
  --model_name_or_path meta-llama/Llama-2-70b-hf \
  --max_new_tokens 100 \
  --bf16 \
  --use_hpu_graphs \
  --use_kv_cache \
  --do_sample \
  --temperature 0.5 \
  --top_p 0.95 \
  --prompt "Hello world" "How are you?" "Here is my prompt" "Once upon a time"

方法二: 在自己的 Python 腳本中調(diào)用流水線類

你還可以在自己的 Python 腳本中調(diào)用我們實現(xiàn)的流水線類,如下例所示。你需要在 optimum-habana/examples/text-generation/text- generation-pipeline 目錄下運行該示例腳本 [譯者注: 原因是 GaudiTextGenerationPipeline 這個類的定義在該目錄的 pipeline.py 中]。

import argparse
import logging

from pipeline import GaudiTextGenerationPipeline
from run_generation import setup_parser

# Define a logger
logging.basicConfig(
    format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
    datefmt="%m/%d/%Y %H:%M:%S",
    level=logging.INFO,
)
logger = logging.getLogger(__name__)

# Set up an argument parser
parser = argparse.ArgumentParser()
args = setup_parser(parser)

# Define some pipeline arguments. Note that --model_name_or_path is a required argument for this script
args.num_return_sequences = 1
args.model_name_or_path = "meta-llama/Llama-2-7b-hf"
args.max_new_tokens = 100
args.use_hpu_graphs = True
args.use_kv_cache = True
args.do_sample = True

# Initialize the pipeline
pipe = GaudiTextGenerationPipeline(args, logger)

# You can provide input prompts as strings
prompts = ["He is working on", "Once upon a time", "Far far away"]

# Generate text with pipeline
for prompt in prompts:
    print(f"Prompt: {prompt}")
    output = pipe(prompt)
    print(f"Generated Text: {repr(output)}")

你需要用 python <name_of_script>.py --model_name_or_path a_model_name 命令來運行上述腳本,其中 --model_name_or_path 是必需的參數(shù)。當(dāng)然,你也可以在代碼中直接更改模型名稱 (如上述 Python 代碼片段所示)。

上述代碼段表明我們實現(xiàn)的流水線類 GaudiTextGenerationPipeline 會對輸入字符串執(zhí)行生成文本所需的全部操作,包括數(shù)據(jù)預(yù)處理及后處理在內(nèi)。

方法二: 在 LangChain 中使用流水線類

如果在構(gòu)造時傳入 use_with_langchain 參數(shù)的話,我們的文本生成流水線還可以作為 LangChain 的兼容組件使用。首先,按照如下方式安裝 LangChain:

pip install langchain==0.0.191

下面給出了一個如何在 LangChain 中使用我們的流水線類的代碼示例。

import argparse
import logging

from langchain.llms import HuggingFacePipeline
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain

from pipeline import GaudiTextGenerationPipeline
from run_generation import setup_parser

# Define a logger
logging.basicConfig(
    format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
    datefmt="%m/%d/%Y %H:%M:%S",
    level=logging.INFO,
)
logger = logging.getLogger(__name__)

# Set up an argument parser
parser = argparse.ArgumentParser()
args = setup_parser(parser)

# Define some pipeline arguments. Note that --model_name_or_path is a required argument for this script
args.num_return_sequences = 1
args.model_name_or_path = "meta-llama/Llama-2-13b-chat-hf"
args.max_input_tokens = 2048
args.max_new_tokens = 1000
args.use_hpu_graphs = True
args.use_kv_cache = True
args.do_sample = True
args.temperature = 0.2
args.top_p = 0.95

# Initialize the pipeline
pipe = GaudiTextGenerationPipeline(args, logger, use_with_langchain=True)

# Create LangChain object
llm = HuggingFacePipeline(pipeline=pipe)

template = """Use the following pieces of context to answer the question at the end. If you don't know the answer,\
just say that you don't know, don't try to make up an answer.

Context: Large Language Models (LLMs) are the latest models used in NLP.
Their superior performance over smaller models has made them incredibly
useful for developers building NLP enabled applications. These models
can be accessed via Hugging Face's `transformers` library, via OpenAI
using the `openai` library, and via Cohere using the `cohere` library.

Question: {question}
Answer: """

prompt = PromptTemplate(input_variables=["question"], template=template)
llm_chain = LLMChain(prompt=prompt, llm=llm)

# Use LangChain object
question = "Which libraries and model providers offer LLMs?"
response = llm_chain(prompt.format(question=question))
print(f"Question 1: {question}")
print(f"Response 1: {response['text']}")

question = "What is the provided context about?"
response = llm_chain(prompt.format(question=question))
print(f"\nQuestion 2: {question}")
print(f"Response 2: {response['text']}")

該流水線類當(dāng)前僅在 LangChain 0.0.191 版上驗證通過,其他版本可能不兼容。

總結(jié)

我們在英特爾? Gaudi? 2 AI 加速器上實現(xiàn)了一個自定義的文本生成流水線,其可接受單個或多個提示作為輸入。該流水線類靈活支持各種模型尺寸及各種影響文本生成質(zhì)量參數(shù)。此外,不管是直接使用還是將它插入你自己的腳本都非常簡單,并且其還與 LangChain 兼容。

使用預(yù)訓(xùn)練模型需遵守第三方許可,如 “Llama 2 社區(qū)許可協(xié)議”(LLAMAV2)。有關(guān) LLAMA2 模型的預(yù)期用途有哪些、哪些行為會被視為濫用或超范圍使用、預(yù)期使用者是誰以及其他條款,請仔細(xì)閱讀此 鏈接 中的說明。用戶需自主承擔(dān)遵守任何第三方許可的責(zé)任和義務(wù),Habana Labs 不承擔(dān)任何與用戶使用或遵守第三方許可相關(guān)的責(zé)任。為了能夠運行像 Llama-2-70b-hf 這樣的受限模型,你需要:

  • 有一個 Hugging Face 帳戶
  • 同意 HF Hub 上模型卡中的模型使用條款
  • 設(shè)好訪問令牌
  • 使用 HF CLI 登錄你的帳戶,即在啟動腳本之前運行 huggingface-cli login

英文原文: https://hf.co/blog/textgen-pipe-gaudi

原文作者: Siddhant Jagtap

譯者: Matrix Yao (姚偉峰),英特爾深度學(xué)習(xí)工程師,工作方向為 transformer-family 模型在各模態(tài)數(shù)據(jù)上的應(yīng)用及大規(guī)模模型的訓(xùn)練推理。文章來源地址http://www.zghlxwxcb.cn/news/detail-839511.html

到了這里,關(guān)于基于英特爾? Gaudi? 2 AI 加速器的文本生成流水線的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • AI作畫升級,OpenVINO? 和英特爾獨立顯卡助你快速生成視頻

    AI作畫升級,OpenVINO? 和英特爾獨立顯卡助你快速生成視頻

    在《 AI作畫,OpenVINO?助你在英特爾GPU上隨心創(chuàng)作》中,我們介紹了OpenVINO Notebook運行環(huán)境搭建,并利用OpenVINO?優(yōu)化和加速Stable Diffusion模型的推理,在英特爾?獨立顯卡上能夠根據(jù)我們輸入的指令(prompt),快速生成我們喜愛的AI畫作。 今天,我們對這一應(yīng)用場景再次升級,

    2024年02月03日
    瀏覽(37)
  • 當(dāng)英特爾 OpenVINO 遇上微軟 Azure,AI在邊云協(xié)同的新方案

    當(dāng)英特爾 OpenVINO 遇上微軟 Azure,AI在邊云協(xié)同的新方案

    作者 | 宋慧 出品 | CSDN云計算 數(shù)字化浪潮下,越來越多的終端 IoT 設(shè)備接入網(wǎng)絡(luò),邊緣的數(shù)據(jù)量與分析需求也隨之增加。根據(jù) Eclipse 對邊緣負(fù)載的分析顯示,人工智能是邊緣計算中占比最高的負(fù)載之一,高于控制邏輯、數(shù)據(jù)分析等負(fù)載所占比例。 憑借企業(yè)級至強(qiáng)系列處理器,

    2024年02月07日
    瀏覽(24)
  • 使用FastDeploy在英特爾CPU和獨立顯卡上端到端高效部署AI模型

    使用FastDeploy在英特爾CPU和獨立顯卡上端到端高效部署AI模型

    目錄 1.1?產(chǎn)業(yè)實踐中部署AI模型的痛點 1.1.1??部署模型的典型流程 1.1.2 端到端的AI性能 1.1.3 部署模型的難點和痛點 1.2 FastDeploy簡介 1.3 英特爾獨立顯卡簡介 1.4 使用FastDeploy在英特爾CPU和獨立顯卡上部署模型的步驟 1.4.1 搭建FastDeploy開發(fā)環(huán)境 1.4.2 下載模型和測試圖處 1.4.3 三行代

    2024年02月01日
    瀏覽(31)
  • Ubuntu Linux 22.04 快速安裝英特爾顯卡驅(qū)動(含Edge AI 包)

    Ubuntu Linux 22.04 快速安裝英特爾顯卡驅(qū)動(含Edge AI 包)

    英特爾 EIV (Edge insight Vision)具有一組預(yù)集成組件,專為邊緣應(yīng)用的計算機(jī)視覺和深度學(xué)習(xí)推理而設(shè)計,并針對英特爾?架構(gòu)進(jìn)行了優(yōu)化。它作為容器化架構(gòu)或獨立運行時實現(xiàn)。 此軟件包包含用于在英特爾處理器和英特爾顯卡設(shè)備上安裝英特爾?顯卡驅(qū)動程序和為 OpenVINO? 推理

    2024年02月08日
    瀏覽(53)
  • 英特爾集成顯卡+ChatGLM3大語言模型的企業(yè)本地AI知識庫部署

    英特爾集成顯卡+ChatGLM3大語言模型的企業(yè)本地AI知識庫部署

    作者: 英特爾創(chuàng)新大使 劉力 英特爾開發(fā)者技術(shù)推廣經(jīng)理 李翊瑋 ? ??在當(dāng)今的企業(yè)環(huán)境中,信息的快速獲取和處理對于企業(yè)的成功至關(guān)重要。為了滿足這一需求,我們可以將RAG技術(shù)與企業(yè)本地知識庫相結(jié)合,以提供實時的、自動生成的信息處理和決策支持。這將有助于企業(yè)

    2024年04月26日
    瀏覽(34)
  • 【文末附gpt升級4.0方案】英特爾AI PC的局限性是什么

    【文末附gpt升級4.0方案】英特爾AI PC的局限性是什么

    英特爾AI PC的推出無疑為AIGC(生成式人工智能)的未來發(fā)展開啟了一扇新的大門。這種新型的計算機(jī)平臺,通過集成先進(jìn)的硬件技術(shù)和優(yōu)化的軟件算法,為AIGC提供了更為強(qiáng)大和高效的支持,進(jìn)一步推動了人工智能的落地和應(yīng)用。 首先,英特爾AI PC的出色性能為AIGC提供了堅實

    2024年04月15日
    瀏覽(45)
  • 如何在Linux系統(tǒng)下安裝英特爾 Arc系列獨立顯卡驅(qū)動以及進(jìn)行AI推理性能測試

    如何在Linux系統(tǒng)下安裝英特爾 Arc系列獨立顯卡驅(qū)動以及進(jìn)行AI推理性能測試

    作者:??周兆靖 ????????目前,英特爾?推出了包括了Arc?家族A770,A750在內(nèi)的多個桌面版本的獨立顯卡(discrete Graphic Processing Unit,簡稱dGPU)供玩家與開發(fā)者進(jìn)行選擇。鑒于很多消費者都是初次體驗Intel?的獨立顯卡,在Linux * 系統(tǒng)下對于顯卡驅(qū)動的下載與安裝并不熟悉,

    2024年02月05日
    瀏覽(57)
  • 在英特爾AI開發(fā)板上用OpenVINO NNCF優(yōu)化YOLOv7,2.15倍性能提升

    在英特爾AI開發(fā)板上用OpenVINO NNCF優(yōu)化YOLOv7,2.15倍性能提升

    作者:康瑤明 英特爾邊緣計算創(chuàng)新大使 YOLO代表“You Only Look Once”,它是一種流行的實時物體檢測算法系列。最初的YOLO物體檢測器于2016年首次發(fā)布。從那時起,YOLO的不同版本和變體被提出,每個版本和變體都顯著提高了性能和效率。YOLO算法作為one-stage目標(biāo)檢測算法最典型的

    2024年01月24日
    瀏覽(28)
  • 微軟首批AI電腦來了!一鍵Copilot帶飛,英特爾酷睿Ultra加持,零售店買不到

    微軟首批AI電腦來了!一鍵Copilot帶飛,英特爾酷睿Ultra加持,零售店買不到

    Surface Pro 10商用版和Surface Laptop 6商用版均起售1199美元。前者配酷睿Ultra U系列芯片,新增AI增強(qiáng)型攝像頭,PC攝像頭首次具有114度超寬視野,改進(jìn)后13英寸LCD顯示屏亮度提高33%;后者攝像頭無超廣角,但搭載的H系列芯片比U系列更強(qiáng)大,大尺寸15英寸版有兩個USB-C接口。 微軟首次

    2024年04月11日
    瀏覽(18)
  • 越小越好: Q8-Chat,在英特爾至強(qiáng) CPU 上體驗高效的生成式 AI

    大語言模型 (LLM) 正在席卷整個機(jī)器學(xué)習(xí)世界。得益于其 transformer 架構(gòu),LLM 擁有從大量非結(jié)構(gòu)化數(shù)據(jù) (如文本、圖像、視頻或音頻) 中學(xué)習(xí)的不可思議的能力。它們在 多種任務(wù)類型 上表現(xiàn)非常出色,無論是文本分類之類的抽取任務(wù) (extractive task) 還是文本摘要和文生圖像之類的

    2024年02月06日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包