jitone-ai is a powerful FilamentPHP plugin that integrates AI-powered features directly into your Filament forms.
composer require jiten14/jitone-ai
- After downloading, Run the package installation command:
php artisan jitone-ai:install
This command will:
- Publish the configuration file for
Jitone AI
Settings. - Publish the configiration file for
openai-php/laravel
Settings. - Create a symbolic link for storage
- We use openai-php/laravel package to connect with OpenAI API. Blank environment variables for the OpenAI API key and organization id are already appended to your .env file, Add your API key here.
OPENAI_API_KEY=sk-...
OPENAI_ORGANIZATION=org-...
The config/jitone-ai.php
file allows you to set default values and templates:
- Set default AI models, max tokens, and temperature
- Configure image generation settings
- Add custom content templates
You can add AI generation capabilities to TextInput
, Textarea
, and RichEditor
fields using the withAI()
method:
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Textarea;
use Filament\Forms\Components\RichEditor;
TextInput::make('title')
->withAI()
Textarea::make('description')
->withAI()
RichEditor::make('content')
->withAI()
TextInput::make('title')
->withAI([
'model' => 'gpt-4',
'max_tokens' => 100,
'temperature' => 0.7,
])
Textarea::make('description')
->withAI([
'model' => 'gpt-3.5-turbo',
'max_tokens' => 200,
'temperature' => 0.5,
])
RichEditor::make('content')
->withAI([
'model' => 'gpt-4',
'max_tokens' => 500,
'temperature' => 0.8,
])
The package provides a dedicated AITextField
for enhanced content generation:
use Jiten14\JitoneAi\Forms\Components\AITextField;
AITextField::make('content')->withAI()
AITextField::make('content')
->withAI([
'model' => 'gpt-4',
'max_tokens' => 300,
'temperature' => 0.6,
])
Use the AIFileUpload
field with the imageAI()
method to enable AI image generation:
use Jiten14\JitoneAi\Forms\Components\AIFileUpload;
AIFileUpload::make('image')
->imageAI()
AIFileUpload::make('image')
->imageAI([
'size' => '1024x1024',
])
- In a form with AI-enabled fields, users will see a "Generate with AI" link right upper to the field.
- Clicking this link opens a modal where users can:
- Enter a custom prompt
- Choose from pre-defined templates (if configured)
- Use existing content for modification
- If modifying existing content, users can choose to:
- Refine: Improve the existing text
- Expand: Add more details to the existing text
- Shorten: Summarize the existing text
- After entering the prompt, selecting a template, or choosing a modification option, click "Generate" to create or modify the content.
- The generated or modified content will be inserted into the form field.
- For fields with AI image generation, users will see a "Generate with AI" link right upper to the upload field.
- Clicking this link opens a modal where users can:
- Describe the image they want to generate
- Choose from pre-defined image prompts (if configured)
- Select the desired image size (if multiple options are provided)
- After entering the description, selecting a template, and choosing the size, click "Generate" to create the image.
- The generated image will be uploaded and associated with the form field.
- The package automatically checks for required dependencies and their versions, logging warnings if any are missing or outdated.
- Developers can add custom templates and prompts through the configuration file.
Jitone AI follows semantic versioning:
- v0.1.7: Fixes applied in OpenAi Configuration.
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
- File upload previews not loading after generating Image.
- Ans.- Make sure that the APP_URL variable in your .env file matches the domain you're using to access your app from, including the protocol (http or https).
If you discover any security vulnerabilities or bugs, please let us know so I can address them promptly.
For support with this package or to report any issues, feel free to reach out Jitone AI Support. I am happy to assist you!
The MIT License (MIT). Please see License File for more information.