AI大语言模型
一、AIGC和生成式AI的概念
1-1、AIGC
Al Generated Content:AI生成内容
1-2、生成式AI:generative ai
AIGC是生成式 AI 技术在内容创作领域的具体应用成果。
目前有许多知名的生成式 AI:
文本生成领域
- OpenAI GPT 系列
- 百度文心一言
- 阿里通义千问
图像生成领域
- Midjourney
- StableDiffusion
- DALL - E 2
代码生成领域
- GitHub Copilot(由 GitHub 和 OpenAI 合作开发)
- CodeGeeX(由字节跳动研发的代码生成模型)
生成式AI是深度学习的一种应用。
二、AI人工智能的子领域
2-1、机器学习
不需要人类做显示编程、让计算机通过算法,自行学习和改进,通过数据和经验来改善自身性能,自动从数据中学习模式和规律,并利用这些规律进行预测和决策。
机器学习的分支:
- 监督学习;
- 无监督学习;
- 强化学习。
1、监督学习
监督学习是指利用一组带有标签(即已知输出结果)的数据来训练模型,让模型学习输入数据和对应标签之间的映射关系。训练完成后,模型就可以对新的、未知的数据进行预测,输出对应的标签。
监督学习的工作模式:你拿着一个苹果和一个香蕉,告诉孩子:“这是苹果,它的形状是圆的,颜色通常是红色或绿色;这是香蕉,它的形状是长条形,颜色通常是黄色。”孩子会学习到特征与类别的对应关系,预测出新拿出的水果是苹果还是香蕉。
在监督学习中,机器学习算法会接受有标签(期望的输出值)的训练数据。每个训练数据点都既包括:输入特征、期望的出数值;
算法的学习目标是学习输入和输出之间的映射关系,从而在给定新的输入特征后能够准确预测出相应的输出值。
经典的监督学习任务:分类、回归(对数值进行预测)
2、无监督学习
算法的任务是自主的发现数据里的模式和规律。
无监督学习的工作模式:你让孩子观察一堆水果,没有直接告诉他每一个水果的名称,而是鼓励他自己找出如何根据形状,颜色等属性将这些水果分组的方法。
经典的无监督学习任务:聚类(把数据进行分组)
在机器学习中,监督学习与无监督学习都需要你明确地告诉机器(或者说孩子)数据的特征(形状与颜色)是什么。
监督学习需要在机器进行学习时,人为提供数据对象的类别(如苹果或香蕉),而无监督学习一般没有预设的类别标识,通过机器自动学习数据的分布并将相似的数据对象归为同类(如红色圆形是苹果)。
3、强化学习
聚焦于智能体(Agent)如何在环境中通过与环境进行交互,不断尝试和学习,以最大化累积奖励。
强化学习模拟了人类和动物通过试错来学习的过程。在强化学习的框架中,智能体处于一个特定的环境中,它会根据当前环境的状态做出一个动作,环境会因为智能体的动作而发生改变,同时给予智能体一个奖励信号,智能体的目标是通过不断地与环境交互,学习到一个最优的策略,使得长期累积的奖励最大化。
强化学习的工作模式为:你不会直接教孩子苹果和香蕉的区别,而是每次展示一个水果让他进行判断。如果他判断正确,就给他一个奖励(比如一块糖果);如果判断错误,则不给奖励。通过反复尝试和反馈,孩子会通过这种奖励机制逐渐学习到如何更准确地判断苹果和香蕉。这种学习过程中的关键在于孩子需要在探索新的判断方法和利用已有经验之间找到平衡,以最大化获得奖励的次数。
应用场景
- 游戏领域:如 AlphaGo 通过强化学习击败人类顶级围棋选手,以及各种电子游戏中的智能对手。
- 机器人控制:使机器人学会完成各种任务,如机器人的导航、抓取物体、行走等。
- 自动驾驶:让车辆学习在不同的交通场景下做出最优的驾驶决策。
- 金融领域:用于投资组合管理、交易策略优化等。
- 资源管理:如数据中心的资源分配、能源管理系统中的能源调度等。
4、深度学习
深度学习是机器学习的一个方法,模拟人类大脑的神经网络结构和功能,让计算机自动从大量数据中学习复杂的模式和特征,以实现对数据的理解、分类、预测和生成等任务。
深度学习的核心基于人工神经网络,特别是深度神经网络(DNN)。
深度学习,使用人工神经网络,模仿人脑处理信息的方式,通过层次化的方法,提取和表示数据的特征。
神经网络是由许多基本的计算和储存单元组成,这些单元被称为神经元。这些神经元通过层层连接来处理数据,所以,深度学习模型通常由许多层。
神经网络可以用于:监督学习、无监督学习、强化学习。
三、大语言模型LLM:Large Language Model
深度学习的应用,专门用于进行自然语言处理任务。
大语言模型是基于海量文本数据进行训练的人工智能模型,它具有强大的语言理解和生成能力,能够处理各种自然语言任务,如文本生成、问答系统、机器翻译、摘要提取等。这些模型通常具有数十亿甚至数万亿的参数,通过学习大量文本中的语言模式、语义信息和知识,来实现对自然语言的有效处理。
大语言模型的例子:
-
OpenAI GPT 系
-
谷歌 PaLM
-
百度文心一言
-
深言科技 DeepSeek 系列
-
DeepSeek - LLM:具备广泛的知识覆盖和强大的语言理解与生成能力。在多个权威评测中表现优异,例如在 MMLU 评测基准中,DeepSeek - LLM 67B 模型取得了较高的分数,超过了 GPT - 3.5 Turbo。
-
DeepSeek - Coder:专注于代码领域,在代码理解和生成方面表现突出。在 HumanEval 代码生成评测集上,DeepSeek - Coder 67B 模型达到了较高的通过率,超越了其他开源模型。
-
-
清华 ChatGLM 系列
大语言模型的应用场景:
大语言模型,首先需要通过大量文本,进行无监督学习。
大模型的大指:训练数据大、参数大!
大语言模型的技术里程碑:
2017年,谷歌团队在论文《Attention Is All You Need》中提出的 Transformer 架构
3-1、RNN:Recurrent Neural Network循环神经网络
在 Transformer 架构提出之前,语言模型的主流架构是RNN模型。
RNN按照顺序逐字处理,每一步的输出取决于先前的隐藏状态和当前的输入,而且要等上一个步骤完成后才能进行当前计算。
缺点:
1、无法并行计算,训练效率低
2、RNN不擅长处理长序列,即长文本。
词之间的距离越远,前面对后面的影响越弱!所以它难以有效捕获到长距离的语义关系。
3-2、Transformer 架构
特点:
1、自注意力机制(解决:RNN不擅长处理长序列的问题)
2、位置编码(词在句子中的顺序)
LLM的技术原理:
预测出现概率最高的下一个词来实现文本生成。
1、编码器:
编码器将输入的文本token化——>向量嵌入——>对向量位置编码——>多头自注意力层
多头自注意力机制:计算自注意力权重
2、解码器
token表示传给解码器,文本经过嵌入层,位置编码——>带掩码的多头自注意力层
带掩码的多头自注意力层:
解码器本质上是在猜下一个最可能得输出,输出是否符合客观事实,模型无从得知,所以模型会一本正经的胡说八道。
【小结】:
编码器用来理解和表示输出序列;解码器用来生成输出序列。
四、炼成ChatGPT
1、通过大量文本,进行无监督学习预训练,得到一个能进行文本生成的基座模型;
基座模型并不等同于chatGPT背后的对话模型,此时模型有预测下一个token的能力,会根据上文补充文本,但并不擅长对话。
给出一个问题,会模拟生成更多的问题,但是并不回答问题。
2、通过人类撰写的高质量对话数据,对基座模型监督微调,得到微调后的模型。
微调后的模型叫:SFT模型,擅长对问题进行回答。
3、用问题和多个对应回答的数据,让人类标注员对回答进行质量排序,基于这些数据,训练出一个能对回答进行评分预测的奖励模型。
3、让第二步得到的微调基座模型对问题生成回答,用奖励模型对回答评分,利用评分作为反馈,进行强化学习训练。
五、调教ChatGPT
提示工程:研究如何提高和AI的沟通质量及效率。核心关注提示的开发和优化。
聊天助手的局限性:
1、对于不了解的内容,会一本正经的胡说八道;
2、没有反思能力
5-1、小样本提示
给出小样本问答的示例,AI会一方面记忆哪些知识点,一方面向示范格式一样模仿回应。
5-2、思维链
AI不适合做数学相关的问题! 小样本提示没什么帮助!
给AI的小样本提示里,不仅包含正确的结果,也展示中间的推理步骤,AI在生成回答的时候,也会模仿着去生成中间的推理步骤,把过程分解。
5-3、分步骤思考
不用思维链,在问题后面加一句,让我们分布思考!
六、武装ChatGPT
LLM模型的短板:
借助外部的工具和数据,把AI武装起来。
6-1、RAG
LLM模型所拥有的知识,收到训练数据的影响,所以,对于小众细分领域+公司私密文档,LLM模型并不知道对应的知识。
解决方式:提供外部文档,让模型访问外部知识库。获得实时且正确的数据。
RAG有利于搭建企业知识库或个人知识库。
chatGPT的一些插件就是针对RAG架构的。
若是会使用GPT的API,还可以用代码实现自己的索引增强生成。——大语言模型的应用开发
6-2、PAL
LLM模型不能用作计算器,不能计算,只是生成下一个可能出现的token回答。
缺点:AI作为网店客服,会计算错订单总额。
解决:不让AI直接生成计算结果,而是借助其他善于做计算的工具,如:Python解释器。
此时,我们给AI的要求就是,在设计计算步骤时,生成得到计算结果所需的代码+思维链,在小样本提示中,写出解决问题所需的变量赋值、数学运算等代码,让模型照猫画虎。
将AI返回的回答给到Python解释器,让Python解释器执行并返回计算的结果,结果再给回到AI。
ChatGPT的Advanced Data Analysis功能,可以被看成PAL的一个示例。
6-3、ReAct
知识截断:
LLM模型所了解的知识,收到训练数据日期的影响。但是,重新训练模型成本很高!
解决:AI对不了解的知识上网搜索,把找到的答案告诉我们。——ReAct模型
让模型动态推理,并采取行动与外界环境互动。+思维链
用小样本提示展示推理与行动结合的框架。
针对问题,拆分步骤:每个步骤:推理+行动+观察。
Action:AI模型所支持的任何行动,不仅是网页搜索。
要把不同外部数据和工具为模型所用,用代码实现,可以借助LangChain框架。帮助简化构建大语言模型应用程序的流程。——大语言模型开发
相关文章:

