国内智能编程助手简易对比:文心一言、通义千问、智谱AI、讯飞星火、Kimi

最近想给IDE选择一个智能编程助手插件,但鉴于国内百花齐放的现状,一时也不好选择用哪个。挑了几个主流的的平台,分别输入“用python实现雪花纷飞的场景”的简单需求,看看效果对比。备注:因国外插件使用成本远高于国内的原因,暂时放弃目前的头牌Copilot。

简单粗暴地甄选,来吧。

1.文心一言

( IDE插件名称:Baidu Comate)

生成代码:

import pygame
import random
import math

# 初始化pygame
pygame.init()

# 设置窗口大小
WIDTH, HEIGHT = 800, 600
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("雪花纷飞")

# 定义雪花类
class Snowflake:
    def __init__(self):
        self.x = random.randint(0, WIDTH)
        self.y = random.randint(0, HEIGHT)
        self.size = random.randint(1, 5)
        self.speed = random.randint(1, 3)
        self.direction = random.randint(0, 360) / 180 * math.pi

    def move(self):
        self.x += self.speed * math.cos(self.direction)
        self.y += self.speed * math.sin(self.direction)

        # 如果雪花移出屏幕,则重新初始化位置
        if self.x < 0 or self.x > WIDTH or self.y < 0 or self.y > HEIGHT:
            self.__init__()

    def draw(self):
        pygame.draw.circle(screen, (255, 255, 255), (int(self.x), int(self.y)), self.size)

# 创建雪花列表
snowflakes = [Snowflake() for _ in range(100)]

# 游戏主循环
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    screen.fill((0, 0, 0))  # 清屏
    for snowflake in snowflakes:
        snowflake.move()  # 移动雪花
        snowflake.draw()  # 绘制雪花
    pygame.display.flip()  # 更新屏幕显示
    pygame.time.wait(10)  # 控制帧率,使动画更流畅

pygame.quit()

#上述代码为修正后的结果,错误的原文代码就不贴了(报错:AttributeError: module 'pygame.math' has no attribute 'pi')。

效果:

备注:百度是唯一一个报了语法问题的,用了智谱AI修正后的效果

2.通义千问

( IDE插件名称:TONGYI Lingma)

生成代码:

import pygame
import random

# 初始化pygame
pygame.init()

# 设置窗口大小
screen = pygame.display.set_mode((800, 600))

# 雪花类
class Snowflake:
    def __init__(self):
        self.x = random.randint(0, 800)
        self.y = random.randint(0, 100)
        self.size = random.randint(5, 20)
        self.speed = random.randint(1, 3)

    def fall(self):
        self.y += self.speed
        if self.y > 600:
            self.y = 0

    def draw(self):
        pygame.draw.circle(screen, (255, 255, 255), (int(self.x), int(self.y)), self.size)

# 创建雪花列表
snowflakes = [Snowflake() for _ in range(100)]

# 游戏主循环
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # 填充背景色
    screen.fill((0, 0, 128))

    # 让雪花下落并绘制
    for snowflake in snowflakes:
        snowflake.fall()
        snowflake.draw()

    # 更新屏幕
    pygame.display.flip()

    # 控制帧率
    pygame.time.Clock().tick(60)

# 退出pygame
pygame.quit()

生成效果:

3.智谱AI

( IDE插件名称:CodeGeeX)

生成代码:

import pygame
import random

# 初始化pygame
pygame.init()

# 设置窗口大小
screen = pygame.display.set_mode((800, 600))

# 雪花类
class Snowflake:
    def __init__(self):
        self.x = random.randint(0, 800)
        self.y = random.randint(0, 100)
        self.size = random.randint(5, 20)
        self.speed = random.randint(1, 3)

    def fall(self):
        self.y += self.speed
        if self.y > 600:
            self.y = 0

    def draw(self):
        pygame.draw.circle(screen, (255, 255, 255), (int(self.x), int(self.y)), self.size)

