8 个用于 R 编程的 ChatGPT 工具

无需对特定主题进行微调或培训,ChatGPT 可以回答有关各种技术主题的问题,包括如何编写 R 代码。这意味着任何R程序员都可以使用ChatGPT的强大功能,即使是那些对大型语言模型知之甚少的人。(大型语言模型(LLM)是支撑OpenAI的ChatGPT等AI聊天机器人的技术。

围绕 ChatGPT 和 R 正在形成一个生态系统,这使得将 AI 技术整合到您的 R 语言工作流程中变得容易。但是在开始将 ChatGPT 和与之相关的工具用于 R 中的项目之前,需要记住一些重要事项:

  1. 您使用这些工具提出的所有要求都会发送到OpenAI的服务器。不要使用 ChatGPT 工具处理敏感信息。
  2. ChatGPT 可能会自信地返回错误的答案。即使是不正确的响应也可以是一个节省时间的起点,但不要假设代码会完全按照您的期望执行。德克萨斯基督教大学(Texas Christian University)副教授、流行的R包的作者凯尔·沃克(Kyle Walker)最近在推特上表示,如果你很好地理解一个主题,ChatGPT可以“增强你的工作”,或者它会让你“因为不知道自己在做什么而暴露出来”。区别在于知道AI输出何时不正确。始终检查 ChatGPT 的回复。tidycensus
  3. ChatGPT 可以对同一查询生成不同的响应,有些答案可能是准确的,而另一些则不准确。例如,当我多次请求带有蓝色条形的条形图时,代码有时会生成带有蓝色条形的图形,而其他图形则不会生成,即使我提交了完全相同的请求也是如此。如果您需要可重现的工作流程,这显然不太理想。ggplot2
  4. 如果您正在使用的包最近有更新,ChatGPT 不会知道它,因为它的训练数据将在 2021 年结束。
  5. 本文中的大多数资源都要求您拥有自己的 OpenAI API 密钥,并且该 API 不是免费使用的。虽然目前价格很低,但不能保证它会保持这种状态。ChatGPT 2.10 涡轮增压模型的当前定价是每 000,3 个代币 5 美分。代币能给你带来什么?例如,从 234 行 mpg 数据集创建散点图的请求花费了 38 个代币,只是几分之一美分。
  6. 向 ChatGPT 寻求编码帮助不太可能让您陷入 AI 种族和性别偏见的道德规范中。然而,关于为 OpenAI 提供更多数据是否明智,人们进行了激烈的讨论;如何抓取和重新利用训练数据的道德规范;以及是否最好使用开源大型语言模型(例如H2O.ai的h2oGPT)而不是OpenAI的。这些困境是每个人和组织自己解析的。然而,在撰写本文时,根本没有特定于R的LLM工具可以与围绕ChatGPT构建的工具相媲美。

现在,让我们来看看目前可用的一些最值得注意的以R为中心的ChatGPT资源。

开放空气

OpenAIR软件包是将ChatGPT技术整合到您自己的R应用程序中的绝佳选择,例如将用户输入发送到OpenAI API的Shiny应用程序。您可以使用函数注册密钥。openai_api_key(“YOUR-KEY”)8 个用于 R 编程的 ChatGPT 工具

其功能使您可以选择使用 将结果打印到控制台,使用 将结果另存为文本,或使用 返回完整的 API 响应对象。响应对象是一个列表,其中还包括使用的令牌等信息。chat()chat(“My request”)my_results <- chat(“My request”, output = “message”)my_results_object <- chat(“My request”, output = “response object”)

其他有用的函数包括计算字符串发送到 API 时将花费的 ChatGPT 令牌数量,从包含代码文本说明的 ChatGPT 响应中获取 R 代码,以及获取当前 ChatGPT 的 ID(如果要将复杂的应用程序分解为较小的函数,则很有用)。count_tokens()extract_r_code()get_chatlog_id()

该软件包还具有一些通用编码功能。例如, 生成一个提示,询问您的输入以及您希望以哪种语言编写代码。,这是特定于 R 的,可以执行您所期望的。write_code(“filename”)refactor()

write_code1-100941394-large

莎朗·马赫利斯的屏幕截图

图1.为生成的代码选择语言。

还有一些函数可以在 Python 和 R 或 Java 和 R 之间进行转换,尽管您最终可能会收到警告消息,例如“从 R 到 Python 的转换可能会导致无效的 Python 代码。请仔细验证输出代码!

在 R 控制台中运行以查看其许多其他函数。help(package = “TheOpenAIR”)

该软件包由瑞士圣加仑大学助理教授Ulrich Matter和圣加仑博士生Jonathan Chassot提供,正在CRAN上。

此应用程序是采样 ChatGPT 和 R 的一种优雅而简单的方法。 上传数据集,提出问题,并观察它生成 R 代码和结果,包括图形。虽然它被命名为RTutor,但该应用程序也可以生成Python代码。

RTutor 在 https://rtutor.ai/ 的网络上。它是目前列出的唯一不需要 ChatGPT API 密钥即可使用的应用程序或软件包,但系统会要求您提供自己的密钥以供大量使用,以免向创建者的帐户收费。

rtutor_03-100940260-large 0)和红色(如果值为 <0)排序而生成的条形图。” width=”1200″ height=”623″ border=”0″ data-imageid=”100940260″ data-license=”IDG” data-original=”https://images.idgesg.net/images/article/2023/04/rtutor_03-100940260-large.jpg?auto=webp&quality=85,70″ data-mce-src=”https://images.idgesg.net/images/article/2023/04/rtutor_03-100940260-large.jpg?auto=webp&quality=85,70″>

