Create a chatbot that speaks to an OpenAI compatible endpoint
Source:R/provider-openai.R
chat_openai.Rd
This function returns a Chat object that takes care of managing the state associated with the chat; i.e. it records the messages that you send to the server, and the messages that you receive back. If you register a tool (i.e. an R function that the assistant can call on your behalf), it also takes care of the tool loop.
Arguments
- system_prompt
A system prompt to set the behavior of the assistant.
- turns
A list of turns to start the chat with (i.e., continuing a previous conversation). If not provided, the conversation begins from scratch. Do not provide non-
NULL
values for bothturns
andsystem_prompt
.Each message in the list should be a named list with at least
role
(usuallysystem
,user
, orassistant
, buttool
is also possible). Normally there is also acontent
field, which is a string.- base_url
The base URL to the endpoint; the default uses OpenAI.
- api_key
The API key to use for authentication. You generally should not supply this directly, but instead set the
OPENAI_API_KEY
environment variable.- model
The model to use for the chat. The default,
NULL
, will pick a reasonable default, and tell you about. We strongly recommend explicitly choosing a model for all but the most casual use.- seed
Optional integer seed that ChatGPT uses to try and make output more reproducible.
- api_args
Named list of arbitrary extra arguments appended to the body of every chat API call.
- echo
One of the following options:
none
: don't emit any output (default when running in a function).text
: echo text output as it streams in (default when running at the console).all
: echo all input and output.
Note this only affects the
chat()
method.
Value
A Chat object.
See also
Other chatbots:
chat_claude()
,
chat_gemini()
,
chat_github()
,
chat_groq()
,
chat_ollama()
,
chat_perplexity()