Skip to content

项目介绍

什么是 Snail AI?

Snail AI 是一款开源 AI Agent 平台,基于 Java 21、Spring Boot 4.1.0 和 Spring AI 2.0 构建,采用 Server-Agent 分布式架构,为企业提供智能体创建、对话、RAG、MCP、Skill 和 OpenAPI 集成能力。

概览

默认服务地址:

text
http://localhost:8900/snail-ai

默认 gRPC 端口:

text
18888

当前支持状态

能力状态对应源码或脚本
智能体管理已支持snail-ai-server/snail-ai-server-admin
Server-Agent gRPC 架构已支持snail-ai-agentsnail-ai-server
OpenAPI 外部集成已支持snail-ai-server/snail-ai-server-openapi
OpenAI-compatible Chat已支持snail-ai-models
OpenAI-compatible Embedding已支持snail-ai-models
Qwen/HTTP Rerank已支持snail-ai-models
MySQL / PostgreSQL已支持script/sql/
PgVector / Milvus / Elasticsearch已支持docs/docker/docker-compose.yaml
MinIO / 本地资源存储已支持snail-ai.resource.*
达梦已支持script/sql/snail_ai_schema_dameng.sql
SQL Server / MariaDB规划或适配方向不建议按当前版本直接部署

设计理念

理念说明
企业级面向生产环境,关注认证、密钥加密、存储、统计分析和部署运维
可扩展通过责任链、Agent Client、MCP 和 Skill 扩展智能体能力
自主可控模型调用和工具执行可下发到 Agent Client,便于接入内网资源和本地工具
源码优先文档描述以当前源码、pom.xmlapplication.ymldocs/docker/script/sql/ 为准

核心优势

  • Spring 生态集成:基于 Spring Boot 和 Spring AI,适合 Java/Spring 技术栈团队。
  • 分布式 Agent 架构:Server 负责编排,Agent Client 负责模型调用、工具执行和扩展能力。
  • OpenAPI 外部集成:通过 Snail-Ai-App-IdSnail-Ai-Token 对外提供应用级接口。
  • RAG 知识库:支持文档上传、解析、分片、向量化、检索和重排链路。
  • MCP 与 Skill:支持接入外部 MCP 工具和自定义技能。
  • 统计分析:提供智能体对话量、消息趋势、用户活跃度等统计能力。
  • 多存储选择:关系库支持 MySQL/PostgreSQL,检索存储支持 PgVector、Milvus、Elasticsearch,资源存储支持本地或 MinIO。

技术栈

后端

技术当前版本或说明
Java21+
Spring Boot4.1.0
Spring AI2.0.0
gRPCServer-Agent 双向流通信
MyBatis-PlusORM 框架
自定义 Admin 认证AuthenticationInterceptor@LoginRequiredSnail-Ai-Auth

前端

技术说明
Vue 3管理端前端框架
TypeScript类型安全
Vite构建工具
Naive UI组件库

存储

类型当前支持
关系型数据库MySQL、PostgreSQL
向量存储PgVector、Milvus
搜索引擎Elasticsearch
文件资源本地文件系统、MinIO

模型能力

能力当前支持方式
ChatOpenAI-compatible Chat
EmbeddingOpenAI-compatible Embedding
RerankQwen/HTTP Rerank

Claude、Gemini、Ollama、火山引擎等服务如果提供 OpenAI-compatible 接口,可以按兼容端点方式验证接入;不要理解为当前源码内置的一等 Provider。

快速示例

启动依赖组件:

bash
docker compose -f docs/docker/docker-compose.yaml up -d

初始化 MySQL:

bash
mysql -u root -p snail_ai < script/sql/snail_ai_schema.sql

启动 Server:

bash
mvn spring-boot:run -pl snail-ai-starter

访问管理端:

text
http://localhost:8900/snail-ai

OpenAPI 认证头:

http
Snail-Ai-App-Id: <your-app-id>
Snail-Ai-Token: <your-app-token>

开源协议

Snail AI 采用 Apache License 2.0 开源协议,可免费用于商业项目。

相关源码

  • pom.xml
  • snail-ai-starter/src/main/resources/application.yml
  • snail-ai-server/
  • snail-ai-agent/
  • snail-ai-models/
  • docs/docker/docker-compose.yaml
  • script/sql/snail_ai_schema.sql
  • script/sql/snail_ai_schema_pgsql.sql

下一步

Apache 2.0 Licensed