See gemini_upload()
to upload files (PDFs, images, video, audio, etc.)
Authentication
To authenticate, we recommend saving your
API key to
the GOOGLE_API_KEY
env var in your .Renviron
(which you can easily edit by calling usethis::edit_r_environ()
).
By default, chat_gemini()
will use Google's default application credentials
if there is no API key provided. This requires the gargle package.
It can also pick up on viewer-based credentials on Posit Connect. This in turn requires the connectcreds package.
Usage
chat_gemini(
system_prompt = NULL,
turns = NULL,
base_url = "https://generativelanguage.googleapis.com/v1beta/",
api_key = NULL,
model = NULL,
api_args = list(),
echo = NULL
)
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.
- 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
GOOGLE_API_KEY
environment variable. Or leave it asNULL
to use ambient credentials.- 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.- 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_bedrock()
,
chat_claude()
,
chat_cortex_analyst()
,
chat_databricks()
,
chat_deepseek()
,
chat_github()
,
chat_groq()
,
chat_ollama()
,
chat_openai()
,
chat_openrouter()
,
chat_perplexity()