Простая надстройка RStudio для мгновенного преобразования ломаного английского в рабочий код, визуализации, анализа и многого другого с использованием моделей GPT OpenAI. При активации надстройка попытается заменить выделенный текстовый запрос рабочим кодом.
Попытки предоставить контекст ранее написанного слегка минимизированного кода (в настоящее время удаляются только явные комментарии и пробелы). Если контекст кода слишком велик, он будет усечен, так что общее количество приглашений по умолчанию составит около 2750 токенов, оставив остаток в 4096 токенов (при условии, что gpt-3-turbo) для ответа. Точное усечение выполняется с помощью библиотеки tiktoken Open AI с помощью связанного кода Python. Для этого требуется Python > 3.8.
Будущие обновления будут включать более сложное сжатие контекста.
Установите дополнение в RStudio:
remotes::install_github("1223423/statGPT")
Затем настройте необходимые временные переменные среды в RStudio:
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)
Альтернативно вы можете установить постоянные ключи в файле .Renviron
.
statGPT требует tiktoken
Open AI и, следовательно, Python 3.8 или выше. Он также использует пакеты R reticulate
, httr
и jsonlite
.
Что делает OPENAI_TEMPERATURE? Диапазон температур составляет от 0 до 2 и контролирует уровень случайности и креативности результатов, при этом значения, равные или близкие к 0, являются почти детерминированными. По умолчанию осталось 0,25.
Что делает STATGPT_CTXLIM? Каждая модель OpenAI имеет ограничение по токенам, общее для ввода и ответа. Например, gpt-3.5-turbo
имеет ограничение в 4096 токенов. CTXLIM устанавливает верхнюю границу входных данных, по умолчанию 2750 токенов, что оставляет ~1346 токенов для ответа, однако даже при использовании токенизатора OpenAI это значение может быть отклонено на несколько токенов (см. «openai-cookbook»). Если вы используете gpt-4, вам нужно установить этот предел намного выше.
Почему код, который я получил, не работает? Не знаю, попробуй спросить еще раз по-другому, лмао