本文来源公众号“kaggle竞赛宝典”,仅用于学术分享,侵权删,干货满满。
-
赛题名称:Drawing with LLMs
-
赛题类型:大模型、文生图大模型
-
赛题任务:通过大语言模型生成SVG格式的图像
https://www.kaggle.com/competitions/drawing-with-llms/data
赛题背景
本次任务的目标是根据给定的文本提示生成SVG(可缩放矢量图形)代码,尽可能准确地将其渲染为图像。参与者需要利用Kaggle新推出的“Kaggle Packages”功能来构建提交内容,这是一种用于构建可复用模型的Python库工具。为了帮助大家更好地理解和参与,我们提供了两个入门笔记本:
-
官方入门笔记本:介绍了Kaggle Packages的新功能,并通过一个简单的模型演示了如何使用该工具。
https://kaggle.com/code/dster/drawing-with-llms-starter-notebook
-
Gemma 2入门笔记本:展示了更高级的模型实现,但假设参与者已经熟悉Kaggle Packages的使用方法。
https://kaggle.com/code/ryanholbrook/drawing-with-llms-getting-started-with-gemma-2
赛题背景
在图像生成领域,专门化的解决方案能够显著超越像ChatGPT和Gemini这样令人印象深刻的生成式模型,同时提供更透明的构建方式。尽管大语言模型(LLMs)可能展现出“接近通用人工智能(AGI)的火花”,但它们在生成图像渲染代码方面仍有待提升。
赛题任务
本次竞赛挑战你构建实用且可复用的图像生成解决方案,这些方案将遵循稳健的软件工程模式。你的任务是根据图像的文本描述生成SVG(可缩放矢量图形)代码,使其尽可能贴近描述内容。SVG是一种矢量图像格式,它使用XML描述二维图形,能够在不损失质量的情况下自由缩放大小。
你的提交将通过Kaggle新推出的“Kaggle Packages”功能实现,形式为一个包含predict()
函数的Model
类,该函数能够根据给定的提示生成SVG代码。最终结果将是一系列可部署的模型包,它们将根据其对抽象描述的深度理解以及将其转化为精确可执行代码的能力进行评估。
赛题时间轴
-
2025年2月25日:竞赛开始日期。
-
2025年5月19日:参赛截止日期。在此日期之前,参赛者必须接受竞赛规则,才有资格参赛。
-
2025年5月19日:团队合并截止日期。这是参赛者可以加入或合并团队的最后一天。
-
2025年5月27日:最终提交截止日期。所有参赛作品需在此日期前完成提交。
评价指标
这是一场“Kaggle Packages竞赛”,是首次要求参赛者提交Kaggle Packages的竞赛。这一新功能扩展了在最近几场竞赛中引入的实验性功能,允许你:
-
提交包含
predict()
函数的模型以进行评分; -
创建更简单的解决方案,因为Kaggle的评分基础设施将处理测试集的迭代;
-
通过
kagglehub
分享和发现可复用的、可安装的推理模型,这些模型具有明确的依赖关系。
当你提交你的Package参加本次竞赛时,我们将把你的Notebook的Package安装到一个容器中,该容器将使用你的Notebook的加速器和环境设置,并且禁用互联网。我们的评分系统将调用你的模型对隐藏的测试集运行推理,并确定你的分数。
本次竞赛的提交将根据给定描述与生成的SVG代码之间的平均CLIP相似度进行评估。对于测试集中的每个描述,你的模型需要生成一幅SVG图像,以描绘描述中的场景。我们将使用cairosvg
Python库将每个SVG转换为PNG图像,并在每个描述前添加“SVG illustration of”字样。随后,我们通过SigLIP SoViT-400m模型生成文本描述和PNG图像的特征嵌入,并计算它们之间的余弦相似度。最终得分将是这些相似度分数的平均值。
为了确保生成的图像符合竞赛的精神,SVG代码必须满足以下限制条件:
-
SVG文件大小:每个SVG文件的长度不得超过10,000字节。
-
SVG元素限制:SVG中只能包含允许列表中的元素和属性,禁止使用CSS样式元素。
-
禁止外部数据:SVG中不得包含任何栅格化图像数据或来自外部来源的数据。
赛题数据
本次竞赛的测试数据包含约500条描述,涵盖日常生活中的物品和场景,涉及多个领域。你的目标是构建一个模型,能够根据这些描述生成SVG图像。
这些描述具有以下特点:描述的对象是常见的、通用的主体,不包含任何品牌名称、商标或人名。描述中也不会出现任何形式的人物;描述的主题涵盖大约十几个类别;每条描述的字符数不超过200个,平均长度约为50个字符。
-
train.csv:包含风景、抽象和时尚三个类别中的代表性描述数据。
-
kaggle_evaluation/ :一个Python工具包,包含竞赛辅助功能,例如
test(Model)
函数,该函数通过模拟测试集(test.csv
)来模拟评分系统。 -
kaggle_evaluation/test.csv:一个示例测试数据集,帮助你编写和调试提交的模型。在评分时,该占位符测试数据将被替换为实际的测试数据。
THE END !
文章结束,感谢阅读。您的点赞,收藏,评论是我继续更新的动力。大家有推荐的公众号可以评论区留言,共同学习,一起进步。