Ubuntu 22.04 AI大模型環境配置及常用工具安裝

一、基礎環境準備

1.1 系統準備

建議使用 Ubuntu22.04
以下配置皆以 Ubuntu22.04 系統版本為例

1.2 安裝git

  apt-get update && apt-get install git -y

1.3 安裝 Python 3.9+

建議安裝 3.10】(安裝miniconda或者conda來管理虛擬環境)

  wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && chmod +x Miniconda3-latest-Linux-x86_64.sh && ./Miniconda3-latest-Linux-x86_64.sh && source ~/.bashrc 

1.4 安裝CUDA

目前 Pytorch 官網提示支持 11.8、12.4、12.6【建議 11.8或者 12.4

  # CUDA Toolkit Installer-12.4wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pinsudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda-repo-ubuntu2204-12-4-local_12.4.0-550.54.14-1_amd64.debsudo dpkg -i cuda-repo-ubuntu2204-12-4-local_12.4.0-550.54.14-1_amd64.debsudo cp /var/cuda-repo-ubuntu2204-12-4-local/cuda-*-keyring.gpg /usr/share/keyrings/sudo apt-get updatesudo apt-get -y install cuda-toolkit-12-4# 安裝驅動sudo apt-get install -y cuda-drivers# 設置環境變量(注意cuda安裝的路徑)echo 'export PATH="/usr/local/cuda-12.4/bin${PATH:+:${PATH}}"' >> ~/.bashrcsource ~/.bashrc  # 重新加載配置echo $PATH | grep cuda-12.4 # 驗證 PATHreboot# 重啟后驗證是否可以獲取 nvidia 顯卡信息nvcc --versionnvidia-smi

1.5 安裝CUDNN

下載匹配cuda12.4、ubuntu適用的cudnn包

  wget https://developer.download.nvidia.com/compute/cudnn/9.8.0/local_installers/cudnn-local-repo-ubuntu2204-9.8.0_1.0-1_amd64.debsudo dpkg -i cudnn-local-repo-ubuntu2204-9.8.0_1.0-1_amd64.debsudo cp /var/cudnn-local-repo-ubuntu2204-9.8.0/cudnn-*-keyring.gpg /usr/share/keyrings/sudo apt-get updatesudo apt-get -y install cudnn# 使用以下命令進行查看ldconfig -p | grep cudnn

1.6 安裝Pytorch【可選】

# 創建基礎環境
conda create -n ai python==3.12 -y && conda activate ai
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
# pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126

1.7 創建基礎目錄

  mkdir -p ~/work/ai/models ~/work/ai/datasets ~/work/ai/tools/

二、大模型部署框架

2.1 安裝Ollama【可選】

  • ollama只支持GGUF格式的模型,如果在modelscope
    或者huggingface下載模型,需要注意模型格式(GGUF一般指的是量化后的模型,缺點是模型效果變差,優勢是模型會更小,推理速度會更快,對硬件要求會更低)
  • mac以及windows上是直接下載客戶端
  • ollama一般針對的是個人用戶
  conda create -n ollama python==3.10 -y && conda activate ollamacd ~/work/ai/tools && curl -fsSL https://ollama.com/install.sh | sh# 啟動ollama服務(開啟的端口默認是11434)ollama serve# 列出已下載的模型ollama list# 運行模型(沒有的話會從modelscope下載)ollama run qwen2.5:0.5b

2.2 安裝vLLM【可選】

vLLM 是一個 Python 庫,它包含預編譯的 C++ 和 CUDA (12.1) 二進制文件。
通過 PagedAttention 等技術優化 GPU 內存使用,顯著提升推理速度

  • 推理性能高,適合實時和大規模推理任務
  • 支持分布式推理,適合生產環境
  • 兼容 Hugging Face 的 Transformer 模型

要求:
1.操作系統:Linux
2.Python: 3.8 – 3.12
3.GPU: 計算能力 7.0 或更高(例如,V100、T4、RTX20xx、A100、L4、H100 等)

  conda create -n vllm python=3.10 -y && conda activate vllm  pip install vllm# 運行模型(開啟的端口默認是8000)vllm serve /path/to/model# 顯存不足建議使用以下命令啟動(測試機顯卡為8G 3070ti)# 先強制釋放殘留顯存python -c "import torch; torch.cuda.empty_cache()"# 在進行啟動(以Qwen/Qwen2.5-0.5B-Instruct為例)vllm serve ~/work/ai/models/Qwen/Qwen2.5-0.5B-Instruct \--gpu-memory-utilization 0.95 \--max-model-len 1024 \--block-size 16 \--max-num-seqs 4 \--tensor-parallel-size 1

2.3 安裝LMDeploy【可選】

LMDeploy 是一個高效且友好的 LLMs 模型部署工具箱,功能涵蓋了量化、推理和服務

  • 功能全面,支持從訓練到部署的全流程
  • 提供模型壓縮和加速技術,適合資源受限的場景