AI大语言模型
一、AIGC和生成式AI的概念 1-1、AIGC Al Generated Content:AI生成内容 1-2、生成式AI:generative ai AIGC是生成式 AI 技术在内容创作领域的具体应用成果。 目前有许多知名的生成式 AI: 文本生成领域 OpenAI GPT 系列百度文心一言阿里通…...

03-DevOps-安装并初始化Gitlab
Gitlab可以理解为是自己搭建的GitHub,也就是自己的代码仓库。 开启macvlan 在192.168.1.10服务器上,构建Macvlan网络,这种网络模式可以为每个容器独立分配ip。 docker network create -d macvlan \--subnet192.168.1.0/24 \--ip-range192.16…...

Mac重复文件,一键查找并清理的工具
不知果粉们,你们有没有过这样的经历:在翻找重要文件时,突然发现一大堆“孪生兄弟”——Mac重复文件?别担心,你不是一个人!今天,我们就来聊聊“Mac重复文件”,以及如何用几招轻松搞…...

Unity Mesh 切割算法详解
Mesh切割是游戏开发中实现物体断裂、破坏效果的核心技术。本教程将深入解析实时Mesh切割的数学原理,并提供完整的Unity实现方案。 一、切割原理分析 1.1 几何基础 切割平面方程:Ax By Cz D 0 顶点分类:每个顶点到平面的距离决定其位置…...

