自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何使用Ollama在個(gè)人計(jì)算機(jī)上運(yùn)行開源LLM

譯文 精選
人工智能
如今,AI工具已變得司空見慣,你可能每天都在使用它們。保護(hù)你的個(gè)人和商業(yè)機(jī)密數(shù)據(jù)的關(guān)鍵途徑之一,就是在自己的基礎(chǔ)配置上運(yùn)行自己的AI。

譯者 | 劉濤

審校 | 重樓

如今,AI工具已變得司空見慣,可能每天都在使用它們。保護(hù)的個(gè)人和商業(yè)機(jī)密數(shù)據(jù)的關(guān)鍵途徑之一,就是在自己的基礎(chǔ)配置上運(yùn)行自己的AI。

本指南將向介紹如何在自己的計(jì)算機(jī)上托管一個(gè)開源大語言模型(LLM)。這樣做有助于確保你不會(huì)通過基于云的AI解決方案將數(shù)據(jù)泄露給第三方公司。

前提條件

  • 一定的AI知識(shí):我將在文章中介紹與我們操作相關(guān)的主要概念,具備一些關(guān)于大語言模型(LLMs)的基礎(chǔ)知識(shí)將有助于更好地理解這些內(nèi)容。不過,即使一無所知,也不用擔(dān)心——仍然會(huì)發(fā)現(xiàn)這很有趣。
  • 一臺(tái)性能不錯(cuò)的電腦:系統(tǒng)至少需要配備16GB的內(nèi)存、多核CPU,以及為獲得最佳性能而配備的GPU。(如果的電腦配置較低,操作可能會(huì)相當(dāng)緩慢)
  • 網(wǎng)絡(luò)連接:需要網(wǎng)絡(luò)連接來下載和安裝模型。
  • 時(shí)間和耐心:由于下載、安裝和配置過程可能較為復(fù)雜且耗時(shí),因此需要具備足夠的時(shí)間和耐心來完成這些步驟。

什么是LLM?

大語言模型(LLMs),即Large Language Models,是先進(jìn)的人工智能系統(tǒng),經(jīng)過訓(xùn)練能夠理解并生成自然的人類可讀語言。它們利用算法來處理和理解自然語言,并通過大量信息的訓(xùn)練來掌握數(shù)據(jù)中的模式和關(guān)系。

像OpenAI、Anthropic和Meta這樣的公司已經(jīng)開發(fā)出了LLMs,可以利用它們來執(zhí)行諸如內(nèi)容生成、代碼分析、旅行規(guī)劃等任務(wù)。

云端AI與自托管AI的比較

在決定是否在本地托管AI模型之前,了解這種模式與云端AI解決方案的差異至關(guān)重要。這兩種選項(xiàng)各有優(yōu)勢(shì),適用于不同的應(yīng)用場(chǎng)景。

云端AI解決方案

這些服務(wù)由OpenAI、Google或AWS等提供商托管和維護(hù)。例如,OpenAI的GPT模型、Google Bard和AWS SageMaker等。可以通過互聯(lián)網(wǎng)使用API或其端點(diǎn)訪問這些模型。

關(guān)鍵特性:

  • 易用性:設(shè)置簡(jiǎn)便,只需通過API集成或通過網(wǎng)頁訪問即可。
  • 可擴(kuò)展性:由于由公司管理,因此能更好地處理大量工作負(fù)載和并發(fā)請(qǐng)求。
  • 前沿模型:云端通常提供最新且功能最強(qiáng)大的模型。
  • 數(shù)據(jù)依賴性:的數(shù)據(jù)會(huì)被發(fā)送到云端進(jìn)行處理,這可能會(huì)引發(fā)隱私擔(dān)憂。
  • 持續(xù)成本:盡管一些模型是免費(fèi)的,但其他大部分模型通常會(huì)根據(jù)請(qǐng)求或使用情況(如更強(qiáng)大或最新的模型)進(jìn)行收費(fèi),從而成為一項(xiàng)運(yùn)營(yíng)成本。

自托管AI

