大模型基础能力
当前大模型的应用主要基于两个核心能力:理解力与生成力。理解力涵盖内容概括、语意分析及语句结构化;生成力则负责内容创作。这两项能力推动了 RAG(检索增强生成)和 Agent(智能体)等概念的兴起,所有工具集均依赖于此。
OpenAI 提供了两类主要 API:Text Completion(文本补全)体现生成力;Chat Completion(对话补全)体现理解力并需维护上下文。两者常融合使用,但长上下文(Long Context)可能导致模型'消化不良',降低记忆关联能力。例如,过长的输入可能使模型无法建立明确的上下文关联,导致回答质量下降。
模型分类
常用模型包括:
- 推理模型 (Inference):即 Text-generation 模型,作为应用基座。
- Embedding 模型:用于文本向量化,支持检索。
- Rerank 模型:在 RAG 中对候选文档进行再排序,提高相关性。
- ASR 模型:语音转文字,如 Whisper。
- TTS 模型:文本转语音,如 VITS。
- 多模态模型:生图、生视频等。
我们所说的大模型一般是指推理模型,也是大部分应用的基座。基于推理模型结合其他开源模型,市面上已经出现了丰富的富有想象力的应用。
部署方式
LLM 的两种部署方式:
- 商业 API:快速集成,但存在数据安全隐患,不适合工业级私有化需求。
- 开源模型私有化:从托管平台拉取模型,结合 RAG 或微调技术进行个性化训练。
托管平台
Hugging Face 提供大量开源模型及数据集。例如 Llama3-8B 的中文微调版本可通过 GGUF 格式量化部署。GGUF 优化了内存映射,适合本地运行。Groq 等平台则以推理速度著称。
本地托管
使用 Ollama 可简化本地部署。安装后通过 ollama run llama3 启动。支持预训练 (pre-trained) 和指令微调 (instruct) 变体。对于自定义模型,需编写 Modelfile 指定源文件及参数。
ollama create MyModel -f Modelfile FROM /path/to/model.gguf
本地 UI
OpenWebUI 提供类似 ChatGPT 的界面,支持 Docker 部署,具备多模型切换、RAG 文档管理及模型管理功能。
代理层
LiteLLM 提供统一 API 接口,屏蔽底层模型差异,支持 100+ 大模型基座。通过配置文件定义模型列表及密钥,实现调用标准化。
定制化方案
针对特定场景,主要有微调 (Fine-tuning) 和 RAG 两种方式。
Fine-tuning
适用于需要深度掌握特定领域知识且资源充足的场景。流程包括:准备数据集、加载预训练模型、定义训练参数、优化器选择、训练及评估。使用 Hugging Face Transformers 库可实现简化流程。
from transformers import AutoModelForSequenceClassification, Trainer, TrainingArguments
# ... 初始化模型与数据集 ...
trainer = Trainer(model=model, args=training_args, train_dataset=train_dataset)
trainer.train()
RAG (检索增强生成)
将知识库向量化存储,分为 Load、Split、Embedding、Store、Retrieve、Query 六个步骤。 关键问题在于 Split 粒度:过大导致噪声,过小丢失上下文。解决方案包括窗口上下文检索。
LangChain 提供了多种 Retriever 机制:


