- Issue created by @seorusus
Dependencies and Requirements
- Updated OpenAI PHP client to v0.10.0
- Updated Guzzle HTTP client to v7.8
- Added support for php-http/guzzle7-adapter v1.0
- Added http-interop/http-factory-guzzle v1.2
- Set minimum PHP requirement to 8.1
OpenAI API Integration
- Modernized OpenAI client factory to use latest factory pattern
- Updated embedding model to text-embedding-3-large (3072 dimensions)
- Replaced deprecated completions endpoint with chat completions fallback
- Enhanced model selection with predefined 2025 models (GPT-4o, GPT-4-turbo)
Alternative API Provider Support
- Added support for project-based API keys (sk-proj-*)
- Made Organization ID field optional for providers that don't require it
- Updated form labels and descriptions to be more inclusive of alternative providers
- Added custom HTTP options handling for different API providers
- Improved error handling to show warnings instead of errors for non-standard key formats
Configuration Improvements
- Added API endpoint configuration with better help text
- Renamed "OpenAI credentials" section to "AI Provider credentials"
- Enhanced settings form with failsafe defaults when API is unavailable
- Changed default model to GPT-4o
Documentation
- Updated README with current requirements
- Updated Supabase setup instructions for 3072-dimension vectors
- Created CUSTOM_PROVIDERS.md with instructions for alternative API providers
- Added UPGRADE.md with migration guidance
- Updated roadmap for 2025 features
Testing Instructions
1. Install the updated module
2. Configure with either OpenAI API keys or alternative provider keys
3. Verify that non-standard API key formats (like sk-proj-*) are accepted
4. Test with various API endpoints if available
This update makes the module more flexible, supporting the latest OpenAI models while also allowing for alternative API providers that may offer better pricing
or specialized models.
Active
1.0
Code