Ubuntu AI开发环境全栈指南:30分钟搞定所有工具安装

文章目录

一、基础环境准备

1.1 系统准备

Ubuntu 镜像下载建议使用清华大学开源软件镜像站

版本类型推荐版本下载链接
稳定版Ubuntu 22.04清华镜像源
尝鲜版Ubuntu 24.04清华镜像源

1.2 核心组件安装

1.2.1 Git
apt-get update && apt-get install git -y
1.2.2 Miniconda

使用 miniconda 来管理虚拟环境

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.3 GPU环境配置

1.3.1 CUDA安装(多版本选择)

CUDA 版本选择,建议使用 11.8 、12.4【稳定】、12.6【尝鲜】版本

1.3.1.1 Ubuntu22.04 安装 12.4 版本【稳定】
# CUDA Toolkit Installer-12.4
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget 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.deb
sudo dpkg -i cuda-repo-ubuntu2204-12-4-local_12.4.0-550.54.14-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-12-4-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-4
1.3.1.2 Ubuntu 24.04 安装 12.6 版本【尝鲜】
# CUDA Toolkit Installer-12.6
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-ubuntu2404.pin
sudo mv cuda-ubuntu2404.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.6.3/local_installers/cuda-repo-ubuntu2404-12-6-local_12.6.3-560.35.05-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2404-12-6-local_12.6.3-560.35.05-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2404-12-6-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-6
1.3.1.3 安装驱动以及设置环境变量
# 安装驱动
sudo apt-get install -y cuda-drivers

# 设置环境变量(注意cuda安装的路径),根据自己实际安装的版本
echo 'export PATH="/usr/local/cuda-12.4/bin${PATH:+:${PATH}}"' >> ~/.bashrc
echo 'export PATH="/usr/local/cuda-12.6/bin${PATH:+:${PATH}}"' >> ~/.bashrc
# 重新加载配置
source ~/.bashrc
# 验证 PATH,根据自己实际安装的版本
echo $PATH | grep cuda-12.4
echo $PATH | grep cuda-12.6

# 重启
reboot
1.3.1.4 环境验证
# 重启后验证是否可以获取 nvidia 显卡信息
nvcc --version
nvidia-smi
1.3.2 CUDNN安装

CUDNN 下载需要匹配 cuda 版本以及 ubuntu 系统版本

# Ubuntu22.04选择安装
wget https://developer.download.nvidia.com/compute/cudnn/9.8.0/local_installers/cudnn-local-repo-ubuntu2204-9.8.0_1.0-1_amd64.deb
sudo dpkg -i cudnn-local-repo-ubuntu2204-9.8.0_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-ubuntu2204-9.8.0/cudnn-*-keyring.gpg /usr/share/keyrings/

# Ubuntu24.04选择安装
wget https://developer.download.nvidia.com/compute/cudnn/9.8.0/local_installers/cudnn-local-repo-ubuntu2404-9.8.0_1.0-1_amd64.deb
sudo dpkg -i cudnn-local-repo-ubuntu2404-9.8.0_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-ubuntu2404-9.8.0/cudnn-*-keyring.gpg /usr/share/keyrings/

sudo apt-get update
sudo apt-get -y install cudnn

# 使用以下命令进行查看
ldconfig -p | grep cudnn

1.4 创建基本虚拟环境

# 创建ai基础虚拟环境
conda create -n ai python=3.10 -y && conda activate ai
# 安装常用库
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple openai modelscope huggingface-hub tokenizers datasets transformers tqdm addict
# 安装Pytorch
# pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# CUDA12.4选择安装
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
# CUDA12.6选择安装
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126

1.5 创建基础目录

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

二、大模型部署框架

2.1 Ollama

