从 R 访问 OpenAI (json) API

问题描述

我想使用来自 R 的以下 curl 命令访问 OpenAI API:

curl https://api.openai.com/v1/engines/davinci/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{"prompt": "This is a test","max_tokens": 5}'

我认为 curl 包(在 CRAN 上)将是最好的选择(?)。我从来没有用过这个包,所以有人能帮我开始这个简单的调用吗?

解决方法

使用 httr 包(在 CRAN 上)可以轻松完成,@r2evans 提示:

library(httr)
myurl <- "https://api.openai.com/v1/engines/davinci/completions"
apikey <- "YOUR_API_KEY"
seed_text <- "This is a test"
tokens <- 5
output <- POST(myurl,body = list(prompt = seed_text,max_tokens = tokens),add_headers(Authorization = paste("Bearer",apikey)),encode = "json")
content(output)$choices[[1]]$text
## [1] " of a national emergency communication"