Память диалога
По умолчанию агент не помнит предыдущие сообщения. RemembersConversations добавляет память.
Трейт
use Laravel\Ai\Concerns\RemembersConversations;
use Laravel\Ai\Contracts\Agent;
use Laravel\Ai\Promptable;
class SupportAgent implements Agent
{
use Promptable, RemembersConversations;
public function instructions(): string
{
return 'Ты — агент поддержки.';
}
}
Использование
// Первый запрос
$response = SupportAgent::make(user: $user)->prompt('Привет!');
$conversationId = $response->conversationId;
// Продолжение
$response = SupportAgent::make(user: $user)
->continue($conversationId)
->prompt('Что я только что сказал?');
SDK сохраняет историю в БД.
Таблица conversations
Миграция создаётся автоматически. В ней:
id— ID диалогаuser_id— пользовательmessages— историяsteps— шаги с tools
Итоги
RemembersConversationsдля памятиcontinue($id)для продолжения- История в БД
conversationIdиз ответа