OpenAI-Java is the official Java client library provided by OpenAI for interacting with the OpenAI API. It is designed to make it easier for Java applications to call endpoints like chat completions, embeddings, function calling, streaming, and other model services using idiomatic Java patterns. You configure the client (often via environment variables or system properties), then build parameter objects (e.g. ChatCompletionCreateParams) and invoke methods like client.chat().completions().create(...) to send requests in a type-safe way. The library also supports streaming APIs, where the response arrives in chunks, using helpers like ChatCompletionAccumulator to accumulate partial responses into a full object. For complex use cases (e.g. structured outputs, function calling), it provides schema support, JSON annotations, and schema validation.
Features
- Request/response POJOs for the GPT APIs
- Basic retrofit client for the GPT endpoints, includes the api module
- A basic service class that creates and calls the client. This is the easiest way to get started
- Example project using the service
- Data classes only
- OpenAiService