pingslayer/mr-nags-gpt-laravel

GitHub: pingslayer/mr-nags-gpt-laravel

这是一个基于 Laravel 13 构建的生产级多租户 AI 聊天后端,集成了语义 RAG 记忆与提示词注入防御机制。

Stars: 0 | Forks: 0

# Mr. Nags AI Chat Backend 🤖 Peas ✌️ 一个为 "Mr. Nags" 角色打造的现代化、生产就绪的 AI 聊天后端,基于 **Laravel 13** 和 **官方 Laravel AI SDK** 构建。 ## ✨ 功能 - **🤖 Agent 架构**:使用官方 Laravel `Agent` 模式实现,支持基于个性的交互。 - **🧠 自动记忆**:利用 `RemembersConversations` trait 无缝持久化和检索多轮聊天历史。 - **🔍 无限记忆 (RAG)**:集成 `pgvector` 进行语义搜索,允许 Agent 回忆之前对话的上下文。 - **🛡️ 注入防御**:在 `config/ai.php` 中内置多层防御提示词,以防止越狱和指令覆盖。 - **⚡ 交互式 CLI**:高级终端模式(`php artisan chat:interactive`),用于实时调试和测试。 - **🔐 多租户安全**:通过 Laravel Sanctum 进行安全的 API 身份验证,并严格隔离用户数据。 ## 🛠️ 技术栈 - **框架**:Laravel 13 - **AI SDK**:`laravel/ai`(官方 SDK) - **数据库**:PostgreSQL 搭配 `pgvector` - **身份验证**:Laravel Sanctum ## 🚀 快速开始 ### 1. 前置条件 确保已安装 PostgreSQL 并启用了 `pgvector` 扩展。 ### 2. 配置 将你的 OpenAI(或首选提供商)密钥添加到 `.env` 文件中: ``` OPENAI_API_KEY=your-api-key AI_CONNECTION=openai ``` ### 3. 安装 ``` composer install php artisan migrate:fresh ``` ### 4. 与 Mr. Nags 对话 (CLI) 填充一个测试用户并开始聊天: ``` php artisan chat:interactive test@example.com ``` ## 🔌 API 使用 ### 聊天端点 发起或继续对话: `POST /api/chat` ``` { "message": "Hey Mr. Nags, what's our meeting status?", "conversation_id": "optional-uuid-here" } ``` ### 对话管理 - `GET /api/conversations`:列出所有进行中的 AI 线程。 - `GET /api/conversations/{id}`:查看特定对话及其消息历史。 - `DELETE /api/conversations/{id}`:永久删除一个线程。 ## 🛡️ 安全与防御 Agent 受严格的系统提示词约束,将所有用户输入视为不可信。规则在 `config/ai.php` 中配置,以防止身份覆盖。 ## 📜 许可证 Mr. Nags 项目是开源软件,遵循 [MIT 许可证](https://opensource.org/licenses/MIT)。
标签:Agent 架构, AI 助手, AI 后端, API 认证, CLI 工具, ffuf, Laravel, Laravel 13, Laravel AI SDK, Laravel Sanctum, Multi-tenant, OpenAI, OpenVAS, pgvector, PHP, PostgreSQL, Prompt 防护, RAG, Web 开发, 人工智能, 内存规避, 向量数据库, 命令行交互, 安全, 对话记忆, 提示词注入防御, 检索增强生成, 测试用例, 用户模式Hook绕过, 语义搜索, 超时处理, 长期记忆