ASUS/华硕天选1 FA506I 原厂Win10 专业版系统 工厂文件 带ASUS Recovery恢复 教程
华硕工厂文件恢复系统 ,安装结束后带隐藏分区,带一键恢复,以及机器所有的驱动和软件。 支持型号:FA506IV FA506II FA506IU FA506IH 系统版本:Windows 10 专业版 文件: ycoemxt.cn/1205.html 文件格式:工…...

【计算机中级职称 信息安全工程师 备考】密码学知识,经典题目
2022年信息安全工程师下午题 题目 密码学技术也可以用于实现隐私保护,利用加密技术阻止非法用户对隐私数据的未授权访问和滥用。若某员工的用户名为“admin”,计划用RSA 对用户名进行加密,假设选取的两个素数 p47,q71,公钥加密指…...

期权帮|初识股指期货:股指期货的交割结算价是怎么来的?
锦鲤三三每日分享期权知识,帮助期权新手及时有效地掌握即市趋势与新资讯! 初识股指期货:股指期货的交割结算价是怎么来的? 股指期货的交割结算价是通过特定时间段内现货指数的算术平均价来确定的。 这一价格作为现金交割的基准…...

伺服使能的含义解析
前言: 大家好,我是上位机马工,硕士毕业4年年入40万,目前在一家自动化公司担任软件经理,从事C#上位机软件开发8年以上!我们在开发C#的运动控制程序的时候,一个必要的步骤就是对伺服上使能&#…...

