A class representing the SDK client configuration..
A class representing the SDK client configuration.
The HTTP client to use in the SDK.
The HTTP client to use in the SDK.
Use the one published in langsmith-java-client-okhttp or implement your own.
This class takes ownership of the client and closes it when closed.
Whether to throw an exception if any of the Jackson versions detected at runtime are incompatible with the SDK's minimum supported Jackson version (2.13.4).
Whether to throw an exception if any of the Jackson versions detected at runtime are incompatible with the SDK's minimum supported Jackson version (2.13.4). Defaults to true. Use extreme caution when disabling this option. There is no guarantee that the SDK will work correctly when using an incompatible Jackson version.
The Jackson JSON mapper to use for serializing and deserializing JSON.
The Jackson JSON mapper to use for serializing and deserializing JSON. Defaults to [com.langchain.smith.core.jsonMapper]. The default is usually sufficient and rarely needs to be overridden.
The executor to use for running [AsyncStreamResponse.Handler] callbacks.
The executor to use for running [AsyncStreamResponse.Handler] callbacks. Defaults to a dedicated cached thread pool. This class takes ownership of the executor and shuts it down, if possible, when closed.
The interface to use for delaying execution, like during retries.
The interface to use for delaying execution, like during retries. This is primarily useful for using fake delays in tests. Defaults to real execution delays. This class takes ownership of the sleeper and closes it when closed.
The clock to use for operations that require timing, like retries.
The clock to use for operations that require timing, like retries. This is primarily useful for using a fake clock in tests. Defaults to [Clock.systemUTC].
Whether to call validate on every response before returning it.
Whether to call validate on every response before returning it.
Defaults to false, which means the shape of the response will not be validated upfront.
Instead, validation will only occur for the parts of the response that are accessed.
Sets the maximum time allowed for various parts of an HTTP call's lifecycle, excluding retries.
Sets the maximum time allowed for various parts of an HTTP call's lifecycle, excluding retries. Defaults to [Timeout.default].
The maximum number of times to retry failed requests, with a short exponential backoff between requests.
The maximum number of times to retry failed requests, with a short exponential backoff between requests. Only the following error types are retried:
The base URL to use for every request.
Bearer tokens are used to authenticate from the UI.
Returns a mutable builder for constructing an instance of [ClientOptions].
Returns options configured using system properties and environment variables..
The HTTP client to use in the SDK.
Whether to throw an exception if any of the Jackson versions detected at runtime are incompatible with the SDK's minimum supported Jackson version (2.13.4).
The Jackson JSON mapper to use for serializing and deserializing JSON.
The executor to use for running [AsyncStreamResponse.Handler] callbacks.
The interface to use for delaying execution, like during retries.
The clock to use for operations that require timing, like retries.
The base URL to use for every request.
The base URL to use for every request.
Whether to call validate on every response before returning it.
Sets the maximum time allowed for various parts of an HTTP call's lifecycle, excluding retries.
Sets the maximum time allowed for various parts of an HTTP call's lifecycle, excluding retries.
The maximum number of times to retry failed requests, with a short exponential backoff between requests.
Bearer tokens are used to authenticate from the UI.
Bearer tokens are used to authenticate from the UI.
Sets the maximum time allowed for various parts of an HTTP call's lifecycle, excluding retries.
Returns options configured using system properties and environment variables..
Returns an immutable instance of [ClientOptions].
Closes these client options, relinquishing any underlying resources.