当前位置:   article > 正文

语言模型测试系列【10】

语言模型测试系列【10】

在这里插入图片描述
一个巧合,又测到了新的区别,以下是关于python代码生成的测试效果。
在这里插入图片描述

语言模型

  1. 文心一言
  2. 讯飞星火
  3. 通义千问2.5
  4. 豆包
  5. 360智脑
  6. 百小应
  7. 腾讯元宝
  8. Kimi
  9. C知道
  10. 商量
  11. 智谱清言

这次的测试问题来源于**智谱AI开放平台**的介绍,正好有个python生成的效果说明,于是就在各大平台进行了异常演绎对比,那么让我们看一下对比的这些语言平台实现效果如何吧。

提问及回答

问题:用python画一个爱心
说明:这是一个简单的根据提问,大模型提供可实现的代码效果对比。用了这么久,大模型对算法类的实现,默认都会用python代码来展示,好用啊,也好实现啊。

直接将回答复制上来的话,排版就乱套了,那我还是直接截图吧,代码段单独写出来。

文心一言

### 回答
在这里插入图片描述

代码部分

import turtle  
  
# 设置初始状态  
turtle.speed(1)  # 设置绘图速度为最快  
turtle.bgcolor("black")  # 设置背景颜色为黑色  
turtle.pensize(2)  # 设置画笔粗细  
turtle.color("red", "pink")  # 设置画笔颜色和填充颜色  
turtle.begin_fill()  # 开始填充颜色  
  
# 绘制爱心形状  
turtle.left(140)  
turtle.forward(180)  
turtle.circle(-100, 200)  
turtle.left(120)  
turtle.circle(-100, 200)  
turtle.forward(180)  
  
# 结束填充颜色  
turtle.end_fill()  
  
# 隐藏画笔  
turtle.hideturtle()  
  
# 等待用户关闭窗口  
turtle.done()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

实现效果

这是一个动态绘制心形的效果,绘制的时候看着线条还不错,但绘制完咋就缺了一角?
在这里插入图片描述

讯飞星火

在这里插入图片描述

代码部分

整体来看,简单啊

import numpy as np
import matplotlib.pyplot as plt

t = np.arange(0, 2 * np.pi, 0.01)
x = 16 * np.sin(t) ** 3
y = 13 * np.cos(t) - 5 * np.cos(2 * t) - 2 * np.cos(3 * t) - np.cos(4 * t)

plt.plot(x, y, color='red')
plt.axis('equal')
plt.show()

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

实现效果

原本以为平台有运行功能,能跑起来这个代码段,但实际操作好像报错了,那还是用编译器来实现吧。
在这里插入图片描述
编译器执行效果
在这里插入图片描述

通义千问

在这里插入图片描述

代码部分

import matplotlib.pyplot as plt
import numpy as np

def draw_heart():
    t = np.linspace(0, 2*np.pi, 100)
    x = 16 * np.sin(t)**3
    y = 13 * np.cos(t) - 5 * np.cos(2*t) - 2 * np.cos(3*t) - np.cos(4*t)
    plt.figure(figsize=(8, 8))
    plt.axis('equal')
    plt.plot(x, y, color='red')
    plt.title('Heart Shape')
    plt.show()

draw_heart()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

实现效果

在这里插入图片描述

豆包

在这里插入图片描述

360智脑

在这里插入图片描述
在这里插入图片描述

代码部分

复制很麻烦呀

import turtle

# 设置背景颜色
turtle.bgcolor("white")

# 创建turtle对象
t = turtle.Turtle()

# 设置线宽和颜色
t.width(3)
t.color("red")

# 绘制爱心
t.begin_fill()
t.penup()
t.goto(-100, 0)
t.pendown()
for i in range(2):
    t.circle(100, 90)
    t.circle(-100, 90)
t.end_fill()

# 隐藏turtle
t.hideturtle()

# 完成绘制,程序不退出
turtle.done()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

实现效果

能不能告诉我这是什么?
在这里插入图片描述

百小应

在这里插入图片描述
在这里插入图片描述

代码部分

import turtle

def draw_heart(x, y, size):
    turtle.penup()
    turtle.goto(x, y)
    turtle.pendown()
    turtle.setheading(135)
    turtle.begin_fill()
    turtle.color("red", "red")
    turtle.forward(size)
    turtle.right(90)
    turtle.forward(size)
    turtle.right(90)
    turtle.forward(size)
    turtle.right(90)
    turtle.forward(size)
    turtle.end_fill()

def main():
    turtle.speed(1)
    draw_heart(0, 0, 100)
    turtle.hideturtle()
    turtle.done()

if __name__ == "__main__":
    main()

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

实现效果

这个心形也很特殊呀
在这里插入图片描述

腾讯元宝

在这里插入图片描述
在这里插入图片描述

代码部分

import turtle

# 设置初始位置
turtle.penup()
turtle.left(50)
turtle.forward(133)
turtle.left(50)

# 绘制爱心
turtle.pendown()
turtle.begin_fill()
turtle.fillcolor("red")  # 设置填充颜色为红色
turtle.left(140)
turtle.forward(180)
turtle.circle(-90, 200)
turtle.forward(180)
turtle.left(140)
turtle.end_fill()

turtle.hideturtle()

# 关闭窗口的监听事件
turtle.getcanvas().winfo_toplevel().protocol("WM_DELETE_WINDOW", turtle.bye)

