Using this package, you can transform URLs and their content using AI. Whether you want to extract structured data, generate summaries, or apply custom AI transformations to web content, this package can do it.
The result of the transformation is stored in a database. You can retrieve the transformed content at any time.
Here's how you can transform a blog post into structured ld+json data using AI:
use Spatie\LaravelUrlAiTransformer\Support\Transform;
use Spatie\LaravelUrlAiTransformer\Transformers\LdJsonTransformer;
Transform::urls('https://example.com/blog/my-post')
->usingTransformers(new LdJsonTransformer);
A transformer is a Laravel AI agent where you define the instructions for the transformation and, when needed, customize the content sent to the model.
The configured transformation can be run using the transform-urls command.
php artisan transform-urls
After the transformation is complete, you can retrieve the transformed content using the TransformationResult model.
use Spatie\LaravelUrlAiTransformer\Models\TransformationResult;
$structuredData = TransformationResult::forUrl('https://example.com/blog/my-post', 'ldJson');
Instead of the type string, you can also pass the transformer class name.
$structuredData = TransformationResult::forUrl('https://example.com/blog/my-post', LdJsonTransformer::class);