数据集成实例分享:金蝶云星空对接旺店通实现库存管理自动化
拆卸父项出库:金蝶云星空数据集成到旺店通企业奇门 在现代企业的运营过程中,数据的高效流动和准确处理至关重要。本文将分享一个实际案例,展示如何通过轻易云数据集成平台,将金蝶云星空的数据无缝对接到旺店通企业奇门࿰…...

Android 常用设计模式和实例
一、什么是设计模式? 设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块…...

模拟(典型算法思想)—— OJ例题算法解析思路
目录 一、1576. 替换所有的问号 - 力扣(LeetCode) 运行代码: 1. 输入和输出 2. 变量初始化 3. 遍历字符串 4. 替换逻辑 5. 返回结果 整体分析 1. 思路总结 2. 为什么要这样设计 3. 时间复杂度与空间复杂度 4. 边界情况 二、495. 提莫攻击 - 力扣(LeetCode) …...

Nginx配置 ngx_http_proxy_connect_module 模块及安装
1、配置完互联网yum源后,安装相关依赖软件包 [root@server soft]# yum install -y patch pcre pcre-devel make gcc gcc-c++ openssl openssh [root@server soft]# yum install openssl* 2、解压缩软件,加载模块 [root@server soft]# ls nginx-1.20.2 nginx-1.20.2.tar.gz …...

项目质量管理体系及保证措施
项目质量管理体系的核心是建立标准化流程、强化全员参与意识、实施动态监控机制。其中,标准化流程是质量管理的基石。例如,某全球500强企业通过引入ISO 9001体系,将项目缺陷率降低了37%。标准化流程不仅能明确各环节的质量要求,还…...

php 实现 deepSeek聊天对话
deepSeek 在 2025年可以说是火热。它可以说是国内版真正义意上的chatgpt。那么,如果我要实现用php 接入 deepSeek 的api呢。其实,方法也很简单。下面的代码我是自己封装过的,大家可以直接拿来使用,记得自己修改下密钥。 function…...

【Unity】性能优化:UI的合批 图集和优化
目录 前言一、合批测试二、图集 前言 注意:DC指的是Draw Call。 温馨小提示:Frame Debugger 窗口(菜单:Window > Analysis > Frame Debugger)会显示绘制调用信息,并允许您控制正在构建的帧的“回放”…...

ASP.NET Core SignalR案例:导入英汉词典
Ecdict 下载词典文件stardict.7z,解压,stardict.csv是一个CSV格式的文本文件,文件的第一行是表头,除第一行外,其他每行文本是一个单词的相关信息,用逗号分隔的就是各个列的值。英汉词典ECDICT中导入单词到…...

C++ 通过XML读取参数
目录 方法1:一次读取一个参数,每读取一个参数调用一次函数 方法2:一次性读取一个节点中的所有参数,然后调用一次函数 方法3:一次性读取所有参数 推荐方案 示例代码 总结 0、XML示例 <ConfigurationSettings&…...