2.1.1 🔗 相关资源
2.1.2 📝 核心特性
  • 模型格式支持
    ▸ 仅支持 GGUF 格式模型(量化后模型)
    ▸ 模型来源:ModelScopeHuggingFace
    ▸ 量化特点:模型体积↓、推理速度↑、硬件要求↓、效果精度↓

  • 平台支持
    ▸ macOS/Windows:提供图形客户端
    ▸ 主要面向:个人用户场景

2.1.3 🛠️ 安装与使用
# 创建Python环境
conda create -n ollama python=3.10 -y && conda activate ollama

# 安装Ollama(Linux示例)
cd ~/workspace/ai/tools && curl -fsSL https://ollama.com/install.sh | sh

# 服务管理
ollama serve       # 启动服务(默认端口11434)
ollama list        # 查看已下载模型

# 模型运行(自动下载)
ollama run qwen2.5:0.5b

2.2 vLLM

2.2.1 🔗 相关资源
2.2.2 📝 核心特性
  • 是一个 Python 库,它包含预编译的 C++ 和 CUDA (12.1) 二进制文件
  • 通过 PagedAttention 等技术优化 GPU 内存使用,显著提升推理速度
  • 推理性能高,适合实时和大规模推理任务
  • 支持分布式推理,适合生产环境
  • 兼容 Hugging Face 的 Transformer 模型
2.2.3 🛠️ 安装与使用
  1. 要求:

    1. 操作系统:Linux
    2. Python: 3.8 – 3.12
    3. GPU: 计算能力 7.0 或更高(例如,V100、T4、RTX20xx、A100、L4、H100 等)
  2. 安装使用

    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 ~/workspace/ai/models/modelscope/Qwen___Qwen1.5-0.5B-Chat \
    --gpu-memory-utilization 0.95 \
    --max-model-len 1024 \
    --block-size 16 \
    --max-num-seqs 4 \
    --tensor-parallel-size 1
    

2.3 LMDeploy

2.3.1 🔗 相关资源
2.3.2 📝 核心特性
  • 是一个高效且友好的 LLMs 模型部署工具箱,功能涵盖了量化、推理和服务
  • 功能全面,支持从训练到部署的全流程
  • 提供模型压缩和加速技术,适合资源受限的场景
2.3.3 🛠️ 安装与使用
  1. 要求:

    1. 操作系统:windows、linux
    2. Python: 3.8 – 3.12
  2. 安装使用

    conda create -n lmdeploy python=3.12 -y && conda activate lmdeploy
    pip install lmdeploy partial_json_parser
    # 运行模型(开启的端口默认是23333)
    lmdeploy serve api_server /path/to/model
    

三、大模型微调框架

3.1 LLaMA-Factory

3.1.1 🔗 相关资源
3.1.2 📝 核心特性
  • 快速实验
  • 灵活扩展
  • 可视化交互
  • 多框架兼容
3.1.3 🛠️ 安装与使用
conda create -n llamafactory python=3.10 -y && conda activate llamafactory
cd ~/workspace/ai/tools && git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git && cd LLaMA-Factory && pip install -e .
# 使用可视化界面微调
llamafactory-cli webui

3.2 Xtuner

3.2.1 🔗 相关资源

Github
说明文档

3.2.2 📝 核心特性
  • 企业级部署
  • 显存优化
  • 中文与多模态
  • 开箱即用
3.2.3 🛠️ 安装与使用
conda create -n xtuner python=3.10 -y && conda activate xtuner
cd ~/workspace/ai/tools && git clone --depth 1 https://github.com/InternLM/xtuner.git && cd xtuner && pip install -e .
# 验证是否安装
xtuner list-cfg

四、大模型前端框架

4.1 OpenWebui

