Об этом проекте
Ultralytics OpenAPI — это инструмент, который читает спецификации OpenAPI (версии с 3.0 по 3.2.0) и генерирует два результата из единого контракта: интерактивную документацию API и типизированный Python SDK. Он поддерживает все стандартные HTTP-операции (GET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD, TRACE).
Настройка выполняется через файл `openapi.config.json`, где вы указываете источник (локальный файл или URL), имя генерируемого пакета, переменную окружения для API-ключа, базовый путь документации и различные метаданные Python-пакета (авторы, классификаторы, версия, лицензия и т.д.). Инструмент также поддерживает необязательную генерацию CLI, включая исходный файл Python, принадлежащий потребителю.
Ключевые возможности включают:
- Синхронные и асинхронные Python-клиенты
- Типизированные ресурсы и ответы TypedDict
- Поддержка многопартийной загрузки
- Автоматические повторные попытки при временных сбоях
- Структурированные ошибки API
- Обработка API-ключей, которая остается в памяти браузера для документации
- Детерминированная статическая сборка документации
- Настраиваемый брендинг (логотип, фавикон, градиентные токены)
- Опциональный модуль провайдера аутентификации для пользовательского обнаружения учетных данных
Сгенерированные SDK по умолчанию используют лицензию AGPL-3.0, но ее можно настроить. Проект разрабатывается с использованием Bun и uv и включает команды для разработки, тестирования и генерации. Планируются будущие SDK для TypeScript, Go и Java.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.