ChatGPT使用教程:怎么用AI生成文本?

admin 商品展示 1

OpenAI所开发的一种大型语言模型为GPT, 其能够被用于诸如问答, 翻译, 文本生成等各类语言处理任务。在本文当中, 我们会阐述如何借着GPT去开展文本生成任务。

chatgpt使用教程

一、简单使用

第一步:进入官网,点击Sign up 完成的注册流程。

ChatGPT使用教程:怎么用AI生成文本?-第1张图片-开云手机入口官网下载-开云app官方最新下载--V3.6.9

之后的第二步, 当你进入dashboard以后呢, 在下方红色的框框那里, 把你的问题填进去, 不管是中文还是英文均可, 是这样一个操作。

ChatGPT使用教程:怎么用AI生成文本?-第2张图片-开云手机入口官网下载-开云app官方最新下载--V3.6.9

第三步:这边就会得到ChaptGPT给你的答案。

二、文本生成任务

步骤1:选择平台

GPT能够于多种平台之上予以使用, 像Google Colab、Hugging Face、Python这些, 在本文里边, 我们会阐述怎样运用Google Colab, Google Colab是一种位于云端的Jupyter Notebook, 它能够提供免费的GPU以及TPU, 所以能够快速运行GPT。

步骤2:准备数据

在运用GPT开展文本生成任务前置条件下, 要准备一个训练数据集, 数据集应当是一个纯文本文件, 该文件之中一行包含一个完整句子或者一段落内容, 数据集能够是任一主题的文本像是包含新闻报道、小说、诗歌诸如此类等的内容。

步骤3:安装依赖项

于前去运用GPT以前, 得要对相关的依赖项展开安装。可于Google Colab其中, 借由以下这般的命令来就进行依赖项的安装:

!pip install transformers

步骤4:导入模型

等到把依赖项安装完成之后, 就要去导入GPT模型。能够运用下面这些代码来进行GPT模型的导入:

tokenizer是通过, 从预训练的, 名为“EleutherAI/gpt-neo-2.7BEleutherAI, gpt-neo-2.7B”的对象里, 来进行获取的。

首先构造一个变量model, 使其等于通过从预训练模型中获取的方式, 也就是从名为“EleutherAI/gpt-neo-2.7B”的预训练模型那里获取得到的用于因果语言模型的汽车模型 对象形成的结果 产出的对象。

对此例子而言, 我们运用了一个称作“gpt-neo-2.7B”的预训练模型, 该模型含有27亿个参数, 能够生成极为复杂的文本。

步骤5:生成文本

如果模型导入达成成功状态, 那么便能够着手运用GPT去生成文本。能够借助以下代码来生成文本。

prompt = "今天天气很好"

调用分词器, 将提示内容进行编码, 返回张量形式的输出并赋值给变量 input_ids, 且指定返回的张量类型为 PyTorch 张量。

output等于, model生成, input_ids, 最大长度为100 , 进行采样是真的。

output经过tokenizer解码变成generated_text, 这一解码过程跳过了特殊标记, 最终得到了generated_text。

print(generated_text)

在该例子里头, 我们运用一个简易的句子当作prompt(输入), 并提出要求, 让GPT去生成100个单词的文本。所生成的文本能够借助“decode”函数来解码, 从而更便于阅读。

步骤6:微调模型

倘若期望让GPT生成某特定主题的文本, 能够运用微调也就是fine - tuning技术。微调意味着在预训练模型之上, 借助特定领域的数据集来对模型实施训练, 以此提升模型在该领域的文本生成能力。以下是微调GPT的步骤:

1、准备这样一套数据集, 这数据集得是特定领域当中的纯文本类型的数据集, 像比如说科技领域, 又或者是金融领域, 再或者是医学等方面的。而且, 这个数据集应该算作是一个纯文本文件, 在这个文件里面每行都包含着一个完整的句子或者段落。

2、经由Tokenizer把数据集予以编码, Tokenizer乃是可以把文本转变成数字表示的一种工具, 并能够运用如下代码来对数据集实施编码。

tokenizer = AutoTokenizer.from_pretrained("EleutherAI/gpt-neo-2.7B")

数据集等于, 打开名为数据集文本为读取模式的文件结果里进行读取各行操作。

encoded_dataset =

对于数据集中的每一行, 使用tokenizer.encode函数, 将该行编码, 同时加入特殊 tokens, 这一操作是这样进行的。

于此例子当中, 我们运用了先前已导入的GPT模型的Tokenizer, 去就数据集展开编码, 而后把编码过后的数据存于一个名为“encoded_dataset”此类的列表之中。

1、采用Trainer开展微调, Trainer作为一个于PyTorch里得以实现的微调工具, 能够助力我们在数据集上进行模型训练, 能够运用以下代码去微调模型:

