Ein einfaches RStudio-Add-In, um gebrochenes Englisch mithilfe der GPT-Modelle von OpenAI sofort in funktionierenden Code, Visualisierung, Analyse und mehr umzuwandeln. Wenn es aktiviert ist, versucht das Add-In, die hervorgehobene Textanforderung durch funktionierenden Code zu ersetzen.
Versucht, den Kontext von zuvor geschriebenem, leicht verkleinertem Code bereitzustellen (derzeit werden nur explizite Kommentare und Leerzeichen entfernt). Wenn der Codekontext zu groß ist, wird er gekürzt, sodass die gesamte Eingabeaufforderung standardmäßig etwa etwa 2750 Token beträgt und der Rest der 4096 Token (unter der Annahme von gpt-3-turbo) für die Antwort übrig bleibt. Die präzise Kürzung erfolgt über die „tiktoken“-Bibliothek von Open AI über verknüpften Python-Code. Hierzu ist Python > 3.8 erforderlich.
Zukünftige Updates werden eine ausgefeiltere Kontextkomprimierung beinhalten.
Installieren Sie das Add-In in RStudio:
remotes::install_github("1223423/statGPT")
Richten Sie dann die erforderlichen temporären Umgebungsvariablen in RStudio ein:
Sys.setenv(OPENAI_API_KEY = "your api key here") # API key
Sys.setenv(OPENAI_MODEL = "gpt-3.5-turbo") # Model (optional; default: gpt-3.5-turbo)
Sys.setenv(OPENAI_TEMPERATURE = 0.25) # Temperature (optional; default 0.25)
Sys.setenv(STATGPT_DEBUG = 0) # Debug logging (optional; default: 0)
Sys.setenv(STATGPT_CTXLIM = 2750) # Input context limit (optional; default ~2750 tokens)
Alternativ können Sie dauerhafte Schlüssel in Ihrer .Renviron
Datei festlegen.
statGPT erfordert tiktoken
von Open AI und daher Python 3.8 oder höher. Außerdem werden die R-Pakete reticulate
, httr
und jsonlite
verwendet.
Was macht OPENAI_TEMPERATURE? Die Temperatur liegt zwischen 0 und 2 und steuert den Grad der Zufälligkeit und Kreativität bei der Ausgabe, wobei Werte bei oder nahe 0 nahezu deterministisch sind. Der Standardwert liegt bei 0,25.
Was macht STATGPT_CTXLIM? Jedes OpenAI-Modell verfügt über eine Token-Beschränkung, die zwischen Eingabe und Antwort geteilt wird. Für gpt-3.5-turbo
gilt beispielsweise ein Limit von 4096 Token. CTXLIM legt eine Obergrenze für die Eingabe fest, standardmäßig 2750 Token, wodurch ~1346 Token für die Antwort übrig bleiben. Selbst bei Verwendung des Tokenizers von OpenAI kann dies jedoch um einige Token abweichen (siehe: „openai-cookbook“). Wenn Sie gpt-4 verwenden, sollten Sie diesen Grenzwert auf einen viel höheren Wert festlegen.
Warum funktioniert der Code, den ich erhalten habe, nicht? Ich weiß nicht, versuch es noch einmal anders zu fragen, Lmao