图2.要求 RTutor 创建条形图时的结果

该应用程序的“关于”页面解释说,RTutor 的主要目标“是帮助具有一些 R 经验的人学习 R 或提高工作效率……RTutor 可用于使用 R 快速加快编码过程。它为您提供了要测试和优化的代码草稿。警惕错误和错误。

RTutor 的代码是开源的,可在 GitHub 上找到,因此您可以安装自己的本地版本。但是,许可仅允许将应用用于非营利或非商业用途,或用于商业测试。RTutor 是南达科他州立大学生物信息学教授 Steven Ge 博士的个人项目。

代码术语

这个多语言应用程序将代码从一种编程语言“翻译”到另一种编程语言。可用的语言包括Java,Python,JavaScript,C,C++,PHP等,包括R。这只是一个 Web 应用程序,可在 https://analytica.shinyapps.io/codelingo/ .您需要输入 OpenAI API 密钥才能使用它(您可能需要在测试后重新生成密钥)。

codelingo03-100940261-large

Sharon Machlis 的屏幕截图

图3.CodeLingo 应用程序中的 ChatGPT 尝试将 ggplot2 图形代码转换为 Python

使用相当难以学习的D2 JavaScript库将ggplot3 R图的代码转换为JavaScript生成的输出的请求,而不是JavaScript新手更有可能想要的东西,例如Observable Plot或Vega-Lite。

转换为 Python 的请求(如图 3 所示)更直接,并且使用了我期望的库。但是,ChatGPT并不了解“Set1”是ColorBrewer调色板,不能直接在Python中使用。与许多 ChatGPT 使用一样,在编程语言之间翻译代码可能会为您提供一个有用的起点,但您需要知道如何修复错误。

该应用程序由Analytica Data Science Solutions创建。

问格普特

这个软件包 https://github.com/JBGruber/askgpt 提供,对于希望在控制台中使用 ChatGPT 的首次用户来说,这是一个很好的起点,部分原因是它在初始启动时提供了一些说明。加载包,它的响应如下:library(askgpt)


Hi, this is askgpt ☺.
 To start error logging, run `log_init()` now.
 To see what you can do use `?askgpt()`.
 Or just run `askgpt()` with any question you want!

在不先存储密钥的情况下使用该函数,您将看到有关如何获取 API 密钥的消息:login()


 It looks like you have not provided an API key yet.
