# GEO **Repository Path**: drz666/GEO ## Basic Information - **Project Name**: GEO - **Description**: GEO 是继 SEO(搜索引擎优化)和 ASO(应用商店优化)之后,面向AI问答和搜索模型的流量入口优化手段。其核心目标不再是让网页在搜索结果中排名靠前,而是让品牌或内容被AI模型优先引用、总结和推荐。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 5 - **Created**: 2026-01-08 - **Last Updated**: 2026-01-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GEO Platform - Generative Engine Optimization Platform ## 项目概述 GEO(Generative Engine Optimization)商业化平台是一个为商家提供AI大模型关键词优化服务的SaaS平台。商家可以在平台上选择目标关键词,提供相关商业信息,系统自动优化内容并提升关键词在各大AI模型(如ChatGPT、Claude、文心一言等)中的采用率和曝光度,同时提供实时效果监控和数据分析。 ## 核心功能 ### 1. AI模型集成模块 - ✅ **多模型适配器架构**: 支持统一接口管理多个AI模型 - ✅ **具体AI模型适配器**: 实现OpenAI GPT、百度文心一言等主流模型 - ✅ **模型切换和负载均衡**: 自动故障转移、优先级选择、轮询调度 ### 2. 鉴权模块 - ✅ **用户角色权限数据模型**: 基于用户-角色-权限的RBAC模型 - ✅ **JWT认证和权限控制**: 基于Sa-Token的统一认证和权限管控 ### 3. 多模态内容管理 - ✅ **内容存储架构**: 支持文本、图片、视频、音频等多种内容类型 - ✅ **文件上传和多媒体处理**: 支持文件上传、格式转换、缩略图生成等 ### 4. 待实现功能 - 🔄 关键词处理模块 - 集成大模型进行关键词分析和优化 - 🔄 内容生成模块 - 基于大模型实现智能内容生成 - 🔄 API接口层 - 实现各模块的RESTful API接口 - 🔄 测试验证 - 编写单元测试和集成测试 ## 技术架构 ### 后端技术栈 - **框架**: Spring Boot 3.2.0 - **数据库**: MySQL 8.0 + MyBatis-Plus - **缓存**: Redis - **认证**: Sa-Token - **文件存储**: MinIO - **多媒体处理**: FFmpeg - **HTTP客户端**: OkHttp - **工具库**: Hutool ### 核心架构设计 ``` ┌─────────────────────────────────────────────────────┐ │ 前端展示层 │ ├─────────────────────────────────────────────────────┤ │ API控制层 │ ├─────────────────────────────────────────────────────┤ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ AI模型集成 │ │ 鉴权模块 │ │ 内容管理 │ │ │ │ 模块 │ │ │ │ 模块 │ │ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ 关键词处理 │ │ 内容生成 │ │ 监控分析 │ │ │ │ 模块 │ │ 模块 │ │ 模块 │ │ │ └─────────────┘ └─────────────┘ └─────────────┘ │ ├─────────────────────────────────────────────────────┤ │ 数据访问层 │ ├─────────────────────────────────────────────────────┤ │ MySQL Redis MinIO │ └─────────────────────────────────────────────────────┘ ``` ## 项目结构 ``` src/main/java/com/geo/ ├── GeoPlatformApplication.java # 主启动类 ├── ai/ # AI模型集成模块 │ ├── adapter/ # 模型适配器 │ │ ├── AIModelAdapter.java # 适配器接口 │ │ └── impl/ # 具体实现 │ │ ├── OpenAIAdapter.java # OpenAI适配器 │ │ └── WenxinAdapter.java # 文心一言适配器 │ ├── model/ # 数据模型 │ │ ├── AIRequest.java # AI请求模型 │ │ ├── AIResponse.java # AI响应模型 │ │ └── ModelConfig.java # 模型配置 │ └── service/ # 服务层 │ └── AIModelManager.java # 模型管理器 ├── auth/ # 认证鉴权模块 │ ├── config/ # 配置类 │ │ └── SaTokenConfig.java # Sa-Token配置 │ ├── entity/ # 实体类 │ │ ├── User.java # 用户实体 │ │ ├── Role.java # 角色实体 │ │ ├── Permission.java # 权限实体 │ │ └── UserRole.java # 用户角色关联 │ └── service/ # 服务层 │ ├── AuthService.java # 认证服务 │ └── StpInterfaceImpl.java # 权限接口实现 ├── content/ # 内容管理模块 │ ├── entity/ # 实体类 │ │ ├── MultimodalContent.java # 多模态内容 │ │ └── MediaFile.java # 媒体文件 │ ├── service/ # 服务层 │ │ ├── FileUploadService.java # 文件上传服务 │ │ └── MediaProcessingService.java # 媒体处理服务 │ └── storage/ # 存储层 │ └── StorageService.java # 存储服务接口 └── common/ # 通用模块 ├── exception/ # 异常处理 │ └── BusinessException.java # 业务异常 └── result/ # 结果封装 └── ResultCode.java # 结果代码 ``` ## 快速开始 ### 环境要求 - JDK 17+ - Maven 3.6+ - MySQL 8.0+ - Redis 6.0+ - MinIO (可选) - FFmpeg (用于视频/音频处理) ### 配置文件 主要配置在 `src/main/resources/application.yml`: ```yaml # 数据库配置 spring: datasource: url: jdbc:mysql://localhost:3306/geo_platform username: root password: your_password # Redis配置 data: redis: host: localhost port: 6379 # AI模型配置 ai: models: openai: api-key: your_openai_key enabled: true wenxin: api-key: your_wenxin_key secret-key: your_wenxin_secret enabled: true # 文件存储配置 minio: endpoint: http://localhost:9000 access-key: minioadmin secret-key: minioadmin ``` ### 运行项目 ```bash # 克隆项目 git clone cd GEO # 安装依赖 mvn clean install # 运行项目 mvn spring-boot:run ``` ## 核心特性 ### 1. 多模型AI集成 - **统一接口**: 所有AI模型通过统一的适配器接口调用 - **自动故障转移**: 当某个模型不可用时,自动切换到备用模型 - **负载均衡**: 支持轮询、优先级等多种负载均衡策略 - **使用统计**: 实时统计各模型的使用情况和成本 ### 2. 安全鉴权体系 - **基于角色的权限控制**: 支持用户-角色-权限的多级权限管理 - **JWT令牌认证**: 无状态的令牌认证机制 - **细粒度权限控制**: 支持菜单、按钮、API、数据等多种权限类型 - **安全防护**: 登录失败锁定、会话管理等安全机制 ### 3. 多模态内容管理 - **多种内容类型**: 支持文本、图片、视频、音频等多种内容格式 - **智能处理**: 自动生成缩略图、提取媒体信息、格式转换 - **版本管理**: 支持内容版本控制和历史记录 - **存储抽象**: 支持本地存储、MinIO、云存储等多种存储方案 ## 下一步开发计划 1. **关键词处理模块** - 基于大模型的关键词分析 - 关键词扩展和优化建议 - 竞争度分析和趋势预测 2. **内容生成模块** - 智能内容生成和优化 - 多角度内容创建 - SEO友好的内容结构 3. **API接口层** - RESTful API设计 - API文档生成 - 接口版本管理 4. **测试验证** - 单元测试覆盖 - 集成测试场景 - 性能测试基准 ## 贡献指南 1. Fork 项目 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启 Pull Request ## 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。 ## 联系我们 如有问题或建议,请通过以下方式联系: - 项目Issues: [GitHub Issues](https://github.com/your-repo/geo-platform/issues) - 邮箱: team@geo-platform.com --- © 2024 GEO Platform Team. All rights reserved.