BrowserStack AI Evals
Evaluation

Default LLM Model

Set, get, or clear the per-project default evaluation model from the SDK across TypeScript, Python, Java, and Go.

Default LLM Model

The default LLM model is the model your project falls back to whenever an evaluator (or another feature) needs an LLM but the caller didn't pick one. You set it once per project through the SDK, and every later evaluation run uses it automatically. There's only one per project — no id to pass around.

Setup

import { AISDK, type LlmAdapter } from '@browserstack/ai-sdk';const publicKey = process.env.AISDK_PUBLIC_KEY!;const secretKey = process.env.AISDK_SECRET_KEY!;const client = new AISDK({  publicKey,  secretKey,});

Get the current default

Returns the current default model. If no default is set, the call returns 404 (or throws in typed clients).

const defaultLlmModel = await client.defaultLlmModel.get();

Returns the current default for your project. If no default is set, returns `404` — make sure your code handles that case rather than assuming a default exists.

This method takes no parameters.
This method takes no parameters.
This method takes no parameters.
This method takes no parameters.

Response

Returns the current DefaultLlmModel — the field-by-field breakdown lives under Set the default.

Set the default

set() writes the default if there isn't one, and replaces it if there is. There's no separate "create" method — one call handles both cases.

const updatedDefault = await client.defaultLlmModel.set({  provider,  adapter,  model,});

Sets the default if none exists, or replaces it if one does. One call handles both cases. `updatedAt` bumps every time you call this, even if the values are unchanged. Any `modelParams` fields the adapter doesn't support (like `top_k` on OpenAI) are quietly dropped before saving. The response echoes what was actually kept — compare the response to your request if you want to see which fields were dropped. Your `provider` and `adapter` need to match an existing LLM API key in your project. If they don't, the request returns `404`.

ParamTypeRequiredDescription
providerstringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelstringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
modelParamsDefaultLlmModelParams | nullfalseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
providerstrtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelstrtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
model_paramsOptional[object]falseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
providerStringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelStringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
modelParamsObjectfalseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
ProviderstringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
AdapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
ModelstringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
ModelParamsinterface{}falseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.

Response

Returns the saved DefaultLlmModel:

FieldTypeDescription
idstringServer-generated id.
projectIdstringFilled in from your API-key scope.
llmApiKeyIdstringThe LLM API key that matched your provider + adapter.
providerstringEchoed back from the request.
adapterLLMAdapterEchoed back from the request.
modelstringEchoed back from the request.
modelParamsobject | nullWhat the adapter actually kept — any fields it doesn't support are dropped.
createdAt / updatedAtDateISO 8601 timestamps.

Clear the default

Removes the current default. Safe to call more than once — if no default is set, you get back { success: true, alreadyDeleted: true } instead of an error.

const result = await client.defaultLlmModel.delete();

Removes the default. **Heads up:** any eval templates that relied on the default (templates without their own `provider` and `model`) get marked `INACTIVE` at the same time. Evaluator runs scheduled from those templates stop firing until you either set a new default or point each template at a specific model. Safe to call more than once. If no default is set, the response comes back with `alreadyDeleted: true` instead of an error — handy for telling "you just unset it" apart from "it was already gone" when retrying.

This method takes no parameters.
This method takes no parameters.
This method takes no parameters.
This method takes no parameters.

Clearing the default also marks any eval-template jobs that depend on it as INACTIVE. Set a new default before re-enabling those jobs.

Response

FieldTypeDescription
successbooleanAlways true.
alreadyDeletedbooleantrue if there was no default to clear — helpful for telling "you just unset it" apart from "it was already gone" when your code retries.

Complete example

Every step above, stitched together into one block you can copy and adapt.

// 1. Set up the clientimport { AISDK, type LlmAdapter } from '@browserstack/ai-sdk';const publicKey = process.env.AISDK_PUBLIC_KEY!;const secretKey = process.env.AISDK_SECRET_KEY!;const client = new AISDK({  publicKey,  secretKey,});// 2. Per-run variablesconst provider = 'openai-prod';const adapter: LlmAdapter = 'openai';const model = 'gpt-4o-mini';// 3. Get the current defaultconst defaultLlmModel = await client.defaultLlmModel.get();// 4. Set the defaultconst updatedDefault = await client.defaultLlmModel.set({  provider,  adapter,  model,});// 5. Clear the defaultconst result = await client.defaultLlmModel.delete();

Setup

import osfrom browserstack_ai_sdk import AISDKclient = AISDK(    public_key=os.environ["AISDK_PUBLIC_KEY"],    secret_key=os.environ["AISDK_SECRET_KEY"],)

