1、常见概念
1.0 大语言模型LLM
大语言模型(Large Language Model,LLM)是指基于海量数据训练、参数规模巨大的人工智能模型,专门用于理解和生成人类语言。
它通过深度学习技术(如Transformer架构)从文本中学习语言规律,能够完成对话、写作、翻译、推理等多种任务,是当前人工智能领域最热门的技术之一。
- 参数数量:通常在数十亿到数万亿级别(例如GPT-3有1750亿参数,GPT-4推测超过1万亿)。
常见模型举例
- GPT系列(OpenAI):GPT-3、GPT-4,擅长生成类任务
- BERT(Google):侧重文本理解,适合分类、问答
- LLaMA(Meta):开源模型,参数规模较小但性能优异
- PaLM(Google):专攻复杂推理和多语言任务
1.1 提示语(Prompt)
掌握提示语设计:AIGC时代的必备技能
提示语(Prompt)是用户输入给AI系统的指令或信息,用于引导AI生成特定的输出或执行特定的任务。
简单来说,提示语 就是我们与AI“对话”时所使用的语言,它可以是一个简单的问题,一段详细的指令,也可以是一个复杂的任务描述。
提示语的基本结构包括指令、上下文和期望
- 指令(Instruction):这是提示语的核心,明确告诉AI你希望它执行什么任务。
- 上下文(Context):为AI提供背景信息,帮助它更准确地理解和执行任务。
- 期望(Expectation):明确或隐含地表达你对AI输出的要求和预期。
提示语的类型
- 1、指令型提示语:直接告诉AI需要执行的任务。
- 2、问答型提示语:向AI提出问题,期望得到相应的答案。
- 3、角色扮演型提示语:要求AI扮演特定角色,模拟特定场景。
- 4、创意型提示语:引导AI进行创意写作或内容生成。
- 5、分析型提示语:要求AI对给定信息进行分析和推理。
- 6、多模态提示语:结合文本、图像等多种形式的输入。
1.1.1 提示语的基本元素分类
提示语的基本元素可以根据其功能和作用分为三个大类:信息类元素、结构类元素和控制类元素。
-
信息类元素决定了AI在生成过程中需要处理的具体内容,包括主题、背景、数据等,为AI提供了必要的知识和上下文。
-
结构类元素用于定义生成内容的组织形式和呈现方式,决定了AI输出的结构、格式和风格。
-
控制类元素用于管理和引导AI的生成过程,确保输出符合预期并能够进行必要的调整,是实现高级提示语工程的重要工具。
1.1.2 效果倍增的关键策略
-
策略一:精准定义任务,减少模糊性
如何实现精准定义:明确的核心问题、具体化的生成指令、去除多余信息
-
策略二:适当分解复杂任务,降低AI认知负荷
分解任务的技巧:分段生成、逐层深入、设置逻辑结构
-
策略三:引入引导性问题,提升生成内容的深度
引导性问题的设计要点:设置多个层次的问题、 促使AI对比或论证、引导思维的多样性
-
策略四:控制提示语长度,确保生成的准确性
控制提示语长度的技巧:避免嵌套复杂的指令、保持简洁性、使用分步提示
-
策略五:灵活运用开放式提示与封闭式提示
开放式提示:提出开放性问题,允许AI根据多个角度进行生成
封闭式提示:提出具体问题或设定明确限制,要求AI给出精准回答
1.2 Tokens
在大模型(如GPT、BERT等)中,tokens 是文本处理的基本单位,模型通过将输入文本分割成tokens来进行理解和生成。
Tokens的定义
- Tokens 可以是单词、子词或字符,具体取决于分词方式。例如:
- 单词级别:
"hello"
是一个token。 - 子词级别:
"unhappiness"
可能被分成"un", "happiness"
两个tokens。 - 字符级别:每个字符(如
"h"
,"e"
)都是一个token。
- 单词级别:
Tokens的作用
- 输入表示:文本被转换为tokens后,模型才能处理。
- 模型处理:模型根据tokens的上下文关系进行预测和生成。
- 输出生成:模型生成的tokens会被转换回文本。
Tokens的限制
- 长度限制:模型有最大token数限制,超出部分会被截断。
- 计算资源:token数量影响计算和内存需求。
1.3 多模态(Multimodal)
在大模型(如GPT、BERT等)的语境中,“多模态”指的是模型能够处理和理解多种类型的数据输入,而不仅仅是单一的文本数据。
多模态模型可以同时处理文本、图像、音频、视频等多种模态的信息,从而更全面地理解和生成内容。
多模态的具体含义
- 文本模态:处理自然语言文本,如文章、对话等。
- 图像模态:处理图像数据,如照片、图表等。
- 音频模态:处理声音数据,如语音、音乐等。
- 视频模态:处理视频数据,通常结合图像和音频信息。
多模态大模型能够处理和理解多种类型的数据,广泛应用于图像描述生成、视觉问答、语音识别与合成、视频内容分析等领域。
尽管面临数据对齐和计算复杂度、大量标注模型训练等挑战,但其优势显著,未来发展潜力巨大。
1.4 向量化
在大模型(如GPT、BERT等)中,向量化是将文本、图像等数据转换为数值向量的过程,以便模型能够处理和理解这些数据。
向量化的定义
- 向量化 是将非数值数据(如单词、句子、图像)转换为数值向量的过程。这些向量通常是高维空间中的点,能够表示数据的特征和语义信息。
向量化的作用
- 数值表示:模型只能处理数值数据,向量化将文本等数据转换为数值形式。
- 特征提取:向量化过程提取数据的关键特征,便于模型学习。
- 语义表示:向量可以捕捉数据的语义信息,如单词的相似性。
向量化的方法
- 文本向量化:
- 词袋模型(Bag of Words, BoW):将文本表示为单词频率向量。
- TF-IDF:考虑单词在文档中的频率和在整个语料库中的重要性。
- 词嵌入(Word Embeddings):如Word2Vec、GloVe,将单词映射到低维向量空间,捕捉语义信息。
- 句子/文档向量化:如BERT、GPT,通过模型生成整个句子或文档的向量表示。
- 图像向量化:
- 卷积神经网络(CNN):通过卷积层提取图像特征,生成特征向量。
- 预训练模型:如ResNet、VGG,使用预训练模型提取图像特征。
- 音频向量化:
- MFCC(梅尔频率倒谱系数):提取音频的频谱特征。
- 深度学习模型:如WaveNet、Spectrogram-based models,生成音频的特征向量。
向量化的示例
- 文本示例:
- 单词 "king" 通过Word2Vec可能表示为
[0.25, -0.1, 0.7, ...]
。 - 句子 "I love AI." 通过BERT可能表示为
[0.3, 0.8, -0.2, ...]
。
- 单词 "king" 通过Word2Vec可能表示为
- 图像示例:
- 一张猫的图片通过ResNet可能表示为
[0.1, 0.9, 0.05, ...]
。
- 一张猫的图片通过ResNet可能表示为
向量化的优势
- 高效处理:数值向量便于模型高效处理。
- 语义捕捉:向量能捕捉数据的语义和特征。
- 通用性:适用于多种数据类型和任务。
1.5 Function call
在大模型(如GPT、BERT等)中,Function Call 指的是模型在执行过程中调用外部函数或API来完成特定任务。
这种机制增强了模型的功能,使其不仅能生成文本,还能执行实际操作,如查询数据库、调用外部服务等。
Function Call的定义
- Function Call 是模型在生成文本的过程中,调用预定义的外部函数或API来获取信息或执行操作。这些函数可以是内置的,也可以是用户自定义的。
Function Call的作用
- 扩展功能:通过调用外部函数,模型能够执行更复杂的任务,如计算、数据查询、调用外部服务等。
- 提高准确性:调用外部API获取实时数据,提高生成内容的准确性和时效性。
- 增强交互性:使模型能够与外部系统交互,提供更丰富的用户体验。
Function Call的实现
- 定义函数:首先需要定义可供模型调用的函数或API。这些函数可以是简单的计算函数,也可以是复杂的服务调用。
- 模型调用:在模型生成文本的过程中,模型会根据上下文决定是否需要调用某个函数,并生成相应的调用请求。
- 执行函数:模型生成的调用请求会被传递给外部系统,执行相应的函数或API调用。
- 返回结果:外部系统执行完函数后,将结果返回给模型,模型再根据结果继续生成文本。
Function Call的示例
- 示例1:天气查询
- 用户输入:
"今天北京的天气怎么样?"
- 模型调用:
get_weather(location="北京")
- 外部API返回:
{"location": "北京", "weather": "晴", "temperature": "25°C"}
- 模型生成:
"今天北京的天气是晴,气温25°C。"
- 用户输入:
- 示例2:数学计算
- 用户输入:
"计算一下2的平方根。"
- 模型调用:
sqrt(number=2)
- 外部函数返回:
1.41421356237
- 模型生成:
"2的平方根是1.41421356237。"
- 用户输入:
Function Call的优势
- 功能扩展:使模型能够执行更广泛的任务。
- 实时数据:通过调用外部API获取实时信息。
- 灵活性:可以根据需要定义和调用不同的函数。
Function Call的挑战
- 安全性:需要确保调用的函数和API是安全的,防止恶意调用。
- 复杂性:实现和管理多个函数调用可能增加系统的复杂性。
- 性能:频繁调用外部函数可能影响模型的响应速度。
1.6 蒸馏(Distillation)
站在巨人的肩膀上
1.6.1 关于蒸馏、微调和RAG
-
**蒸馏:**是学生通过模仿老师的解题思路,达到和老师相似的知识水平。
适用于将大模型的能力迁移到小模型上,以适配更低端的算力环境。(比如在企业私有云、个人电脑甚至手机、边缘终端上)
-
**微调:**又叫精调,相当于学生意识到自己某门课有短板,然后自己找参考书恶补了一下,从而补上短板。
适用于特定场景下,用特定数据集对通用模型进行小规模训练。比如通用基础模型对医疗不大懂,就用医疗数据集给它开小灶,让他变身医疗专家模型。
-
**RAG:**直译过来叫做“检索增强生成”。相当于这题我不会,但是我有“小抄”,我回答的时候,就看一眼小抄,然后再综合我脑子里的已有知识,进行回答。
RAG,不是训练,不改变大模型的“脑回路”,但可以作为外挂,提升大模型回答问题的精准性。适用于企业自身积累了大量知识库文档,通过RAG的方式,与大模型关联。
这样,大模型在回答问题的时候,会先检索知识库,进行精准回答。
“模型蒸馏”就是把大模型学到的本领,用“浓缩”的方式教给小模型的过程,在保证一定精度的同时,大幅降低运算成本和硬件要求。
-
**大模型:**像一位见多识广、知识储备庞大的“大教授”,无所不知,但是“供养”他很贵。
不仅培养他的过程很耗时耗力(训练成本高),请他过来讲课成本也很高,要有很大一笔安家费(部署模型的硬件基础设施,甚至数据中心),还要支付超高的课时费(推理成本高)。
-
**小模型:**相当于一枚小学生,知识面非常有限,但是胜在没教授那么大谱,给个板凳坐着就够了(部署成本低,推理成本低)。
模型蒸馏具体是怎么干的呢?
1.6.2 知识蒸馏
也叫输出层蒸馏
简单说,就是老师做一遍,学生跟着学。
但针对每个输入的问题,老师不会直接给出确定答案,而是给出解题思路(俗称软标签)。
比如,输入一张猫的照片给老师模型,老师不会直接给出答案:这是猫,而是给出一组概率分布,告诉学生,这张图可能是什么。
老师这么干,就是为了让学生具备举一反三、触类旁通的能力,用概率分布来对应各种类别的相似程度。
接下来,需要建立小模型的学习标准(综合损失函数)。
老师虽然NB,但小模型在学习的时候,并不会完全照搬老师的思路。
它会结合自己原有数据集中的硬标签(猫就是猫、狗就是狗),再参考老师的答案,最终给出自己的判断。
所以,学生模型既要参考“教授给的学习笔记”(软标签),又要结合“妈妈给的判断”(原有监督学习中的硬标签)。
实操中,用“蒸馏损失”来衡量学生模型与教授模型输出结果的差异。用“真实监督损失”来衡量学生模型对基本是非问题的判断。
然后,再设定一个平衡系数(α)来调节这两种损失,达到一个最优效果。
![]()
说白了,学生模型要尽量模仿教授模型的行为,蒸馏损失越小越好,但是又不能学傻了,基本的是非问题都答不对。
除了输出层蒸馏,还有中间层蒸馏(也叫特征层蒸馏),不仅学到最终判断的结论,还学习老师对图像/文本的内部理解,更深入地继承老师的“知识结构”。
相当于学生不光看老师的最终答案,还要看老师的解题过程或中间步骤,从而更全面地学到思考方法。
但这种蒸馏方案,操作难度较高,通常需要教师模型允许,甚至主动配合,适用定制化的项目合作。
不过现在也可以通过一些手段来获取教师模型的推理轨迹(Reasoning Traces),比如使用特殊构造的提示词来诱导老师逐步返回推理,得到推理轨迹。
同时随着各种推理模型的推出,有些推理模型的API本身就支持返回推理轨迹,比如Google Gemini2.0 Flash,DeepSeek等等。
1.6.3 蒸馏训练
❶把同一批训练样本分别输入到学生模型和教授模型;
❷根据硬标签和软标签,对比结果,结合权重,得到学生模型最终的损失值;
❸对学生模型进行参数更新,以得到更小的损失值。
不断重复这个过程❶→❷→❸,就相当于反复刷题,每刷一轮,就找找学生答案和老师答案的差距,及时纠正。
经过多轮以后,学生的知识就会越来越扎实。
最终,蒸馏得到的小模型,尽量复制大模型的智慧,同时保持自己身轻如燕的优势。
这样,学生模型就可以作为课代表,独立带班,不需要教授坐镇了。
1.6.4 基于deepseek蒸馏的常见模型
以DeepSeek发布的六个蒸馏模型为例,满血版671B参数量的DeepSeek R1就是“教授模型”。
而教授模型针对不同尺寸的学生模型进行知识蒸馏,这些学生模型包括:

