通义千问AI挑战赛赛后反思

个人理解:

初赛阶段主要聚焦在如何通过 SFT 提升基础模型的代码能力,需要选手基于最新开源的 Qwen 1.8 模型作为基础模型,上分的关键主要通过收集高质量的代码数据提升模型的在Python, JavaScript, Java, Go, C++, Rust六种编程语言的代码生成能力。

比赛要求采用通义千文模型,因此选手能做的只有微调和数据处理。

微调部分,无非是采用各种tune技术,如prefix-tune,prompt-tune,lora等;数据处理部分则是搜集网络上尽可能相关的数据集,在其上进行finetune。

个人方案

采用了XXXXX数据集,将其从alpha格式改造成了多轮对话模式。

缺点:没有针对性的挑选或改造数据集,没有针对评测数据的特点进行深入研究。举例来说,评测方案里有代码修复的任务,但是自己找的数据集里并没有相关的

第一名方案

初赛:

针对代码修复任务:(构造修复案例,加上改错入口)

通过写prompt让gpt辅助生产数据,主要是对leetcode-rosetta.jsonl、Evol-Instruction-66k、code_alpaca等公开数据集中相关语言的数据进行改造;

每种语言会单独写几个prompt example(覆盖不同的改错类型),给定题目和正确答案,让其把正确答案改为错误,作为fixtests的数据。

同时每条数据会生成对应的declaration、test、entry_point等,并在数据中加上f'Fix bugs in entry_point'的字样,使得构造的数据格式和预测框架更为一致。

针对代码生成任务:(拼接与测试集格式相同的信息)

使用原始数据中content/explanation/instruction等信息生成测试集格式的instruction、prompt、declaration。然后把这些字段信息拼接在一起作为synthesize的sft数据;这样也保证了构造数据的格式和测试集的格式一致

复赛:主要工作还是收集各种相关数据进行清洗和改造

借鉴点:SFT数据对与测试集相似的数据进行过采样;对于英文数据集,可以写prompt让gpt进行翻译

第二名方案

初赛:现在自然语言注释、文本、相关代码的数据集上进行预训练,再在编程训练数据集上进行微调。

利用OSS-INSTRUCT数据进行预训练。OSS-INSTRUCT如何得到的?使用大型语言模型生成,从来开源代码文档,生成符合预先设定的prompt代码数据。【从80K个代码文档中收集了80K个初始种子片段,其中包括40K的Python,以及C++,Java,TypeScript,Shell,C#,Rust,PHP,和Swift各5K。然后,每个收集到的种子代码片段被应用到图2所示的提示模板,一个教师模型将其作为输入,并输出一个代码问题及其解决方案。】

复赛:

收集LeetCode相关的Python语言开源数据,收集LeetCode相关解题思路,用于代码解释

心得:

1.第一步,先研究清楚测试数据是怎么样的

第三名方案

https://tianchi.aliyun.com/forum/post/659773

对数据、模型、框架的讲解都很仔细

初赛:主要还是收集数据,过滤去重,解决了任务不平衡和任务异质性的问题。

相关推荐
T型码农要学习3 分钟前
开源项目5|FileBrowser:免费在线文件管理器!随时随地管控服务器文件
运维·服务器·人工智能·开源
智恒百亿26 分钟前
8 卡 RTX 5090 服务器深度实测:256GB 显存能否支撑 70B 模型微调?选型参考
大数据·运维·服务器·人工智能
ai小陈3 小时前
PyTorch DataLoader数据加载性能排查:GPU利用率低的实操指南
人工智能·pytorch·python·深度学习·ai·gpu算力
测试者家园4 小时前
为什么意图驱动测试是自动化测试的下一站,而不是替代品
自动化测试·软件测试·人工智能·持续测试·ai赋能·智能化测试·软件测试变革
D202020205 小时前
TikTok Shop禁止AI语音直播落地后,跨境卖家如何通过达秘合规调整带货内容
人工智能
像风一样自由20205 小时前
20.Milvus常见问题检索不到维度错误和数据一致性
人工智能·大模型·milvus
现代野蛮人6 小时前
【深度学习实验】—— 基于 LSTM 与 Optuna 调参的丙型肝炎预测
人工智能·深度学习·lstm
支支დ6 小时前
VO by Vercel 前端特定优势:为什么它是构建 AI 应用的新范式
前端·人工智能
ZGIAI6 小时前
ZGI 让那些"等你去处理"的事,真正跑起来
人工智能·架构
ZGIAI6 小时前
ZGI:别再做Agent Demo了,先问问它在业务里能不能撑过下周三
人工智能·架构