Repolode
openai

openai/openai-java

Официальный SDK для Java и Kotlin для OpenAI REST API: синхронные и асинхронные клиенты, потоковая передача и типизированные классы запросов и ответов.

Звёзды
1,554
Форки
272
Открытые issues
66
Последний коммит
6 часов назад

Что это?

openai-java — официальная Java-библиотека для вызова OpenAI API из приложений на Java. Она оборачивает REST-эндпоинты в типизированные билдеры и классы ответов, позволяя разработчикам работать с Java-объектами вместо того, чтобы вручную писать JSON. Основная точка входа — Responses API; также поддерживается Chat Completions API.

Клиент доступен в синхронном и асинхронном вариантах, а методы потоковой передачи возвращают потоки фрагментов, которые можно обрабатывать по мере поступления данных. Вспомогательные классы собирают фрагменты потоковых chat completions и responses обратно в целые объекты. Структурированные выходные данные можно автоматически создавать на основе обычных Java-классов; при необходимости форму генерируемой JSON-схемы можно настроить с помощью аннотаций Jackson и Swagger.

SDK также поддерживает настройку через системные свойства или переменные окружения, аутентификацию по workload identity для Kubernetes, Azure и GCP, а также дополнительный артефакт для вызова API, совместимых с OpenAI, на Amazon Bedrock.

Ключевые возможности

  • 01Типизированные Java-билдеры и классы ответов для Responses API и Chat Completions API.
  • 02Синхронные и асинхронные клиенты; асинхронные методы возвращают CompletableFuture.
  • 03Потоковая передача через SSE со вспомогательными средствами для сбора фрагментов в целые ответы.
  • 04Создание структурированных выходных данных на основе Java-классов с локальной проверкой JSON-схемы.
  • 05Аутентификация по workload identity для Kubernetes, Azure и GCP.

Сценарии использования

  • Добавление генерации текста на базе OpenAI в серверную службу на Java или Kotlin.
  • Передача вывода модели веб- или десктопному клиенту по мере его генерации.
  • Извлечение структурированных данных из ответов модели в доменные объекты Java.
  • Вызов совместимых с OpenAI моделей на Amazon Bedrock из приложения на Java.

Быстрый старт

  1. 1

    Добавьте зависимость Gradle

    implementation("com.openai:openai-java:4.90.0")
  2. 2

    Создайте клиент на основе переменных окружения

    OpenAIClient client = OpenAIOkHttpClient.fromEnv();

Что важно знать

  • В примерах README используется переменная окружения OPENAI_API_KEY, поэтому для отправки запросов вам понадобится ключ API OpenAI.

Темы

Частые вопросы

Что такое openai-java?
Официальный SDK для Java и Kotlin для OpenAI REST API: синхронные и асинхронные клиенты, потоковая передача и типизированные классы запросов и ответов. openai-java — официальная Java-библиотека для вызова OpenAI API из приложений на Java. Она оборачивает REST-эндпоинты в типизированные билдеры и классы ответов, позволяя разработчикам работать с Java-объектами вместо того, чтобы вручную писать JSON. Основная точка входа — Responses API; также поддерживается Chat Completions API.
openai-java можно использовать бесплатно? Какая у него лицензия?
openai-java распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
openai-java всё ещё поддерживается?
Активно поддерживается. Последний коммит в openai-java — 22 окт. 2026 г..
Для чего можно использовать openai-java?
Добавление генерации текста на базе OpenAI в серверную службу на Java или Kotlin. Передача вывода модели веб- или десктопному клиенту по мере его генерации. Извлечение структурированных данных из ответов модели в доменные объекты Java. Вызов совместимых с OpenAI моделей на Amazon Bedrock из приложения на Java.
Как установить openai-java?
Добавьте зависимость Gradle: implementation("com.openai:openai-java:4.90.0") Создайте клиент на основе переменных окружения: OpenAIClient client = OpenAIOkHttpClient.fromEnv();
Где скачать openai-java?
Исходный код и инструкции по установке — на GitHub: https://github.com/openai/openai-java

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Библиотека Python для получения от LLM структурированных данных, проверенных с помощью Pydantic, с поддержкой нескольких провайдеров и автоматическими повторами при ошибках валидации.

14 тыс.1,3 тыс.PythonMITОбновлён позавчера