Deep Seek Client
Client for unary (non-streaming) interactions with the DeepSeek API.
Use the DeepSeekClient top-level function to create instances. The client exposes chat completion, Fill-In-the-Middle completion, user balance, and model listing endpoints as extension functions declared in the org.oremif.deepseek.api package.
The client is designed to be long-lived — create one instance and reuse it. Calling close is usually unnecessary.
Example:
val client = DeepSeekClient(System.getenv("DEEPSEEK_API_KEY"))
val response = client.chat("Hello!")
println(response.choices.first().message.content)Types
Builder for configuring and creating DeepSeekClient instances.
Functions
Sends a chat request with default parameters and a DSL for building messages.
Sends a single user message to the chat API.
Sends a chat request with default parameters.
Sends a chat request with custom parameters and a DSL for building messages.
Sends a chat request with custom parameters and messages.
Sends a fully customizable chat completion request.
Sends a chat completion request to the DeepSeek API.
Streams chat completion responses chunk by chunk from the DeepSeek API.
Closes the underlying HTTP client and suspends until its coroutine scope completes.
Generates a completion using the Fill-In-the-Middle capability with default parameters.
Generates a completion using the Fill-In-the-Middle capability with custom parameters.
Creates a fully customizable FIM completion request using a builder pattern.
Sends a Fill-In-the-Middle (FIM) completion request to the DeepSeek API.
Streams Fill-In-the-Middle (FIM) completions chunk by chunk from the DeepSeek API.
Retrieves the list of DeepSeek models available for the current API key.
Retrieves the current user's available API balance.