4.1.1 🔗 相关资源
4.1.2 📝 核心特性
  • 开箱即用的可视化交互
    • 零代码对话界面:浏览器直接访问 localhost:8080 即可使用,无需前端开发
    • 多模型管理:同时连接多个本地/远程模型(Ollama、OpenAI API、HuggingFace等)
    • 对话历史存档:自动保存会话记录,支持标记和检索
  • 企业级功能集成
    • 用户权限系统:RBAC 权限控制(管理员/用户角色)
    • API 网关:内置兼容 OpenAI 格式的 API 端点(/v1)
    • 数据隔离:不同用户的模型和数据完全隔离
  • 技术栈优势
    • 轻量部署:单容器即可运行(Docker/Podman)
    • 跨平台支持:完美适配 Ollama 生态(macOS/Linux/Windows)
    • 响应式设计:适配桌面/移动端浏览器
  • 扩展能力
    • 插件系统:支持 RAG 增强(文档上传/解析)
    • Webhook 集成:与 Slack/Discord 等平台联动
4.1.3 🛠️ 安装与使用
conda create -n openwebui python=3.11 -y && conda activate openwebui
pip install -U open-webui torch transformers

# 运行ollama
ollama serve
# 运行open-webui
export HF_ENDPOINT=https://hf-mirror.com
export ENABLE_OLLAMA_API=True
export OPENAI_API_BASE_URL=http://127.0.0.1:11434/v1
open-webui serve
# 启动浏览器(http://localhost:8080)

4.2 Streamlit

4.2.1 🔗 相关资源
4.2.2 📝 核心特性
  • 极简开发体验
    • 零前端代码:纯 Python 脚本即可构建交互式 Web 应用
    • 实时热重载:保存代码后自动刷新页面(Ctrl+S 即时生效)
    • API 设计直观:st.slider()、st.dataframe() 等声明式组件
  • 内置高效组件
  • 无缝AI集成
  • 部署友好
    • 一键分享:streamlit share 快速云端部署
    • 容器化支持:原生兼容 Docker/Kubernetes
    • 自适应布局:自动适配 PC/移动端浏览器
  • 性能优化
    • 缓存机制:@st.cache_data 避免重复计算
    • 异步支持:st.rerun() 实现动态更新
    • WebSocket 通信:低延迟交互(默认端口 8501)
4.2.3 🛠️ 安装与使用
conda create -n streamlit python=3.12 -y && conda activate streamlit
pip install streamlit
# 测试是否安装成功
streamlit hello
# 运行ollama
ollama serve
# 运行streamlit
streamlit run chat_app.py
# 启动浏览器(http://localhost:8501)

4.3 安装 FastAPI

五、大模型评估框架

5.1 OpenCompass

5.1.1 🔗 相关资源
5.1.2 📝 核心特性
  • 全维度评测体系
    • 多模态评估:覆盖文本生成、数学推理、代码能力、知识问答等 50+ 评测维度
    • 权威基准:支持 MMLU、C-Eval、GSM8K 等 20+ 国际标准测试集
    • 中文专项优化:针对中文场景定制 CMMLU、TMMLU 等本土化评测集
  • 高效评测引擎
    • 分布式评测:单任务自动拆分到多卡/多节点,速度提升 5-10×
    • 零样本/小样本:支持无训练直接评估模型原始能力
    • 量化评测:兼容 4/8-bit 量化模型测试(LLM/VLM 均适用)
  • 企业级功能
    • 自动化报告:一键生成 PDF/HTML 格式的详细能力雷达图
    • 模型对比:支持多模型平行测试,可视化得分对比(如图表)
    • 安全评估:内置 Jailbreak、隐私泄露等风险检测模块
  • 易用性设计
5.1.3 🛠️ 安装与使用
5.1.3.1 创建虚拟环境
# 创建虚拟环境
conda create --name opencompass python=3.10 -y && conda activate opencompass
cd ~/workspace/ai/tools && git clone --depth 1 https://github.com/open-compass/opencompass opencompass && cd opencompass && pip install -e .
5.1.3.2 下载数据集
# 下载解压数据集
wget https://github.com/open-compass/opencompass/releases/download/0.2.2.rc1/OpenCompassData-complete-20240207.zip && unzip OpenCompassData-complete-20240207.zip