Get the current default

Returns the current default model. If no default is set, the call returns 404 (or raises in typed clients).

default_model = client.default_llm_model.get()

Returns the current default for your project. If no default is set, returns `404` — make sure your code handles that case rather than assuming a default exists.

This method takes no parameters.
This method takes no parameters.
This method takes no parameters.
This method takes no parameters.

Response

Returns the current DefaultLlmModel — the field-by-field breakdown lives under Set the default.

Set the default

set() writes the default if there isn't one, and replaces it if there is. There's no separate "create" method — one call handles both cases.

default_model = client.default_llm_model.set(    provider=provider,    adapter=adapter,    model=model,)

Sets the default if none exists, or replaces it if one does. One call handles both cases. `updatedAt` bumps every time you call this, even if the values are unchanged. Any `modelParams` fields the adapter doesn't support (like `top_k` on OpenAI) are quietly dropped before saving. The response echoes what was actually kept — compare the response to your request if you want to see which fields were dropped. Your `provider` and `adapter` need to match an existing LLM API key in your project. If they don't, the request returns `404`.

ParamTypeRequiredDescription
providerstringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelstringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
modelParamsDefaultLlmModelParams | nullfalseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
providerstrtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelstrtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
model_paramsOptional[object]falseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
providerStringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelStringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
modelParamsObjectfalseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
ProviderstringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
AdapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
ModelstringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
ModelParamsinterface{}falseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.

Response

Returns the saved DefaultLlmModel:

FieldTypeDescription
idstrServer-generated id.
project_idstrFilled in from your API-key scope.
llm_api_key_idstrThe LLM API key that matched your provider + adapter.
providerstrEchoed back from the request.
adapterLLMAdapterEchoed back from the request.
modelstrEchoed back from the request.
model_paramsdict | NoneWhat the adapter actually kept — any fields it doesn't support are dropped.
created_at / updated_atdatetimeISO 8601 timestamps.

Clear the default

Removes the current default. Safe to call more than once — if no default is set, you get back {"success": True, "already_deleted": True} instead of an error.

client.default_llm_model.delete()

Removes the default. **Heads up:** any eval templates that relied on the default (templates without their own `provider` and `model`) get marked `INACTIVE` at the same time. Evaluator runs scheduled from those templates stop firing until you either set a new default or point each template at a specific model. Safe to call more than once. If no default is set, the response comes back with `alreadyDeleted: true` instead of an error — handy for telling "you just unset it" apart from "it was already gone" when retrying.

This method takes no parameters.
This method takes no parameters.
This method takes no parameters.
This method takes no parameters.

Clearing the default also marks any eval-template jobs that depend on it as INACTIVE. Set a new default before re-enabling those jobs.

Response

FieldTypeDescription
successboolAlways True.
already_deletedboolTrue if there was no default to clear — helpful for telling "you just unset it" apart from "it was already gone" when your code retries.

Complete example

Every step above, stitched together into one block you can copy and adapt.

# 1. Set up the clientimport osfrom browserstack_ai_sdk import AISDKclient = AISDK(    public_key=os.environ["AISDK_PUBLIC_KEY"],    secret_key=os.environ["AISDK_SECRET_KEY"],)# 2. Per-run variablesprovider = "openai-prod"adapter = "openai"model = "gpt-4o-mini"# 3. Get the current defaultdefault_model = client.default_llm_model.get()# 4. Set the defaultdefault_model = client.default_llm_model.set(    provider=provider,    adapter=adapter,    model=model,)# 5. Clear the defaultclient.default_llm_model.delete()

Setup

import com.browserstack.aisdk.AISDK;import com.browserstack.aisdk.clients.default_llm_model.DefaultLlmModel;import com.browserstack.aisdk.clients.default_llm_model.DefaultLlmModelConfig;import com.browserstack.aisdk.clients.default_llm_model.DeleteDefaultLlmModelResponse;import com.browserstack.aisdk.clients.default_llm_model.LlmAdapter;import com.browserstack.aisdk.clients.default_llm_model.SetDefaultLlmModelInput;AISDK sdk = AISDK.builder()    .publicKey(System.getenv("BROWSERSTACK_PUBLIC_KEY"))    .secretKey(System.getenv("BROWSERSTACK_SECRET_KEY"))    .build();DefaultLlmModel defaultLlmModel = sdk.defaultLlmModel();

Get the current default

Returns the current default model. If no default is set, the call throws (mapped from HTTP 404).

DefaultLlmModelConfig row = client.get();

Returns the current default for your project. If no default is set, returns `404` — make sure your code handles that case rather than assuming a default exists.

This method takes no parameters.
This method takes no parameters.
This method takes no parameters.
This method takes no parameters.

Response

Returns the current DefaultLlmModel — the field-by-field breakdown lives under Set the default.

Set the default

set() writes the default if there isn't one, and replaces it if there is. There's no separate "create" method — one call handles both cases.

SetDefaultLlmModelInput body = new SetDefaultLlmModelInput();body.provider = provider;body.adapter = adapter;body.model = model;DefaultLlmModelConfig updated = client.set(body);

Sets the default if none exists, or replaces it if one does. One call handles both cases. `updatedAt` bumps every time you call this, even if the values are unchanged. Any `modelParams` fields the adapter doesn't support (like `top_k` on OpenAI) are quietly dropped before saving. The response echoes what was actually kept — compare the response to your request if you want to see which fields were dropped. Your `provider` and `adapter` need to match an existing LLM API key in your project. If they don't, the request returns `404`.

ParamTypeRequiredDescription
providerstringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelstringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
modelParamsDefaultLlmModelParams | nullfalseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
providerstrtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelstrtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
model_paramsOptional[object]falseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
providerStringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelStringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
modelParamsObjectfalseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
ProviderstringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
AdapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
ModelstringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
ModelParamsinterface{}falseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.

Response

Returns the saved DefaultLlmModel:

FieldTypeDescription
idStringServer-generated id.
projectIdStringFilled in from your API-key scope.
llmApiKeyIdStringThe LLM API key that matched your provider + adapter.
providerStringEchoed back from the request.
adapterLLMAdapterEchoed back from the request.
modelStringEchoed back from the request.
modelParamsMap<String, Object> | nullWhat the adapter actually kept — any fields it doesn't support are dropped.
createdAt / updatedAtInstantISO 8601 timestamps.

Clear the default

Removes the current default. Safe to call more than once — if no default is set, the response has alreadyDeleted = true instead of throwing.

DeleteDefaultLlmModelResponse result = client.delete();

Removes the default. **Heads up:** any eval templates that relied on the default (templates without their own `provider` and `model`) get marked `INACTIVE` at the same time. Evaluator runs scheduled from those templates stop firing until you either set a new default or point each template at a specific model. Safe to call more than once. If no default is set, the response comes back with `alreadyDeleted: true` instead of an error — handy for telling "you just unset it" apart from "it was already gone" when retrying.

This method takes no parameters.
This method takes no parameters.
This method takes no parameters.
This method takes no parameters.

Clearing the default also marks any eval-template jobs that depend on it as INACTIVE. Set a new default before re-enabling those jobs.

Response

FieldTypeDescription
successbooleanAlways true.
alreadyDeletedbooleantrue if there was no default to clear — helpful for telling "you just unset it" apart from "it was already gone" when your code retries.

Complete example

Every step above, stitched together into one block you can copy and adapt.

// 1. Set up the SDKimport com.browserstack.aisdk.AISDK;import com.browserstack.aisdk.clients.default_llm_model.DefaultLlmModel;import com.browserstack.aisdk.clients.default_llm_model.DefaultLlmModelConfig;import com.browserstack.aisdk.clients.default_llm_model.DeleteDefaultLlmModelResponse;import com.browserstack.aisdk.clients.default_llm_model.LlmAdapter;import com.browserstack.aisdk.clients.default_llm_model.SetDefaultLlmModelInput;AISDK sdk = AISDK.builder()    .publicKey(System.getenv("BROWSERSTACK_PUBLIC_KEY"))    .secretKey(System.getenv("BROWSERSTACK_SECRET_KEY"))    .build();DefaultLlmModel defaultLlmModel = sdk.defaultLlmModel();// 2. Per-run variablesString provider = "openai-prod";LlmAdapter adapter = LlmAdapter.OPENAI;String model = "gpt-4o-mini";// 3. Get the current defaultDefaultLlmModelConfig row = client.get();// 4. Set the defaultSetDefaultLlmModelInput body = new SetDefaultLlmModelInput();body.provider = provider;body.adapter = adapter;body.model = model;DefaultLlmModelConfig updated = client.set(body);// 5. Clear the defaultDeleteDefaultLlmModelResponse result = client.delete();

Setup

import (	"context"	"log"	aisdk "github.com/browserstack/ai-sdk-go")ctx := context.Background()sdk, err := aisdk.New(aisdk.WithCredentials(	"pk-lf-your-public-key",	"sk-lf-your-secret-key",))if err != nil {	log.Fatalf("aisdk.New: %v", err)}client := sdk.DefaultLlmModel()

