通过PAI-Model Gallery使用模型模型部署和调用进入Model Gallery页面。 登录PAI控制台。 在顶部左上角根据实际情况选择地域。 在左侧导航栏选择工作空间列表,单击指定工作空间名称,进入对应工作空间内。 在左侧导航栏选择快速开始 > Model Gallery。 在Model Gallery页面右侧的模型列表中,单击通义千问2.5-Coder-32B-Instruct模型卡片,进入模型详情页面。 单击右上角部署,配置推理服务名称以及部署使用的资源信息,即可将模型部署到EAS推理服务平台。 使用推理服务。 服务部署成功后,您可以参考模型详情页面的推理方法,调用模型服务以验证模型效果。 模型微调训练Model Gallery为通义千问2.5-Coder-32B-Instruct模型配置了SFT和DPO两种微调算法,您可以通过开箱即用的方式对该模型进行微调。 SFT监督微调SFT训练算法支持使用JSON格式输入,每条数据由问题、答案组成,分别用"instruction"、"output"字段表示,例如: [ { "instruction": "Create a function to calculate the sum of a sequence of integers.", "output": "# Python code\ndef sum_sequence(sequence):\n sum = 0\n for num in sequence:\n sum += num\n return sum" }, { "instruction": "Generate a Python code for crawling a website for a specific type of data.", "output": "import requests\nimport re\n\ndef crawl_website_for_phone_numbers(website):\n response = requests.get(website)\n phone_numbers = re.findall('\\d{3}-\\d{3}-\\d{4}', response.text)\n return phone_numbers\n \nif __name__ == '__main__':\n print(crawl_website_for_phone_numbers('www.example.com'))" } ]DPO直接偏好优化DPO训练算法支持使用JSON格式输入,每条数据由问题、预期模型输出的答案、不希望模型输出的答案组成,分别用"prompt"、"chosen"、"rejected"字段表示,例如: [ { "prompt": "Create a function to calculate the sum of a sequence of integers.", "chosen": "# Python code\ndef sum_sequence(sequence):\n sum = 0\n for num in sequence:\n sum += num\n return sum", "rejected": "[x*x for x in [1, 2, 3, 5, 8, 13]]" }, { "prompt": "Generate a Python code for crawling a website for a specific type of data.", "chosen": "import requests\nimport re\n\ndef crawl_website_for_phone_numbers(website):\n response = requests.get(website)\n phone_numbers = re.findall('\\d{3}-\\d{3}-\\d{4}', response.text)\n return phone_numbers\n \nif __name__ == '__main__':\n print(crawl_website_for_phone_numbers('www.example.com'))", "rejected": "def remove_duplicates(string): \n result = \"\" \n prev = '' \n\n for char in string:\n if char != prev: \n result += char\n prev = char\n return result\n\nresult = remove_duplicates(\"AAABBCCCD\")\nprint(result)" } ]在模型详情页单击右上角训练。关键配置如下: 数据集配置:当完成数据的准备,您可以将数据上传到对象存储OSS Bucket中,或是通过指定一个数据集对象,选择NAS或CPFS存储上的数据集。您也可以使用PAI预置的公共数据集,直接提交任务测试算法。 计算资源配置:算法需要使用80 GB显存及以上的GPU资源,请确保选择使用的资源配额内有充足的计算资源。其他规模的模型所需资源规格,请参见运行环境要求。 超参数配置:训练算法支持的超参信息如下,您可以根据使用的数据,计算资源等调整超参,或是使用算法默认配置的超参。 超参数 类型 默认值 是否必须 描述 training_strategy string sft 是 训练算法,可以为SFT或DPO。 learning_rate float 5e-5 是 学习率,用于控制模型权重,调整幅度。 num_train_epochs int 1 是 训练数据集被重复使用的次数。 per_device_train_batch_size int 1 是 每个GPU在一次训练迭代中处理的样本数量。较大的批次大小可以提高效率,也会增加显存的需求。 seq_length int 128 是 序列长度,指模型在一次训练中处理的输入数据的长度。 lora_dim int 32 否 LoRA维度,当lora_dim>0时,使用LoRA/QLoRA轻量化训练。 lora_alpha int 32 否 LoRA权重,当lora_dim>0时,使用LoRA/QLoRA轻量化训练,该参数生效。 dpo_beta float 0.1 否 模型在训练过程中对偏好信息的依赖程度。 load_in_4bit bool false 否 模型是否以4 bit加载。 当lora_dim>0、load_in_4bit为true且load_in_8bit为false时,使用4 bit QLoRA轻量化训练。 load_in_8bit bool false 否 模型是否以8 bit加载。 当lora_dim>0、load_in_4bit为false且load_in_8bit为true时,使用8 bit QLoRA轻量化训练。 gradient_accumulation_steps int 8 否 梯度累积步骤数。 apply_chat_template bool true 否 算法是否为训练数据加上模型默认的chat template,以Qwen2系列模型为例,格式为: 问题:<|im_end|>\n<|im_start|>user\n + instruction + <|im_end|>\n 答案:<|im_start|>assistant\n + output + <|im_end|>\n system_prompt string You are a helpful assistant 否 模型训练使用的系统提示语。 单击训练,Model Gallery自动跳转到任务详情页面,并开始进行训练,您可以查看训练任务状态和训练日志。 训练好的模型会自动注册到AI资产-模型管理中,您可以查看或部署对应的模型,详情请参见注册及管理模型。 模型评测科学、高效的模型评测,不仅能帮助开发者有效地衡量和对比不同模型的性能,更能指导他们进行精准地模型选择和优化,加速AI创新和应用落地。 Model Gallery为通义千问2.5-Coder-32B-Instruct模型配置了评测算法,您可以通过开箱即用的方式对该模型(或微调后的模型)进行评测。关于模型评测详细的操作说明,请参见模型评测、大模型评测最佳实践。 模型压缩经过训练后的模型在部署之前可以对模型进行量化压缩,可有效减少存储和计算资源的使用。关于模型压缩详细的操作说明,请参见模型压缩。