# Artifism - AI内容和图像生成器SaaS
## 项目概述
- **项目类型**:AI SaaS平台(Web应用)
- **主要功能**:基于Laravel的AI内容生成平台,支持文本生成、AI图像生成、聊天机器人、AI语音等功能
- **技术栈**:
- 后端:PHP 8.1+, Laravel 10.x
- 前端:Tailwind CSS, Laravel Mix
- AI引擎:OpenAI GPT-4/DALL-E、Anthropic Claude、Google Gemini、ElevenLabs等
- 数据库:MySQL/MariaDB
- 模块系统:nwidart/laravel-modules
## 模块结构
### 核心目录结构
```
artifism/
├── app/
│ ├── Http/Controllers/ # 控制器层
│ │ ├── Admin/ # 后台管理控制器
│ │ ├── Api/ # API接口控制器
│ │ ├── Site/ # 前端站点控制器
│ │ └── User/ # 用户相关控制器
│ ├── Models/ # 数据模型
│ ├── Services/ # 业务服务层
│ └── Helpers/ # 辅助函数
├── Modules/ # 模块化架构
│ ├── OpenAI/ # OpenAI功能模块
│ ├── Chat/ # 聊天功能模块
│ ├── Chatbot/ # 聊天机器人模块
│ ├── Subscription/ # 订阅管理模块
│ ├── Gateway/ # 支付网关模块
│ ├── Blog/ # 博客模块
│ ├── CMS/ # 内容管理模块
│ ├── Ticket/ # 工单支持模块
│ ├── Coupon/ # 优惠券模块
│ ├── Anthropic/ # Claude AI模块
│ ├── Gemini/ # Google Gemini模块
│ ├── ElevenLabs/ # 语音合成模块
│ ├── FalAi/ # FalAI图像生成模块
│ └── ... # 其他模块
├── resources/
│ └── views/ # Blade视图模板
├── routes/
│ └── web.php # Web路由
├── database/
│ └── migrations/ # 数据库迁移
└── packages/ # 自定义包
└── infoamin/laravel-installer # 安装器包
```
### 主要功能模块
1. **AI内容生成模块(OpenAI)**
- 文本生成(文章、博客、产品描述等)
- AI聊天对话
- 代码生成
- 提示词模板管理
2. **AI图像生成模块**
- DALL-E集成
- Stable Diffusion集成
- FalAI集成
- 图像编辑和变体生成
3. **AI语音模块(ElevenLabs)**
- 文本转语音
- 语音克隆
- 多语言支持
4. **订阅与支付模块**
- 多订阅计划管理
- 信用点系统
- 多支付网关(Stripe、PayPal、Razorpay等)
- 优惠券和促销码
5. **用户管理模块**
- 多角色权限系统
- 团队账户支持
- 用户活动日志
- 2FA双因素认证
6. **营销与SEO模块**
- 博客系统
- 页面构建器
- SEO优化工具
- 邮件营销集成
## 核心业务逻辑
### 1. 模块化架构
```
请求 → 路由 → 模块控制器 → 服务层 → AI提供商API → 结果处理 → 响应
```
**模块系统特点**:
- 使用`nwidart/laravel-modules`实现模块化
- 每个AI提供商独立模块
- 模块可独立启用/禁用
- 支持模块间的依赖关系
### 2. AI引擎管理
- 统一的AI服务接口
- 支持多引擎切换
- 引擎特定的配置管理
- 故障转移和备用引擎
### 3. 信用点计费系统
- 预付费信用点模式
- 按使用量计费
- 订阅计划包含信用点配额
- 信用点购买和充值
### 4. 多租户支持
- 基于`stancl/tenancy`的多租户架构
- 数据库隔离
- 自定义域名支持
- 品牌白标选项
## 核心代码分析
### 模块注册与加载
```php
// modules.json 模块配置
{
"OpenAI": {
"active": true,
"priority": 0
},
"Anthropic": {
"active": true,
"priority": 1
}
}
```
### 订阅模块核心逻辑
```php
// 订阅计划管理
class SubscriptionController extends Controller
{
// 计划创建、编辑、删除
// 用户订阅管理
// 订阅续费和取消
// 信用点分配
}
```
### OpenAI模块集成
```php
// OpenAI服务封装
class OpenAIService
{
public function generateText($prompt, $options = [])
{
// 调用OpenAI API
// 处理响应
// 记录使用情况
}
public function generateImage($prompt, $size = '1024x1024')
{
// 调用DALL-E API
// 保存生成图像
}
}
```
### 关键特性
1. **多AI提供商支持**
- OpenAI (GPT-4, DALL-E)
- Anthropic Claude
- Google Gemini
- ElevenLabs语音
- FalAI图像
2. **灵活的计费系统**
- 信用点系统
- 订阅计划
- 按量付费
- 免费试用
3. **扩展性设计**
- 模块化架构便于添加新AI引擎
- 插件系统支持第三方扩展
- Hook系统允许自定义逻辑
4. **安全特性**
- API密钥加密存储
- 请求限流
- 内容审核
- 用户数据隔离
### 数据库核心表
- `users` - 用户表
- `subscriptions` - 订阅表
- `subscription_items` - 订阅项目表
- `plans` - 计划表
- `credits` - 信用点记录表
... (content truncated)