jpcaparas/laravel-faker-openai
| Install | |
|---|---|
composer require jpcaparas/laravel-faker-openai |
|
| Latest Version: | 0.1.0 |
| PHP: | ^8.2 |
| Laravel: | 10 · 11 |
| License: | MIT |
| Last Updated: | Jan 27, 2025 |
| Links: | GitHub · Packagist |
Laravel Faker OpenAI Provider
A Laravel package that extends FakerPHP by adding an AI-powered data generator using OpenAI. This allows you to generate more realistic and context-aware fake data in your Laravel applications.
Installation
Install the package via Composer:
composer require jpcaparas/laravel-faker-openai
The package will automatically register its service provider if you're using Laravel's package auto-discovery.
Configuration
- Next, execute the install command:
php artisan openai:install
This will create a config/openai.php configuration file in your project, which you can modify to your needs using environment variables.
- Make sure you have your OpenAI API key set in your
.envfile:
OPENAI_API_KEY=your-api-key-here
- The package uses
gpt-3.5-turbomodel by default.
Usage
The package adds a new promptAI() method to the Faker generator. You can use it in several ways:
Basic Usage
$faker = app(\Faker\Generator::class);
// Generate a fake name using AI
$name = $faker->promptAI('name');
// Generate a movie review
$review = $faker->promptAI('movieReview');
// Generate a movie description
$description = $faker->promptAI('movieDescription');
... you can also use the built-in fake() helper:
$name = fake('name');
With Fallback Values
You can provide fallback values that will be used if the AI request fails:
// String fallback
$name = $faker->promptAI('name', 'John Doe');
// Closure fallback
$name = $faker->promptAI('name', fn() => 'John Doe');
Error Handling
By default, errors are logged and the fallback value is returned. You can make it throw exceptions instead:
try {
$name = $faker->promptAI('name', null, true); // Set throwOnError to true
} catch (\Exception $e) {
// Handle the error
}
How It Works
The package works by:
- Intercepting FakerPHP method calls through a prompt
- Sending them to OpenAI's GPT model
- Returning AI-generated responses that match FakerPHP's expected output format
Testing
Run the test suite:
composer test
License
MIT
Related Packages
Powerful PHP database abstraction layer (DBAL) with many features for database s...
Laravel Serializable Closure provides an easy and secure way to serialize closur...
Cli error handling for console/command-line PHP applications.
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| 0.1.0 | ^8.2 | ^10.0 | | MIT |