# 列出所有配置
python tools/list_configs.py
# 列出与llama和mmlu相关的所有配置
python tools/list_configs.py llama mmlu
5.1.3.3 配置评估任务
  1. 方式一:命令行(自定义 HF 模型),OpenCompass 一次只评估一个模型,而其他方式可以一次评估多个模型

    python run.py \
    --datasets demo_gsm8k_chat_gen demo_math_chat_gen \         # 测试数据集
    --hf-type chat \                                            # 模型类型(chat/base)
    --hf-path internlm/internlm2-chat-1_8b \                    # 自定义模型路径
    --debug
    
  2. 方式二:命令行

    python run.py \
     --models hf_internlm2_chat_1_8b hf_qwen2_1_5b_instruct \    # python tools/list_configs.py命令列出的model名,需要修改对应model的配置文件
     --datasets demo_gsm8k_chat_gen demo_math_chat_gen \         # 测试数据集
     --hf-type chat \                                            # 模型类型(chat/base)
     --debug
    
  3. 方式三:配置文件
    a.添加配置文件,假如路径在配置文件路径为 configs/eval_base_demo.py

    from mmengine.config import read_base
    
    with read_base():
        from .datasets.demo.demo_gsm8k_base_gen import gsm8k_datasets
        from .datasets.demo.demo_math_base_gen import math_datasets
        from .models.qwen.hf_qwen2_1_5b import models as hf_qwen2_1_5b_models
        from .models.hf_internlm.hf_internlm2_1_8b import models as hf_internlm2_1_8b_models
    
    datasets = gsm8k_datasets + math_datasets
    models = hf_qwen2_1_5b_models + hf_internlm2_1_8b_models
    

    b.运行任务

    python run.py configs/eval_base_demo.py --debug
    

六、RAG 技术相关框架 & 大模型应用框架

6.1 LlamaIndex

