Repolode
anasfik

anasfik/openai

SDK no oficial de Dart y Flutter para la API de OpenAI, con clientes tipados para Responses, Chat, Realtime, Batch y más.

Estrellas
665
Forks
231
Issues abiertos
0
Último commit
hace 13 días

¿Qué es?

dart_openai es un SDK no oficial de Dart y Flutter que ofrece una interfaz para la API de OpenAI mediante clientes tipados para la mayoría de sus funcionalidades, como Responses, Chat Completions, Realtime, Videos, Batch, Fine-tuning, Vector Stores y los endpoints de administración. Desde un mismo código, es compatible con Android, iOS, macOS, Linux, Windows, web y Dart del lado del servidor.

Cada OpenAIClient tiene su propia configuración, por lo que es posible usar en paralelo varias cuentas, recursos de Azure o proveedores compatibles con OpenAI, como DeepSeek, LM Studio y Ollama. Los endpoints de streaming se exponen como streams de Dart, y las solicitudes se reintentan automáticamente ante errores de conexión y ciertos códigos de estado HTTP, con retroceso exponencial.

Los errores se notifican mediante excepciones tipadas, y los cuerpos de error de distintos proveedores se normalizan sin perder el contenido original. Las API de carga de archivos usan un tipo de archivo independiente de la plataforma, por lo que el mismo código puede ejecutarse en el navegador.

Funciones clave

  • 01Clientes tipados para Responses, Chat Completions, Realtime, Batch, Fine-tuning y Vector Stores.
  • 02Respuestas de streaming expuestas como streams de Dart mediante eventos enviados por el servidor.
  • 03Configuración independiente por cliente para varias cuentas, Azure y proveedores compatibles.
  • 04Reintentos automáticos con retroceso exponencial y compatibilidad con Retry-After.
  • 05Carga de archivos independiente de la plataforma, compatible con web y plataformas nativas.

Casos de uso

  • Añadir chat con LLM o respuestas de streaming a una aplicación móvil o de escritorio con Flutter.
  • Invocar modelos locales o alojados compatibles con OpenAI desde código de servidor en Dart.
  • Crear un backend en Dart que gestione trabajos por lotes, archivos o almacenes vectoriales de OpenAI.

Inicio rápido

  1. 1

    Añade la dependencia dart_openai (versión ^8.0.0) a pubspec.yaml

  2. 2

    Descarga las dependencias

    dart pub get
  3. 3

    Configura la variable de entorno OPENAI_API_KEY y ejecuta una compleción de chat desde tu código Dart

Antes de usarlo

  • Es un SDK no oficial y OpenAI no lo mantiene.
  • Necesitas una clave de API de OpenAI o un proveedor compatible para realizar llamadas reales.

En colecciones

Temas

Preguntas frecuentes

¿Qué es openai?
SDK no oficial de Dart y Flutter para la API de OpenAI, con clientes tipados para Responses, Chat, Realtime, Batch y más. dart_openai es un SDK no oficial de Dart y Flutter que ofrece una interfaz para la API de OpenAI mediante clientes tipados para la mayoría de sus funcionalidades, como Responses, Chat Completions, Realtime, Videos, Batch, Fine-tuning, Vector Stores y los endpoints de administración. Desde un mismo código, es compatible con Android, iOS, macOS, Linux, Windows, web y Dart del lado del servidor.
¿openai es gratuito? ¿Qué licencia tiene?
openai es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿openai sigue mantenido?
Mantenimiento activo. El último commit de openai fue el 25 oct 2026.
¿Para qué puedo usar openai?
Añadir chat con LLM o respuestas de streaming a una aplicación móvil o de escritorio con Flutter. Invocar modelos locales o alojados compatibles con OpenAI desde código de servidor en Dart. Crear un backend en Dart que gestione trabajos por lotes, archivos o almacenes vectoriales de OpenAI.
¿Cómo se instala openai?
Añade la dependencia dart_openai (versión ^8.0.0) a pubspec.yaml Descarga las dependencias: dart pub get Configura la variable de entorno OPENAI_API_KEY y ejecuta una compleción de chat desde tu código Dart
¿Dónde consigo openai?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/anasfik/openai

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados