Skip to content

Anthropic provides a number of chat based models under the Claude moniker. Note that a Claude Pro membership does not give you the ability to call models via the API; instead, you will need to sign up (and pay for) a developer account.

Usage

chat_anthropic(
  system_prompt = NULL,
  params = NULL,
  max_tokens = deprecated(),
  model = NULL,
  api_args = list(),
  base_url = "https://api.anthropic.com/v1",
  beta_headers = character(),
  api_key = anthropic_key(),
  echo = NULL
)

models_anthropic(
  base_url = "https://api.anthropic.com/v1",
  api_key = anthropic_key()
)

Arguments

system_prompt

A system prompt to set the behavior of the assistant.

params

Common model parameters, usually created by params().

max_tokens

Maximum number of tokens to generate before stopping.

model

The model to use for the chat (defaults to "claude-3-7-sonnet-latest"). We regularly update the default, so we strongly recommend explicitly specifying a model for anything other than casual use. Use models_anthropic() to see all options.

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 modifyList().

base_url

The base URL to the endpoint; the default uses OpenAI.

beta_headers

Optionally, a character vector of beta headers to opt-in claude features that are still in beta.

api_key

API key to use for authentication.

You generally should not supply this directly, but instead set the ANTHROPIC_API_KEY environment variable. The best place to set this is in .Renviron, which you can easily edit by calling usethis::edit_r_environ().

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.

Examples

chat <- chat_anthropic()
#> Using model = "claude-3-7-sonnet-latest".
chat$chat("Tell me three jokes about statisticians")
#> # Three Jokes About Statisticians
#> 
#> 1. Why did the statistician drown crossing the river? 
#>    Because it was only three feet deep, on average.
#> 
#> 2. A statistician's wife gave birth to twins. He was delighted. When a
#> friend asked if they were boys, girls, or one of each, the 
#> statistician replied, "Yes."
#> 
#> 3. How many statisticians does it take to change a light bulb?
#>    "Well, actually... it depends on the sample size, confidence 
#> interval, and statistical significance of the darkness."