# 启动
turtle.mainloop()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

实现效果

这是啥? 茄子?
在这里插入图片描述

Kimi

在这里插入图片描述
在这里插入图片描述

代码部分

import turtle

# 创建画布和画笔
screen = turtle.Screen()
heart = turtle.Turtle()

# 爱心绘制函数
def draw_heart():
    heart.speed(1)  # 设置画笔速度
    for i in range(200):
        heart.forward(i)
        heart.left(1)
        heart.forward(-i)
        heart.right(1)

# 绘制爱心
draw_heart()

# 隐藏画笔箭头
heart.hideturtle()

# 保持窗口打开直到用户关闭
screen.mainloop()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

实现效果

这个打印机太慢了,等你画完,我都饿死了。不管你是啥了,反正不像心,拜拜了
在这里插入图片描述

C知道

在这里插入图片描述
在这里插入图片描述
惊讶于你思维导图的效果。
在这里插入图片描述

代码部分

import turtle

# 创建一个turtle对象
t = turtle.Turtle()
t.speed(0)  # 设置turtle移动速度为最快

# 定义绘制爱心的函数
def draw_heart(size):
    t.penup()
    t.goto(-size, size * 1.732)  # 上左顶点
    t.pendown()
    t.begin_fill()
    for _ in range(3):
        t.forward(size)
        t.left(140)
    t.forward(size)
    t.left(260)
    t.end_fill()

# 绘制爱心
draw_heart(100)

# 关闭turtle窗口并等待用户关闭
turtle.done()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

实现效果

奇葩的五角星,唉。
在这里插入图片描述

商量

在这里插入图片描述
在这里插入图片描述

代码部分

import numpy as np
import matplotlib.pyplot as plt
# 定义参数
num_points = 1000  # 点的数量
theta = np.linspace(0, 2 * np.pi, num_points)  # 生成一组角度值
# 定义心形的参数方程
x = 16 * np.sin(theta)**3
y = 13 * np.cos(theta) - 5 * np.cos(2*theta) - 2 * np.cos(3*theta) - np.cos(4*theta)
# 绘制心形
plt.figure(figsize=(6, 6))
plt.plot(x, y, 'r')  # 'r' 表示红色
plt.title('Heart Shape')  # 图形标题
plt.axis('equal')  # 确保x和y轴的比例相同,使心形不会被压扁
plt.axis('off')  # 关闭坐标轴
plt.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

实现效果

在这里插入图片描述

智谱清言 GLM-4

在这里插入图片描述
在这里插入图片描述

代码部分

import matplotlib.pyplot as plt
import numpy as np

# Setting the parameters for the heart shape
t = np.linspace(0, 2 * np.pi, 100)
x = 16 * np.sin(t)**3
y = 13 * np.cos(t) - 5 * np.cos(2*t) - 2 * np.cos(3*t) - np.cos(4*t)

# Plotting the heart shape
plt.figure(figsize=(6, 6))
plt.plot(x, y, color='red')
plt.title('爱心')
plt.axis('equal')
plt.show()

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

如果用它提供的代码在本地pycharm编译器上运行,还是有点问题,就是标题的文字显示以及坐标轴的负号显示问题,所以还需要修改一下,但在人家平台上完全没问题。
那么,我加了以下代码来完善。

# 额外增加
# 画图时plt.title()默认是显示英文,如果我们设置标题为中文,会无法显示
plt.rcParams['font.sans-serif']=['SimHei']  # 显示中文用
plt.rcParams['axes.unicode_minus'] = False
##
  • 1
  • 2
  • 3
  • 4
  • 5

实现效果

在这里插入图片描述

对比分析

首先从实现上来说,能完整绘制出心形的有讯飞星火、通义千问2.5、商量和智谱清言,其他几个平台的就不说了,连个心形都画不出来或者画不完整,没得比。
讯飞星火的设计还是不错的,方便复制,还打算在平台运行代码效果,只是后者还没实现,要加油。
智谱清言在这方面做的很好,平台可以直接实现编译效果图,方便取用
商量缺少的事复制代码的快捷方式,如果量大了很难弄
通义千问的中规中矩也挺不错。

从上面几个大模型的回答,从主观意识上对比如下:

模型名称回答内容
文心一言代码部分支持快捷复制,动态绘制,Pycharm执行完成后图形缺失
讯飞星火代码部分支持快捷复制和运行,但平台中运行不起来,Pycharm执行直接绘制出心形画面
通义千问2.5代码部分支持快捷复制,Pycharm执行直接绘制出心形画面
豆包特立独行的语言模型
360智脑复制代码不方便,实现结果异形,完全不知道在画什么
百小应代码部分支持快捷复制,心形变菱形了,是理解问题么?
腾讯元宝代码部分支持快捷复制,心形变茄子了,是理解问题么?
Kimi代码部分支持快捷复制,打印机启动,完全没心
C知道代码部分支持快捷复制,心形变五角星了,是理解问题么?
商量复制代码不方便,Pycharm执行直接绘制出心形画面
智谱清言代码部分支持快捷复制,可以直接在平台实现效果,复制代码到本地实现可能缺少对应配置,需要调整,整体还是不错的

总结

对于我想要的效果来说,当然是看到智谱清言网站的推荐才做的对比,倾向于它是毫无疑问的,其次就是讯飞星火了。 就到这吧,饿了,收尾撤退。

加油~~~

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号