采用這種模式可以在自己的硬件上運(yùn)行模型??梢允褂肙llama等工具下載并托管Llama 2、GPT-J或Mistral等開源LLM。

關(guān)鍵特性:

  • 數(shù)據(jù)隱私:的數(shù)據(jù)保留在基礎(chǔ)配置上,使能夠?qū)ζ溥M(jìn)行完全控制。
  • 長(zhǎng)期成本效益:雖然需要前期投資硬件,但可以避免重復(fù)的API費(fèi)用。
  • 可定制性:可以對(duì)模型進(jìn)行微調(diào),使其適應(yīng)特定需求。
  • 技術(shù)要求:需要功能強(qiáng)大的硬件、設(shè)置工作和技術(shù)知識(shí)。
  • 可擴(kuò)展性有限:最適合的應(yīng)用場(chǎng)景是個(gè)人或小規(guī)模使用。

你應(yīng)該選擇哪種方案?

如果需要快速且可擴(kuò)展地訪問高級(jí)模型,并且不介意將數(shù)據(jù)與第三方共享,那么云端AI解決方案可能是更好的選擇。另一方面,如果數(shù)據(jù)安全、定制需求或成本節(jié)約是的首要考慮因素,那么在本地托管LLM(大語言模型)可能是更好的選擇。

如何在你的機(jī)器上本地運(yùn)行LLM(大語言模型)?

有多種解決方案可以讓你在自有的基礎(chǔ)配置上運(yùn)行特定的開源LLM。

盡管大多數(shù)本地托管解決方案都聚焦于開源LLM,如Llama 2、GPT-J或Mistral,但根據(jù)使用條款,某些專有或授權(quán)模型也可以在本地運(yùn)行。

  • 開源模型:這些模型可免費(fèi)獲取,無需許可限制即可下載、修改和托管。例如,Llama 2(由Meta開發(fā))、GPT-J和Mistral等。
  • 提供本地選項(xiàng)的專有模型:有些公司可能會(huì)提供其模型的可下載版本以供離線使用,但這通常需要特定的許可或硬件。例如,英偉達(dá)(NVIDIA的NeMo框架提供了在其基礎(chǔ)配置上托管模型的工具,而一些較小的公司可能會(huì)為企業(yè)客戶提供其專有LLM的可下載版本。

請(qǐng)記住,如果要運(yùn)行自己的LLM,將需要一臺(tái)功能強(qiáng)大的計(jì)算機(jī)(配備良好的GPU和CPU)。如果的計(jì)算機(jī)性能不夠強(qiáng)大,可以嘗試運(yùn)行更小、更輕量級(jí)的模型,盡管這可能會(huì)降低系統(tǒng)的運(yùn)行速度。

以下是我為本指南使用的一個(gè)合適系統(tǒng)配置的示例:

  • CPU:Intel Core i7 13700HX
  • 內(nèi)存:16GB DDR5
  • 存儲(chǔ):512GB SSD
  • 顯卡:Nvidia RTX 3050(6GB顯存)在本指南中,將使用Ollama來下載并在的電腦上運(yùn)行AI模型。

什么是Ollama?

Ollama是一款旨在簡(jiǎn)化直接在計(jì)算機(jī)上運(yùn)行開源大型語言模型(LLMs)過程的工具。它充當(dāng)本地模型管理器和運(yùn)行時(shí)環(huán)境,負(fù)責(zé)從下載模型文件到設(shè)置可與模型交互的本地環(huán)境等一切事務(wù)。

Ollama可幫助完成以下任務(wù):

  • 管理模型:Ollama提供了一種簡(jiǎn)單的方法來瀏覽、下載和管理不同的開源模型。可以在其官方網(wǎng)站上查看支持的模型列表。
  • 輕松部署:只需幾條命令,就可以設(shè)置一個(gè)功能齊全的環(huán)境來運(yùn)行和與LLMs進(jìn)行交互。
  • 本地托管:模型完全在基礎(chǔ)配置上運(yùn)行,確保的數(shù)據(jù)保持私密和安全。
  • 集成不同模型:它支持使用Python或JavaScript等編程語言將模型集成到自己的項(xiàng)目中。

通過使用Ollama,無需深入了解設(shè)置機(jī)器學(xué)習(xí)框架或管理依賴項(xiàng)的復(fù)雜性。它簡(jiǎn)化了該過程,特別是對(duì)于那些希望嘗試LLMs而無需深厚技術(shù)背景的人來說。

可以通過其網(wǎng)站上的“下載”按鈕非常方便地安裝Ollama。

如何使用Ollama安裝/運(yùn)行你的模型

在安裝完Ollama之后,請(qǐng)遵循以下步驟來安裝并使用的模型:

1.開的瀏覽器,并訪問localhost:11434以確保Ollama正在運(yùn)行。

2.接下來,打開命令提示符,并輸入ollama run <model_name>。在這里,將<model_name>替換為Ollama所支持的想要運(yùn)行的模型名稱,例如Meta的Llama2或Mistral。

3.等待安裝過程完成。

4.在出現(xiàn)>>> Send a message (/? for help)的提示符時(shí),向AI輸入一條消息,并按下Enter鍵。

已經(jīng)成功安裝了模型,現(xiàn)在可以與它進(jìn)行聊天了!

用新安裝的模型創(chuàng)建聊天機(jī)器人

個(gè)人的基礎(chǔ)架構(gòu)中運(yùn)行開源模型,可以隨意更改和使用。甚至可以利用Python、JavaScript和其他語言中的ollama模塊,為個(gè)人應(yīng)用而創(chuàng)建本地聊天機(jī)器人或應(yīng)用程序。

現(xiàn)在,讓我們來了解一下如何在幾分鐘內(nèi)使用它在Python中構(gòu)建一個(gè)聊天機(jī)器人。

步驟1:安裝Python

如果尚未安裝Python,請(qǐng)從Python官方網(wǎng)站下載并安裝。為確保最佳兼容性,請(qǐng)避免使用最新的Python版本,因?yàn)槟承┠K可能尚未完全支持它。相反,請(qǐng)選擇最新的穩(wěn)定版本(通常是最新發(fā)布版本之前的版本),以確保所有必需模塊都能順暢運(yùn)行。