1. Go to <https://platform.openai.com/account/api-keys>
2. (Log into your account if you haven't done so yet)
3. On the site, click the button + Create new secret key to create an API key
4. Copy this key into R/RStudio

系统会要求你将密钥保存在密钥环中,然后就可以进行未来的会话了。如果密钥已存储,则不返回任何消息。login()

askgpt的默认设置是将查询结果存储为对象,以便将它们保存到如下所示的变量中:


barchart_instructions <- askgpt("How do I make a bar chart with custom colors with ggplot2?")

提交查询,您将首先看到:


GPT is thinking  

这样,您就知道您的请求已发送,并且应该会得到答复,而不是想知道点击提交后发生了什么。

除了包的一般功能外,还有一些特定于编码的函数,例如 、 和 。这些将涉及将响应剪切并粘贴回源代码中。askgpt()annotate_code()explain_code()test_function()

对于那些熟悉 OpenAI API 的人来说,该包的功能允许您设置 API 参数,例如要使用的模型、您愿意为每个请求花费的最大代币以及您想要的响应温度(我将在本文后面更详细地解释)。chat_api()

该函数返回一个列表,其中响应的文本部分位于 。其他有用的信息也存储在列表中,例如使用的令牌数量。chat_api()YourVariableName$choices[[1]]$message$content

该软件包由阿姆斯特丹自由大学的博士后研究员Johannes Gruber创建。它可以从CRAN安装。askgpt

GPT工作室

这个软件包及其兄弟(下面讨论)具有 RStudio 加载项来与 ChatGPT 配合使用,尽管也有一些命令行函数可以在任何 IDE 或终端中使用。gpttools

您可以从代码源窗格上方的加载项下拉菜单或通过 RStudio 命令面板 (Ctrl-shift-p) 搜索它们来访问 RStudio 中的加载项。

根据软件包网站,是一个通用的助手,“供R程序员轻松地将大型语言模型(LLM)的使用合并到他们的项目工作流程中。它在CRAN上。gptstudio

一个加载项 ChatGPT 启动了一个基于浏览器的应用,用于询问 R 编码问题,并提供编程风格(整洁、基本或无首选项)和熟练程度(初学者、中级、高级和天才)的选项。

在下面的屏幕截图中,我询问了如何在 R 中创建散点图作为具有整洁样式的中间编码器。

gptstudio_tidyverse-100940341-large

莎朗·马赫利斯的屏幕截图

图4.查询 gptstudio 的 ChatGPT 加载项

用基本编程风格提出相同的问题,生成使用基本R的plot函数作为答案的代码。

虽然是为R编码帮助而设计的,但可以利用更多的ChatGPT功能,所以你可以问它任何你对原始基于Web的ChatGPT的要求。例如,这个应用程序与ChatGPT工具一样工作,可以编写Python代码并回答一般问题,例如“哪颗行星离太阳最远?gptstudio

该包的另一个加载项,源代码中的 ChatGPT,似乎最接近魔法。像往常一样在源代码窗格中编写代码,添加注释请求在代码中进行更改,选择包含注释的代码块,然后应用外接程序。然后,瞧!将进行您请求的更改。gptstudio

当我将加载项应用于此代码时:


# Sort bars by descending Y value, rotate x-axis text 90 degrees, color bars steel blue
ggplot(states, aes(x = State, y = Pop_2020)) +
  geom_col()

我的代码已替换为图 5 突出显示的选项中显示的内容:

gptstudio_source2-100940342-large

莎朗·马赫利斯的屏幕截图

图5.源加载项中的 ChatGPT 示例

很酷。。。除非运行此代码,否则条形不会显示为钢蓝色。向内移动使其工作。这个错误与这个特定的加载项无关,而是与 ChatGPT 本身的变幻莫测有关。正如我之前提到的,我在其他时候运行了相同的请求,结果是准确的。fill = "steelblue"geom_col()

将以下代码发送到源加载项中的 ChatGPT 会为 Shiny 应用生成完整的说明和代码:


# Create an R Shiny app with this data
states <- readr::read_csv("https://raw.githubusercontent.com/smach/SampleData/main/states.csv")

但是,两次提交我的请求返回了两个完全不同的结果——第一个是双文件应用程序在使用前忘记加载库;实际上不在数据中的第二个调用列。创建处理现有数据集细节的查询需要更多的工作,但代码仍然可以作为构建的框架。ggplot2

gptstudio由米歇尔·尼瓦德和詹姆斯·韦德撰写。

GPT工具

根据包网站的说法,该包的目的是“扩展R包开发人员,以便更轻松地将大型语言模型(LLM)的使用纳入其项目工作流程”。在撰写本文时,该软件包不在 CRAN 上。相反,您可以从 JamesHWade/gpttools GitHub 存储库或 R Universe 安装以下内容:gpttoolsgptstudiogpttoolsgpttools


# Enable repository from jameshwade
options(repos = c(
  jameshwade = "https://jameshwade.r-universe.dev",
  CRAN = "https://cloud.r-project.org"
))
# Download and install gpttools in R
install.packages("gpttools")

包的加载项包括:

  • ChatGPT with Retrieval
  • 将脚本转换为函数
  • 将 roxygen 添加到函数(记录函数)
  • 建议单元测试
  • 文档数据
  • 提出改进建议

若要运行加载项,请突出显示您的代码,然后从“RStudio 加载项”下拉菜单中选择加载项,或通过在命令面板中搜索它(“> RStudio 加载项”菜单中的“显示命令面板的工具”或 Windows 上的 Ctrl-Shift-P 或 Mac 上的 Cmd-Shift-P )中选择加载项。

原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun245364.html

(0)
打赏 微信扫一扫不于多少! 微信扫一扫不于多少! 支付宝扫一扫礼轻情意重 支付宝扫一扫礼轻情意重
上一篇 2023年7月27日 下午10:03
下一篇 2023年7月27日 下午10:12

相关推荐

  • ChatGPT Search什么时候可以免费使用?

    未来数月内将向免费用户全面开放 ChatGPT Search 已全面上线所有 ChatGPT 现有接口,包括 chatgpt.com 官网,以及桌面和移动应用程序。 不过,目前仅限…

    最新资讯 2024年11月3日
  • ChatGPT Search 亮点有哪些?

    ChatGPT Search 亮点有哪些? 根据 GhatGPT 整理,ChatGPT 的搜索功能能够更灵活地响应复杂且时效性强的查询需求,具备五大亮点: 即时性数据:搜索功能允许…

    最新资讯 2024年11月3日
  • 这就是为什么大多数人还没有进入人工智能的原因

    人工智能是一个加载的术语。对一些人来说,它象征着未来的道路;对其他人来说,这是一种颠覆性的技术,可以让他们摆脱工作。尽管仍处于早期阶段,但大型科技公司正在对聊天机器人和虚拟助手等支…

    工具软件 2024年6月16日
  • 如何修复iPhone App Store上的更新下载缓慢

    App Store 是 Apple 的独家在线市场,用于在 iPhone 或 iPad 上安装和更新应用程序。有时,在 App Store 上下载应用程序更新可能会变得非常缓慢。 …

    2024年6月13日 苹果Apple
  • iPhone中的延迟通知:修复

    您的 iPhone 收到通知时是否存在明显延迟?有些通知可能非常具有时效性,因此即使几分钟后收到通知也会破坏交易。因此,考虑到眼前的这种情况,我们设计了这些非常有用的解决方案。请按…

    2024年6月12日 苹果Apple
  • 实时活动在iPhone上不起作用:修复

    实时活动无法在iPhone上运行?实时活动非常有用,可以在 iPhone 上获取持续更新。如果实时活动功能不起作用,您将无法从任何应用程序获得实时更新。您必须打开应用程序并重复一系…

    2024年6月12日 苹果Apple
  • iPhone滞后问题:这是修复方法

    在iPhone上遇到滞后?就像其他手机一样,您有时可能会在 iPhone 上遇到抖动或滞后。但是,如果您使用哪种应用程序,iPhone开始一直滞后并显示出抖动的迹象,则不应进一步忽…

    2024年6月12日 苹果Apple
  • 您无法在 iPhone 上的 Spotify 应用程序中升级到高级版:修复

    Spotify 具有高级订阅的功能必须提供如此多的功能。但是,在将您的 Spotify 帐户升级到高级层时,此消息可能会显示“您无法在应用程序中升级到高级”消息。这是最糟糕的情况,…

    2024年6月1日 苹果Apple
  • 如何使用 Windows Phone 链接复制 Android 照片中的文本

    Windows 上的 Phone Link 应用程序具有多项功能,可让用户连接到智能手机并访问其内容。现在,Microsoft使用新的“文本”工具更新了该应用程序,该工具也与Sni…

    2024年5月30日
  • 无法在iPhone中收到邮件错误:修复

    在iPhone上没有收到邮件?如果打开邮件应用程序时显示“无法接收邮件”消息,则邮件应用程序存在一些问题。就像“邮件”应用程序中的所有其他问题一样,有一些解决方案可以解决问题。因此…

    2024年5月29日 苹果Apple
  • 如何在您的 Nothing 手机上使用 ChatGPT 快捷方式

    ChatGPT 已经可以通过其官方应用程序在智能手机上访问。但是,如果您有 Nothing Phone,则可以使用一些额外的 ChatGPT 集成,这些集成可以加快常规的 Chat…

    2024年5月28日 技术教程
  • iPhone上不可用的位置:修复

    假设您即将进行很久以前计划的徒步旅行,但该位置似乎停止在您的手机上工作?虽然它可能看起来不多,但错误的位置设置可能会非常成问题。从天气应用程序开始搜索您附近的餐厅,错误的位置设置可…

    2024年5月20日 苹果Apple
  • Shazam应用程序在iPhone中无法运行:修复

    iPhone 上的 Shazam 应用程序有问题?Shazam 可帮助您通过聆听歌曲找到歌曲。但是,如果 Shazam 无法正常工作或无法识别歌曲,则必须手动对其进行故障排除。修复…

    2024年5月20日 苹果Apple
  • ChatGPT产品层面的更新

    ChatGPT产品层面的更新 新的 ChatGPT 更新,支持利用 GPT-4o 进行实时的语音和视频对话。 网页端和移动端全新的 UI 设计。 发布 Mac 版本的 ChatGP…

    工具软件 2024年5月20日
  • GitHub 推出 GitHub Copilot Workspace 的技术预览版

    GitHub 推出 GitHub Copilot Workspace 的技术预览版 通过 Copilot Workspace,开发者可以用自然语言进行头脑风暴、规划、构建、测试和运…

    2024年5月10日
  • iPhone相机不工作:这是修复程序

    iPhone上的相机是否突然停止工作?无论是软件故障还是硬件组件故障导致了相机的故障,都不要担心。这些解决方案将有助于解决 iPhone 上的相机问题。从简单的强制关闭相机应用程序…

    2024年5月4日 苹果Apple
  • iPhone相机不工作:这是修复程序

    iPhone上的相机是否突然停止工作?无论是软件故障还是硬件组件故障导致了相机的故障,都不要担心。这些解决方案将有助于解决 iPhone 上的相机问题。从简单的强制关闭相机应用程序…

    2024年5月3日 苹果Apple
  • App Store无法在iPhone上运行:如何修复

    在 iPhone 上使用 App Store 时遇到问题?对于苹果用户来说,App Store 是下载新应用程序或更新现有应用程序的唯一选择。这很严重,因为不允许在欧盟地区之外旁加…

    2024年5月3日 苹果Apple
  • 如何在 Android 上本地运行 LLM

    您可以在 PC 上本地运行各种 LLM。但是当涉及到智能手机时,选择略有限制。你必须运行一个小型语言模型,或者有一个具有足够处理能力的高级设备来处理 LLM。 无论哪种方式,都可以…

    2024年5月3日 工具软件
  • 如何在 Android 上编辑 ChatGPT 提示

    ChatGPT 的网络版本在与 AI 机器人聊天时提供了全方位的选项。但是在智能手机上使用它要方便得多,这就是为什么它的智能手机应用程序一直在快速追赶。ChatGPT 的 Andr…

    2024年5月3日 工具软件
  • Windows 11 和 10 用户收到 Dev Home 0.13,改进了小部件和辅助功能

    Microsoft 推出了最新版本的 Dev Home 应用程序 0.13 版,针对 Windows 11 和 10 的用户。此更新引入了一系列增强功能,包括小组件改进、其他 Wi…

    2024年4月25日
  • iPhone通话直接进入语音信箱:修复

    您的电话是否直接转到语音信箱而不是拨打电话?语音邮件可以节省您的一天,同时记录您无法接听的电话中的重要消息。但是,如果所有电话都没有响铃并直接进入语音信箱,那么这是一个真正的问题,…

    2024年4月19日
  • iPhone屏幕不断返回主屏幕

    每次打开特定应用程序时,您的 iPhone 屏幕是否一直返回主屏幕?这是一种异常行为,您返回主屏幕的原因是应用程序由于某种原因而崩溃。如果按照这些说明集进行故障排除,则可以更轻松地…

    2024年4月16日 苹果Apple
  • 如何将Apple Vision Pro连接到PC

    Apple Vision Pro 头戴式设备本身与电脑不兼容,因此您必须将其配置为连接到 Windows 电脑。 自发布以来,Apple Vision Pro 一直备受追捧,鉴于其…

    2024年4月8日
  • OpenAI 让您无需注册即可使用 ChatGPT

    OpenAI 正在消除使用 ChatGPT 的所有障碍,甚至不需要注册。该公司周一宣布,它允许用户无需注册即可开始使用聊天机器人。这里的目的是“让任何对人工智能能力感到好奇的人都能…

    2024年4月6日