# 创建雪花列表
snowflakes = [Snowflake() for _ in range(100)]

# 游戏主循环
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # 填充背景色
    screen.fill((0, 0, 128))

    # 让雪花下落并绘制
    for snowflake in snowflakes:
        snowflake.fall()
        snowflake.draw()

    # 更新屏幕
    pygame.display.flip()

    # 控制帧率
    pygame.time.Clock().tick(60)

# 退出pygame
pygame.quit()

生成效果:(你没看错,居然和通义千问生成的一模一样)

4.讯飞星火

( IDE插件名称:iFlyCode)

生成代码:

import pygame
import random

# 初始化pygame
pygame.init()

# 设置屏幕大小
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))

# 设置标题
pygame.display.set_caption("雪花纷飞")

# 定义雪花类
class Snowflake:
    def __init__(self, x, y):
        self.x = x
        self.y = y
        self.speed = random.randint(1, 3)

    def move(self):
        self.y += self.speed
        if self.y > screen_height:
            self.y = -10
            self.x = random.randint(0, screen_width)

    def draw(self, screen):
        pygame.draw.circle(screen, (255, 255, 255), (self.x, self.y), 2)

# 创建雪花列表
snowflakes = [Snowflake(random.randint(0, screen_width), random.randint(0, screen_height)) for _ in range(200)]

# 游戏主循环
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    screen.fill((0, 0, 0))

    for snowflake in snowflakes:
        snowflake.move()
        snowflake.draw(screen)

    pygame.display.flip()

pygame.quit()

生成效果:

5.Kimi

( IDE插件名称:目前还未推出)

生成代码:

import pygame
import random

# 初始化pygame
pygame.init()

# 设置窗口大小
screen_width = 800
screen_height = 600
screen = pygame.display.set_mode((screen_width, screen_height))

# 设置标题和帧率
pygame.display.set_caption("Snowfall")
clock = pygame.time.Clock()
frame_rate = 60

# 雪花类
class Snowflake:
    def __init__(self, x, y, size, speed):
        self.x = x
        self.y = y
        self.size = size
        self.speed = speed
    
    def draw(self, surface):
        pygame.draw.circle(surface, (255, 255, 255), (self.x, self.y), self.size)
    
    def update(self):
        # 雪花下落
        self.y += self.speed
        # 如果雪花飞出屏幕,重新生成在屏幕顶部
        if self.y > screen_height:
            self.y = random.randint(-50, -20)
            self.x = random.randint(0, screen_width)

# 创建雪花列表
snowflakes = []
for i in range(200):
    x = random.randint(0, screen_width)
    y = random.randint(-50, -20)
    size = random.randint(1, 4)
    speed = random.randint(1, 3)
    snowflake = Snowflake(x, y, size, speed)
    snowflakes.append(snowflake)

# 游戏主循环
running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # 填充背景色
    screen.fill((0, 0, 0))

    # 绘制并更新雪花
    for snowflake in snowflakes:
        snowflake.draw(screen)
        snowflake.update()

    # 更新显示
    pygame.display.flip()

    # 控制帧率
    clock.tick(frame_rate)

# 退出pygame
pygame.quit()

生成效果:

通过可选范围内的简单对比,我个人还是喜欢Kimi的“雪花纷飞”的风格,无奈Kimi暂时还没有推出IDE插件,遗憾用不了。那就暂时还是先用zhipuAI吧(之前安装试用过一小段时间)。

这个大模型对比其实并不全面也不客观,仅为个人的选择。如果大家有推荐更好的,欢迎留言,谢谢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/942740.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vscode python pip : 无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。()

问题&#xff1a; PS C:\Users\EDY\Desktop\vscodeTest> pip pip : 无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写&#xff0c;如果包括路径&#xff0c;请确保 路径正确&#xff0c;然后再试一次。 所在位置 行:1 字符: 1 pip …

