---
title: "Laravel AI SDK: розширений огляд можливостей"
url: https://laravelukraine.com/blog/laravel-ai-sdk-rozsirenii-ogliad-mozlivostei
author: "Олексій Бабінцев"
date: 2026-02-11
---

# Laravel AI SDK: розширений огляд можливостей

Це не просто API-обгортка - це повний шар для AI у стилі Laravel.

### Що нового

**1. Єдина точка входу для промптів і відповідей.** Ви працюєте з агентом як із сервісом, а не з API-клієнтами. Це спрощує виклик і дозволяє централізувати політики.

```php
use function Laravel\Ai\agent;

$response = agent(
	instructions: 'Summarize the ticket'
)->prompt('Analyze this request');

return $response->text;
```

**2. Конфігурація у `config/ai.php` і змінні середовища.** Ключі провайдерів і моделі живуть в одному місці, без розкиданих `.env`. Так легше контролювати середовище та зміну провайдера.

```php
// config/ai.php
'providers' => [
	'openai' => [
		'key' => env('OPENAI_API_KEY'),
	],
],
```

**3. Агенти як класи з інструкціями та контекстом.** Ви створюєте агент під конкретну роль і задаєте інструкції як код. Це робить поведінку стабільною і зрозумілою команді.

```php
use Laravel\Ai\Contracts\Agent;
use Laravel\Ai\Promptable;

class SalesCoach implements Agent
{
	use Promptable;

	public function instructions(): string
	{
		return 'You are a sales coach.';
	}
}
```

**4. Структурована відповідь через JSON Schema.** Замість вільного тексту агент повертає структуру з чіткими типами. Це важливо для автоматичних пайплайнів і API.

```php
use Illuminate\Contracts\JsonSchema\JsonSchema;
use Laravel\Ai\Contracts\HasStructuredOutput;

public function schema(JsonSchema $schema): array
{
	return [
		'score' => $schema->integer()->required(),
	];
}
```

**5. Вкладення файлів і зображень у запитах.** Агент може читати документи та працювати з зображеннями без ручних аплоадів. Це спрощує аналіз звітів, контрактів та скріншотів.

```php
use Laravel\Ai\Files\Document;

$response = agent(
	instructions: 'Summarize this report'
)->prompt('Summary', attachments: [
	Document::fromStorage('report.pdf'),
]);
```

**6. Streaming, broadcast і queue без ручної обв’язки.** Довгі відповіді можна стрімити або віддати в чергу. Це робить UX швидким і передбачуваним.

```php
use App\Ai\Agents\SalesCoach;

return (new SalesCoach)
	->stream('Analyze this transcript');
```

**7. Інструменти агента і провайдерські tools.** Агент може підключати пошук, базу знань або зовнішні інструменти. Це розширює відповіді за межі промпту.

```php
use Laravel\Ai\Tools\SimilaritySearch;

public function tools(): iterable
{
	return [
		SimilaritySearch::usingModel(
			Document::class,
			'embedding'
		),
	];
}
```

**8. Middleware для контролю промптів і логіки.** Промпти можна модифікувати, логувати і обмежувати. Це зручно для контролю витрат і безпеки.

```php
use Laravel\Ai\Contracts\HasMiddleware;

public function middleware(): array
{
	return [new LogPrompts];
}
```

**9. Анонімні агенти для швидких сценаріїв.** Коли не потрібен клас, можна створити агента на льоту. Добре для адмінки або інтеграційних задач.

```php
use function Laravel\Ai\agent;

$response = agent(
	instructions: 'You are a tutor',
)->prompt('Explain queues');
```

**10. Зображення, аудіо, транскрипції як перші класи.** Є єдиний підхід до генерації і зберігання медіа. Це дає повний цикл без сторонніх SDK.

```php
use Laravel\Ai\Image;

$image = Image::of('A clean UI mockup')
	->generate();
```

**11. Embeddings, reranking, векторні сховища.** Підтримка семантичного пошуку і RAG без кастомної інфраструктури. База та індекси стають частиною стандартного стеку.

```php
use Illuminate\Support\Str;

$vector = Str::of('Laravel AI SDK')
	->toEmbeddings();
```

**12. Failover і повний набір фейків для тестів.** Можна задати кілька провайдерів і безболісно мокати виклики. Це робить тести стабільними та дешевими.

```php
use App\Ai\Agents\SalesCoach;

SalesCoach::fake();

$response = (new SalesCoach)
	->prompt('Hello', provider: ['openai', 'anthropic']);
```

### Навіщо це вам

- менше glue-коду;
- більше передбачуваності;
- інтеграція з чергами, подіями та БД з коробки.
