CodeGPT 是什么?它真的能写代码吗?

快速导航

核心要点

  • CodeGPT 是一款由人工智能驱动的编码助手,它可以协助程序员进行代码编写和修复,具备代码自动补全和代码解释等功能。
  • CodeGPT 本身是免费使用的,但其部分高级功能的订阅价格从每月9.99美元到49.99美元不等。
  • 尽管 CodeGPT 能够生成代码,但其输出结果可能并非总是完美无缺或符合最佳实践,因此用户需要理解并根据实际情况修改生成的代码。

如果您正在寻找一个能辅助您编写代码的人工智能工具,那么您很可能已经听说过 CodeGPT。它是众多能帮助您进行编程的人工智能工具之一。那么,CodeGPT 真的能编写代码吗?

什么是 CodeGPT?

CodeGPT 是一款专门的扩展程序,它利用各种人工智能(AI)模型来辅助程序员编写和修复代码。 它集成了多种功能,旨在提升编程效率和便捷性,包括自动代码补全、代码解释、重构、文档生成、单元测试、错误检查和错误修复。此外,它还拥有一个类似 ChatGPT 的界面,用户可以直接从代码编辑器中访问。

该扩展的强大之处在于,它允许您连接来自不同供应商(如 OpenAI 和 Google)的多种主流大型语言模型(LLM)。 最重要的是,CodeGPT 允许您创建自己的 AI 代理,这些代理既可以在您的项目中使用,也可以与他人共享。

尽管市面上有多款适用于 Linux、macOS 和 Windows 的代码编辑器,CodeGPT 目前仅支持两种。您可以在 VS Code 或 Cursor (VS Code 的一个分支) 中安装和使用 CodeGPT。

CodeGPT 的费用是多少?

CodeGPT 可以免费下载和安装,但使用该扩展程序的部分功能需要付费。CodeGPT 提供了多种订阅方案,用户可以付费以获取无限制的访问权限。

CodeGPT Plus 提供了三种订阅计划。基础方案的价格为每月 9.99 美元,其次是标准方案(每月 19.99 美元)和高级方案(每月 49.99 美元)。它还提供了一个免费试用期,用户可以通过试用来评估该扩展。每个方案都允许用户访问特定的 AI 代理并进行无限制的交互。

请注意,要无限制地使用第三方 AI 模型,如 OpenAI 的 GPT-4 模型,您需要付费订阅。尽管您可以免费访问 OpenAI 的 GPT-4 模型,但在 VS Code 或 Cursor 中您无法直接使用它。

CodeGPT真的能编写代码吗?

为了评估 CodeGPT 的代码编写能力,我们将使用该扩展来辅助生成两个不同的 Python 代码示例。

首先,我们要求模型使用所有必要的方法在 Python 中生成一个堆栈数据结构。 我们使用了如下提示:

请用 Python 创建一个堆栈,并包含所有必要的方法

模型生成了以下代码:

 class Stack:
def __init__(self):
self.stack = []
def push(self, item):
self.stack.append(item)
def pop(self):
if self.is_empty():
raise IndexError("Pop from empty stack")
return self.stack.pop()
def peek(self):
if self.is_empty():
raise IndexError("Peek from empty stack")
return self.stack[-1]
def is_empty(self):
return len(self.stack) == 0
def size(self):
return len(self.stack)

这个例子表明 CodeGPT 能够使用类来创建堆栈,并包含了必要的错误处理机制。例如,当尝试查看或弹出空堆栈时,代码会抛出相应的错误信息。

在第二个测试中,我们要求 CodeGPT 将来自 JSON 格式的响应数据(来自 JSONPlaceholder API)保存到一个 CSV 文件中。作为参考,JSONPlaceholder API 的响应示例如下:

 {
'userId': 1,
'id': 1,
'title': 'sunt aut facere repellat provident occaecati excepturi optio reprehenderit',
'body': 'quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto'
}

我们向 CodeGPT 提出了以下问题:

我已经向 https://jsonplaceholder.typicode.com/posts/1 发送了一个外部 API 请求,并且收到了响应。 我已经将响应格式化为 JSON 格式,如何将其保存到 CSV 文件中?

CodeGPT 回应的代码如下:

 import csv
import requests
response = requests.get('https://jsonplaceholder.typicode.com/posts/1')
data = response.json()
data = [data]
with open('output.csv', 'w', newline="") as output_file:
writer = csv.DictWriter(output_file, fieldnames=data[0].keys()) writer.writeheader() writer.writerows(data)

总的来说,这个响应是令人满意的;它无需任何修改即可正常运行。CodeGPT 还添加了注释,解释了每一行代码的作用,这对于初次接触特定任务的用户来说非常有帮助。

这里唯一的问题是,在调用 open() 函数时,响应没有指定编码类型。虽然会自动包含默认编码,但建议指定编码类型,这被视为使用 Python 写入文件时的最佳实践。这有助于避免因编码不匹配导致文本出现乱码的问题。

结论:CodeGPT 确实能够编写代码,但您应谨慎使用,因为它并非总是提供最佳的输出。它生成的结果可能存在错误,或者不符合最佳实践。当您使用 CodeGPT 或任何其他人工智能驱动的工具来编写代码时,请务必首先理解代码的功能,而不是简单的复制和粘贴。