1、模型

1) 阿里云模型(通义大模型)
阿里云模型指阿里云开源及商用的大模型系列,核心品牌为通义大模型(Tongyi / Qwen),提供云端托管 API与开源模型两类服务

2)Ollama
Ollama是开源的本地大模型运行与管理工具,定位类似 “大模型领域的 Docker”,核心能力是简化本地部署、一键运行主流开源 LLM。

优先使用阿里云模型的免费额度,性能好,其次再选用Ollama

2、OpenAI库的基础使用

OpenAI库是OpenAI公司发布的Python SDK,方便与编程调用其产品,现许多模型服务商都兼容OpenAI SDK的调用。

使用主要就3个流程:

  • 创建客户端对象(OpenAI类对象)
  • 和模型对话(client.chat.completions.create),可以提供3个角色使用:
    • system: 设定模型的行为和规则
    • assistant: 设定模型的回答,由用户设定
    • user: 用户的提问
  • 处理结果:response.choices[0].message.content
from openai import OpenAI

# 1. 获取client对象,OpenAI类对象
client = OpenAI(
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1"
)

# 2. 调用模型
response = client.chat.completions.create(
    model="qwen3-max",
    messages=[
        {"role": "system", "content": "你是一个Python编程专家,并且不说废话简单回答"},
        {"role": "assistant", "content": "好的,我是编程专家,并且话不多,你要问什么?"},
        {"role": "user", "content": "输出1-10的数字,使用python代码"}
    ]
)

# 3. 处理结果
print(response.choices[0].message.content)

3、RAG

通用的基础大模型存在一些问题

  • LLM(大模型语言)的知识不是实时的,模型训练好后不具备自动更新知识的能力,会导致部分信息滞后
  • LLM(大模型语言)领域知识是缺乏的,大模型的知识来源于训练数据,这些数据主要来自公开的互联网和开内部知识
  • 幻觉问题,LLM(大模型语言)有时会在回答中生成看似合理但实际上是错误的信息
  • 数据安全

RAG(Retrieval-Augmented Generation)即检索增强生成,为大模型提供了从特定数据源检索到的信息,以此来修正和补充生成的答案。可以总结为一个公式:RAG = 检索技术 + LLM 提示

RAG 标准流程

RAG 标准流程由索引(Indexing)、检索(Retriever)和生成(Generation)三个核心阶段组成。

  • 索引阶段,通过处理多种来源多种格式的文档提取其中文本,将其切分为标准长度的文本块(chunk),并进行嵌入向量化(embedding),向量存储在向量数据库(vector database)中。

    • 加载文件
    • 内容提取
    • 文本分割,形成chunk
    • 文本向量化
    • 存向量数据库
  • 检索阶段,用户输入的查询(query)被转化为向量表示,通过相似度匹配从向量数据库中检索出最相关的文本块。

    • query向量化
    • 在文本向量中匹配出与问句向量相似的top_k个
  • 生成阶段,检索到的相关文本与原始查询共同构成提示词(Prompt),输入大语言模型(LLM),生成精确且具备上下文关联的回答。

    • 匹配出的文本作为上下文和问题一起添加到prompt中
    • 提交给LLM生成答案:

RAG的核心价值

  • 解决知识时效性问题:大模型的训练数据有截止时间,RAG 可以接入最新文档(如公司财报、政策文件),让模型输出“与时俱进”。

  • 降低模型幻觉:模型的回答基于检索到的事实性资料,而非纯靠自身记忆,大幅减少编造信息的概率。

  • 无需重新训练模型:相比微调(Fine-tuning),RAG 只需更新知识库,成本更低、效率更高。

4、LangChain

LangChain模型组件提供了与各种模型的集成,并为所有模型提供一个精简的统一接口。

LangChain目前支持三种类型的模型:LLMs(大语言模型)、Chat Models(聊天模型)、Embeddings Models(嵌入模型)。

  • LLMs:是技术范畴的统称,指基于大参数量、海量文本训练的 Transformer 架构模型,核心能力是理解和生成自然语言,主要服务于文本生成场景
  • 聊天模型:是应用范畴的细分,是专为对话场景优化的 LLMs,核心能力是模拟人类对话的轮次交互,主要服务于聊天场景
  • 文本嵌入模型:文本嵌入模型接收文本作为输入,得到文本的向量。

LangChain支持的三类模型,它们的使用场景不同,输入和输出不同,开发者需要根据项目需要选择相应。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