在安裝Python時(shí),請(qǐng)確保為安裝程序提供管理員權(quán)限,并勾選“添加到PATH”復(fù)選框。

步驟2:安裝Ollama

接下來,你需要在保存文件的目錄中打開一個(gè)新的終端窗口,在文件資源管理器中打開該目錄,右鍵單擊后選擇“在終端中打開”(如果使用的是Windows 10或更早版本,則點(diǎn)擊“使用命令提示符或PowerShell打開”)。

輸入pip install ollama并按Enter鍵。這將為Python安裝ollama模塊,以便可以從Python訪問模型以及該工具提供的函數(shù)。請(qǐng)等待該過程完成。

步驟3:添加Python代碼

的文件系統(tǒng)中容易訪問的位置創(chuàng)建一個(gè)帶有.py擴(kuò)展名的Python文件。使用喜歡的代碼編輯器打開該文件,如果沒有安裝代碼編輯器,可以使用瀏覽器中的VS Code在線版本。

現(xiàn)在,在的Python文件中添加以下代碼:

from ollama import chat

def stream_response(user_input):
 """Stream the response from the chat model and display it in the CLI."""
 try:
 print("\nAI: ", end="", flush=True)
 stream = chat(model='llama2', messages=[{'role': 'user', 'content': user_input}], stream=True)
 for chunk in stream:
 content = chunk['message']['content']
 print(content, end='', flush=True)
 print() 
 except Exception as e:
 print(f"\nError: {str(e)}")

def main():
 print("Welcome to your CLI AI Chatbot! Type 'exit' to quit.\n")
 while True:
 user_input = input("You: ")
 if user_input.lower() in {"exit", "quit"}:
 print("Goodbye!")
 break
 stream_response(user_input)
if __name__ == "__main__":
main()

