前言
大模型(全称为大语言模型,英文名称:Large Language Model
),这个2023年刷爆了互联网圈的“现象级明星”
,几乎以前所未有的姿态,席卷了各行各业,世人一时为之惊叹。同时,也开辟了各大厂商投入AI研发的新赛道。
乘着这波“西风”
,国内大模型开启了雨后春笋般的神奇发育,简直是“一浪翻过一浪,一峰赛过一峰”
。可想而知,这是一次夺目的AI表演,也让每一个普通人有机会亲身参与这次“盛宴”
。
试想,如大模型的第一枪来自吾国,会是一个什么样的前景?
1. 初识大模型
1.1 简介
谈起大模型,我们不得不提ChatGPT —— 一个神奇的机器人,一个可以和你谈天说地的好朋友。它的前身其实是一个GPT(Generative Pre-Trained
,简单讲是一个深度学习模型)。基于GPT,赋予了Chat机制,那么ChatGPT就问世了。在它诞生的过程中,又一次因为Google带来的紧迫性(或者说是先机),ChatGPT捷足先登。否则,我们也很难在2023年就与ChatGPT见面了。
说这么多,ChatGPT不就是一个聊天机器人么,有什么大不了。而且在2023年以前我们已经见过类似的应用了,比如智能客服,智能助手之类的使用。如果你还不了解ChatGPT,我想这么认为也是毫无指摘的,因为表象看确实也“差不多”
。实际上它使用了无监督全流程自学习的全新架构,这种架构只需踩着“历史经验”
向前发展,这似乎越来越趋近于人类思维了。
这就好比人脑一样,当你遇见紧急状况后,第一反应是什么?本能的会从脑海中快速检索之前有咩有发生过,有咩有经验可以翻出来,对不?那么,大模型的“历史经验”
就是人类已知的存储于各个角落的任何数据,不管是结构化,非结构化,只要你能找出来的,统统可以作为它的“口粮”
,进而令其发育为类人智能。
这就是ChatGPT的绝招,在无样本或少量样本的情况下,依然可以做到“有问必答,有求必应”
。这也是AIGC
为何如此盛行于各行各业的原因。
你可以用它做问答小助手,也可以用它做翻译助手, 还可以用它帮你create xxx
。只要你具备足够的想象力,它就能够为你提供不一样的能力。
1.2 使用体验
大模型的本质还是一个神经网络
,这个网络可以帮助用户进行单字符级别的分析和预测,每预测一次,就返回一个计算结果。就像电影一样,一帧一帧的输出,最终形成一段完整的文本。而每一帧代表了一次计算过程。
当然这个过程与你提供的口令(prompt)有关系,它需要将你的口令分隔为一个或多个token,然后开启计算之旅。所以你的口令直接决定了它的行为,也决定了计算的成本。即使它让你难堪(所谓的“幻觉”
),那也在所难免了。
这里博主以阿里的通义千问为例,进行演示,选择一个模型,指定一个场景,接下来就开始愉快的对话吧:
等对话结束后,我们可以看到它的每次计算结果(只呈现局部):
[
{
"requestId": "87627073-8483-9bf8-8ec4-7e0c94b883e7",
"usage": {
"input_tokens": 13,
"output_tokens": 2
},
"output": {
"choices": [
{
"finish_reason": "null",
"message": {
"role": "assistant",
"content": "你好!"
}
}
]
}
},
{
"requestId": "87627073-8483-9bf8-8ec4",
"usage": {
"input_tokens": 13,
"output_tokens": 8
},
"output": {
"choices": [
{
"finish_reason": "null",
"message": {
"role": "assistant",
"content": "你好!大模型通常指的是在人工智能"
}
}
]
}
},
{
"requestId": "87627073-8483-9bf8-8ec4",
"usage": {
"input_tokens": 13,
"output_tokens": 16
},
"output": {
"choices": [
{
"finish_reason": "null",
"message": {
"role": "assistant",
"content": "你好!大模型通常指的是在人工智能领域中,参数量巨大(通常是"
}
}
]
}
},
{
"requestId": "87627073-8483-9bf8-8ec4",
"usage": {
"input_tokens": 13,
"output_tokens": 24
},
"output": {
"choices": [
{
"finish_reason": "null",
"message": {
"role": "assistant",
"content": "你好!大模型通常指的是在人工智能领域中,参数量巨大(通常是千万、亿级甚至更高数量级"
}
}
]
}
},
{
"requestId": "87627073-8483-9bf8-8ec4",
"usage": {
"input_tokens": 13,
"output_tokens": 32
},
"output": {
"choices": [
{
"finish_reason": "null",
"message": {
"role": "assistant",
"content": "你好!大模型通常指的是在人工智能领域中,参数量巨大(通常是千万、亿级甚至更高数量级)、能够处理复杂任务的深度学习"
}
}
]
}
},
{
"requestId": "87627073-8483-9bf8-8ec4",
"usage": {
"input_tokens": 13,
"output_tokens": 255
},
"output": {
"choices": [
{
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "你好!大模型通常指的是在人工智能领域中,参数量巨大(通常是千万、亿级甚至更高数量级)、能够处理复杂任务的深度学习模型。这些模型通过在大量数据上进行训练,能够学习到更深层次的特征表示,从而在诸如自然语言处理、图像识别、语音识别、推荐系统等任务上展现出强大的性能。\n\n大模型之所以能够取得如此显著的效果,主要得益于以下几个方面:\n1. **大规模数据集**:大模型通常需要大量的训练数据来学习各种模式和规律。\n2. **计算资源**:训练大模型需要大量的计算资源,包括高性能的GPU集群和大量的存储空间。\n3. **参数量**:大模型拥有庞大的参数量,能够捕捉到更复杂的模式和细节。\n4. **优化技术**:采用更先进的优化算法和技术,如分层训练、知识蒸馏等,来提高训练效率和模型性能。\n\n大模型的出现和应用,标志着人工智能领域的一个重要转折点,为许多实际应用提供了可能性,如生成式模型、多模态融合、对话系统等。然而,大模型也面临着模型解释性、隐私保护、资源消耗等问题,这些都需要在实际应用中持续探索和优化。"
}
}
]
}
}
]
从上面的结果来看,每次的输出,都需要经过大量的计算,最后却又输出一段完整的看似通顺的“人话”
。这里不得不说数学的妙处,世间的万事万物,皆可以用数学符号去抽象。比如你说的任何一句话,都可以用数学语言进行表达。
2. 学习之旅
对大模型有了整体认知后,当然博主仅仅以问答式大模型为例。所以你可以更广泛的去了解不同领域不同技能的大模型,但是万变不离其宗,本质还是一样的。
如何开始学习大模型呢?先从最简单的地方入手,准备一个Python(推荐
)/Java环境,申请一个大模型API-KEY(行业惯例
),那么你就能够开启大模型之旅了。博主依然以阿里通义千问为例,助你一臂之力。
2.1 通义千问大模型
DashScope通过围绕模型为中心,致力于为AI应用开发者提供品类丰富、数量众多的模型选择,并通过API接口为其提供开箱即用、能力卓越、成本经济的模型服务。各领域模型的能力均可通过DashScope统一的API和SDK来实现被不同业务系统集成,AI应用开发和模型效果调优的效率将因此得以激发,助力开发者释放灵感、创造价值。
阿里通义千问大模型是其大模型产品DashScope
中的一族,可以通过DashScope SDK或API进行模型调用。接下来,博主分解每个动作,通过Python我们获得第一次大模型的使用经验。博主选中的模型,当然是最简单的一个了:Turbo版
。
2.1.1 开通DashScope模型服务灵积
通过阿里云控制台,找到该产品,可以立即免费开通。开通后,我们立即享受30天,100万token的大礼包。
2.1.2 申请一个API-KEY
接下来,可以免费申请一个API-KEY,它是请求通义千问的凭证和唯一“身份证”
,所以不能泄露,后果很严重哦。
2.1.3 安装Python
教程太多了,直接安装Python最新版本,博主不再详述。最后为方便学习,安装一个PyCharm,可以让你的学习过程更愉悦。
2.1.4 安装DashScope SDK
在PyCharm中的terminal
窗口,输入pip3 install dashscope
后,经过大约十几分钟后,你就能够看到successful提示,代表下载并安装成功:
同时,你可以通过PyCharm中的project—>setting
查看是否已安装(存在即安装成功):
2.1.5 使用通义千问大模型
在使用大模型前,博主提醒各位,一定要提前计算一下token,这是大模型的普遍计费依据。token约大,费用越高。不过新开通的用户,阿里免费提供100万个token。
调用通义千问大模型的代码如下,model选择qwen-turbo
:
import dashscope
import random
from http import HTTPStatus
# 建议dashscope SDK 的版本 >= 1.14.0
from dashscope import Generation
# API_KEY,填写上面已申请的API_KEY
dashscope.api_key = "请填写你已申请的API_KEY"
def call_with_messages():
messages = [{'role': 'system', 'content': 'You are a helpful assistant.'},
{'role': 'user', 'content': '如何学习大模型?'}]
response = Generation.call(model="qwen-turbo",
messages=messages,
# 设置随机数种子seed,如果没有设置,则随机数种子默认为1234
seed=random.randint(1, 10000),
temperature=0.8,
top_p=0.8,
top_k=50,
# 将输出设置为"message"格式
result_format='message')
if response.status_code == HTTPStatus.OK:
print(response)
else:
print('Request id: %s, Status code: %s, error code: %s, error message: %s' % (
response.request_id, response.status_code,
response.code, response.message
))
if __name__ == '__main__':
call_with_messages()
如执行正确, 可看到如下返回结果,代表我们通过sdk请求成功了:
至此,我们轻松获得一个大模型的使用经验,同时也能感受它在任何领域都具备的能力。
结语
ChatGPT的问世,一石激起千层浪,AI从此步入凡间,好像任何一个人都能玩的明白,玩的通透了。技术促进人类生产力的发展,那么AI又是其中最耀眼的一颗星,学习它很有趣!
标签:Python,模型,手册,tokens,入门级,API,output,message,ChatGPT From: https://blog.csdn.net/splendid_java/article/details/141059364