grok-php/laravel
| Install | |
|---|---|
composer require grok-php/laravel |
|
| Latest Version: | v1.1.0 |
| PHP: | ^8.2 || ^8.3 || ^8.4 |
| License: | MIT |
| Last Updated: | Feb 25, 2025 |
| Links: | GitHub · Packagist |
🧠 Grok AI Laravel

A Laravel integration for the GrokPHP Client, designed to effortlessly incorporate Grok AI into Laravel applications with a clean and intuitive API.
Utilize advanced AI models for chat, automation, and natural language processing, all while preserving Laravel's simplicity and elegance.
Table of Contents
- Features
- Installation
- Quick Start
- Available Grok AI Models
- Streaming Responses
- Testing
- Security
- Contributing
- License
Features
- Seamless Laravel Integration – Works with Laravel 10, 11, and 12
- Simple API Client – Access Grok AI models with a clean and intuitive API
- Supports Chat & Vision – Send both text and image-based requests
- Streaming Capable – Enable real-time AI responses
- Configurable Defaults – Set model, temperature, and timeout via config
Installation
Install via Composer:
composer require grok-php/laravel
After installation, run the setup command:
php artisan grok:install
This command will:
- Publish the configuration file (
config/grok.php). - Add necessary environment variables to
.env.
Add your API key in .env:
GROK_API_KEY=your-api-key
Quick Start
Chat API
use GrokPHP\Laravel\Facades\GrokAI;
use GrokPHP\Client\Config\ChatOptions;
use GrokPHP\Client\Enums\Model;
$response = GrokAI::chat(
[['role' => 'user', 'content' => 'Hello Grok!']],
new ChatOptions(model: Model::GROK_2)
);
echo $response->content();
Vision Analysis (Image Recognition)
$response = GrokAI::vision()->analyze(
'https://example.com/sample.jpg',
'Describe this image'
);
echo $response->content();
Error Handling
All errors are wrapped in the GrokException class:
use GrokPHP\Client\Exceptions\GrokException;
try {
$response = GrokAI::chat(
[['role' => 'user', 'content' => 'Hello!']]
);
echo $response->content();
} catch (GrokException $e) {
echo "Error: " . $e->getMessage();
}
Available Grok AI Models
| Model Enum | API Model Name | Description |
|---|---|---|
Model::GROK_VISION_BETA |
grok-vision-beta | Experimental vision-enabled model |
Model::GROK_2_VISION |
grok-2-vision | Advanced multi-modal vision model |
Model::GROK_2_VISION_LATEST |
grok-2-vision-latest | Latest iteration of Grok vision models |
Model::GROK_2_VISION_1212 |
grok-2-vision-1212 | Enhanced vision model with performance improvements |
Model::GROK_2_1212 |
grok-2-1212 | Optimized chat model |
Model::GROK_2 |
grok-2 | Default general-purpose Grok model |
Model::GROK_2_LATEST |
grok-2-latest | Latest iteration of Grok-2 |
Model::GROK_BETA |
grok-beta | Experimental beta model |
Default model used: Model::GROK_2
Streaming Responses
Enable real-time AI responses by setting stream: true:
$response = GrokAI::chat(
[['role' => 'user', 'content' => 'Tell me a story']],
new ChatOptions(model: Model::GROK_2, stream: true)
);
Streaming is useful for chatbots, assistants, and real-time applications.
Testing
To run PHPUnit tests, copy the phpunit.xml.dist file to phpunit.xml and set your API key.
cp phpunit.xml.dist phpunit.xml
<php>
<env name="GROK_API_KEY" value="your-grok-api-key"/>
</php>
Now, run the tests:
composer test
Security
If you discover a security vulnerability, please report it via email:
thefeqy@gmail.com
Contributing
Check out CONTRIBUTING.md for guidelines on how to contribute.
License
This package is open-source software licensed under the MIT License.
Related Packages
AI SEO Meta Tag Generator for Laravel powered by SharpAPI.com
AI Content Translation for Laravel powered by SharpAPI.com
Took some queues from Endroid and bratao and hopefully got the package to v0.8.*