25年平安夜Symfony AI正式发布,短短四个月,它已经迭代到了v0.8版本,180多位开发者贡献了20000多次提交,覆盖70多个软件包。毫不夸张地说,这是PHP生态在AI领域迈出的最坚实的一步,也是我们PHPer终于能挺直腰杆说"我也能原生写AI"的时刻。
告别跨语言的折腾
在Symfony AI出现之前,PHP和AI之间好像隔着一道不可逾越的墙。你想调用大模型?得用Python写个中间层。想做RAG知识库?还得用Python。想搞个智能代理?那更是Python的天下。
Symfony AI直接把这堵墙拆了。它的核心设计理念特别简单:让PHP开发者用自己最熟悉的语法和工具链,做所有AI相关的事。不需要学新语言,不需要搭额外的服务,不需要处理复杂的跨语言通信,所有东西都在你熟悉的Symfony生态里完成。
五个组件,覆盖AI开发全流程
和Symfony框架一贯的风格一样,Symfony AI采用了完全模块化的设计,每个组件都可以单独使用,也可以组合起来构建复杂的AI应用。
- Platform:这是最底层的抽象层,统一了25+个AI平台的接口。不管你用OpenAI、Anthropic、Groq还是本地部署的模型,代码完全不用改,只需要改一行配置就能无缝切换。再也不用为了换个大模型重写所有逻辑了
- Store:向量数据库的抽象层,支持20+种存储方案。官方现在推荐用PostgreSQL的pgvector扩展,不用额外部署服务,直接用你现有的数据库就能做RAG
- Agent:完整的自主代理框架,支持工具调用、子代理协作和流式输出。你只需要定义好工具,AI会自己决定什么时候调用,怎么组合结果,直到完成任务
- Chat:内置了聊天上下文持久化,不用自己写会话管理,几行代码就能做出一个功能完整的聊天机器人
- AI Bundle:和Symfony框架深度集成,支持YAML配置,还能在Profiler里看到每个AI请求的token消耗、响应时间和详细日志,调试起来特别方便
只要一分钟就能跑起来第一个AI程序
在你的Symfony项目根目录下,只需要运行一行命令:
composer require ai
然后在config/packages/ai.yaml里填上你的OpenAI API key,就可以开始写代码了。比如让AI用海盗的风格回答问题:
$platform = PlatformFactory::create($_ENV['OPENAI_API_KEY']);$agent = new Agent($platform, 'gpt-4o-mini');$messages = new MessageBag( Message::forSystem('你是一个幽默的老海盗,说话要带点航海术语'), Message::ofUser('给我介绍一下Symfony框架'));echo $agent->call($messages)->getContent();
复制粘贴运行就能看到结果,没有任何复杂的配置,就是这么简单。
8个Demo展示它的能力
官方推出的symfony/ai-demo仓库绝对是最好的学习资源,里面包含了8个开箱即用的项目,覆盖了AI开发的大部分常见场景:
- YouTube转录机器人:输入视频ID,自动生成字幕并支持问答,完美展示了语音转文本和RAG的结合。
- 智能食谱助手:利用结构化输出功能,生成包含精确食材用量、烹饪步骤和营养信息的配方。
- 维基百科研究代理:能自动搜索维基百科、提取关键信息并整理成答案,不用再手动复制粘贴。
- Symfony博客问答:基于官方博客内容构建的RAG系统,能准确回答关于Symfony开发的各种问题。
- 语音交互助手:结合了语音识别、文本转语音和子代理技术,实现了端到端的语音对话。
- 实时视频分析:调用GPT的视觉能力,分析摄像头捕捉的画面内容。
- AI智能裁剪:自动识别图片中的关键元素,进行智能裁剪,特别适合电商网站。
- 流式响应演示:展示了如何用Turbo和SSE技术实现像ChatGPT一样的打字效果。
写在最后
很长一段时间里,很多人都觉得PHP是一门过时的语言,在AI时代会被淘汰。但Symfony AI用实际行动证明,PHP不仅能跟上时代的步伐,还能凭借其成熟的生态和庞大的开发者群体,走出一条属于自己的路。
作为 PHP 开发者,现在是时候行动了。访问 https://ai.symfony.com/,试试那些Demo开始你的AI项目吧。