因为学生模型的初始资质不同,所以得到的蒸馏模型能力也不同。
总之,脑容量越大(权重数/参数量),能力就越强,就越接近老师的水平。
1.7 Temperature 参数
采样温度。控制了生成文本时对每个候选词的概率分布进行平滑的程度。
Temperature是控制大模型输出随机性和创造性的重要参数,让我详细解释:
参数含义:
- Temperature是一个介于0到1之间的值
- 它通过影响模型选择下一个词的概率分布来控制输出的随机性
- 可以理解为控制模型"思维发散程度"的温度调节器
不同取值的效果:
-
Temperature = 0:
- 始终选择概率最高的词
- 输出非常确定和稳定
- 每次运行得到相同结果
- 适合需要准确性的任务:编程、数学计算、事实查询
-
Temperature ≈ 0.7:
- 在高概率词中随机选择
- 输出比较均衡,既有创造性又不会太发散
- 适合一般对话和写作任务
-
Temperature = 1或更高:
- 在更大范围内随机选择词
- 输出更具创造性但可能不够连贯
- 每次运行结果差异较大
- 适合创意写作、头脑风暴等任务
实际应用建议:
- 写代码时用低temperature(0-0.2)保证准确性
- 创意写作用高temperature(0.7-1)激发创造力
- 日常对话用中等temperature(0.5-0.7)平衡准确与创造
- 可以根据具体任务需求调整这个参数
使用注意事项:
- Temperature越高,输出质量控制越难
- 高temperature可能导致事实性错误增加
- 需要根据任务重要程度权衡准确性和创造性
1.8 过拟合 (Overfitting)
定义:模型在训练数据上表现良好,但在未见过的数据(测试集)上表现不佳。
这里有个通俗易懂的理解:学生党刷题都去刷一个类型的题了,然后考试考了个新题型就全寄了。也就是说,模型只是学会了给它训练的数据里的问题,但是没有扩展的能力。在训练的过程中,我们必须避免过拟合的发生,毕竟AI很多时候是拿来解决现实生活中的问题的。
这也是人类很多情况下比AI强的原因。人类可以在复杂多变的环境中有着很好的反应能力,但是AI想要拥有这个还是比较难的。
1.9 强化学习(RL)
这个名词大家可能在Deepseek R1的技术文档里看到多次。这其实很好理解。强化学习的核心我们可以理解为“试错”,通俗一点讲,也就是大模型在训练的过程中,如果它表现好了就给奖励,表现不好就来一嘴巴子,显然这么学习就会让AI很快地学会一种东西,并且效果良好。
1.10 预训练(Pre-training)
定义:在特定任务之前,通过大规模数据集训练模型,使其能够学习到通用的特征。
其实这个很好理解,在预训练阶段使用大量的未经审查的数据,从而让大模型对于所有的知识都有着一定的理解,让模型“全知全能”。如果全部数据都是人工合成筛选的,有没有可能出现遗漏的情况?况且也没有那么多人去干这个事情。
1.11 后训练(Post-training)
定义:在预训练模型的基础上,进一步进行训练,使模型在特定任务上获得更好的表现。
这个也很好理解。假设说我们要训练一个生成代码的模型,我们就需要用大量这方面的数据集去让模型学会这个能力。后训练通常会使用大量的人工合成的数据来保证训练的高效。
1.12 训练损失(Training Loss)
训练损失是模型在训练过程中用来衡量预测与实际结果之间差距的一个指标。这个一般是在训练/微调的过程当中用于监测的。
通常来讲,测量的是模型在回答数据集中的问题时候的准确性。
训练损失通常在训练过程中不断下降。
1.13 微调(Fine-tuning)
这玩意在后训练里面用的挺多的。
通过在较小的标注数据集上继续训练预训练好的模型,目的是让它适应特定任务。
通常来讲,微调所采用的数据集量远远小于在预训练中采用的数据集量。你可以这么理解:微调是为了让模型在解决任务的时候知道该往哪个方向去想,应该去如何回答用户,从而避免乱想影响准确性和效率。
2、推理模型
-
推理大模型: 推理大模型是指能够在传统的大语言模型基础上,强化推理、逻辑分析和决策能力的模型。它 们通常具备额外的技术,比如强化学习、神经符号推理、元学习等,来增强其推理和问题解决能力。
例如:DeepSeek-R1,GPT-o3在逻辑推理、数学推理和实时问题解决方面表现突出。
-
非推理大模型: 适用于大多数任务,非推理大模型一般侧重于语言生成、上下文理解和自然语言处理,而不强 调深度推理能力。此类模型通常通过对大量文本数据的训练,掌握语言规律并能够生成合适的内容,但缺乏像 推理模型那样复杂的推理和决策能力。
例如:GPT-3、GPT-4(OpenAI),BERT(Google),主要用于语言生成、语言理解、文本分类、翻译 等任务。
维度 | 推理模型 | 通用模型 |
---|---|---|
优势领域 | 数学推导、逻辑分析、代码生成、复杂问题拆解 | 文本生成、创意写作、多轮对话、开放性问答 |
劣势领域 | 发散性任务(如诗歌创作) | 需要严格逻辑链的任务(如数学证明) |
性能本质 | 专精于逻辑密度高的任务 | 擅长多样性高的任务 |
强弱判断 | 并非全面更强,仅在其训练目标领域显著优于通用模型 | 通用场景更灵活,但专项任务需依赖提示语补偿能力 |
提示语策略差异 | 1、提示语更简洁,只需明确任务目标和需求(因其已内化推理逻辑)。 2、无需逐步指导,模型自动生成结构化推理过程(若强行拆解步骤,反而可能限制其能力)。 | 1、需显式引导推理步骤(如通过CoT提示),否则可能跳过关键逻辑。 2、依赖提示语补偿能力短板(如要求分 步思考、提供示例)。 |
3、使用关键原则
1、模型选择
- 优先根据任务类型而非模型热度选择(如数学任务选推理模型,创意任务选通用模型)。
2、提示语设计
- 推理模型:简洁指令,聚焦目标,信任其内化能力。(“要什么直接说”)。
- 通用模型:结构化、补偿性引导(“缺什么补什么”)。
3、避免误区
-
不要对推理模型使用“启发式”提示(如角色扮演),可能干扰其逻辑主线。
-
不要对通用模型“过度信任”(如直接询问复杂推理问题,需分步验证结果)。
4、如何向AI表达需求

