gpt4 book ai didi

r - R 中的 openai API : Error in chat completion - how to locate the issue?

转载 作者:行者123 更新时间:2023-12-02 05:49:07 26 4
gpt4 key购买 nike

我正在尝试使用 R 中 OpenAI API 的聊天完成功能对大量报纸文章进行分类。通常,它工作得很好,但对于很多文章,我会收到一个我不明白的错误。

这是我得到的错误:

Error in is.na(output) || !is.character(output) :
'length = 3' in coercion to 'logical(1)'

一个例子是:

# libraries loaded at that moment
library(tidyverse)
library(httr)
library(tidytext)
library(purrr)

system_task <- "You will be provided one article per prompt by the Austrian Newspaper Der Standard. The article is written in German. Each prompt only contains one article. All of these mention the justice system (or actors in the justice system such as Staatsanwalt, WKSta, Richter or Gericht) or the Austrian Constitutional Court (called VfGH or Verfassungsgerichtshof). We want you to take multiple steps for each of these articles: 1) Summarize the article in 3 sentences. Answer this question with the prefix '1)'. 2) Does the article mention that politicians critisize the judiciary or the VfGH? Answer this question with the prefix '2)'.3) Does the article mention that politicians attack the judiciary or the VfGH? Answer this question with the prefix '3)' 4) If 2) or 3) is answered with yes: Who is criticized or attacked by whom, name the actors. Remember that we are not interested in conflict between politicians, only between politicians and the judiciary. Answer this question with the prefix '4)'"

article <- 'In der Adventzeit rücken Armut, Flucht, Krankheit und Obdachlosigkeit vermehrt in den Fokus der Öffentlichkeit. Nicht nur in der Weihnachtsgeschichte geht es um Armut, Flucht, Krankheit und Obdachlosigkeit. Im Advent rücken diese Themen wiederholt in das Blickfeld der Öffentlichkeit, denn für viele Familien ist Weihnachten aus finanziellen und gesundheitlichen Gründen keine besinnliche Zeit. Rund 140.000 Menschen in Österreich könnten ihre Wohnung nicht ausreichend heizen. Das sagte Caritas-Präsident Michael Landau am Sonntagvormittag in der ORF-"Pressestunde". Das Ziel der neuen Regierung müsse sein, Kinderarmut und Altersarmut zu senken. Landau hatte der türkis-blauen Regierung während der vergangenen Legislaturperiode eine "Demontage" des Sozialstaats vorgeworfen. Im ORF-Studio betonte er wiederholt seine "Erleichterung" über den Entscheid des Verfassungsgerichtshofs, die Kernpunkte der neuen Sozialhilfe von Türkis-Blau zu kippen. Die Höchstrichter hatten am Dienstag sowohl die starken Kürzungen für kinderreiche Familien als auch für Menschen mit schlechten Deutsch- oder Englischkenntnissen gekippt. "Die Mindestsicherung muss Armut vermeiden", sagte Landau. Eine Kürzung der Familienzuschläge auf 44 Euro ab dem dritten Kind – wie in der neuen Sozialhilfe von Türkis-Blau vorgesehen – "entspricht nicht der Lebenswirklichkeit von Menschen". Alleinerzieherinnen und kinderreiche, einkommensschwache Familien seien sowieso schon "in besonderer Weise armutsgefährdet". Die VfGH-Entscheidung sei eine Chance, Landau plädiert für eine Neuregelung unter Einbindung der Praktiker und Hilfsorganisationen. Auch im Pflegebereich brauche man dringend neue Lösungen. Die vorige Bundesregierung habe völlig zu Recht erkannt, dass dieses Thema viele Menschen berühre. Österreich ist pflegebedürftig, so Landau – er hoffe auf die neue Regierung, egal wie sie aussehe. Es brauche einen vergleichbaren Qualitäts-, Versorgungs- und Finanzierungsrahmen. Der Zugang zur Pflege müsse für alle flächendeckend leistbar sein und es brauche auch Anstrengungen, damit sich Menschen für den Pflegeberuf entscheiden. Die Zahl der pflegebedürftigen Menschen in Österreich ist gestiegen, damit haben sich laut Statistik Austria auch die Kosten für die Betreuung kräftig erhöht. Die Pflegekosten des Staats sind seit 2013 um ein Drittel angestiegen, zeigen aktuelle Zahlen. 13.000 Menschen mehr als im Vorjahr waren in Heimen und Pflegehäusern untergebracht. Bei den Hausbesuchen durch Pflegefachkräfte war der Anstieg geringer. Neben dem Plus der älteren, pflegebedürftigen Menschen habe sich aber auch die Abschaffung des Pflegeregress ausgewirkt. Sozialministerin Brigitte Zarfl hatte im November zwei Studien zur Zukunft der Pflege in Österreich präsentiert. Die Zahlen deuteten auf einen bevorstehenden Personalmangel hin. (red, 22.12.2019)'

expr <- POST(
# API Link
url = "https://api.openai.com/v1/chat/completions",
# Authorizatiob
add_headers(Authorization = paste("Bearer", chatGPT_API)),
# output in json
content_type_json(),
# encode the value to json format
encode = "json",
# low randomness of answers
temperature = 0,
stop = none,
# Controlling what to show as the output
body = list(
model = "gpt-3.5-turbo",
messages = list(list(role = "user", content = article),
list(role = "system", content = system_task))))

有人知道问题可能出在哪里以及如何解决吗?

我尝试将其包装在 tryCatch 中,但这也不起作用:

