基于Python的大模型学习手册(入门级)

前言

在这里插入图片描述

大模型(全称为大语言模型,英文名称:Large Language Model),这个2023年刷爆了互联网圈的“现象级明星”,几乎以前所未有的姿态,席卷了各行各业,世人一时为之惊叹。同时,也开辟了各大厂商投入AI研发的新赛道。

乘着这波“西风”,国内大模型开启了雨后春笋般的神奇发育,简直是“一浪翻过一浪,一峰赛过一峰”。可想而知,这是一次夺目的AI表演,也让每一个普通人有机会亲身参与这次“盛宴”

试想,如大模型的第一枪来自吾国,会是一个什么样的前景?

1. 初识大模型

1.1 简介

谈起大模型,我们不得不提ChatGPT —— 一个神奇的机器人,一个可以和你谈天说地的好朋友。它的前身其实是一个GPTGenerative 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又是其中最耀眼的一颗星,学习它很有趣!


在这里插入图片描述

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值