提示语示例
-
决策需求
"为降低物流成本,现有两种方案:
①自建区域仓库(初期投入高,长期成本低)
②与第三方合作(按需付费,灵活性高)
请根据ROI计算模型,对比5年内的总成本并推荐最优解。"
-
分析需求
"分析近三年新能源汽车销量数据(附CSV),说明:
①增长趋势与政策关联性;
②预测2025年市占率,需使用ARIMA模型并解释参数 选择依据。"
-
创造性需求
"设计一款智能家居产品,要求:
①解决独居老人安全问题;
②结合传感器网络和AI预警;
③提供三种不同技术路线的原型草图说明。"
-
验证性需求
"以下是某论文结论:'神经网络模型A优于传统方法B'。
请验证:
①实验数据是否支持该结论;
②检查对照组设置是否存在偏差;
③重新计算p值并判断显著性。"
-
执行需求
"将以下C语言代码转换为Python,要求:
①保持时间复杂度不变;
②使用numpy优化数组操作;
③输出带时间测试案例的完整代码。"
5、AI缺陷
AI幻觉(AI Hallucinations)是指生成式人工智能模型在生成文本或回答问题时,尽管表面上呈现出逻辑性和语法正确的形式,但其输出内容可能包含完全虚构、不准确或与事实不符的信息。
形成原因:
AI幻觉的产生通常是由于模型在缺乏相关信息 的情况下,通过概率性选择生成内容,而非基 于真实世界的知识库或逻辑推理,这使得其输 出不仅难以信赖,且可能误导用户。
除AI幻觉这一关键缺陷外,潜在的缺点与局限还包括 可解释性、计算成本、数据偏见、实时更新、数据安 全、个人隐私、恶意输出等。
6、提示语链
。。。
7、AI 进阶使用
。。。
8、deepseek

