百度智能云文心大模型API ERNIE-ViLG模型精调 - 模型训练
文档简介:
用户设置:
在代码最开始处设置您在官网获取到的ak和sk。
import wenxin_api
wenxin_api.ak = "your ak"
wenxin_api.sk = "your sk"
创建精调任务。
数据上传后,启动训练任务。
【百度智能云】文心一言
用户设置
- 在代码最开始处设置您在官网获取到的ak和sk
import wenxin_api
wenxin_api.ak = "your ak" wenxin_api.sk = "your sk"
创建精调任务
- 数据上传后,启动训练任务
from wenxin_api import Train, Dataset from wenxin_api.const import TYPE_TEXT_TO_IMAGE data_id = "your data id" #请查看数据准备页面,上传数据集合并获得id dataset = Dataset.
retrieve(data_id=data_id, api_type=TYPE_TEXT_TO_IMAGE) Train.create(train_datasets=[dataset],
step=200, learning_rate=1e-5, batch_size=4, api_type=TYPE_TEXT_TO_IMAGE)
开始精调任务后,可能需要一些时间才能完成。您的任务在我们系统中按提交时间排队运行,精调模型可能需要几分钟或几十分钟,具体取决于您d的参数配置,举例来说,step设置为500,batch_size设为8的情况下,训练时间大约需要十几分钟。
查询训练好的模型
- 任务完成后,您可以查询训练好的模型名称。
查看模型全集 from wenxin_api import Model from wenxin_api.const import TYPE_TEXT_TO_IMAGE #
查看所有模型 models = Model.list(api_type=TYPE_TEXT_TO_IMAGE) print(models) # 根据model_id查看模型
model_id = "your model id" model = Model.retrieve(model_id=model_id, api_type=TYPE_TEXT_TO_IMAGE)
print(model) # 根据训练任务的task_id查看模型 task_id = "your task id" model = Model.retrieve
(task_id=model_id, api_type=TYPE_TEXT_TO_IMAGE) print(model)
注意:上述填入的model_id和task_id都是int类型的。
- 查询结果返回示例(单个模型)
{ "taskList" : null , "model_state" : 1 , "task_id" : 44 , "model_id" : 132 , "url" :
"http://bj.bcebos.com/api-platform-wenxin/job-0bb62fccdada6394_prompt_embeddings.npy" , "
model_name" : "job-0bb62fccdada6394_prompt_embeddings.npy" , "requestId" : "
67425a1b50d47e22a06379ed38065648" , "log_url" : "http://bj.bcebos.com/api-platform-wenxin/
job-0bb62fccdada6394_log.tar" , "is_public" : 0 , "is_prompt" : 1 , "md5" :
"877b1c6ce35dfaf419796649973ab207" , "timestamp" : "2022-08-17 19:37:28.0" }
获取模型和删除模型
- 针对训练好的模型,您还可以获取和删除模型:
from wenxin_api import Model from wenxin_api.const import TYPE_TEXT_TO_IMAGE # 查看所有模型
models = Model.list(api_type=TYPE_TEXT_TO_IMAGE) # 使用训练任务的task_id获取模型 task_id = "your
task id" model = Model.retrieve(task_id=task_id, api_type=TYPE_TEXT_TO_IMAGE) # 使用model_id获取模型
model_id = "your model id" model = Model.retrieve(model_id=model_id, api_type=TYPE_TEXT_TO_IMAGE)
# 删除模型 model_id="your model id" Model.delete(model_id=model_id, api_type=TYPE_TEXT_TO_IMAGE)
查看、删除、停止任务
- 除了创建微调作业外,您还可以查看所有训练任务、查看指定训练任务、停止训练任务。
from wenxin_api import Train from wenxin_api.const import TYPE_TEXT_TO_IMAGE # 查看所有训练任务
tasks = Train.list(api_type=TYPE_TEXT_TO_IMAGE) print(tasks) train_id="your train task id"
# 查看指定训练任务 task = Train.retrieve(task_id=train_id, api_type=TYPE_TEXT_TO_IMAGE)
print(task) # 停止训练任务 task.stop()
- 查询结果返回示例
{ "job_id":"job-0bb62f210535f7c6", # 训练平台上任务的id "response":"{}",
# 训练成功后该字段下有模型的id "task_state":203, # 训练状态码,以参考状态码表 "task_id":16, # 训练任务id "
task_type":1, # 任务种类,1代表训练任务 "type":"task", }
其中常见的状态码可以参考:常见状态码