项目介绍
Symfony AI 是 Symfony 官方推出的 AI 能力集成组件库,旨在让 PHP 应用程序能够轻松接入各类 AI 平台和服务。作为 PHP 生态中最受好评的框架之一,Symfony 此次推出 AI 组件,进一步降低了 PHP 开发者使用 AI 技术的门槛。
Symfony AI 不是单一工具,而是一整套组件体系,涵盖了从底层模型调用到上层 Agent 开发的全链路需求。支持 OpenAI、Anthropic、Azure、Gemini、VertexAI 等主流 AI 平台。
核心组件
- Platform(平台组件):统一接口接入多种 AI 平台,无需关心不同 API 的细节差异,一次编写即可切换模型
- Agent(智能体组件):构建 AI 代理框架,让 AI 能够自主执行多步骤任务,与用户进行复杂对话交互
- Chat(聊天组件):统一的消息发送接口,并支持长期上下文存储,实现连贯的多轮对话体验
- Mate(MCP 开发服务器):基于 Model Context Protocol 标准,让 AI 助手能与 PHP 应用通过标准化工具进行交互
- Store(数据存储抽象层):为 AI 应用提供数据索引和检索能力,支持向量数据库等高级功能
安装步骤
前提条件
- PHP 8.2 及以上版本
- Composer 包管理器
- 一个 AI 平台的 API Key(OpenAI、Anthropic 等)
安装 AI Bundle
composer require symfony/ai-bundle
安装具体组件
# 安装平台组件(接入 AI 模型)
composer require symfony/ai-platform
# 安装 Agent 组件
composer require symfony/ai-agent
# 安装 Chat 组件
composer require symfony/ai-chat
# 安装 MCP 组件
composer require symfony/mcp-bundle
快速使用示例
调用 OpenAI 模型
use Symfony\AI\Platform\OpenAI\ChatCompletions;
$chat = new ChatCompletions('your-api-key');
$response = $chat->create([
'model' => 'gpt-4',
'messages' => [
['role' => 'system', 'content' => '你是一个专业助手'],
['role' => 'user', 'content' => '解释什么是 PHP 反射']
]
]);
echo $response['choices'][0]['message']['content'];
构建简单的 AI Agent
use Symfony\AI\Agent\Agent;
$agent = new Agent(
model: new OpenAI('gpt-4'),
systemPrompt: '你是一个任务助手,可以调用工具完成任务'
);
$agent->addTool('search', function($query) {
// 搜索逻辑
return "关于 $query 的搜索结果...";
});
$result = $agent->run('帮我搜索最新的 PHP 8.4 新特性');
echo $result;
运行 Demo 应用
# 克隆示例仓库
git clone https://github.com/symfony/ai
cd ai/demo
# 安装依赖
composer install
# 配置 .env(填入 API Key)
echo "PLATFORM_API_KEY=your-key" >> .env
# 启动 Symfony 开发服务器
php -S localhost:8000 -t public
适用场景
- PHP Web 应用智能化:为现有 Symfony 应用添加 AI 对话、智能搜索、内容生成等功能
- 客服机器人开发:利用 Agent 组件构建能够调用工具的多轮对话客服系统
- 内容管理平台:接入 AI 实现自动摘要、标签生成、内容审核等能力
- 开发工具增强:让 IDE 或代码审查工具具备 AI 辅助能力
- MCP 生态对接:将 PHP 应用接入 Model Context Protocol 生态,与各种 AI 客户端无缝连接
开源协议
Symfony AI 遵循 Symfony 框架的 MIT 许可证开源,可免费商用。Symfony 官方也提供商业赞助渠道,欢迎社区支持框架的持续开发。
服务支持:如有兴趣不会搭建,可以联系微信:WRYD6166,开源项目搭建10-50元。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END












暂无评论内容