8.1 部署成本
其中最强悍的 671B 版本部署需要极高的硬件配置:64 核以上的服务器集群、512GB 以上的内存、300GB 以上的硬盘以及多节点分布式训练(如 8x A100/H100),还需高功率电源(1000W+)和散热系统。
不同模型版本对应的需求如下:
1、小型模型
DeepSeek-R1-1.5B
CPU:最低 4 核
内存:8GB+
硬盘:256GB+(模型文件约 1.5-2GB)
显卡:非必需(纯 CPU 推理)。
适用场景:本地测试,自己电脑上可以配合 Ollama 轻松跑起来。
预计费用:2000~5000,这个版本普通人是能够得着的。
2. 中型模型
DeepSeek-R1-7B
CPU:8 核+
内存:16GB+
硬盘:256GB+(模型文件约 4-5GB)
显卡:推荐 8GB+ 显存(如 RTX 3070/4060)。
适用场景:本地开发和测试,可以处理一些中等复杂度的自然语言处理任务,比如文本摘要、翻译、轻量级多轮对话系统等。
预计费用:5000~10000,这个版本普通人也行。
DeepSeek-R1-8B
CPU:8 核+
内存:16GB+
硬盘:256GB+(模型文件约 4-5GB)
显卡:推荐 8GB+ 显存(如 RTX 3070/4060)。
适用场景:适合需要更高精度的轻量级任务,比如代码生成、逻辑推理等。
预计费用:5000~10000,这个版本咬咬牙也能上。
3. 大型模型
DeepSeek-R1-14B
CPU:12 核+
内存:32GB+
硬盘:256GB+
显卡:16GB+ 显存(如 RTX 4090 或 A5000)。
适用场景:适合企业级复杂任务,比如长文本理解与生成。
预计费用:20000~30000,这个对 3000 工资的小编来说还是算了。
DeepSeek-R1-32B
CPU:16 核+
内存:64GB+
硬盘:256GB+
显卡:24GB+ 显存(如 A100 40GB 或双卡 RTX 3090)。
适用场景:适合高精度专业领域任务,比如多模态任务预处理。这些任务对硬件要求非常高,需要高端的 CPU 和显卡,适合预算充足的企业或研究机构使用。
预计费用:40000~100000,算了。
4. 超大型模型
DeepSeek-R1-70B
CPU:32 核+
内存:128GB+
硬盘:256GB+
显卡:多卡并行(如 2x A100 80GB 或 4x RTX 4090)。
适用场景:适合科研机构或大型企业进行高复杂度生成任务。
预计费用:400000+,这是老板考虑的,不该我去考虑。
DeepSeek-R1-671B
CPU:64 核+
内存:512GB+
硬盘:512GB+
显卡:多节点分布式训练(如 8x A100/H100)。
适用场景:适合超大规模 AI 研究或通用人工智能(AGI)探索。
预计费用:20000000+,这是投资人考虑的,不该我去考虑。
8.2 部署
8.2.1 安装ollama
macos下可以使用命令安装ollama
brew install ollama
# 安装完成后,启动 Ollama 服务
ollama serve
如果brew安装失败,也可以通过 https://ollama.com/download 下载安装包安装,安装后记得安装命令行
windows下安装ollama后再使用命令部署
8.2.2 部署DeepSeek-r1
我的配置能安装7b/8b/14b版本,32b版本测试很慢且风扇狂转。
## 千问蒸馏 DeepSeek-R1-Distill-Qwen-7B
ollama run deepseek-r1:7b
## Llama蒸馏 DeepSeek-R1-Distill-Llama-8B
ollama run deepseek-r1:8b
## 千问蒸馏 DeepSeek-R1-Distill-Qwen-14B
ollama run deepseek-r1:14b
## 千问蒸馏 DeepSeek-R1-Distill-Qwen-32B
ollama run deepseek-r1:32b
## 删除模型
ollama rm deepseek-r1:32b
8.2.3 配置远程 Ollama 服务
默认情况下,Ollama 服务仅在本地运行,不对外提供服务。要使 Ollama 服务能够对外提供服务,你需要设置以下两个环境变量:
OLLAMA_HOST=0.0.0.0
OLLAMA_ORIGINS=*
# macos下配置
launchctl setenv OLLAMA_HOST "0.0.0.0"
launchctl setenv OLLAMA_ORIGINS "*"
## 重启
launchctl unload ~/Library/LaunchAgents/ollama.plist
launchctl load ~/Library/LaunchAgents/ollama.plist
8.2.4 web访问
可以 部署open-webui
# 本地有ollama
docker run -d \
--name open-webui \
-p 3000:8080 \
-v open-webui:/app/backend/data \
--restart always \
--add-host=host.docker.internal:host-gateway \
ghcr.io/open-webui/open-webui:main
# 连接远程ollama
docker run -d \
--name open-webui \
-p 3000:8080 \
-v open-webui:/app/backend/data \
-e OLLAMA_BASE_URL=https://example.com \
--restart always \
ghcr.io/open-webui/open-webui:main
## 浏览器访问
http://localhost:3000
8.2.5 客户端访问
客户端访问可以安装Cherry Studio或chatbox
Cherry Studio 配合硅基流动的嵌入模型BAAI/bge-m3
也支持知识库。
嵌入模型可以将我们上传的文件转换成计算机容易理解的数字,然后储存到它的向量数据库中。
我们在向它提问时,它就会通过RAG技术,在数据库中搜索相关的答案,最终输出给我们。
8.2.6 部署知识库AnythingLLM
- 1、安装AnythingLLM
- 2、在人工智能提供商-LLM首选项里,选择Ollama作为LLM提供商
- 3、在Ollama Base URL里输入
http://0.0.0.0:11434
- 4、选择本地的DeepSeek大模型
- 5、右上角保存
- 6、返回首页,点击+新工作区
- 7、在知识库里上传内容
上传之后的文件会先到左边的暂存区域(所有知识库共用,所以在有多个知识库的情况下,我们最好在暂存区建文件夹分别管理)
- 8、在对话界面,选择工作区,DeepSeek就会根据里面的文档内容生成更精确的回答
评论区