如果不理解Python代碼,這里基本上解釋了它的功能:

  • 首先,從ollama庫中導(dǎo)入聊天模塊,該模塊包含與計(jì)算機(jī)上的Ollama應(yīng)用程序集成的預(yù)寫代碼。
  • 然后聲明一個(gè)stream_response函數(shù),該函數(shù)將的提示傳遞給指定的模型,并以流式傳輸(即生成時(shí)逐塊提供響應(yīng))的方式將實(shí)時(shí)響應(yīng)返回給。
  • 接著在主函數(shù)中,向終端打印歡迎文本。它獲取用戶輸入,并將其傳遞給stream_response函數(shù),所有這些都被包裹在一個(gè)while True或無限循環(huán)中。這允許我們向AI提問,而不會(huì)中斷執(zhí)行過程。我們還指定,如果用戶輸入包含“exit”或“quit”,代碼將停止執(zhí)行。

第4步:編寫提示

現(xiàn)在回到終端窗口,輸入python filename.py,將filename替換為設(shè)置的實(shí)際文件名,然后按Enter鍵。

應(yīng)該會(huì)看到一個(gè)提示說“You:”,就像我們?cè)诖a中提到的那樣。輸入的提示并按Enter鍵。應(yīng)該能看到AI響應(yīng)正在被流式傳輸。要停止執(zhí)行,請(qǐng)輸入提示“exit”,或關(guān)閉終端窗口。

甚至可以安裝JavaScript或其他支持語言的模塊,并在的代碼中集成AI。請(qǐng)隨意查閱Ollama官方文檔,了解可以使用AI模型編寫什么代碼。

如何通過微調(diào)自定義模型

什么是微調(diào)?

微調(diào)是指將一個(gè)預(yù)訓(xùn)練的語言模型在特定且自定義的數(shù)據(jù)集上進(jìn)行進(jìn)一步訓(xùn)練,以滿足特定需求的過程。雖然大型語言模型(LLMs)已經(jīng)在大規(guī)模數(shù)據(jù)集上進(jìn)行了訓(xùn)練,但它們可能并不總是完全符合的需求,這時(shí)可以通過微調(diào)讓模型更適合的特定用例。

如何微調(diào)模型

微調(diào)模型需要以下要素:

  • 預(yù)訓(xùn)練模型:建議從強(qiáng)大的開源LLM開始,如LLaMA、Mistral或Falcon。
  • 優(yōu)質(zhì)數(shù)據(jù)集:數(shù)據(jù)集是用于訓(xùn)練、測(cè)試或評(píng)估機(jī)器學(xué)習(xí)模型(包括LLMs)的數(shù)據(jù)集合。數(shù)據(jù)集的質(zhì)量和相關(guān)性直接影響模型在給定任務(wù)上的表現(xiàn)。請(qǐng)使用與領(lǐng)域或任務(wù)相關(guān)的數(shù)據(jù)集。例如,如果希望AI撰寫博客文章,那么就用它訓(xùn)練高質(zhì)量博客內(nèi)容。
  • 充足的資源:微調(diào)涉及重新訓(xùn)練模型,這需要大量的計(jì)算資源(最好是配有強(qiáng)大GPU的計(jì)算機(jī))。
    可以使用多種工具來微調(diào)你的模型。Unsloth這樣一個(gè)快速選項(xiàng),可用于使用任何數(shù)據(jù)集微調(diào)模型。

自托管LLMs的好處是什么?

如上所述,自托管LLMs有多種原因。簡(jiǎn)而言之,以下是其中一些主要好處:

  • 增強(qiáng)的數(shù)據(jù)隱私和安全:因?yàn)?/span>的數(shù)據(jù)不會(huì)離開的計(jì)算機(jī),可以完全控制它。
  • 節(jié)省成本:無需定期支付API訂閱費(fèi)用。相反,這是一次性付費(fèi),足夠獲得強(qiáng)大的基礎(chǔ)配置,從而在長(zhǎng)期內(nèi)幫助運(yùn)行。
  • 高度可定制性:可以通過微調(diào)或在自己的數(shù)據(jù)集上訓(xùn)練來根據(jù)特定需求定制模型。
  • 更低的延遲

