如何让 DeepSeek 画画

· · 科技·工程

如何让 DeepSeek 画画

前言

众所周知,DeepSeek 系列是纯文本模型,没法直接画画,那我们就真的没办法了吗?当然是有的!我们知道 DeepSeek 可以绘制 \LaTeX 公式,那么我们就可以让 DeepSeek 用 \LaTeX 画画。

实现

$$ \rule{50pt}{0.4pt} $$ 同样的,我们也可以用`\rule{9pt}{9pt}`画一个方块。 $$ \rule{9pt}{9pt} $$ 但这个方块只能是黑色的,这时候就要请`\color`出场了。`\color`可以更改元素的颜色,语法是`\color{x}{y}`,其中`x`为要设定的颜色,`y`表示要更改的元素。例如我们可以写一个绿色的公式: ```LaTeX \color{green}{1 + 1 = 2} ``` $$ \color{green}{1 + 1 = 2} $$ 我们也可以结合`\rule`和`\color`,来画一个绿色的方块。 ```LaTeX \color{green}{\rule{9pt}{9pt}} ``` $$ \color{green}{\rule{9pt}{9pt}} $$ 我们不妨把一个方块看作一个像素点,这样我们就可以组合一系列“像素”,形成一幅像素画。 ```LaTeX \color{red}{\rule{9pt}{9pt}} \color{green}{\rule{9pt}{9pt}} \\ \color{blue}{\rule{9pt}{9pt}} \color{yellow}{\rule{9pt}{9pt}} ``` $$ \color{red}{\rule{9pt}{9pt}} \color{green}{\rule{9pt}{9pt}} \\ \color{blue}{\rule{9pt}{9pt}} \color{yellow}{\rule{9pt}{9pt}} $$ 但我们能发现,两行像素之间会出现一条奇怪的缝隙,出现这个的原因是 $\LaTeX$ 并不会在换行时把两个公式挤在一起,而是会故意加入缝隙,不然就会像下面这样: $$ 1 + 1 = 2 \\[-6pt] 2 + 1 = 3 $$ 但是这个功能会对我们的像素画造成极大的影响,所以我们需要手动减小行间距。具体来说,就是要将原先强制换行`\\`变为`\\[-xpt]`,这里`x`表示要减小的行间距。根据我的测试,在像素大小为 $9\mathrm{pt}$ 时,使用`\\[-4pt]`效果最好。改进之后我们的像素画就像这样: $$ \color{red}{\rule{9pt}{9pt}} \color{green}{\rule{9pt}{9pt}} \\[-4pt] \color{blue}{\rule{9pt}{9pt}} \color{yellow}{\rule{9pt}{9pt}} $$ 可以看到,各个像素都紧紧地挨在一起,没有了丑陋的缝隙。但现在我们每绘制一个像素都要打长长的公式,这对于 DeepSeek 这种文本模型而言非常不友善,因此我们就需要`\newcommand`命令,它可以定义一条新的公式。例如我们定义`\px`命令为`\color{x}{\rule{9pt}{9pt}}`,`x`为像素的颜色,用`\newcommand`定义就是这样: ```LaTeX \newcommand{\px}[1]{\color{#1}{\rule{9pt}{9pt}}} ``` 这里`[1]`表示有一个参数,`#1`表示第 $1$ 个参数。定义完`\px`后,我们就可以在下文直接使用`\px`。 ```LaTeX \newcommand{\px}[1]{\color{#1}{\rule{9pt}{9pt}}} \px{red} \px{blue} \\[-4pt] \px{blue} \px{yellow} ``` 对比之前: ``` \color{red}{\rule{9pt}{9pt}} \color{green}{\rule{9pt}{9pt}} \\[-4pt] \color{blue}{\rule{9pt}{9pt}} \color{yellow}{\rule{9pt}{9pt}} ``` 可见,用了`\newcommand`后,我们的公式简洁了很多。 ## Prompt ``` 你需要用数学公式渲染一幅像素画,请不要调用内置的绘制图像能力,仅使用文本回复,必须以数学公式的格式渲染出整个像素画。一定要把这幅画给我展示出来,不要给我看源码。所有像素画的代码用$$括起来输出。 以下是开头部分,你必须在像素画前面加入这一部分。 \newcommand{\px}[1]{\color{#1}{\rule{9pt}{9pt}}} 以下是内容部分。你必须使用\px指令绘制像素,格式为\px{像素的16进制rrggbb颜色值},每个像素之间必须用 空格分开,空白像素必须用\px{ffffff},每一行像素必须以 \\双反斜线 + [-4pt] 双反斜线结尾,注意不是单反斜线,而是双反斜线,也就是两个反斜线。这是一个2*2的像素画例子: $$ \px{ff0000} \px{00ff00} \\[-4pt] \px{0000ff} \px{ff00ff} $$ <要求> ``` ## 尾声 这是我让 DeepSeek 画的一个玻璃弹珠 ~~虽然一点都不像~~。 ![](https://cdn.luogu.com.cn/upload/image_hosting/a2gf1v4q.png) 本人不是专业提示词工程师,如果能改进,请在评论区指出,这对我的帮助非常大。