模型作者
大模型实战:LLM五角星团队
模型名字与简介
python代码助手:该模型使用Codefuse-python-en数据集对qwen-1.8b-chat大语言模型进行微调,最后生成一个可以比较准确地回答基础算法python代码实现问题的模型。例如:对模型询问 "使⽤python写快排.", 模型可以给出正确的示例代码。并且该模型具有自我认知能力,可以对"你是谁","你是谁开发的"等问题做出正确的回答。且该模型具备一定的多轮对话能力。
实验环境
gpu型号:Nvidia-smi A10
CUDA版本:12.1
Python版本:3.10.13
Pytorch版本:2.1.2+cu121
TensorFlow版本:2.14.0
使用方法
Clone with HTTP
git clone https://www.modelscope.cn/byf2001/code_interpreter.git
使用clone模型推理
from swift.llm import InferArguments, infer_main
import torch
import os
os.environ["VLLM_USE_MODELSCOPE"] = "false"
infer_args = InferArguments(
ckpt_dir='code_interpreter/',
show_dataset_sample=10)
result = infer_main(infer_args)
训练方法
数据集
Codefuse-python-en数据集
大语言模型
qwen-1.8b-chat大语言模型
超参数
该项目使用Codefuse-python-en数据集对qwen-1.8b-chat大语言模型进行微调。将微调方式sft type改为'full',选择对所有参数进行微调,而不选择lora方式。并使用完整的训练集进行训练,即train dataset sample设置为-1。将system更改设置为'你是一个python代码生成助手,输出格式为:\'\'\'代码+注释\'\'\''。将batchsize设置为1,同时将gradient accumulation steps设置为16,进行梯度累加。将学习率设置为2e-5,warmup ratio改为0.03。将model name中文改为'python代码助手',英文改为'python assistant',将model author中文改为'LLM五角星',英文改为'LLM Star'进一步进行自我认知训练。
指标
训练集上准确率和loss曲线如下图所示:
验证集上准确率和loss曲线如下图所示:
推理效果
在控制台中键入swift web-ui,选择模型路径,然后设置相关参数:生成序列最大长度设为2048,勾选dosample,temperature=0.1,topk=20,topp=0.7,repetitionpenalty=1.05,最后加载模型。
- 询问"你是谁","你是谁开发的":
- 询问"使用python写快排":
- 询问"还有其他实现方法吗"验证多轮对话能力:
评论