大模型发展与学习探索-1
在阅读文章中,这一过程大模型的发展和学习进行了梳理与总结:
一、大模型发展概述
(一)AIGC(Artificial Intelligence Generated Content)
AIGC,即利用人工智能技术,通过对海量数据的学习来自主创造新的内容,涵盖了文本、图像、音频、视频等多种形式。它打破了传统内容创作的局限,为创意产业带来了前所未有的机遇与变革。
(二)国内典型代表 ------ ChatYuan
中国初创公司元语智能(Clue.ai 团队)开发的开源中文对话大模型 ChatYuan 引人注目。其目标是打造一个智能且多功能的对话机器人,支持中英文交互,在语言理解和生成方面表现出色,能够为用户提供更加自然、流畅的对话体验。
(三)国际巨头 ------ 谷歌 Bard
谷歌推出的 Bard 是一款先进的生成式人工智能对话模型。基于深度学习技术构建,具备强大的多模态内容生成能力,不仅能够进行文本对话,还能理解和生成与图像、音频等相关的多模态内容,展现了人工智能在信息处理和交互方面的广阔前景。
(四)Meta 的 LLaMA 系列
LLaMA(Large Language Model Meta AI)作为大规模语言模型,在自然语言处理领域占据重要地位。其基于解码器的 Transformer 架构,融合了 RoPE 位置编码、前置 RMSNorm 层归一化方法以及 SwiGLU 激活函数等多种创新技术。特别值得一提的是,它采用的分组查询注意力机制(GQA),巧妙地平衡了模型的效率和性能,使其在大规模语言处理任务中表现出色。
在阅读一半发现,大模型在半年的时间内,从没有商用开发到开源商用开发,再从大量的参数规模和资金投入中变为小规模的参数量和低成本实现。并且AI使用的范围也不断扩大,从简单的中英文对话到法律、图像的生成,AI在涌入各行各业,并接入各个领域。除此之外,硬件平台的开发也在加速推进模型训练的建设,降低大模型的落地。在模型发展中,模型的对比也衍生出评估模型的工具。
二、智能体初探
智能体是指能够感知环境并自主采取行动以实现特定目标的实体。它具有自主性、反应性、预动性和社交性等基本特性。在大模型的推动下,智能体的研究和应用也迎来了新的发展机遇。
智能体分为几种:规则智能体、模型、搜索等等。
通过AI进行智能体的初体验:
井字游戏
- 简单随机决策
python
import random
empty_cells = [(r, c) for r in range(3) for c in range(3) if self.board[r][c] == ' ']
if empty_cells:
row, col = random.choice(empty_cells)
self.board[row][col] = self.ai
random.choice是通过empty_cells随机在井字格中未填写的空间中进行填写。
- 基于规则的智能决策
python
# 检查是否有获胜机会
for i in range(3):
if self.board[i][0] == self.board[i][1] == self.ai and self.board[i][2] == ' ':
return (i, 2)
if self.board[0][i] == self.board[1][i] == self.ai and self.board[2][i] == ' ':
return (2, i)
# 阻止对手获胜
for i in range(3):
if self.board[i][0] == self.board[i][1] == self.player and self.board[i][2] == ' ':
return (i, 2)
if self.board[0][i] == self.board[1][i] == self.player and self.board[2][i] == ' ':
return (2, i)
# 选择中心或角落
if self.board[1][1] == ' ':
return (1, 1)
corners = [(0,0), (0,2), (2,0), (2,2)]
for corner in corners:
if self.board[corner[0]][corner[1]] == ' ':
return corner
规则的智能决策制定了三个规则:
-
获胜规则:
- 智能体首先检查每一行和每一列,判断是否有两个AI的标记且第三个位置为空。如果有,智能体选择该位置落子,以直接获胜。
-
防守规则:
- 如果没有获胜的机会,智能体检查每一行和每一列,判断是否有两个玩家的标记且第三个位置为空。如果有,智能体选择该位置落子,以阻止玩家获胜。
-
战略规则:
- 如果没有获胜或防守的机会,智能体优先选择棋盘的中心位置(1,1)。
- 如果中心位置已被占据,智能体会选择一个角落位置(优先级:左上角、右上角、左下角、右下角)。
三、注意力模型优化技术
(一)GQA(Grouped - Query Attention,分组查询注意力)
GQA 是一种旨在提高 Transformer 模型注意力机制效率的方法。它通过将查询头分组,并让每组共享键和值矩阵,有效减少了计算量和内存占用,同时在一定程度上保留了模型的性能。在保持较好的生成质量的基础上,显著提升了推理速度,为大模型在实际应用中的性能优化提供了有力支持。
(二)PagedAttention ------ KV Cache 管理的创新方案
在 Transformer 模型的自回归推理过程中,KV Cache(Key - Value Cache)用于存储注意力机制中的键和值,对于提高生成效率至关重要。然而,传统的 KV Cache 管理方式存在内存碎片化和高内存占用等问题。PagedAttention 应运而生,它通过将 KV Cache 分割成固定大小的块(页面),并利用映射表进行管理,有效解决了上述问题。
具体来说,KV Cache 中的键和值被分割成多个固定大小的页面,每个页面能够存储一定数量的 token。每个序列维护一个块表,记录其使用的页面编号。在生成新 token 时,系统会根据块表查找对应的页面,进行注意力计算。这个过程不仅提高了内存的利用率,还降低了内存碎片化,使得 KV Cache 的管理更加高效。在长序列推理和多用户场景下,PagedAttention 显著提高了推理效率,降低了显存占用。
在接下来的学习过程中,我将与大家分享更多关于大模型的学习,也欢迎大家积极参与讨论和研究。让我们一起深入探索大模型的奥秘,共同成长和进步!