您提供的内容不是一个完整的句子呀, 请您明确一下具体需求, 以便我按照要求进行精准改写准确提供内容。

训练结果的输出目录是, output_dir='./results'。

确定评估策略为“epoch”之后, 是每个epoch进行一次验证。

save_total_limit被设定为5, 这意味着, 最多能够保存5个模型。

learning_rate=2e-5,

分别针对每个设备的训练批次大小设定为4。

per_device_eval_batch_size=4,

num_train_epochs=3,

weight_decay=0.01,

push_to_hub=False,

用于训练日志输出的目录, 其设定赋值为 './logs' , 以 'logging_dir' 作为标识。

logging_steps=1000,

load_best_model_at_end=True,

名为metric_for_best_model的量, 其值为'eval_loss'。

greater_is_better=False

从变换器中, 导入用于因果语言模型的自动模型, 导入用于语言模型的数据整理器, 一个逗号隔开, 另一个句末有标点符号。

model = AutoModelForCausalLM.from_pretrained("EleutherAI/gpt-neo-2.7B")

trainer = Trainer(

model=model,

args=training_args,

train_dataset 等于 encoded_dataset。

作为语言模型训练的数据整理器, 它被创建为DataCollatorForLanguageModeling, 所依据的分词器为tokenizer, 且不进行掩码语言模型相关操作, 标点为逗号。

trainer.train()

在这个例子当中, 我们借助Trainer对模型开展微调, 运用了先前准备好的编码后的数据集, 并且进行一些训练参数的设置, 像是学习率、batch size等, 微调的过程或许会耗费一些时间, 具体的时间是依据数据集规模以及训练参数来决定的。

ChatGPT使用教程:怎么用AI生成文本?-第3张图片-开云手机入口官网下载-开云app官方最新下载--V3.6.9

步骤7:保存和加载微调后的模型

精细调整完工之后, 能够去把经过精细调整以后模样的模型留存下来, 用以在接下来的任务当中加以运用。能够借助下面表述的代码来留存经过精细调整以后模样的模型:

拿来自于, 传递者们, 管道线路, 这么些个东西。

对被称作“text-generation”的管道, 将模型作为其中的参数, 同时把分词器也作为参数, 之后把这个管道依据设置好的模型与分词器所构成的这些前提条件, 保存到名为“./my_model/”的路径之下。

于这个例子里头, 我们运用了pipeline工具, 把微调之后的模型存放在“my_model”文件夹当中。

要是在往后的任务里要运用微调过的模型, 那么能够借助以下这样的代码去把它给加载好:

从transformers中, 导入pipeline, 导入AutoModelForCausalLM, 导入AutoTokenizer。

分词器, 它是通过从预训练的"./my_model/" 这个路径中, 利用自动词法分析器来获取的。

模型等于, 通过预训练的方式, 从"./我的模型/" 中获取, 用于因果语言模型的自动模型。

一个物件, 暂且称它为生成器, 经由一种管道方式创建, 管道其具体类别为文本生成类, 在创建此管道时所采用的模型被设定为模型这个对象, 同时, 用于该管道的分词器被指定为分词器这个对象。

变量 output 被赋值等于, 调用函数 generator, 传入参数为, 字符串"今天天气不错", 还有参数 max_length 加上等于 50, 参数 do_sample 开启为真, 以及参数 temperature 设定等于 0.7, 最终得到一个结果。

print(output)

在此例子当中, 我们加载了先前进行微调处理之后所留下来的模型, 并且运用该模型去生成文本。我们运用了之前已经导入的pipeline工具, 还朝着其中传入了经过微调的模型以及tokenizer。

我们对pipeline的“text-generation”功能进行了调用, 然后放进了生成文本所需要用到的参数, 所生成的文本被保存在名为“output”的变量当中、且于控制台里被打印了出来。

总结

这篇文章讲述了怎样运用GPT模型去生成文本, 且在特定领域里对模型进行微调 , 于这个过程当中, 我们知晓了如何借助Hugging Face的transformers库, 运用GPT模型生成文本, 还利用Trainer对模型予以微调。

GPT模型存在着诸多潜在用途, 涵盖自动回复, 涉及文本摘要, 包含机器翻译等, 借助微调模型, 我们能够进一步提升模型的准确性, 进而提高其适应性, 以匹配不同领域以及任务的需求。

假如说哪怕你只是稍微有那么一点点对GPT模型以及自然语言处理感到兴趣, 那么在此我们郑重地建议你得深深地进一步投身以研究transformers库还有其他那些与之相关联的工具, 并且还要积极着重去探索更多更多的应用场景以及技术。

标签: ChatGPT AI生成文本 自然语言处理 文本生成 微调模型

上一篇Anthropic发布Claude Fable 5,微软火速上架,员工却用不了?

下一篇当前分类已是最新一篇

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~