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

To authenticate, we recommend saving your API key to the ANTHROPIC_API_KEY env var in your .Renviron (which you can easily edit by calling usethis::edit_r_environ()).

Usage

chat_claude(
  system_prompt = NULL,
  turns = NULL,
  max_tokens = 4096,
  model = NULL,
  api_args = list(),
  base_url = "https://api.anthropic.com/v1",
  api_key = anthropic_key(),
  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.

max_tokens

Maximum number of tokens to generate before stopping.

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.

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 ANTHROPIC_API_KEY environment variable.

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_claude()
chat$chat("Tell me three jokes about statisticians")
#> Here are three statistics-themed jokes:
#> 
#> 1. How do you tell the difference between an introverted statistician and
#> an extroverted statistician?
#> The extroverted statistician looks at *your* shoes when they're talking 
#> to you.
#> 
#> 2. A statistician is someone who can put their head in an oven and their 
#> feet in a freezer and say "on average, I feel fine."
#> 
#> 3. Three statisticians go hunting. They spot a deer, and the first 
#> statistician shoots, missing three feet to the left. The second 
#> statistician shoots and misses three feet to the right. The third 
#> statistician jumps up and shouts "We got it! We got it! On average, we 
#> hit it!"