Nexfly 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Nexfly 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Nexfly 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache-2.0
开发语言 Java
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 八千里路云和月
适用人群 未知
收录时间 2024-10-31

软件简介

Nexfly 是一个深度整合spring-ai框架构建的开源 RAG(Retrieval-Augmented Generation)应用项目。

🎮 在线试用

试用请登录网址 https://nexfly.xjd2020.com

🌟 功能介绍

🍭 无缝集成

  • 能快速接入第三方业务系统,让已有业务系统快速接入ai能力。
  • 通过整合Spring security框架,快速打通微信、Google等遵循oath2规范的第三方系统账号对接。

🍱 深度文档解析

  • 通过深度整合spring-ai,Tesseract OCR等技术框架,对文档进行ocr视觉识别解析,达到文档分割的精准度。
  • 支持多种非结构化数据的处理能力,包括pdf,doc,ppt等

🛀 灵活的RAG流程配置

  • 全面优化的 RAG 工作流可以支持超大型企业的各类生态系统。
  • 大语言模型 LLM 以及向量模型均支持配置。

🎬 快速开始

📝 前提条件

  • CPU >= 4 核
  • RAM >= 16 GB
  • Docker >= 24.0.0 & Docker Compose >= v2.26.1

    如果你并没有在本机安装 Docker(Windows、Mac,或者 Linux), 可以参考文档 Install Docker Engine 自行安装。

🚀 启动服务器

  1. 克隆仓库:

    $ git clone https://github.com/my-fastcms/nexfly.git
    或者
    $ git clone https://gitee.com/xjd2020/nexfly.git
    
     
  2. 进入 docker 文件夹,利用提前编译好的 Docker 镜像启动服务器:

    $ cd nexfly/docker
    $ docker compose up -d
    
     

    如果你想下载并运行特定版本的 docker 镜像,请在 docker/.env 文件中找到 NEXFLY_VERSION 变量,将其改为对应版本。

    第一次构建拉取Nexfly镜像以及中间件镜像可能需要一定时间,请耐心等待。

  3. 服务器启动成功后再次确认服务器状态:

    $ docker logs -f nexfly-system
    $ docker logs -f nexfly-auth
    $ docker logs -f nexfly-gateway
    
     

    出现以下界面提示说明服务器启动成功:

    
     Connected to the target VM, address: '127.0.0.1:65520', transport: 'socket'
       _   _                 ______   _
     | \ | |               |  ____| | |             Nexfly:v0.0.1-SNAPSHOT
     |  \| |   ___  __  __ | |__    | |  _   _      Pid: 27128
     | . ` |  / _ \ \ \/ / |  __|   | | | | | |
     | |\  | |  __/  >  <  | |      | | | |_| |
     |_| \_|  \___| /_/\_\ |_|      |_|  \__, |
                                         __/ |
                                         |___/
    
    
     
  4. 在浏览器中输入你的服务器对应的 IP 地址并登录 Nexfly。

    上面这个例子中,您只需输入 http://127.0.0.1 即可:未改动过配置则无需输入端口(默认的 HTTP 服务端口 80)。

🔧 系统配置

系统配置涉及以下文件:

  • .env:存放一些基本的系统环境变量,比如 MYSQL_PASSWORDMINIO_PASSWORD、Nginx端口等。
  • docker-compose.yml: 系统依赖该文件完成启动。

如需更新默认的 HTTP 服务端口(80), 可以在 docker-compose.yml 文件中将nexfly-web端口配置 80:80 改为 <YOUR_SERVING_PORT>:80

所有系统配置都需要通过系统重启生效:

$ docker compose up -d
 

🛠️ 源码编译、安装 Docker 镜像

如需从源码安装 Docker 镜像:

$ git clone https://github.com/my-fastcms/nexfly.git 
或者
$ git clone https://gitee.com/xjd2020/nexfly.git

$ cd nexfly
$ mvn install:install-file -Dfile=./nexfly-common/rocketmq-common/lib/canal-glue-core.jar -DgroupId=cn.throwx -DartifactId=canal-glue-core -Dversion=1.0 -Dpackaging=jar
$ mvn clean
$ mvn package

$ cd nexfly/nexfly-gateway
$ docker build -t wangjun/nexfly-gateway:0.0.1 .

$ cd nexfly/nexfly-auth
$ docker build -t wangjun/nexfly-auth:0.0.1 .

$ cd nexfly/nexfly-system
$ docker build -t wangjun/nexfly-system:0.0.1 .

$ git clone https://gitee.com/xjd2020/nexfly-ui.git
$ cd nexfly-ui
$ docker build -t wangjun/nexfly-web:0.0.1 .

$ cd nexfly/docker
$ docker compose up -d
 

其中0.0.1是版本号,构建镜像的时候打上自己的版本号即可。

🛠️ 源码启动服务

如需从源码启动服务,请参考以下步骤:

  1. 克隆仓库
$ git clone https://github.com/my-fastcms/nexfly.git
$ cd nexfly/docker
 
  1. 安装Jdk环境(Jdk需要17 +)

  2. 安装maven(3.6.3 +)

使用以下命令对项目进行编译:

$ cp nexfly
$ mvn clean
$ mvn package
 
  1. 修改host(Windows)

打开host文件添加一下配置

127.0.0.1 nexfly-minio
127.0.0.1 nexfly-redis
127.0.0.1 nexfly-elasticsearch
127.0.0.1 nexfly-mysql
127.0.0.1 nexfly-rocketmq-namesrv
127.0.0.1 nexfly-rocketmq-broker
 
  1. 启动服务

进入nexfly-gateway目录,启动gateway服务,main方法运行即可

   @EnableDiscoveryClient
   @SpringBootApplication
   public class GatewayApplication {
   
      public static void main(String[] args) {
         SpringApplication.run(GatewayApplication.class, args);
      }
   
   }
 

进入nexfly-auth目录,启动auth服务,main方法运行即可

   @SpringBootApplication(scanBasePackages = { "com.nexfly" })
   @EnableFeignClients(basePackages = {"com.nexfly.api.**.feign"})
   public class AuthApplication {
      public static void main(String[] args) {
         SpringApplication.run(AuthApplication.class, args);
      }
   }

进入nexfly-system目录,启动system服务,main方法运行即可

   @EnableDiscoveryClient
   @SpringBootApplication
   @ComponentScan(basePackages = {"com.nexfly"})
   @MapperScan({ "com.nexfly.**.mapper" })
   public class SystemApplication {
   
      public static void main(String[] args) {
         SpringApplication.run(SystemApplication.class, args);
      }
   
   }
  1. 启动ui服务
$ git clone https://gitee.com/xjd2020/nexfly-ui.git
$ cd nexfly-ui
$ npm install --registry=https://registry.npmmirror.com --force
$ npm run dev 

🏄 鸣谢列表

🙌 开源贡献

Nexfly 只有通过开源协作才能蓬勃发展,秉持这一精神,我们欢迎来自社区的各种贡献。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣 发布并加入讨论🔥
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
3 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部