logo

CPM-BEE:百亿参数开源大模型的探索与实践

作者:热心市民鹿先生2024.08.15 03:16浏览量:19

简介:本文介绍了CPM-BEE这一百亿参数的开源中英文双语基座大模型,详细阐述了其特点、部署方法及创建接口服务的步骤,旨在为非专业读者提供易于理解的技术指南。

CPM-BEE 开源大模型介绍

一、CPM-BEE概述

CPM-BEE,作为CPM-Live训练的第二个里程碑,是一款完全开源并允许商用的百亿参数中英文基座大模型。该模型采用Transformer自回归架构(auto-regressive),在超万亿高质量语料上进行预训练,拥有强大的基础能力。CPM-BEE不仅在中英双语上表现优异,还支持广泛的下游任务,如文本生成、翻译、问答等。

二、CPM-BEE的特点

  1. 完全开源与商用友好:CPM-BEE模型完全开源,并允许商用,旨在推动大模型领域的发展。OpenBMB团队始终秉承“让大模型飞入千家万户”的开源精神,鼓励全球范围内的科研机构、企业和个人开发者在遵守开源许可协议的前提下,自由地在CPM-BEE基座模型上进行创新。

  2. 中英双语性能优异:CPM-BEE在预训练语料上进行了严格的筛选和配比,确保在中英双语上均具有亮眼表现。这使得CPM-BEE能够胜任跨语言的任务处理,满足多语言环境下的应用需求。

  3. 超大规模高质量语料:CPM-BEE在超万亿语料上进行训练,是开源社区内经过语料最多的模型之一。通过对预训练语料的严格筛选、清洗和后处理,确保了模型的高质量。

  4. 生态支持:OpenBMB大模型系统为CPM-BEE提供了高性能预训练、适配、压缩、推理等一系列工具的支持。这些工具脚本将帮助开发者高效地进行模型进阶使用。

三、CPM-BEE的部署

1. 服务器配置

  • GPU:推荐配置8*3080TI服务器(一块24G显存的卡即可满足需求)。
  • CUDA:版本需为12.1。

2. 环境安装

安装前,请确保python版本不低于3.7,并根据requirements.txt文件安装所需依赖。具体步骤包括:

  1. 安装PyTorch:适配CUDA 12.1版本,推荐使用pip安装以避免版本冲突。
  2. 安装BMTrain:用于分布式训练。
  3. 安装其他依赖:如jieba、tqdm、tensorboard、numpy、spacy等。

3. 模型下载

4. 测试模型

  • 修改测试文件text_generation.py中的模型路径。
  • 运行测试脚本:python text_generation.py

四、创建接口服务

1. 新建Flask接口

  • 创建一个Python文件(如flask_server.py),用于编写Flask接口。
  • 加载CPM-BEE模型,并配置相关参数。
  • 编写处理请求的路由函数,如/cpmbee/conversation用于处理对话请求。

2. 示例代码

```python
from flask import Flask, request, jsonify
import threading
import torch
from cpm_live.generation.bee import CPMBeeBeamSearch
from cpm_live.models import CPMBeeTorch, CPMBeeConfig
from cpm_live.tokenizers import CPMBeeTokenizer
from opendelta import LoraModel
from flask_cors import CORS
import os

os.environ[“CUDAVISIBLEDEVICES”] = ‘6’
app = Flask(__name
)
CORS(app)

加载模型

config = CPMBeeConfig.from_json_file(“config/cpm-bee-10b.json”)
ckpt_path = “model/pytorch_model.bin”
tokenizer = CPMBeeTokenizer()
model = CPMBeeTorch(config=config)
model.load_state_dict(torch.

相关文章推荐

发表评论