6.1.1 🔗 相关资源
6.1.2 📝 核心特性
  1. Data Connectors(数据连接器)
    支持从多种数据源加载和结构化数据:
    • 文档:PDF、Word、Markdown
    • 数据库:SQL、PostgreSQL、MongoDB
    • API/网页:REST API、爬虫抓取
    • 云存储:S3、Google Drive
  2. Data Indexes(数据索引)
    将原始数据转换为高效检索结构:
    • 向量索引:通过嵌入模型(如 OpenAI、HuggingFace)生成向量,支持相似性搜索。
    • 关键词索引:传统全文检索,适合精确匹配。
    • 混合索引:结合向量+关键词,平衡精度与速度。
  3. Engines(查询引擎)
    • 自然语言交互:用户输入问题,引擎从索引中检索相关片段,生成精准回答。
    • 避免上下文爆炸:仅向 LLM 输入相关数据片段,节省 token 并提升响应速度。
  4. Application Integrations(应用集成)
    • LLM 兼容:OpenAI、Anthropic、本地模型(Llama 2)等。
    • 框架扩展:与 LangChain、Flask、FastAPI 无缝集成。
    • 部署工具:支持 Gradio、Streamlit 快速构建 Web 界面。
  5. Data Agents(数据代理
    • 动态数据更新:自动监控数据源变化(如数据库更新),实时同步索引。
    • 多步骤推理:通过 Agent 调用工具(如计算、搜索)完成复杂任务。
6.1.3 🛠️ 安装与使用
# 创建虚拟环境
conda create -n llamaindex python==3.12 -y && conda activate llamaindex
# 安装 LlamaIndex
pip install llama-index
# 安装 LlamaIndex 的 HuggingFace LLM 支持
pip install llama-index-llms-huggingface

详情请查阅 RAG技术完全指南(三):LlamaIndex架构解析与私有知识库搭建

6.2 Dify

6.2.1 🔗 相关资源
6.2.2 📝 核心特性
  • 可视化 Prompt 编排
    • 低代码开发:通过拖拽界面设计 AI 工作流,无需编程基础
    • 多模型支持:兼容 OpenAI、Anthropic、本地模型(如 Llama3)等
    • 实时调试:即时测试 Prompt 效果,支持变量插值
  • 强大的 RAG 引擎
    • 知识库管理:支持上传 PDF/Word/TXT 等文档,自动分块和向量化
    • 精准检索:结合语义搜索 + 关键词过滤,提升回答准确性
    • 引用溯源:生成答案时自动标注参考来源
  • 灵活的 Agent 框架
    • 多工具集成:调用搜索引擎、数据库、API 等扩展能力
    • 自动化流程:支持多步骤推理(如数据分析→报告生成)
    • 条件分支:根据用户输入动态调整响应逻辑
  • 企业级功能
    • 多租户隔离:团队协作时数据权限分离
    • 审计日志:记录所有操作和模型调用
    • API 网关:提供标准化接口,无缝对接现有系统
  • 一键部署
    • Docker 集成:5 分钟快速部署生产环境
    • 私有化支持:完全本地化运行,保障数据安全
6.2.3 🛠️ 安装与使用
  1. 注意事项
    在运行安装命令之前,请确保您的机器上安装了 DockerDocker Compose,安装 Docker 以及 Docker Compose 的具体步骤可以参考 Ubuntu 24.04 完整Docker安装指南:从零配置到实战命令大全
  2. 安装
cd ~/workspace/ai/tools && git clone --depth 1 git@gitee.com:dify_ai/dify.git && cd dify/docker
cp .env.example .env
docker compose up -d # 未将当前用户加入docker组的话,需要使用sudo

浏览器访问 http://localhost/install 即可进入 Dify 控制台并开始初始化安装操作

6.3 RAGFlow

6.3.1 🔗 相关资源
6.3.2 📝 核心特性
  • 🍭 “Quality in, quality out”
    • 基于深度文档理解,能够从各类复杂格式的非结构化数据中提取真知灼见。
    • 真正在无限上下文(token)的场景下快速完成大海捞针测试。
  • 🍱 基于模板的文本切片
    • 不仅仅是智能,更重要的是可控可解释。
    • 多种文本模板可供选择。
  • 🌱 有理有据、最大程度降低幻觉(hallucination)
    • 文本切片过程可视化,支持手动调整。
    • 有理有据:答案提供关键引用的快照并支持追根溯源。
  • 🍔 兼容各类异构数据源
    • 支持丰富的文件类型,包括 Word 文档、PPT、excel 表格、txt 文件、图片、PDF、影印件、复印件、结构化数据、网页等。
  • 🛀 全程无忧、自动化的 RAG 工作流
    • 全面优化的 RAG 工作流可以支持从个人应用乃至超大型企业的各类生态系统。
    • 大语言模型 LLM 以及向量模型均支持配置。
    • 基于多路召回、融合重排序。
    • 提供易用的 API,可以轻松集成到各类企业系统。
6.3.3 🛠️ 安装与使用
  1. 参考资料:README_zh.md

  2. 注意事项

    # 查看vm.max_map_count值,要求其不能小于 262144
    sysctl vm.max_map_count
    # 小于的话,进行设置
    sudo sysctl -w vm.max_map_count=262144
    # 永久生效,修改 /etc/sysctl.conf
    vim /etc/sysctl.conf
    # 修改文件中以下内容
    vm.max_map_count=262144
    
  3. 安装

    cd ~/workspace/ai/tools && git clone --depth 1 https://github.com/infiniflow/ragflow.git && cd ragflow/docker
    # 使用CPU
    # docker compose -f docker-compose.yml up -d
    
    # 使用GPU
    docker compose -f docker-compose-gpu.yml up -d
    # 确认服务器状态
    docker logs -f ragflow-server
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CodeSilence

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值