我如何使用 Laravel 与 Next.js 为我的作品集(Yabasha.dev)构建 AI 代理
Source: Dev.to

作为技术负责人和 AI 工程师,我常对同事们说:“鞋匠的孩子没有鞋子”。我们为他人构建复杂、高性能的系统,却常常让自己的作品集网站积灰,缺少我们在专业工作中要求的打磨。
我决定为自己的平台 Yabasha.dev 改进这一点。我不想要一个普通的博客;我想要一个能够展示我在 AI 代理 和 全栈架构 方面专长的活生生的实验场。
于是,我构建了一个 AI 代理,充当我的 “高级编辑” 与 “SEO 经理”,自动化内容创作中繁琐的部分,让我可以专注于写作。下面深入探讨我如何使用 Laravel、Next.js 与 OpenRouter 搭建它。
架构:混合动力
后端:Laravel 12(API,使用 Filament 的后台管理面板)
前端:Next.js 15(静态生成,React 服务器组件)
AI 网关:OpenRouter(统一的 OpenAI、Anthropic、Google 与 Meta 模型 API)
这种组合让我既能享受到 Laravel 在数据管理上的开发体验与稳定性,又能为终端用户提供 Next.js 的极速性能。
问题:摩擦
撰写技术文章仅占工作量的 50%。另外 50% 包括:
- 编写引人入胜的 meta 描述。
- 确定主要和次要的 SEO 关键词。
- 生成 Open Graph(OG)标签,使其在 Twitter/LinkedIn 上显示良好。
- 为内容归类。
- 估算阅读时间和难度等级。
这些摩擦常常让我无法顺利点击 “发布”。
解决方案:“编辑器”代理
我在 Laravel 中创建了一个后台服务 (PostAiService),它充当自主代理。它不仅仅是“摘要”文本,而是以特定角色进行分析。
大脑
核心逻辑位于一个专门的服务中,用于构建复杂的提示。我指示 LLM 扮演 “资深 SEO 专家与内容编辑” 的角色。
// app/Services/PostAiService.php
protected function buildAnalysisPrompt(string $content): string
{
return apiKey)
->post($this->baseUrl . '/chat/completions', [
'model' => $model->request_id,
'messages' => [
['role' => 'user', 'content' => 'Count from 1 to 10.']
],
]);
// Calculate tokens per second (TPS) and store it
// ...
$model->update(['actual_speed' => $tps]);
}
在后台面板中,我可以按 成本 与 速度(Tokens/Sec) 对模型进行排序,并即时切换代理使用的活跃模型。当出现更便宜的模型时,我会添加、基准测试并切换代理使用它。
结果:零摩擦发布
我的工作流现在是:
- 用 Markdown 编写草稿。
- 保存草稿。
PostObserver检测到变化并将任务加入队列。- AI 代理读取草稿并填充所有 SEO 元数据、摘要和分类。
- Next.js 重新构建页面,将这些丰富的元数据注入文档的 “ 中。
最终,我在 Yabasha.dev 上得到一个完美优化的页面,而我在“优化”上几乎没有花费时间。
结论
AI 并不是要取代工程师,而是要放大他们的能力。通过构建这个代理,我消除了博客的行政负担,让我可以全身心投入知识分享。
如果你有兴趣构建类似的 AI 驱动架构,或需要在你的 Next.js/Laravel 技术栈上提供高级帮助,欢迎随时联系或访问我的作品集 Yabasha.dev。