PortkeyAI provides an interface (AI Gateway) to connect through its Universal API to a variety of LLMs providers via a single endpoint.
Usage
chat_portkey(
model,
system_prompt = NULL,
base_url = "https://api.portkey.ai/v1",
api_key = NULL,
credentials = NULL,
virtual_key = deprecated(),
params = NULL,
api_args = list(),
echo = NULL,
api_headers = character()
)
models_portkey(base_url = "https://api.portkey.ai/v1", api_key = portkey_key())Arguments
- model
The model name, e.g.
@my-provider/my-model.- system_prompt
A system prompt to set the behavior of the assistant.
- base_url
The base URL to the endpoint; the default is OpenAI's public API.
- api_key
- credentials
Override the default credentials. You generally should not need this argument; instead set the
PORTKEY_API_KEYenvironment variable. The best place to set this is in.Renviron, which you can easily edit by callingusethis::edit_r_environ().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).
- virtual_key
. Portkey now recommend supplying the model provider (formerly known as the
virtual_key), in the model name, e.g.@my-provider/my-model. See https://portkey.ai/docs/support/upgrade-to-model-catalog for details.For backward compatibility, the
PORTKEY_VIRTUAL_KEYenv var is still used if the model doesn't include a provider.- params
Common model parameters, usually created by
params().- 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().- echo
One of the following options:
none: don't emit any output (default when running in a function).output: echo text and tool-calling output as it streams in (default when running at the console).all: echo all input and output.
Note this only affects the
chat()method.- api_headers
Named character vector of arbitrary extra headers appended to every chat API call.
Value
A Chat object.
See also
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_mistral(),
chat_ollama(),
chat_openai(),
chat_openai_compatible(),
chat_openrouter(),
chat_perplexity()