何時(shí)不應(yīng)使用自托管AI?

出于多種原因,自托管AI可能并不適合。首先,或許不具備運(yùn)行模型所需的系統(tǒng)資源,或者原也無法對(duì)系統(tǒng)進(jìn)行升級(jí)。

其次,可能缺乏設(shè)置自身模型以及對(duì)其進(jìn)行微調(diào)所必需的技術(shù)知識(shí),亦或沒有足夠的時(shí)間投入其中。雖然這并非難以完成之事,但確實(shí)需要一些背景知識(shí)和特定技能。如果了解如何排除可能出現(xiàn)的錯(cuò)誤,這也會(huì)成為一個(gè)棘手的問題。

此外,如果需要模型全天候不間斷運(yùn)行,而可能缺乏處理其基礎(chǔ)配置的能力

上述這些問題并非無法解決,但它們很可能會(huì)對(duì)在選擇使用基于云的解決方案還是托管自己的模型這一決策上產(chǎn)生影響。

結(jié)論

如果高度重視數(shù)據(jù)隱私、成本效益以及定制化,那么自托管大型語言模型(LLMs)或許會(huì)帶來顛覆性的變化。

諸如Ollama之類的工具,使得將強(qiáng)大的AI模型部署到的個(gè)人基礎(chǔ)配置上變得前所未有的簡(jiǎn)單。盡管自行托管也面臨一些挑戰(zhàn),但它能讓掌控自己的數(shù)據(jù),并靈活地根據(jù)需求調(diào)整模型。

只是在決定采用這種方式之前,請(qǐng)務(wù)必評(píng)估的技術(shù)能力、硬件資源和項(xiàng)目需求。倘若需要可靠性、可擴(kuò)展性以及快速訪問前沿功能的能力,那么基于云的大型語言模型或許仍然是更優(yōu)的選擇。

如果喜歡這篇文章,千萬別忘了表達(dá)的支持,并在X平臺(tái)和LinkedIn上關(guān)注我,以便與我保持聯(lián)系。此外,我還會(huì)在YouTube上發(fā)布簡(jiǎn)短但信息豐富的技術(shù)內(nèi)容,別忘了查看我的視頻。

譯者介紹

劉濤,51CTO社區(qū)編輯,某大型央企系統(tǒng)上線檢測(cè)管控負(fù)責(zé)人。

原文標(biāo)題:How to Run Open Source LLMs on Your Own Computer Using Ollama,作者:Krishna Sarathi Ghosh

責(zé)任編輯:華軒 來源: 51CTO
相關(guān)推薦

2009-04-29 15:57:53

2024-06-04 12:59:41

2019-03-18 10:30:10

量子芯片網(wǎng)絡(luò)

2021-08-04 15:19:39

量子計(jì)算計(jì)算機(jī)量子軟件

2025-03-10 05:00:00

2021-11-04 05:46:20

Windows 11內(nèi)置應(yīng)用程序微軟

2009-11-03 22:38:11

安全數(shù)據(jù)

2009-02-18 22:27:45

限制域中賬戶計(jì)算機(jī)腳本

2021-03-30 14:11:42

機(jī)器學(xué)習(xí)人工智能計(jì)算機(jī)

2021-05-18 16:07:59

Windows 10Windows微軟

2016-11-24 08:59:10

LinuxTOP500計(jì)算機(jī)

2024-12-12 08:26:50

AI模型LLM大語言模型

2021-10-09 10:17:25

計(jì)算機(jī)互聯(lián)網(wǎng) 技術(shù)

2009-08-13 11:00:09

WindowsLinuxlinux操作系統(tǒng)

2022-05-04 23:36:51

Windows 10微軟操作系統(tǒng)

2021-04-24 20:53:04

Linux發(fā)行版

2021-05-14 11:20:09

Linux計(jì)算機(jī)發(fā)行版

2011-02-16 09:06:51

SUSE LinuxIBMWatson

2021-11-19 08:00:00

操作系統(tǒng)安卓應(yīng)用程序

2018-07-09 14:30:32

Windows 10WindowsHTTP錯(cuò)誤
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)