Interface BraintrustClientAsync
-
- All Implemented Interfaces:
public interface BraintrustClientAsyncA client for interacting with the Braintrust REST API asynchronously. You can also switch to synchronous execution via the sync method.
This client performs best when you create a single instance and reuse it for all interactions with the REST API. This is because each client holds its own connection pool and thread pools. Reusing connections and threads reduces latency and saves memory. The client also handles rate limiting per client. This means that creating and using multiple instances at the same time will not respect rate limits.
The threads and connections that are held will be released automatically if they remain idle. But if you are writing an application that needs to aggressively release unused resources, then you may call close.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public interfaceBraintrustClientAsync.WithRawResponseA view of BraintrustClientAsync that provides access to raw HTTP responses for each method.
-
Method Summary
-
-
Method Detail
-
sync
abstract BraintrustClient sync()
Returns a version of this client that uses synchronous execution.
The returned client shares its resources, like its connection pool and thread pools, with this client.
-
withRawResponse
abstract BraintrustClientAsync.WithRawResponse withRawResponse()
Returns a view of this service that provides access to raw HTTP responses for each method.
-
topLevel
abstract TopLevelServiceAsync topLevel()
-
projects
abstract ProjectServiceAsync projects()
-
experiments
abstract ExperimentServiceAsync experiments()
-
datasets
abstract DatasetServiceAsync datasets()
-
prompts
abstract PromptServiceAsync prompts()
-
roles
abstract RoleServiceAsync roles()
-
groups
abstract GroupServiceAsync groups()
-
acls
abstract AclServiceAsync acls()
-
users
abstract UserServiceAsync users()
-
projectScores
abstract ProjectScoreServiceAsync projectScores()
-
projectTags
abstract ProjectTagServiceAsync projectTags()
-
spanIframes
abstract SpanIframeServiceAsync spanIframes()
-
functions
abstract FunctionServiceAsync functions()
-
views
abstract ViewServiceAsync views()
-
organizations
abstract OrganizationServiceAsync organizations()
-
apiKeys
abstract ApiKeyServiceAsync apiKeys()
-
aiSecrets
abstract AiSecretServiceAsync aiSecrets()
-
envVars
abstract EnvVarServiceAsync envVars()
-
evals
abstract EvalServiceAsync evals()
-
close
abstract Unit close()
Closes this client, relinquishing any underlying resources.
This is purposefully not inherited from AutoCloseable because the client is long-lived and usually should not be synchronously closed via try-with-resources.
It's also usually not necessary to call this method at all. the default HTTP client automatically releases threads and connections if they remain idle, but if you are writing an application that needs to aggressively release unused resources, then you may call this method.
-
-
-
-