要求:
1.操作系統:windows、linux
2.Python: 3.8 – 3.12

  conda create -n lmdeploy python=3.12 -y && conda activate lmdeploypip install lmdeploy partial_json_parser# 運行模型(開啟的端口默認是23333)lmdeploy serve api_server /path/to/model

三、大模型微調框架

3.1 安裝LLaMA-Factory【可選】

  • LLaMA-Factory 推薦使用python3.10
  conda create -n llamafactory python==3.10 -y && conda activate llamafactorycd ~/work/ai/tools && git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git && cd LLaMA-Factory && pip install -e .  # 使用可視化界面微調llamafactory-cli webui
  使用流程1. 下載model2. 下載data/data格式處理3. 開始微調

四、大模型前端框架

4.1 安裝OpenWebui

  • OpenWebui 要求使用python3.11
  conda create -n openwebui python==3.11 -y && conda activate openwebuipip install -U open-webui torch transformers# 運行ollamaollama serve# 運行open-webuiexport HF_ENDPOINT=https://hf-mirror.comexport ENABLE_OLLAMA_API=Trueexport OPENAI_API_BASE_URL=http://127.0.0.1:11434/v1open-webui serve# 啟動瀏覽器(http://localhost:8080)

推薦使用優云智算平臺進行GPU實例部署

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:
http://www.pswp.cn/bicheng/76124.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/76124.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/76124.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

STM32單片機入門學習——第27節: [9-3] USART串口發送串口發送+接收

寫這個文章是用來學習的,記錄一下我的學習過程。希望我能一直堅持下去,我只是一個小白,只是想好好學習,我知道這會很難,但我還是想去做! 本文寫于:2025.04.08 STM32開發板學習——第27節: [9-3] USART串口發送&串口發送接收 前言開發板說…

前端實現docx格式word文件預覽,可以兼容原生、vue2、以及uni-app 項目,詳細步驟。

上一篇記錄了PDF文件預覽功能。這一篇記錄下docx文件預覽。 核心文件 doc.html <script src"./build/polyfill.min.js"></script> <script src"./build/jszip.min.js"></script> <script src"./build/docx-preview.js&…

Java中的ArrayList方法

1. 創建 ArrayList 實例 你可以通過多種方式創建 ArrayList 實例&#xff1a; <JAVA> ArrayList<String> list new ArrayList<>(); // 創建一個空的 ArrayList ArrayList<String> list new ArrayList<>(10); // 創建容量為 10 的 ArrayList …

【anaconda下py】

38 https://repo.anaconda.com/archive/Anaconda3-2020.11-Windows-x86.exe 39 https://repo.anaconda.com/archive/Anaconda3-2022.10-Windows-x86_64.exe 310https://repo.anaconda.com/archive/Anaconda3-2023.03-0-Windows-x86_64.exe 歷史列表Index of /archive 遠程&…

linux--------------進程控制(下)

一、進程等待 1.1 進程等待必要性 子進程退出后&#xff0c;若父進程不管不顧&#xff0c;可能會產生 “僵尸進程”&#xff0c;進而造成內存泄漏。進程一旦變為僵尸狀態&#xff0c;即使使用 kill -9 也無法將其殺死&#xff0c;因為無法殺死一個已死的進程。父進程需要了解…

docker 中跑faster-whisper 教程(1050顯卡)

之前我本地機器運行faster-whisper 會報錯類似 Could not load library libcudnn_ops_infer.so.8github 上也有類似的情況 &#xff1a;https://github.com/SYSTRAN/faster-whisper/issues/516#issuecomment-2785038635 缺少.so.8 文件&#xff0c;我通過以下方式&#xff0c;…

人大金倉數據庫dum文件進行備份數據和恢復數據

邏輯備份命令: sys_dump -U SYSTEM -d problem_dev -Fc -f /db_backup/kingbase/dump/problem_dev/problem_dev20240329.dmp用戶:SYSTEM 數據庫名:problem_dev 格式:自定義格式(-Fc) 輸出文件:/db_backup/kingbase/dump/problem_dev/problem_dev20240329.dmp sys_dump…

Java的Selenium元素定位-xpath

xpath其實就是一個path(路徑)&#xff0c;一個描述頁面元素位置信息的路徑&#xff0c;相當于元素的坐標xpath基于XML文檔樹狀結構&#xff0c;是XML路徑語言&#xff0c;用來查詢xml文檔中的節點。 絕對定位 從根開始找--/(根目錄)/html/body/div[2]/div/form/div[5]/button缺…

python-Leetcode 65.搜索旋轉排序數組

題目&#xff1a; 整數數組nums按升序排列&#xff0c;數組中的值互不相同 在傳遞給函數之前&#xff0c;nums在預先未知的某個小標K上進行了旋轉&#xff0c;使數組變為[nums[k], nums[k1], ..., nums[n-1], nums[0], nums[1], ..., nums[k-1]]&#xff0c;小標從0開始計數。…

