View source: R/provider-openai.R
| chat_openai | R Documentation |
This is the main interface to OpenAI's models,
using the responses API. You can use this to access OpenAI's latest
models and features like image generation and web search. If you need to use
an OpenAI-compatible API from another provider, or the chat completions
API with OpenAI,use chat_openai_compatible() instead.
Note that a ChatGPT Plus membership does not grant access to the API. You will need to sign up for a developer account (and pay for it) at the developer platform.
chat_openai(
system_prompt = NULL,
base_url = "https://api.openai.com/v1",
api_key = NULL,
credentials = NULL,
model = NULL,
params = NULL,
api_args = list(),
api_headers = character(),
service_tier = c("auto", "default", "flex", "priority"),
echo = c("none", "output", "all")
)
models_openai(
base_url = "https://api.openai.com/v1",
api_key = NULL,
credentials = NULL
)
system_prompt |
A system prompt to set the behavior of the assistant. |
base_url |
The base URL to the API endpoint. |
api_key |
|
credentials |
Override the default credentials. You generally should not need this argument; instead set the If you do need additional control, this argument takes a zero-argument function that returns either a string (the API key), or a named list (added as additional headers to every request). |
model |
The model to use for the chat (defaults to "gpt-5.4").
We regularly update the default, so we strongly recommend explicitly specifying a model for anything other than casual use.
Use |
params |
Common model parameters, usually created by |
api_args |
Named list of arbitrary extra arguments appended to the body
of every chat API call. Combined with the body object generated by ellmer
with |
api_headers |
Named character vector of arbitrary extra headers appended to every chat API call. |
service_tier |
Request a specific service tier. There are four options:
|
echo |
One of the following options:
Note this only affects the |
A Chat object.
Other chatbots:
chat_anthropic(),
chat_aws_bedrock(),
chat_azure_openai(),
chat_cloudflare(),
chat_databricks(),
chat_deepseek(),
chat_github(),
chat_google_gemini(),
chat_groq(),
chat_huggingface(),
chat_lmstudio(),
chat_mistral(),
chat_ollama(),
chat_openai_compatible(),
chat_openrouter(),
chat_perplexity(),
chat_portkey(),
chat_posit()
chat <- chat_openai()
chat$chat("
What is the difference between a tibble and a data frame?
Answer with a bulleted list
")
chat$chat("Tell me three funny jokes about statisticians")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.