vue3封装而成的APP ,在版本更新后,页面显示空白

一、问题展示 更新之后页面空白&#xff0c;打不开 &#xff0c;主要是由于缓存造成的 二、解决办法 1、随机数代码实现 使用随机数来动态的生成静态资源目录名可以避免浏览器缓存&#xff0c;但同时每次也会导致浏览器每次都下载最新的资源。如果静态资源过大&#xff0c;可…

HarmonyOS NEXT 实战之元服务:静态多案例效果(一)

背景&#xff1a; 前几篇学习了元服务&#xff0c;后面几期就让我们开发简单的元服务吧&#xff0c;里面丰富的内容大家自己加&#xff0c;本期案例 仅供参考 先上本期效果图 &#xff0c;里面图片自行替换 效果图1代码案例如下&#xff1a; import { authentication } from…

SpringAI人工智能开发框架006---SpringAI多模态接口_编程测试springai多模态接口支持

可以看到springai对多模态的支持. 同样去创建一个项目 也是跟之前的项目一样,修改版本1.0.0 这里 然后修改仓库地址,为springai的地址 然后开始写代码

基础运维学习计划-base版

目录 需要学习的内容&#xff1f; liunx基础 sql/mysql基础 tcp/ip协议基础 http基础 dns基础 网络基础&#xff1a;交换&路由概念&原理 常见网络协议 月学习计划 12.26 日 &#xff08;bilibili自己找视频看看&#xff0c;资源很多&#xff09; 12.27日 1…

2、C#基于.net framework的应用开发实战编程 - 设计(二、三) - 编程手把手系列文章...

二、设计&#xff1b; 二&#xff0e;三、构建数据库&#xff1b; 此例子使用的是SQLite数据库&#xff0c;所以数据库工具用的SQLiteStudio x64&#xff0c;这个是SQLite专用的数据库设计管理工具&#xff0c;其它的数据库管理工具比如DBeaver的使用请见实战工具系列文章。 1、…

shardingsphere分库分表项目实践1-让shardingsphere运行起来

学习新技术最快的方式就是&#xff1a; 1. 先找一个比较完善的demo跑起来 2. 弄清楚用法&#xff1a;配置、原理、使用场景 3. 移植到自己项目上&#xff0c;按照自己需求进行修改优化。 找demo项目的方法&#xff1a;优先去官方git库找&#xff0c;如果没有或者过于简单那么…

【运维笔记】windows 11 中提示:无法成功完成操作,因为文件包含病毒或潜在的垃圾软件。

项目场景&#xff1a; 提示&#xff1a;向日葵远程给客户安装数据库管理软件Navicat 15&#xff0c;提示文件被清理&#xff1a; 原因分析&#xff1a; 提示&#xff1a;可能是文件含有病毒&#xff0c;或者是Windows认为我们下载的软件有病毒&#xff0c;还有就是开发过程做…

使用开源在线聊天工具Fiora轻松搭建个性化聊天平台在线交流

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家&#xff1a;人工智能教程 文章目录 前言1.关于Fiora2.安装Docker3.本地部署Fiora4.使用Fiora5.cpolar内网穿透工具安装6.创建远程连接公网地址7.固定Uptime …

【C#联合halcon实现绘制ROI功能】

前言 C#联合halcon实现绘制ROI功能&#xff1a; C#联合Halcon&#xff0c;使用HDrawingObject、HDrawingObjectXld&#xff0c;绘制矩形、方向矩形、圆形、椭圆、自定义ROI。支持拖动、重设大小、选中。 运行结果 代码 代码结构 MainForm 视图 MainViewModel 视图模型 ROI R…

Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码 【AI辅助开发系列】

&#x1f380;&#x1f380;&#x1f380;【AI辅助编程系列】&#x1f380;&#x1f380;&#x1f380; Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码Visual Studio 安装和管理 GitHub CopilotVisual Studio 使用 GitHub Copilot 扩展Visual Studio 使用 GitHu…