學透Spring Boot — 010. 單元測試和Spring Test

系列文章目錄 這是CSDN postnull 博客《學透Spring Boot》系列的一篇&#xff0c;更多文章請移步&#xff1a;Postnull - 學透Spring Boot系列文章 文章目錄 系列文章目錄前言1. 基本概念UT 單元測試TDD 測試驅動開發UT測試框架Mock框架 3. Spring Test為什么要用Spring Test引…

Chrome 135 版本新特性

Chrome 135 版本新特性 一、Chrome 135 版本瀏覽器更新 ** 1. 第三方托管賬戶注冊遷移到 OIDC 授權碼流程** Chrome 135 將賬戶注冊的登錄頁面從營銷網站遷移到動態網站&#xff0c;同時也將 OpenID Connect (OIDC) 的隱式流程遷移到授權碼流程。這樣做的目的是進一步提升第…

Docker Swarm集群搭建與管理全攻略

文章目錄 一、節點準備二、初始化 manager 節點三、管理 swarm 集群中的 worker 節點1、添加 worker 節點2、查看 worker 節點3、刪除 worker 節點 四、管理 swarm 集群服務1、創建服務2、查看服務3、刪除服務 五、管理 swarm 節點服務1、節點標簽管理2、創建服務3、查看服務4、…

離線語音識別 ( 小語種國家都支持)可定制詞組

1產品介紹 離線語音模組采用神經網絡算法&#xff0c;支持語音識別、自學習等功能。運用此模組將 AI 技 術賦能產品&#xff0c;升級改造出語音操控的智能硬件 ( 例如風扇、臺燈、空調、馬桶、按摩椅、運 動相機、行車記錄儀等 ) 。支持全球多種語言識別&#xff0c;如中文…

Docker與VNC的使用

https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc 下載nvc 客戶端 https://downloads.realvnc.com/download/file/viewer.files/VNC-Viewer-7.12.0-Windows.exe 服務端 docker pull dorowu/ubuntu-desktop-lxde-vnc#下載成功 docker pull dorowu/ubuntu-desktop-l…

Linux系統學習Day0——了解和熟悉Linux系統的遠程終端登錄和數據傳輸

一、Windows系統與Linux系統虛擬機通過橋接進行網絡連接 &#xff08;一&#xff09;橋接模式 橋接模式是虛擬機網絡連接的一種常見方式&#xff0c;其核心原理是通過虛擬網卡將Linux虛擬機與宿主機的物理網卡建立橋接關系&#xff0c;使虛擬機能夠直接接入物理網絡。在該模式…

【開題報告+論文+源碼】基于springboot的農貿菜市場租位管理系統的設計與實現

項目背景與意義 隨著信息技術的快速發展和普及&#xff0c;信息化管理已成為各行業提升運營效率和服務質量的重要手段。農貿菜市場作為城市生活的重要組成部分&#xff0c;其管理效率和服務水平直接關系到市民的日常生活體驗。傳統的農貿菜市場租位管理方式往往存在信息不對稱、…

Codecademy—— 交互式編程學習的樂園

一、網站概述 Codecademy 是一家美國在線學習編程知識的網站&#xff0c;它為編程學習者提供了一種全新的學習方式。在如今眾多的編程學習平臺中&#xff0c;Codecademy 憑借其獨特的優勢脫穎而出&#xff0c;吸引了全球數百萬用戶。其目標是幫助更多人輕松學習編程&#xff0…

WEB安全--XSS--DOM破壞

一、前言 繼XSS基礎篇后&#xff0c;我們知道了三種類型的XSS&#xff0c;這篇文章主要針對DOM型XSS的原理進行深入解析。 二、DOM型XSS原理 2.1、什么是DOM 以一個形象的比喻&#xff1a; 網頁就像是一座房子&#xff0c;而 **DOM** 就是這座房子的“藍圖”或者“結構圖”。…

Linux系統遠程操作和程序編譯

Linux系統遠程操作和程序編譯 了解和熟悉Linux系統的遠程終端登錄、遠程圖形桌面訪問、 X圖形窗口訪問和FTP文件傳輸操作 網絡設置和用戶創建&#xff1a; 在虛擬機Ubuntu系統中&#xff0c;將網絡連接設置為“橋接模式”&#xff0c;并配置好IP和網關。確保其他Windows 10系統…

linux開發環境

1.虛擬機環境搭建 在 Ubuntu 系統中&#xff0c;打開&#xff08;如圖中顯示的窗口 &#xff09;常見快捷鍵有&#xff1a; Ctrl Alt T&#xff1a;這是最常用的打開終端的快捷鍵組合 &#xff0c;按下后會快速彈出一個新的終端窗口。 在 VMware 虛擬機環境中&#xff0c;若…