摆脱Cursor付费限制:Gemini API赋能的免费AI编程新体验

41

在AI辅助编程的浪潮中,Cursor作为一款强大的代码编辑器,受到了众多开发者的青睐。然而,试用期结束后,其模型调用速率的下降,无疑给一些开发者带来了困扰。幸运的是,谷歌Gemini API的出现,为我们提供了一个新的选择。目前,Gemini API在一定程度上是免费的,并且具备强大的上下文处理能力,这使得我们能够将其配置到Cursor中,继续享受高效的编程体验。本文将详细介绍如何配置Cursor使用Gemini API,并分享一些基于此的编程实践。

Gemini API赋能Cursor:配置指南

要让Cursor使用Gemini API,首先需要获取一个有效的API密钥。按照以下步骤操作:

  1. 打开Cursor设置:在Cursor编辑器中,找到设置选项。
  2. 定位模型设置:在设置菜单中,找到与模型相关的选项。
  3. 查找Google API Key:在模型设置中,应该能找到一个名为“Google API Key”的配置项,旁边会有一个链接,提示“your Google AI Studio key”。
  4. 创建API密钥:点击该链接,浏览器会自动打开Google AI Studio网站。如果没有账号需要注册,注册登录进去之后,按照网站的指引,创建一个新的API密钥。务必将生成的密钥妥善保存,因为后续配置需要用到。
  5. 配置Cursor:将刚刚获得的API密钥复制到Cursor的“Google API Key”配置项中。完成以上步骤,Cursor就能通过Gemini API来驱动代码生成和辅助功能了。

Cursor配置Gemini API

需要注意的是,配置Gemini API后,Cursor的某些自动补全功能可能会受到影响。这主要是因为Cursor的设计初衷是与自身模型紧密结合的。不过,我们可以通过与AI聊天的方式来生成代码,然后手动复制到代码文件中。虽然效率上可能略有降低,但可以有效避免付费,对于一些开发者来说,仍然是一个可行的选择。

编程新姿势:AI辅助开发的实践

配置好Gemini API后,我们就可以开始探索一些新的编程姿势了。以下是一些建议:

1. 编写高质量的README.md

一个好的README.md文档,是AI理解项目的基础。通过README.md,AI可以快速了解项目的整体结构、技术栈、功能描述以及关键概念。因此,在README.md中,务必包含以下几个方面的信息:

  • 项目介绍:简要介绍项目的目标、用途和主要功能。
  • 技术栈:列出项目使用的编程语言、框架、库和工具。
  • 功能描述:详细描述项目的各个功能模块,以及它们的作用和交互方式。
  • 名词解释:解释项目中使用的专业术语和缩写,方便AI理解。
  • 目录结构:清晰地展示项目的目录结构,方便AI定位代码文件。

参考GitHub上一些知名项目的README.md,学习它们的编写风格和内容组织方式,可以帮助你写出更清晰、更易于理解的文档。

2. 聊天式代码生成

利用Cursor的聊天窗口,我们可以与Gemini API进行交互,生成代码。使用快捷键Ctrl/Cmd + L可以快速打开聊天窗口。在开始生成代码之前,可以使用“@Codebase”指令,让Cursor读取整个项目。这样,AI就能基于已有的代码和文档,生成更符合项目需求的代码。这一步相当于在当前项目上进行了一次RAG(Retrieval-Augmented Generation),使得生成的代码更加精准。

3. 实例演示:数据库模型生成

假设我们正在使用Gin框架开发一个Web应用,需要生成数据库模型。以下是一些提示词的示例:

  • 基本模型生成
Generate database model based on functional description and existing code, use in Gin framework

这个提示词会告诉AI,我们需要基于项目的功能描述和已有的代码,生成数据库模型,并且使用Gin框架的风格。

  • 排除外键
Don’t use foreignkey

如果不想在数据库中使用外键,可以在聊天框中输入这个提示词。AI会根据这个提示词,生成不包含外键的数据库模型。

  • 自定义主键
gorm.Model ID don’t use uint type, use uuid

默认情况下,GORM(Gin框架常用的ORM库)使用uint作为主键,并且是自增长的。如果想使用UUID作为主键,可以使用这个提示词。AI会生成使用UUID作为主键的数据库模型。这里可以选择不同的UUID库,例如https://github.com/gofrs/uuid 或者 https://github.com/google/uuid

  • 添加注释
add gorm Chinese comment, like `gorm:"comment:菜单名称"`

为了提高代码的可读性,可以要求AI在生成的数据库模型中添加中文注释。例如,可以使用`gorm: