首页 > 其他分享 >使用GPT 自动化您的代码库

使用GPT 自动化您的代码库

时间:2023-08-18 11:45:38浏览次数:39  
标签:提示 代码 promptr -- API 自动化 GPT

推荐:使用NSDT场景编辑器助你快速搭建可二次编辑的3D应用场景

介绍

随着人工智能领域的发展和演变,我们已经看到了GPT,ChatGPT,Bard等强大工具的兴起。程序员正在使用这些工具来简化他们的工作流程并优化他们的代码库。它使他们能够更多地专注于构建程序的核心逻辑,而不是更平凡和重复的任务。但是,程序员遇到了将代码复制粘贴到这些模型中、获取建议然后更新其代码库的问题。对于经常这样做的人来说,这个过程变得很烦人。

幸运的是,现在有解决这个问题的方法。让我向您介绍 Promptr,这是一个基于命令行的开源工具,允许程序员在不离开编辑器的情况下自动化他们的代码库。听起来很酷!右?如果您有兴趣了解有关此工具的工作原理、它提供的内容以及如何设置的更多信息?请坐下来放松一下,等我向你解释。

什么是提示器?

提示器是一个 CLI 工具,它使将 GPT 代码建议应用于代码库的过程变得更加容易。您可以重构代码,实现类以通过测试,试验LLM,执行调试和故障排除等,所有这些都只需一行代码即可完成。根据其官方文件:

“这对于 GPT4 最有效,因为它的上下文窗口更大,但 GPT3 对于较小的范围仍然有用。

此工具接受由空格分隔的多个参数,用于指定用于生成输出的模式、模板、提示和其他设置。

一般语法:

promptr  -m <mode> [options] <file1> <file2> <file3> ...

例如:

  • -m, --mode <mode>: 它指定要使用的模式(GPT-3 或 GPT-4)。默认模式为 GPT-3
  • -d, --dry-run: 当仅向模型发送提示但更改未反映在文件系统中时,它是一个可选标志。
  • -i, --交互式: 它启用交互模式并允许用户传递各种输入。
  • -p, --prompt <prompt>: 它是一种非交互模式,它可以是字符串或包含提示的 URL/路径

同样,您可以根据您的用例使用其 GitHub 存储库中提到的其他一些选项。现在,您可能想知道这一切是如何在引擎盖下发生的。所以,让我们来探讨一下。

提示器如何工作?

提示器如何工作?


图片来源:作者

您要做的第一件事是清洁您的工作区域并提交任何更改。然后,您需要编写一个带有明确说明的提示,就好像您正在向没有经验的同事解释任务一样。之后,指定您将随提示一起发送给 GPT 的上下文。请注意,提示是您对 GPT 的指示,而上下文是指 GPT 必须知道才能执行代码库操作的文件。例如

promptr -p "Cleanup the code in this file" index.js

这里的 index.js 指的是上下文,而“清理此文件中的代码”是您对 GPT 的提示。提示器会将其发送到 GPT 并等待响应,因为这可能需要一些时间。然后,GPT 生成的响应首先由提示器解析,然后将建议的更改应用于您的文件系统。就是这样!简单但非常有用的工具。

设置提示器以自动执行代码库

以下是在本地计算机上设置提示器的步骤:

要求

  • 节点.js v18 或更高版本
  • OpenAI Api Key

安装

打开终端或命令行窗口。通过运行以下任一命令(具体取决于您使用的包管理器)全局安装提示器:

npm

npm install -g @ifnotnowwhen/promptr

Yarn

yarn global add @ifnotnowwhen/promptr

您还可以通过将当前版本的二进制文件复制到您的路径来安装 Promptr,但目前仅 macOS 用户支持它。

安装完成后,您可以通过执行以下命令进行验证

promptr --version

设置 OpenAI API 密钥

您需要一个 OpenAI API 密钥才能使用提示器。如果您没有,您可以注册一个免费帐户以获得高达 18 美元的免费积分。

获得密钥后,您必须设置一个环境变量“OPENAI_API_KEY”。

对于 Mac 或 Linux:

export OPENAI_API_KEY=<your secret key>

对于视窗:

单击“编辑系统环境变量”以添加新变量“OPENAI_API_KEY”,并将其值设置为从 OpenAI 帐户收到的密钥。

结论

虽然它允许人们像维护文本文件一样对他们的代码执行操作,但这项技术仍处于早期阶段,并且有一些缺点。例如,如果 GPT 建议删除文件,则可能会丢失数据,因此建议在使用之前致力于您的重要工作。同样,有些人对使用OpenAI API的每代币成本表示担忧。尽管如此,我想知道当我们能够开发可以自我修复的软件时,还有多远。如果您想尝试一下,这里是官方 GitHub 存储库的链接 - 提示器。

原文链接:使用GPT 自动化您的代码库 (mvrlink.com)

标签:提示,代码,promptr,--,API,自动化,GPT
From: https://www.cnblogs.com/mvrlink/p/17640044.html

相关文章

  • DDPM [diffusers] 保姆级代码解释 (1)
    UNet2DModel整体网络结构block_out_channels:参考UNet的思路,收缩阶段图像空间尺寸在变小但特征通道则增加;扩张阶段则相反。conv_in:对输入的像素空间图像进行卷积处理,获得指定通道且与原始图像相同尺寸的第一层特征图down_blocks:依次对应收缩阶段的模块mid_block:对应中间模......
  • Mybatis-Plus代码生成器
    AutoGenerator是MyBatis-Plus的代码生成器,通过AutoGenerator可以快速生成Entity、Mapper、MapperXML、Service、Controller等各个模块的代码,极大的提升了开发效率。测试:packagecom.aiit.mybatisplusdemo;​importcom.baomidou.mybatisplus.annotation.DbType;import......
  • 在Android Studio中统计代码行数可以通过插件或者内置的工具来实现。以下是两种常用的
    在AndroidStudio中统计代码行数可以通过插件或者内置的工具来实现。以下是两种常用的方法:**方法一:使用插件:**1.打开AndroidStudio,点击顶部菜单中的"File"(文件)。2.选择"Settings"(设置)或"Preferences"(首选项),然后在弹出的窗口中选择"Plugins"(插件)。3.在搜索框中输入"Code......
  • 销量排名统计_代码开发
          ......
  • 【地平线5打不开(找不到XINPUT1_3.dll,无法继续执行代码)】
    (报错:找不到XINPUT1_3.dll,无法继续执行代码)报错解决方法首先感谢大佬的工具:工具原作者博客下载DirectXRepair进行自动修复:DirectX_Repair下载下载完成后,解压,运行DirectX_Repair.exe点击检测并修复之后会显示在自动进行修复这里显示修复完成可以点击进行退出C++......
  • 如何高效的阅读项目源代码 All In One
    如何高效的阅读项目源代码AllInOne《代码阁读方法与实践》--(希腊)DiomidisSpinellis著/赵学良译无论是沟通程序的操作,还是将知识存储为可执行的形式,软件的源代码都是最终的介质。我们可以将源代码编译成可执行程序,也可以阅读代码来了解程序的功能及其工作方式,......
  • 8.16代码经验
    头部标签函数的调用和使用文本输入框和下拉框的定义<labelfor="nameInput">姓名:</label>:这是一个标签元素,通过for属性与下面的input元素关联起来。它显示一个标签文本"姓名:"。<inputtype="text"id="nameInput"placeholder="请输入姓名">:这是一个输入框元素,通过type=&q......
  • 【JZOJ7839】神秘代码
    凯尔希我谢谢你lcp的题所以考虑使用$SA$或者$SAM$此处使用大佬提供的$SA$思路PartI首先我们考虑不反转怎么做这其实是一道SA板子题我们将所有的字符串全部用特殊符号隔开变成一个大字符串然后把每个点的$height$数组跑出来对于每一个点的$height$值......
  • 订单统计_代码开发
             ......
  • Linux Shell下awk,sed,cut的常用方法并在自动化运维脚本中联合运用
    AWK处理工具,它可以用于提取、处理和格式化文本数据。它的主要功能是逐行扫描文件,并根据匹配模式执行操作。AWK具有以下主要特点:读取和处理文本文件中的数据根据匹配模式执行操作逐行扫描文件打印指定的列在自动化运维脚本中,AWK可以用于处理日志文件,例如提取特定行的数据、从日志文......