4.FPGA如何实现设计

在前面分别引入了&#xff0c;LUT的知识&#xff0c;全局时钟网络&#xff0c;以及FPGA内部的资源。 LUT的知识&#xff1a; 在FPGA设计中实现的逻辑运算在不借用其他的硬核的基础上都是在LUT中通过查表的方式进行完成的&#xff0c;比如实现的c a & b;就是将a&b的所…

centos权限大集合,覆盖多种权限类型,解惑权限后有“. + t s”问题!

在 CentOS 系统中&#xff0c;权限管理是操作系统的核心功能之一&#xff0c;确保不同用户和进程对文件、目录以及设备的访问被合理控制。 权限系统主要包括传统的 Unix 权限模型、特殊权限&#xff08;SetUID、SetGID、Sticky 位&#xff09;和更精细的访问控制列表&#xff…

不良人系列-复兴数据结构(栈和队列)

个人主页&#xff1a;爱编程的小新☆ 不良人经典语录&#xff1a;“相呴相济 玉汝于成 勿念 心安” 目录 一. 栈(stack) 1. 栈的概念 2. 栈的常见方法 3.栈的模拟实现 ​编辑 二. 队列 1. 队列的概念 2. 队列的使用 2.1 队列的常见方法 2.2 队列的模拟实现 2.3 队列…

【动态规划篇】步步带你深入解答成功AC最优包含问题(通俗易懂版)

本篇小鸡汤&#xff1a;待到苦尽甘来时&#xff0c;我给你讲讲来时路。 欢迎拜访&#xff1a;羑悻的小杀马特.-CSDN博客 本篇主题&#xff1a;解答洛谷的最优包含问题 制作日期&#xff1a;2024.12.23 隶属专栏&#xff1a;C/C题海汇总 ​​ 目录 本篇简介&#xff1a; 一动态…

【大语言模型】ACL2024论文-29 答案即所需:通过回答问题实现指令跟随的文本嵌入

【大语言模型】ACL2024论文-29 答案即所需&#xff1a;通过回答问题实现指令跟随的文本嵌入 目录 文章目录 目录文章信息摘要研究背景问题与挑战如何解决创新点算法模型实验效果推荐阅读指数&#xff1a;★★★★☆ 后记 文章信息 答案即所需&#xff1a;通过回答问题实现指令…

模型的量化(Quantization)

文章目录 一、浮点数格式&#xff1a;FP64, FP32, FP16, BFLOAT16, TF32之间的相互区别1、关于浮点数2、常见的浮点数格式 二、量化&#xff08;Quantization&#xff09;1、基本概念2、量化的实现8bit量化4bit量化 三、QLora四、大语言模型量化方法对比&#xff1a;GPTQ、GGUF…

10. zynq应用开发--camke编译

使用SDK工具 如果只做 Linux 应用开发&#xff0c;只需要一个 sdk.sh 文件即可&#xff0c;可以脱离 Petalinux 和 Vitis&#xff0c;也可以编译其三方的应用&#xff0c;可以说一劳永逸。 配置根文件系统 petalinux-config -c rootfs 编译SDK petalinux-build --sdk Linux主…

CSS学习记录20

CSS 3D 转换 通过CSS transform 属性&#xff0c;您可以使用以下3D转换方法&#xff1a; rotateX()rotateY()rotateZ() rotateX() 方法 rotateX() 方法使元素绕其X轴旋转给定角度&#xff1a; #myDiv {transform: rotateX(150deg); } rotateY() 方法 rotateY() 方法使元…

开发微信小程序的过程与心得

起因 作为家长&#xff0c;我近期参与了学校的护学岗工作。在这个过程中&#xff0c;我发现需要使用水印相机来记录护学活动&#xff0c;但市面上大多数水印相机应用都要求开通会员才能使用完整功能。作为一名程序员&#xff0c;我决定利用自己的技术背景&#xff0c;开发一个…