精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用Llama.cpp在CPU上快速的運行LLM

開發 前端
大型語言模型(llm)正變得越來越流行,但是它需要很多的資源,尤其時GPU。在這篇文章中,我們將介紹如何使用Python中的llama.cpp庫在高性能的cpu上運行llm。

大型語言模型(llm)正變得越來越流行,但是它需要很多的資源,尤其時GPU。在這篇文章中,我們將介紹如何使用Python中的llama.cpp庫在高性能的cpu上運行llm。

大型語言模型(llm)正變得越來越流行,但是它們的運行在計算上是非常消耗資源的。有很多研究人員正在為改進這個缺點而努力,比如HuggingFace開發出支持4位和8位的模型加載。但它們也需要GPU才能工作。雖然可以在直接在cpu上運行這些llm,但CPU的性能還無法滿足現有的需求。而Georgi Gerganov最近的工作使llm在高性能cpu上運行成為可能。這要歸功于他的llama.cpp庫,該庫為各種llm提供了高速推理。

原始的llama.cpp庫側重于在shell中本地運行模型。這并沒有為用戶提供很大的靈活性,并且使用戶很難利用大量的python庫來構建應用程序。而最近LangChain的發展使得我可以可以在python中使用llama.cpp。

在這篇文章中,我們將介紹如何在Python中使用llama-cpp-python包使用llama.cpp庫。我們還將介紹如何使用LLaMA -cpp-python庫來運行Vicuna LLM。

llama- pcp -python

pip install llama-cpp-python

更詳細的安裝說明,請參閱llama- pcp -python文檔:https://github.com/abetlen/llama-cpp-python#installation-from-pypi-recommended。

使用LLM和llama-cpp-python

只要語言模型轉換為GGML格式,就可以被llama.cpp加載和使用。而大多數流行的LLM都有可用的GGML版本。

需要注意的重要一點是,在將原始llm轉換為GGML格式時,它們就已被量化過了。量化的好處是在不顯著降低性能的情況下,減少運行這些大型模型所需的內存。例如,在不到4GB的RAM中可以加載大小為13GB的70億個參數模型。

在本文中,我們使用GGML版本的Vicuna-7B,該模型可從HuggingFace下載:https://huggingface.co/CRD716/ggml-vicuna-1.1-quantized。

下載GGML文件并加載LLM

可以使用以下代碼下載模型。該代碼還在嘗試下載文件之前檢查該文件是否已經存在。

import os
 import urllib.request
 
 
 def download_file(file_link, filename):
    # Checks if the file already exists before downloading
    if not os.path.isfile(filename):
        urllib.request.urlretrieve(file_link, filename)
        print("File downloaded successfully.")
    else:
        print("File already exists.")
 
 # Dowloading GGML model from HuggingFace
 ggml_model_path = "https://huggingface.co/CRD716/ggml-vicuna-1.1-quantized/resolve/main/ggml-vicuna-7b-1.1-q4_1.bin"
 filename = "ggml-vicuna-7b-1.1-q4_1.bin"
 
 download_file(ggml_model_path, filename)

下一步是加載模型:

from llama_cpp import Llama
 
 llm = Llama(model_path="ggml-vicuna-7b-1.1-q4_1.bin", n_ctx=512, n_batch=126)

在加載模型時,應該設置兩個重要參數。

n_ctx:用于設置模型的最大上下文大小。默認值是512個token。

上下文大小是輸入提示符中的令牌數量和模型可以生成的令牌最大數量的總和。具有較小上下文大小的模型生成文本的速度比具有較大上下文大小的模型快得多。

n_batch:用于設置在生成文本時要批處理的提示令牌的最大數量。默認值是512個token。

應該仔細設置n_batch參數。降低n_batch有助于加速多線程cpu上的文本生成。但是太少可能會導致文本生成明顯惡化。

使用LLM生成文本

下面的代碼編寫了一個簡單的包裝器函數來使用LLM生成文本。

def generate_text(
    prompt="Who is the CEO of Apple?",
    max_tokens=256,
    temperature=0.1,
    top_p=0.5,
    echo=False,
    stop=["#"],
 ):
    output = llm(
        prompt,
        max_tokens=max_tokens,
        temperature=temperature,
        top_p=top_p,
        echo=echo,
        stop=stop,
    )
    output_text = output["choices"][0]["text"].strip()
    return output_text

llm對象有幾個重要的參數:

prompt:模型的輸入提示。該文本被標記并傳遞給模型。

max_tokens:該參數用于設置模型可以生成的令牌的最大數量。此參數控制文本生成的長度。默認值是128個token。

