Skip to content

DercyCheng/rag

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MultiRAG-Go

简介

本项目是一个强大且全面的系统,旨在提供高效、稳定的服务,以满足多样化的需求。通过整合多种技术和服务,为用户提供了一个一站式的解决方案。

主要特性

服务架构

  • rag-service:核心服务,通过本地构建,支持GPU加速,为用户提供高性能的服务。
    • 端口映射:50051:500519090:9090
    • 环境配置:CUDA_VISIBLE_DEVICES=0,充分利用GPU资源
    • 数据挂载:./models:/app/models./config:/app/config,方便数据管理
  • postgres:使用 ankane/pgvector:latest 镜像,提供稳定的数据库服务。
    • 端口映射:5432:5432
    • 数据库配置:POSTGRES_DB=ragdbPOSTGRES_USER=userPOSTGRES_PASSWORD=password
    • 数据持久化:pg_data:/var/lib/postgresql/data
  • redis-cluster:基于 redis:7.0-alpine 镜像,构建高可用的Redis集群。
    • 端口映射:7000-7002:7000-7002
    • 数据持久化:redis_data:/data
  • minio:使用 minio/minio 镜像,提供对象存储服务。
    • 端口映射:9000:90009001:9001
    • 认证信息:MINIO_ROOT_USER=minioadminMINIO_ROOT_PASSWORD=minioadmin
    • 数据持久化:minio_data:/data

其他服务

  • nats:消息队列服务,基于 nats:2.9-alpine 镜像,支持 42228222 端口。
  • influxdb:时间序列数据库,使用 influxdb:2.7 镜像,支持 8086 端口。
  • jaeger:分布式追踪系统,使用 jaegertracing/all-in-one:1.47 镜像,支持 6831(UDP)和 16686 端口。
  • prometheus:监控系统,使用 prom/prometheus:v2.45.0 镜像,支持 9091:9090 端口。
  • model-trainer:模型训练服务,通过 Dockerfile.trainer 构建,支持分布式训练。
  • experiment-tracker:实验跟踪服务,使用 mlflow:latest 镜像,支持 5000 端口。
  • feature-store:特征存储服务,使用 feast:latest 镜像,支持 6566 端口。
  • metrics-analyzer:指标分析服务,基于本地 ./analyzer 构建,依赖 influxdb 服务。

快速开始

环境要求

  • Docker
  • Docker Compose

安装步骤

  1. 克隆本项目到本地:

    git clone <项目仓库地址>
    cd <项目目录>
  2. 配置环境变量(如果需要): 可以根据实际情况修改 docker-compose.yml 中的环境变量配置。

  3. 启动服务:

    docker-compose up -d

验证服务

可以通过访问各个服务的端口来验证服务是否正常启动,例如:

  • 访问 http://localhost:9090 验证 rag-service 是否正常。
  • 访问 http://localhost:5432 验证 postgres 是否正常。

配置说明

本项目的配置文件主要为 docker-compose.yml,其中包含了各个服务的详细配置,如镜像、端口映射、环境变量、数据挂载等。

示例配置

version: '3.8'

services:
  rag-service:
    build: .
    ports:
      - "50051:50051"
      - "9090:9090"
    environment:
      - CUDA_VISIBLE_DEVICES=0
    volumes:
      - ./models:/app/models
      - ./config:/app/config
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]

  # 其他服务配置...

贡献指南

如果你想为这个项目做出贡献,可以按照以下步骤进行:

  1. Fork 本项目到你的仓库。
  2. 创建一个新的分支进行开发:
    git checkout -b feature/your-feature-name
  3. 进行代码开发和修改。
  4. 提交你的更改:
    git add .
    git commit -m "Add your commit message"
    git push origin feature/your-feature-name
  5. 创建一个 Pull Request 到本项目的主分支。

致谢

感谢所有为这个项目做出贡献的人,以及开源社区的支持。


你可以根据实际情况修改上述内容,如项目名称、仓库地址、许可证信息等,以符合你的项目需求。这样的 README 文件可以清晰地向用户介绍项目的基本信息、特性、安装步骤等,方便用户使用和参与项目开发。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published