Laravel AI SDK 正式发布了吗?

摘要:Laravel AI SDK 正式发布 Laravel AI SDK 今天正式发布了。这个由 Taylor Otwell 开发数月的官方包,为 Laravel 应用提供了一套统一的 AI 交互接口,覆盖文本对话、图像生成、语音合成、语音转录
Laravel AI SDK 正式发布 Laravel AI SDK 今天正式发布了。这个由 Taylor Otwell 开发数月的官方包,为 Laravel 应用提供了一套统一的 AI 交互接口,覆盖文本对话、图像生成、语音合成、语音转录、向量嵌入等场景,支持 OpenAI、Anthropic、Gemini、Groq、xAI 等主流服务商。 安装方式和其他 Laravel 官方包一样简单: composer require laravel/ai 文档跟上了 Laravel 中文文档 - AI SDK Agent:核心交互单元 SDK 的核心概念是 Agent。每个 Agent 是一个 PHP 类,封装了系统指令、对话上下文、工具和输出格式。可以把它理解为一个专用助手——销售教练、文档分析器、客服机器人——配置一次,随处调用。 通过 Artisan 命令创建: php artisan make:agent SalesCoach 生成的类实现 Agent 接口,定义 instructions() 方法提供系统提示词,然后调用 prompt() 发起对话: $response = SalesCoach::make(user: $user) ->prompt('分析这段销售录音...'); return (string) $response; prompt() 方法支持在调用时切换服务商和模型: $response = (new SalesCoach)->prompt( '分析这段销售录音...', provider: 'anthropic', model: 'claude-haiku-4-5-20251001', timeout: 120, ); 如果不想创建专门的类,也可以用匿名 Agent 快速调用: use function Laravel\Ai\{agent}; $response = agent( instructions: 'You are an expert at software development.', )->prompt('Tell me about Laravel'); 结构化输出 Agent 可以返回结构化数据,而不仅仅是纯文本。实现 HasStructuredOutput 接口,定义 schema() 方法即可: public function schema(JsonSchema $schema): array { return [ 'feedback' => $schema->string()->required(), 'score' => $schema->integer()->min(1)->max(10)->required(), ]; } 调用后直接当数组用: $response = (new SalesCoach)->prompt('分析这段录音...'); return $response['score']; // 8 对话记忆 Agent 支持自动持久化对话历史。使用 RemembersConversations trait 后,SDK 会自动将对话存入数据库,后续可以通过 continue() 方法继续之前的对话: // 开始新对话 $response = (new SalesCoach)->forUser($user)->prompt('你好!'); $conversationId = $response->conversationId; // 继续对话 $response = (new SalesCoach) ->continue($conversationId, as: $user) ->prompt('接着刚才的话题...'); 工具系统 Agent 可以使用工具来扩展能力。通过 make:tool 命令创建工具类,定义输入 schema 和 handle() 方法: class RandomNumberGenerator implements Tool { public function description(): string { return '生成加密安全的随机数。
阅读全文