This function supports re-screening of all failed title and abstract requests
screened with tabscreen_gpt()
/tabscreen_gpt.tools()
.
Usage
# S3 method for class 'gpt'
screen_errors(
object,
api_key = get_api_key(),
max_tries = 16,
max_seconds,
is_transient,
backoff,
after,
...
)
Arguments
- object
An object of class
'gpt'
.- api_key
Numerical value with your personal API key. Default setting draws on the
get_api_key()
to retrieve the API key from the R environment, so that the key is not compromised. The API key can be added to the R environment viaset_api_key()
or by usingusethis::edit_r_environ()
. In the.Renviron
file, writeCHATGPT_KEY=INSERT_YOUR_KEY_HERE
. After entering the API key, close and save the.Renviron
file and restartRStudio
(ctrl + shift + F10). Alternatively, one can usehttr2::secret_make_key()
,httr2::secret_encrypt()
, andhttr2::secret_decrypt()
to scramble and decrypt the API key.- max_tries, max_seconds
'Cap the maximum number of attempts with
max_tries
or the total elapsed time from the first request withmax_seconds
. If neither option is supplied (the default),httr2::req_perform()
will not retry' (Wickham, 2023). Defaultmax_tries
is 16. If missing, the value ofmax_seconds
from the original screening conducted withtabscreen_gpt()
will be used.- is_transient
'A predicate function that takes a single argument (the response) and returns
TRUE
orFALSE
specifying whether or not the response represents a transient error' (Wickham, 2023). If missing, theis_transient
function from the original screening conducted withtabscreen_gpt()
will be used.- backoff
'A function that takes a single argument (the number of failed attempts so far) and returns the number of seconds to wait' (Wickham, 2023). If missing, the
backoff
value from the original screening conducted withtabscreen_gpt()
will be used.- after
'A function that takes a single argument (the response) and returns either a number of seconds to wait or
NULL
, which indicates that a precise wait time is not available that thebackoff
strategy should be used instead' (Wickham, 2023). If missing, theafter
value from the original screening conducted withtabscreen_gpt()
will be used.- ...
Further argument to pass to the request body. See https://platform.openai.com/docs/api-reference/chat/create. If used in the original screening in
tabscreen_gpt()
, the argument(s) must be specified again here.
Value
An object of class 'gpt'
similar to the object returned by tabscreen_gpt()
.
See documentation for tabscreen_gpt()
.
References
Wickham H (2023). httr2: Perform HTTP Requests and Process the Responses. https://httr2.r-lib.org, https://github.com/r-lib/httr2.
Examples
if (FALSE) { # \dontrun{
prompt <- "Is this study about a Functional Family Therapy (FFT) intervention?"
obj_with_error <-
tabscreen_gpt(
data = filges2015_dat[1:10,],
prompt = prompt,
studyid = studyid,
title = title,
abstract = abstract,
model = "gpt-4o"
)
obj_rescreened <-
obj_with_error |>
screen_error()
} # }