一、基础环境准备
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 格式模型(量化后模型)
▸ 模型来源:ModelScope|HuggingFace
▸ 量化特点:模型体积↓、推理速度↑、硬件要求↓、效果精度↓ -
平台支持
▸ 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 🛠️ 安装与使用
-
要求:
- 操作系统:Linux
- Python: 3.8 – 3.12
- 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 ~/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 🛠️ 安装与使用
-
要求:
- 操作系统:windows、linux
- Python: 3.8 – 3.12
-
安装使用
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 🔗 相关资源
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 配置评估任务
-
方式一:命令行(自定义 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
-
方式二:命令行
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
-
方式三:配置文件
a.添加配置文件,假如路径在配置文件路径为 configs/eval_base_demo.pyfrom 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 📝 核心特性
- Data Connectors(数据连接器)
支持从多种数据源加载和结构化数据:- 文档:PDF、Word、Markdown
- 数据库:SQL、PostgreSQL、MongoDB
- API/网页:REST API、爬虫抓取
- 云存储:S3、Google Drive
- Data Indexes(数据索引)
将原始数据转换为高效检索结构:- 向量索引:通过嵌入模型(如 OpenAI、HuggingFace)生成向量,支持相似性搜索。
- 关键词索引:传统全文检索,适合精确匹配。
- 混合索引:结合向量+关键词,平衡精度与速度。
- Engines(查询引擎)
- 自然语言交互:用户输入问题,引擎从索引中检索相关片段,生成精准回答。
- 避免上下文爆炸:仅向 LLM 输入相关数据片段,节省 token 并提升响应速度。
- Application Integrations(应用集成)
- LLM 兼容:OpenAI、Anthropic、本地模型(Llama 2)等。
- 框架扩展:与 LangChain、Flask、FastAPI 无缝集成。
- 部署工具:支持 Gradio、Streamlit 快速构建 Web 界面。
- 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 🛠️ 安装与使用
- 注意事项
在运行安装命令之前,请确保您的机器上安装了 Docker 和 Docker Compose,安装 Docker 以及 Docker Compose 的具体步骤可以参考 Ubuntu 24.04 完整Docker安装指南:从零配置到实战命令大全。 - 安装
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 🛠️ 安装与使用
-
参考资料:README_zh.md
-
注意事项
# 查看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
-
安装
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