WiFi配网流程—SmartConfig 配网流程
目录 📌 SmartConfig 配网流程 👉 阶段 1:设备进入配网模式 👉 阶段 2:手机 App 发送 Wi-Fi 配置信息 👉 阶段 3:设备解析 Wi-Fi 配置,连接家庭网络 👉 阶段 4&…...

哪些情况会导致JVM内存泄露
JVM内存泄露通常由以下情况导致: 1. 未释放的对象引用 静态集合类:静态集合(如HashMap、ArrayList)持有对象引用,导致对象无法被回收。缓存未清理:缓存中的对象未及时清除,长期占用内存。 2.…...

蓝桥杯K倍区间(前缀和与差分,取模化简)
输入 5 2 1 2 3 4 5 输出 6 思路:首先由连续子串和可以想用前缀和,由于加减法总和取模和分别取模结果不受影响,所以我们前缀和之后直接取模方便观察性质,本题前缀和:1,3,6,10&#…...

2025上半年还可以参加那些数学建模竞赛?
数学建模比赛每年有20多场,各大比赛的含金量究竟如何?哪些是真正的国赛?如何选择合适的数学建模竞赛?今天将为你全面解析,从竞赛简介、主办单位、竞赛级别、竞赛时间、报名费用、参赛人员、奖项设置、综合难度、竞赛含…...

网易日常实习一面面经
1. 自我介绍 2. 两道代码题: 第一道题:写一道链表排序题要求空间复杂度O(1) :已ac 插入排序算法 时间复杂度 O(N^2),空间复杂度O(1) class ListNode{int val;ListNode next;public ListNode(int x) {this.val x;} } public cl…...

Excel 笔记
实际问题记录 VBA脚本实现特殊的行转列 已知:位于同一Excel工作簿文件中的两个工作表:Sheet1、Sheet2。 问题:现要将Sheet2中的每一行,按Sheet1中的样子进行转置: Sheet2中每一行的黄色单元格,为列头。…...

Python的
& 运算符可用于不同集合类型,它主要用于集合的交集操作 下面分别介绍它在 set(集合)和 frozenset(不可变集合)这两种常见集合类型中的使用 set 类型 set 是 Python 中内置的可变集合类型,使用 & …...

【个人开发】cuda12.6安装vllm安装实践【内含踩坑经验】
1. 背景 vLLM是一个快速且易于使用的LLM推理和服务库。企业级应用比较普遍,尝试安装相关环境,尝试使用。 2. 环境 模块版本python3.10CUDA12.6torch2.5.1xformers0.0.28.post3flash_attn2.7.4vllm0.6.4.post1 2.1 安装flash_attn 具体选择什么版本&…...

ASP.NET Core SignalR身份验证
在需要登录才能访问的集线器类上或者方法上添加[Authorize]。也支持角色等设置,可以设置到Hub或者方法上。 配置好User、Role、MyDbContext、JWTSettings、IdentityHelper Program.cs using SignaIR的基本使用; using Scalar.AspNetCore; using Identity框架; us…...

微信小程序(第一集)
app.json {// 定义小程序的所有页面路径,数组中的第一个页面是首页"pages": ["pages/index/index", // 首页"pages/logs/logs" // 日志页面],// 设置小程序的全局窗口外观(比如导航栏和背景颜色)"wind…...

为什么细胞是圆的?
从受力方面分析 以细胞重心 O O O为原点,建立平面直角坐标系 x O y xOy xOy, x 、 y x、y x、y正半轴交细胞于A,B 设 f θ ∑ ∀ P ∈ C , ∠ P O A θ P O ∑ ∀ P ∈ C , ∠ P O A θ 1 f_\theta\dfrac{\sum_{\forall P\in C\ \ , \an…...

游戏引擎学习第96天
讨论了优化和速度问题,以便简化调试过程 节目以一个有趣的类比开始,提到就像某些高端餐厅那样,菜单上充满了听起来陌生或不太清楚的描述,需要依靠服务员进一步解释。虽然这听起来有些奇怪,但实际上,它反映…...

本地优先的分布式锁实现
本地优先分发锁旨在通过使用本地锁优先来减少分发锁服务器的并发压力。如图1所示,当请求想要获取分发锁时,该请求必须首先获取JVM锁(本地锁)。通过这样做,对于特定的锁密钥,分布式锁服务器将只承载固定数量…...