Simba: un sistema de gestión del conocimiento para organizar documentos, perfectamente integrado en cualquier sistema GAR.

Trae

Introducción general

Simba es un sistema portátil de gestión del conocimiento (KMS) diseñado para integrarse a la perfección con cualquier sistema de generación aumentada de recuperación (RAG). Creado por el usuario de GitHub GitHamza0206, el proyecto proporciona una solución eficiente de gestión del conocimiento para una variedad de escenarios de aplicación.Simba está diseñado con el objetivo de simplificar el proceso de gestión del conocimiento y mejorar la precisión y la eficiencia de la recuperación y generación de información. Al integrarse con el sistema RAG, Simba es capaz de proporcionar un potente apoyo en el manejo de datos complejos y la generación de contenidos.

Simba:收纳文档的知识管理系统,无缝集成到任何RAG系统

 

Simba:收纳文档的知识管理系统,无缝集成到任何RAG系统

 

Lista de funciones

  • gestión del conocimientoFunciones de gestión del conocimiento : Proporcionan funciones completas de gestión del conocimiento para apoyar el almacenamiento, la categorización y la recuperación del conocimiento.
  • Integración de sistemas RAG: Perfecta integración con el sistema de generación de mejoras de recuperación para mejorar la precisión de la generación de información.
  • portabilidad: Diseñado como un sistema portátil fácil de desplegar y utilizar.
  • proyecto de código abierto: Al ser un proyecto de código abierto, los usuarios pueden acceder libremente al código fuente y personalizarlo.
  • Recuperación eficaz: Recuperación de información optimizada para encontrar rápidamente los conocimientos que necesita.
  • interfaz fácil de usar: Proporciona una interfaz de usuario intuitiva que simplifica el proceso operativo.

 

Utilizar la ayuda

Proceso de instalación

  1. almacén de clonesEn primer lugar, clone el repositorio GitHub del proyecto Simba mediante el comando Git.
   git clone https://github.com/GitHamza0206/simba.git
  1. Instalación de dependencias: Vaya al directorio del proyecto e instale los paquetes de dependencias necesarios.
   cd simba

desarrollo local

  1. Configuración del back-end::
    • Vaya al directorio back-end:
     cd backend
    
    • Asegúrese de que Redis está instalado en su sistema operativo:
     redis-server
    
    • Configuración de variables de entorno:
     cp .env.example .env
    

    A continuación, edite el archivo .env e introduzca sus valores:

     OPENAI_API_KEY=""
    LANGCHAIN_TRACING_V2= #(optional - for langsmith tracing)
    LANGCHAIN_API_KEY="" #(optional - for langsmith tracing)
    REDIS_HOST=redis
    CELERY_BROKER_URL=redis://redis:6379/0
    CELERY_RESULT_BACKEND=redis://redis:6379/1
    
    • Instale la dependencia:
     poetry install
    poetry shell
    

    O en Mac/Linux:

     source .venv/bin/activate
    

    En Windows:

     .venv\Scripts\activate
    
    • Ejecute el servicio back-end:
     python main.py
    

    O utiliza la recarga automática:

     uvicorn main:app --reload
    

    A continuación, vaya ahttp://0.0.0.0:8000/docsAcceso a la interfaz de usuario Swagger (opcional).

    • Ejecute el analizador utilizando Celery:
     celery -A tasks.parsing_tasks worker --loglevel=info
    
    • Modifíquese en caso necesarioconfig.yamlDocumentación:
     project:
    name: "Simba"
    version: "1.0.0"
    api_version: "/api/v1"
    paths:
    base_dir: null  # Will be set programmatically
    markdown_dir: "markdown"
    faiss_index_dir: "vector_stores/faiss_index"
    vector_store_dir: "vector_stores"
    llm:
    provider: "openai" #or ollama (vllm coming soon)
    model_name: "gpt-4o" #or ollama model name
    temperature: 0.0
    max_tokens: null
    streaming: true
    additional_params: {}
    embedding:
    provider: "huggingface" #or openai
    model_name: "BAAI/bge-base-en-v1.5" #or any HF model name
    device: "cpu"  # mps,cuda,cpu
    additional_params: {}
    vector_store:
    provider: "faiss"
    collection_name: "migi_collection"
    additional_params: {}
    chunking:
    chunk_size: 512
    chunk_overlap: 200
    retrieval:
    k: 5 #number of chunks to retrieve
    features:
    enable_parsers: true  # Set to false to disable parsing
    celery:
    broker_url: ${CELERY_BROKER_URL:-redis://redis:6379/0}
    result_backend: ${CELERY_RESULT_BACKEND:-redis://redis:6379/1}
    
  2. Configuración del front-end::
    • Asegúrese de que está en el directorio raíz de Simba: bash
      cd frontend
    • Instale la dependencia: bash
      npm install
    • Ejecute el servicio front-end: bash
      npm run dev
      A continuación, vaya ahttp://localhost:5173Accede a la interfaz del front-end.

Arranque con Docker (recomendado)

  1. Navegue hasta el directorio raíz de Simba:
   export OPENAI_API_KEY="" #(optional)
docker-compose up --build

Estructura del proyecto

simba/
├── backend/              # 核心处理引擎
│   ├── api/              # FastAPI端点
│   ├── services/         # 文档处理逻辑
│   ├── tasks/            # Celery任务定义
│   └── models/           # Pydantic数据模型
├── frontend/             # 基于React的UI
│   ├── public/           # 静态资源
│   └── src/              # React组件
├── docker-compose.yml    # 开发环境
└── docker-compose.prod.yml # 生产环境设置

configure

config.yamlse utiliza para configurar la aplicación back-end. Puede cambiar lo siguiente:

  • Modelos de incrustación
  • almacenamiento vectorial
  • trozo
  • recuperar (datos)
  • funcionalidad
  • resolver

Para más información, visitebackend/README.md.

© declaración de copyright
AiPPT

Artículos relacionados

Sin comentarios

ninguno
Sin comentarios...