Get the current default

Returns the current default model. If no default is set, the call returns an error mapped from HTTP 404.

row, err := client.Get(context.Background())

Returns the current default for your project. If no default is set, returns `404` — make sure your code handles that case rather than assuming a default exists.

This method takes no parameters.
This method takes no parameters.
This method takes no parameters.
This method takes no parameters.

Response

Returns the current DefaultLlmModel — the field-by-field breakdown lives under Set the default.

Set the default

Set() writes the default if there isn't one, and replaces it if there is. There's no separate "create" method — one call handles both cases.

body := &SetDefaultLlmModelInput{	Provider: provider,	Adapter:  adapter,	Model:    model,}updated, err := client.Set(context.Background(), body)

Sets the default if none exists, or replaces it if one does. One call handles both cases. `updatedAt` bumps every time you call this, even if the values are unchanged. Any `modelParams` fields the adapter doesn't support (like `top_k` on OpenAI) are quietly dropped before saving. The response echoes what was actually kept — compare the response to your request if you want to see which fields were dropped. Your `provider` and `adapter` need to match an existing LLM API key in your project. If they don't, the request returns `404`.

ParamTypeRequiredDescription
providerstringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelstringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
modelParamsDefaultLlmModelParams | nullfalseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
providerstrtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelstrtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
model_paramsOptional[object]falseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
providerStringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
adapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
modelStringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
modelParamsObjectfalseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.
ParamTypeRequiredDescription
ProviderstringtrueThe provider name as stored on your LLM API key (for example `openai-prod`, `bedrock-us-east-1`).
AdapterLlmAdaptertrueThe adapter to use with the model (for example `openai`, `anthropic`, `bedrock`).
ModelstringtrueThe model name for the chosen adapter (for example `gpt-4o-mini`, `claude-3-5-sonnet-20240620`).
ModelParamsinterface{}falseOptional. If you leave this out (or pass `null`), it's saved as `null`. Any fields the target adapter doesn't support are quietly dropped; the response echoes what was kept.

Response

Returns the saved DefaultLlmModel:

FieldTypeDescription
IDstringServer-generated id.
ProjectIDstringFilled in from your API-key scope.
LlmApiKeyIDstringThe LLM API key that matched your Provider + Adapter.
ProviderstringEchoed back from the request.
AdapterLLMAdapterEchoed back from the request.
ModelstringEchoed back from the request.
ModelParamsmap[string]any | nilWhat the adapter actually kept — any fields it doesn't support are dropped.
CreatedAt / UpdatedAttime.TimeISO 8601 timestamps.

Clear the default

Removes the current default. Safe to call more than once — if no default is set, the response has AlreadyDeleted = true instead of an error.

result, err := client.Delete(context.Background())

Removes the default. **Heads up:** any eval templates that relied on the default (templates without their own `provider` and `model`) get marked `INACTIVE` at the same time. Evaluator runs scheduled from those templates stop firing until you either set a new default or point each template at a specific model. Safe to call more than once. If no default is set, the response comes back with `alreadyDeleted: true` instead of an error — handy for telling "you just unset it" apart from "it was already gone" when retrying.

This method takes no parameters.
This method takes no parameters.
This method takes no parameters.
This method takes no parameters.

Clearing the default also marks any eval-template jobs that depend on it as INACTIVE. Set a new default before re-enabling those jobs.

Response

FieldTypeDescription
SuccessboolAlways true.
AlreadyDeletedbooltrue if there was no default to clear — helpful for telling "you just unset it" apart from "it was already gone" when your code retries.

Complete example

Every step above, stitched together into one block you can copy and adapt.

// 1. Set up the SDKimport (	"context"	"log"	aisdk "github.com/browserstack/ai-sdk-go")ctx := context.Background()sdk, err := aisdk.New(aisdk.WithCredentials(	"pk-lf-your-public-key",	"sk-lf-your-secret-key",))if err != nil {	log.Fatalf("aisdk.New: %v", err)}client := sdk.DefaultLlmModel()// 2. Per-run variablesprovider := "openai-prod"adapter := LlmAdapterOpenaimodel := "gpt-4o-mini"// 3. Get the current defaultrow, err := client.Get(context.Background())// 4. Set the defaultbody := &SetDefaultLlmModelInput{	Provider: provider,	Adapter:  adapter,	Model:    model,}updated, err := client.Set(context.Background(), body)// 5. Clear the defaultresult, err := client.Delete(context.Background())

See also

  • LLM Connections — set up the underlying LLM API keys that provider + adapter map to.