chatGPT_response <- tryCatch(

# Try to retrieve answer for OpenAI API
expr = {
POST(
# API Link
url = "https://api.openai.com/v1/chat/completions",
# Authorizatiob
add_headers(Authorization = paste("Bearer", chatGPT_API)),
# output in json
content_type_json(),
# encode the value to json format
encode = "json",
# low randomness of answers
temperature = 0,
stop = none,
# Controlling what to show as the output
body = list(
model = "gpt-3.5-turbo",
messages = list(list(role = "user", content = article),
list(role = "system", content = system_task)
)))
},
# In case an error occurs while using API
error = function(e){
message(paste("For article there was an error."))
return(NA)
},
# Notify about a possible warning while using API
warning = function(w){
message(paste("For article there was a warning."))
}
)

最佳答案

最终有帮助的是切换到 openai 软件包。

library(tidyverse)
library(openai)
library(tidytext)
library(purrr)

system_task <- "You will be provided one article per prompt by the Austrian Newspaper Der Standard. The article is written in German. Each prompt only contains one article. All of these mention the justice system (or actors in the justice system such as Staatsanwalt, WKSta, Richter or Gericht) or the Austrian Constitutional Court (called VfGH or Verfassungsgerichtshof). We want you to take multiple steps for each of these articles: 1) Summarize the article in 3 sentences. Answer this question with the prefix '1)'. 2) Does the article mention that politicians critisize the judiciary or the VfGH? Answer this question with the prefix '2)'.3) Does the article mention that politicians attack the judiciary or the VfGH? Answer this question with the prefix '3)' 4) If 2) or 3) is answered with yes: Who is criticized or attacked by whom, name the actors. Remember that we are not interested in conflict between politicians, only between politicians and the judiciary. Answer this question with the prefix '4)'"

article <- 'In der Adventzeit rücken Armut, Flucht, Krankheit und Obdachlosigkeit vermehrt in den Fokus der Öffentlichkeit. Nicht nur in der Weihnachtsgeschichte geht es um Armut, Flucht, Krankheit und Obdachlosigkeit. Im Advent rücken diese Themen wiederholt in das Blickfeld der Öffentlichkeit, denn für viele Familien ist Weihnachten aus finanziellen und gesundheitlichen Gründen keine besinnliche Zeit. Rund 140.000 Menschen in Österreich könnten ihre Wohnung nicht ausreichend heizen. Das sagte Caritas-Präsident Michael Landau am Sonntagvormittag in der ORF-"Pressestunde". Das Ziel der neuen Regierung müsse sein, Kinderarmut und Altersarmut zu senken. Landau hatte der türkis-blauen Regierung während der vergangenen Legislaturperiode eine "Demontage" des Sozialstaats vorgeworfen. Im ORF-Studio betonte er wiederholt seine "Erleichterung" über den Entscheid des Verfassungsgerichtshofs, die Kernpunkte der neuen Sozialhilfe von Türkis-Blau zu kippen. Die Höchstrichter hatten am Dienstag sowohl die starken Kürzungen für kinderreiche Familien als auch für Menschen mit schlechten Deutsch- oder Englischkenntnissen gekippt. "Die Mindestsicherung muss Armut vermeiden", sagte Landau. Eine Kürzung der Familienzuschläge auf 44 Euro ab dem dritten Kind – wie in der neuen Sozialhilfe von Türkis-Blau vorgesehen – "entspricht nicht der Lebenswirklichkeit von Menschen". Alleinerzieherinnen und kinderreiche, einkommensschwache Familien seien sowieso schon "in besonderer Weise armutsgefährdet". Die VfGH-Entscheidung sei eine Chance, Landau plädiert für eine Neuregelung unter Einbindung der Praktiker und Hilfsorganisationen. Auch im Pflegebereich brauche man dringend neue Lösungen. Die vorige Bundesregierung habe völlig zu Recht erkannt, dass dieses Thema viele Menschen berühre. Österreich ist pflegebedürftig, so Landau – er hoffe auf die neue Regierung, egal wie sie aussehe. Es brauche einen vergleichbaren Qualitäts-, Versorgungs- und Finanzierungsrahmen. Der Zugang zur Pflege müsse für alle flächendeckend leistbar sein und es brauche auch Anstrengungen, damit sich Menschen für den Pflegeberuf entscheiden. Die Zahl der pflegebedürftigen Menschen in Österreich ist gestiegen, damit haben sich laut Statistik Austria auch die Kosten für die Betreuung kräftig erhöht. Die Pflegekosten des Staats sind seit 2013 um ein Drittel angestiegen, zeigen aktuelle Zahlen. 13.000 Menschen mehr als im Vorjahr waren in Heimen und Pflegehäusern untergebracht. Bei den Hausbesuchen durch Pflegefachkräfte war der Anstieg geringer. Neben dem Plus der älteren, pflegebedürftigen Menschen habe sich aber auch die Abschaffung des Pflegeregress ausgewirkt. Sozialministerin Brigitte Zarfl hatte im November zwei Studien zur Zukunft der Pflege in Österreich präsentiert. Die Zahlen deuteten auf einen bevorstehenden Personalmangel hin. (red, 22.12.2019)'

gpt_response <- create_chat_completion(
model = "gpt-3.5-turbo",
messages = list(
list(
"role" = "system",
"content" = system_task
),
list(
"role" = "user",
"content" = article
)
)
)

response_text <- gpt_response |>
pluck('choices') |>
pull(message.content)

关于r - R 中的 openai API : Error in chat completion - how to locate the issue?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76835392/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com