temperature:溫度,介于0和1之間。較高的值(如0.8)將使輸出更加隨機,而較低的值(如0.2)將使輸出更加集中和確定。缺省值為1。

top_p:溫度采樣的替代方案,稱為核采樣,其中模型考慮具有top_p概率質量的標記的結果。所以0.1意味著只考慮包含前10%概率質量的標記。

echo: 用于控制模型是否返回(回顯)生成文本開頭的模型提示符。

stop:用于停止文本生成的字符串列表。如果模型遇到任何字符串,文本生成將在該標記處停止。用于控制模型幻覺,防止模型產生不必要的文本。

llm對象返回如下形式的字典對象:

{
  "id": "xxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", # text generation id 
  "object": "text_completion",             # object name
  "created": 1679561337,                   # time stamp
  "model": "./models/7B/ggml-model.bin",   # model path
  "choices": [
    {
      "text": "Q: Name the planets in the solar system? A: Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune and Pluto.", # generated text
      "index": 0,
      "logprobs": None,
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 14,       # Number of tokens present in the prompt
    "completion_tokens": 28,   # Number of tokens present in the generated text
    "total_tokens": 42
  }
 }

可以使用output"choices"["text"]從字典對象中提取生成的文本。

使用Vicuna-7B生成文本的示例代碼

import os
 import urllib.request
 from llama_cpp import Llama
 
 
 def download_file(file_link, filename):
    # Checks if the file already exists before downloading
    if not os.path.isfile(filename):
        urllib.request.urlretrieve(file_link, filename)
        print("File downloaded successfully.")
    else:
        print("File already exists.")
 
 
 # Dowloading GGML model from HuggingFace
 ggml_model_path = "https://huggingface.co/CRD716/ggml-vicuna-1.1-quantized/resolve/main/ggml-vicuna-7b-1.1-q4_1.bin"
 filename = "ggml-vicuna-7b-1.1-q4_1.bin"
 
 download_file(ggml_model_path, filename)
 
 
 llm = Llama(model_path="ggml-vicuna-7b-1.1-q4_1.bin", n_ctx=512, n_batch=126)
 
 
 def generate_text(
    prompt="Who is the CEO of Apple?",
    max_tokens=256,
    temperature=0.1,
    top_p=0.5,
    echo=False,
    stop=["#"],
 ):
    output = llm(
        prompt,
        max_tokens=max_tokens,
        temperature=temperature,
        top_p=top_p,
        echo=echo,
        stop=stop,
    )
    output_text = output["choices"][0]["text"].strip()
    return output_text
 
 
 generate_text(
    "Compose an engaging travel blog post about a recent trip to Hawaii, highlighting cultural experiences and must-see attractions.",
    max_tokens=356,
 )

生成的文本如下:

Hawaii is a state located in the United States of America that is known for its beautiful beaches, lush landscapes, and rich culture. It is made up of six islands: Oahu, Maui, Kauai, Lanai, Molokai, and Hawaii (also known as the Big Island). Each island has its own unique attractions and experiences to offer visitors.
 One of the most interesting cultural experiences in Hawaii is visiting a traditional Hawaiian village or ahupuaa. An ahupuaa is a system of land use that was used by ancient Hawaiians to manage their resources sustainably. It consists of a coastal area, a freshwater stream, and the surrounding uplands and forests. Visitors can learn about this traditional way of life at the Polynesian Cultural Center in Oahu or by visiting a traditional Hawaiian village on one of the other islands.
 Another must-see attraction in Hawaii is the Pearl Harbor Memorial. This historic site commemorates the attack on Pearl Harbor on December 7, 1941, which led to the United States' entry into World War II. Visitors can see the USS Arizona Memorial, a memorial that sits above the sunken battleship USS Arizona and provides an overview of the attack. They can also visit other museums and exhibits on the site to learn more about this important event in American history.
 Hawaii is also known for its beautiful beaches and crystal clear waters, which are perfect for swimming, snorkeling, and sunbathing.

總結

在這篇文章中,我們介紹了如何在Python中使用llama.cpp庫和llama-cpp-python包。這些工具支持基于cpu的llm高性能執行。

Llama.cpp幾乎每天都在更新。推理的速度越來越快,社區定期增加對新模型的支持。在Llama.cpp有一個“convert.py”可以幫你將自己的Pytorch模型轉換為ggml格式。

llama.cpp庫和llama-cpp-python包為在cpu上高效運行llm提供了健壯的解決方案。如果您有興趣將llm合并到您的應用程序中,我建議深入的研究一下這個包。

本文源代碼:

https://github.com/awinml/llama-cpp-python-bindings

責任編輯:華軒 來源: DeepHub IMBA
相關推薦

2025-01-20 07:58:51

2024-08-13 14:20:00

模型數據

2023-08-17 16:07:16

模型優化

2024-03-26 08:00:00

LLMVLMRaspberry

2025-04-29 07:47:27

2023-12-19 16:12:40

GPT-4AI聊天機器人人工智能

2023-08-01 13:31:18

模型Alpacaicuna

2013-12-18 11:04:57

CPU雙核

2020-04-02 18:30:28

PythonGitHub編程語言

2020-04-02 16:02:44

PythonGithub博客

2023-04-12 15:37:31

Linux系統CPU

2018-12-14 08:29:56

CPU編程x86

2014-12-17 15:18:27

LinuxMonoWindows

2024-12-16 07:00:00

2025-04-08 03:22:00

2025-01-08 08:00:00

2024-05-15 08:42:19

Phi-3LLM機器學習

2022-01-18 17:57:21

PodmanLinux容器

2022-06-30 13:54:16

BottlesLinuxWindows

2015-10-14 10:02:33

ClojureScri Android
點贊
收藏

51CTO技術棧公眾號

国产一级爱c视频| 日韩精品在线视频观看| 欧美在线一二三区| 国产免费www| 亚洲国产一区二区在线观看| 欧美成人性战久久| 欧美a级黄色大片| 人妻va精品va欧美va| 久久一区国产| 日韩在线www| 亚洲精品视频免费观看| 色老头一区二区三区在线观看| 日本欧美黄色片| 国产又大又硬又粗| aiai在线| 成人不卡免费av| 久久99热精品这里久久精品| 国产5g成人5g天天爽| av在线播放资源| 日韩理论片在线| 欧美国产二区| 欧美男人天堂网| 亚洲黄色成人| 日本欧美一区二区| 日韩成人在线视频| 奇米精品一区二区三区| 一级aaa毛片| 日本道不卡免费一区| 亚洲精品成人久久久| 人妻互换免费中文字幕| 国产精品麻豆一区二区三区| 国产69精品久久777的优势| 国产精品嫩草影院久久久| 日韩女同强女同hd| 欧美ab在线视频| 3atv一区二区三区| 一卡二卡3卡四卡高清精品视频| 中文字幕日日夜夜| 模特精品在线| 日日噜噜噜夜夜爽亚洲精品 | 樱桃成人精品视频在线播放| 中文字幕精品一区久久久久| 久久国产精品影院| 久久a爱视频| 精品久久久久久久久久久久久久久 | 2019中文字幕免费视频| 久久婷婷国产91天堂综合精品| 在线免费看av| 国产亚洲美州欧州综合国| 久久国产精品久久久久| 蜜桃av免费在线观看| 亚洲一区二区三区中文字幕在线观看| 精品国产成人在线| 缅甸午夜性猛交xxxx| 992tv免费直播在线观看| 久久久久久亚洲综合影院红桃| 国产欧美va欧美va香蕉在线| 久久午夜鲁丝片| 日韩福利视频导航| 国产成人亚洲综合91| 欧美成人手机视频| 国产精品观看| 久久久在线视频| 69夜色精品国产69乱| 亚洲高清影视| 久久久久久久网站| 日本一区二区免费在线观看| 国产精品久久久久久久| 日韩精品一区二区三区视频在线观看 | 麻豆精品免费视频| 欧美日韩xxxx| 最近免费中文字幕视频2019| 无码人妻精品中文字幕| 欧美精品一卡| 51精品视频一区二区三区| 国模私拍视频在线观看| 国产精品久久久久久久久久辛辛 | 超碰在线97免费| 久久69成人| 色素色在线综合| 性猛交ⅹ×××乱大交| 日韩一区二区三区精品视频第3页| 欧洲色大大久久| 欧美二区三区在线| yjizz视频网站在线播放| 亚洲婷婷在线视频| 一区二区三区电影| av在线中文| 国产视频一区二区在线观看| 中文字幕久久一区| gratisvideos另类灌满| 91搞黄在线观看| 香蕉视频xxxx| 乱中年女人伦av一区二区| 国产香蕉97碰碰久久人人| 在线观看av中文字幕| 在线高清欧美| 亚洲国产精品成人av| 欧美动漫一区二区| 永久免费未视频| 精品av久久久久电影| 国产精品久久久久久网站 | 精品国产乱码一区二区三 | 国产精品片aa在线观看| 欧美日韩激情小视频| 国产视频精品xxxx| 欧美日韩黄色一级片| wwwav在线| 欧美日韩激情小视频| www.久久av.com| 国产精品色呦| 亚洲人成电影网站| 丁香六月激情综合| 在线成人黄色| 91中文字幕在线观看| 懂色av中文在线| 精品久久久久久久久久久久| 免费欧美一级片| 粉嫩的18在线观看极品精品| 日韩在线观看网站| 亚洲婷婷综合网| 日本不卡免费在线视频| 精品综合在线| 青草在线视频在线观看| 欧美日韩在线三区| 在线免费观看麻豆| 国产精品视区| 国产一区二区三区四区hd| 2020国产在线视频| 欧美男男青年gay1069videost| 日本黄色www| 国产精品久久久久久麻豆一区软件| 蜜臀久久99精品久久久久久宅男 | 水蜜桃久久夜色精品一区| 欧美精品中文字幕一区| 日本va欧美va国产激情| 国产传媒日韩欧美成人| 欧美日本韩国在线| 精品众筹模特私拍视频| 亚洲第一国产精品| 国产亚洲欧美精品久久久www | 91中文精品字幕在线视频| av网页在线| 欧洲中文字幕精品| 午夜在线观看一区| 久久精品导航| 欧美日韩一区二区视频在线| 最近在线中文字幕| 亚洲人成电影网站色| 日本欧美www| 国产精品久久久久久久午夜片| 人人妻人人澡人人爽欧美一区 | 92国产精品视频| 青梅竹马是消防员在线| 九九精品视频在线看| 日韩欧美视频一区二区三区四区 | 欧美视频网址| 国产精品黄色影片导航在线观看| 亚洲av无码一区二区三区性色| 视频一区免费在线观看| 欧美日韩一区二| 五月激情久久| 日韩在线观看精品| chinese国产精品| 久久精品一区二区三区av| 校园春色 亚洲色图| 久久综合国产| 国产成人成网站在线播放青青| av大全在线免费看| 3d成人动漫网站| 久久久久久久黄色| 91色porny蝌蚪| 毛片毛片毛片毛片毛片毛片毛片毛片毛片| 超碰成人免费| 超碰91人人草人人干| 亚洲精品.www| 一本到高清视频免费精品| 国产视频不卡在线| 福利一区二区在线| 欧美污视频网站| 91综合在线| 国产麻豆日韩| yiren22亚洲综合| 亚洲一区av在线播放| 91久久久久国产一区二区| 国产日韩av一区二区| www.午夜av| 一本综合精品| 久久网站最新地址| 日本一区二区三区免费观看| 51精品在线| 在线电影av不卡网址| 国产激情久久久久久熟女老人av| 亚洲婷婷综合久久一本伊一区| 波多结衣在线观看| 欧美永久精品| 青青草原亚洲| 91九色鹿精品国产综合久久香蕉| 欧美裸体xxxx极品少妇| 女人偷人在线视频| 日韩欧美另类在线| 国产精品第六页| 亚洲大片免费看| www.99re6| 国产夜色精品一区二区av| 欧美一级大片免费看| 狂野欧美一区| 久久艹国产精品| 欧美激情偷拍自拍| 日韩av影视| 欧美黄色影院| av噜噜色噜噜久久| 久久69成人| 色综合视频一区中文字幕| 亚洲国产视频一区二区三区| 欧美午夜影院一区| www.毛片com| 欧美激情一区不卡| 可以免费在线看黄的网站| 欧美激情无毛| 一本一道久久久a久久久精品91 | 在线亚洲精品| 国产在线拍揄自揄拍无码| 精品国产1区| 久久天天狠狠| 欧亚av在线| 免费97视频在线精品国自产拍| 人妻无码中文字幕免费视频蜜桃| 黑人巨大精品欧美一区二区一视频| 免费观看a级片| 久久久精品五月天| 日本wwwcom| 欧美女激情福利| 国产a级片免费看| 久久精品国产68国产精品亚洲| 91青青草免费在线看| 日韩欧美三区| 国产玖玖精品视频| 欧美日韩免费电影| 国产精品日韩欧美大师| 日本动漫同人动漫在线观看| zzijzzij亚洲日本成熟少妇| 香蕉视频在线免费看| 中文字幕欧美视频在线| 波多野结衣在线影院| 这里只有视频精品| 在线免费看av| 久久久av免费| 91蜜桃在线视频| 欧美大片va欧美在线播放| 亚洲综合伊人久久大杳蕉| 久久91精品国产91久久跳| 国产高清一区在线观看| 亚洲性生活视频在线观看| 国产在线一二三| 中文国产成人精品| 午夜免费播放观看在线视频| 久久久精品国产| 国产尤物视频在线| 日韩中文字幕不卡视频| 蜜芽在线免费观看| 欧美激情免费在线| 极品在线视频| 国产精品久久久久99| 国产高清自产拍av在线| 超碰97人人做人人爱少妇| 日韩123区| 欧美亚洲第一页| 日韩欧美2区| 91色精品视频在线| 国产精品中文字幕制服诱惑| 91探花福利精品国产自产在线| 亚洲成人av观看| 欧美孕妇与黑人孕交| 亚洲综合av一区二区三区| 91在线视频精品| 鲁大师精品99久久久| 亚洲成人第一| japanese国产精品| 国产a级片免费看| 亚洲精选国产| 五月婷婷丁香色| 丰满亚洲少妇av| 国产又粗又猛又爽又黄av| 1000精品久久久久久久久| 国产乡下妇女做爰视频| 亚洲制服欧美中文字幕中文字幕| 小泽玛利亚一区| 精品国产成人av| 亚洲第一在线播放| 欧美一区日本一区韩国一区| 色婷婷av一区二区三区之e本道| 亚洲第一精品久久忘忧草社区| 蜜臀av免费在线观看| 夜夜嗨av一区二区三区免费区 | 久久久久久久综合日本| 欧美风情第一页| 亚洲男人天堂av网| 天天干天天操天天爱| 日韩视频免费直播| 九九九伊在人线综合| 欧美激情久久久| 99精品国自产在线| 国产一区视频观看| 亚洲人体av| 日本新janpanese乱熟| 不卡视频在线观看| tube国产麻豆| 欧美在线免费视屏| av女名字大全列表| 欧美猛交ⅹxxx乱大交视频| 草民电影神马电影一区二区| 国内精品久久久久久久果冻传媒| 女一区二区三区| 日韩不卡一二区| 99国产精品99久久久久久粉嫩| 波多野结衣家庭教师在线| 国产一区二区精品久久| 亚洲精品鲁一鲁一区二区三区| 成人爽a毛片一区二区免费| 精品国产国产综合精品| 在线视频你懂得一区二区三区| 在线免费观看av片| 亚洲精选中文字幕| 国产精品yjizz视频网| 91久久久一线二线三线品牌| 欧美高清视频在线观看mv| 国产精品免费成人| 91丨porny丨最新| 97人人澡人人爽人人模亚洲| 日韩免费在线观看| 国产网站在线免费观看| 久久在线视频在线| gogo高清午夜人体在线| 91中文字幕一区| 综合av在线| 污视频在线观看免费网站| 综合久久给合久久狠狠狠97色| 日本在线观看视频网站| 精品国产一区二区三区忘忧草| 国产区av在线| 国产成人一区二区三区| 亚洲亚洲一区二区三区| 男人j进女人j| 国产成人av资源| 国产第100页| 亚洲精品99久久久久中文字幕| 欧美成人三区| 欧美孕妇毛茸茸xxxx| 免费精品国产的网站免费观看| 青青草综合在线| 成人av在线资源网| 国产成人无码一区二区三区在线| 制服丝袜中文字幕亚洲| 成人av免费| 国产精品xxx在线观看www| 亚洲国产精品一区| a视频免费观看| 在线日韩国产精品| 91看片在线观看| 91精品国产综合久久久久久丝袜| 国产最新精品| xxxx在线免费观看| 亚洲已满18点击进入久久| 少妇av在线播放| 久久久久久久久亚洲| 四虎884aa成人精品最新| 性生交免费视频| 亚洲乱码国产乱码精品精的特点| 中文字幕第三页| 亚洲欧美制服第一页| 91久久久久久白丝白浆欲热蜜臀| 欧美视频小说| 久久国产精品99精品国产 | 久久免费看少妇高潮| 国产无码精品在线播放| 亚洲欧美中文另类| va天堂va亚洲va影视| 日韩伦理在线免费观看| 国产成人精品影院| 在线视频一区二区三区四区| 最新91在线视频| 高清精品视频| 国产九色porny| 国产欧美精品国产国产专区 | av在线天堂| 91九色在线观看| 日韩专区欧美专区| 久草国产在线视频| 欧美剧情电影在线观看完整版免费励志电影 | av一级久久| 内射国产内射夫妻免费频道| 国产精品初高中害羞小美女文| 在线观看av大片| 久久久久亚洲精品成人网小说| 国产精品成人自拍| 色一情一区二区| 日韩欧美成人网| 欧美xxxx少妇| 正在播放一区|