DB-GPT: uso de tecnología LLM privatizada para definir la próxima generación de interacción con bases de datos

¿Qué es DB-GPT?

Con el lanzamiento y la iteración del modelo grande, el modelo grande se vuelve cada vez más inteligente. En el proceso de uso del modelo grande, se encuentran grandes desafíos de privacidad y seguridad de datos. En el proceso de uso de capacidades de modelos grandes, nuestros datos privados y nuestro entorno deben estar en nuestras propias manos, totalmente controlables y evitar cualquier fuga de privacidad de datos y riesgos de seguridad. En base a esto, lanzamos el proyecto DB-GPT para crear un conjunto completo de soluciones de modelos privados a gran escala para todos los escenarios basados ​​en bases de datos . Debido a que esta solución admite la implementación local, no solo se puede aplicar a entornos privados independientes, sino que también se puede implementar y aislar de forma independiente según los módulos comerciales, lo que hace que las capacidades de los modelos grandes sean absolutamente privadas, seguras y controlables. Nuestra visión es hacer que sea más fácil y conveniente construir aplicaciones de modelos grandes alrededor de bases de datos.

DB-GPT es un proyecto experimental de GPT basado en una base de datos de código abierto que utiliza modelos grandes de GPT localizados para interactuar con sus datos y su entorno, sin riesgo de fuga de datos, 100 % privado

Gráfico de la historia de las estrellas

Vídeo de introducción DB-GPT

Demostración de efectos

Ejemplos demostrados con GPU RTX 4090

 dbgpt_demo.mp4 

Genere gráficos de análisis basados ​​en conversaciones en lenguaje natural

Generar SQL basado en diálogo en lenguaje natural

Diálogo con la información de metadatos de la base de datos para generar declaraciones SQL precisas

Diálogo con los datos, vea directamente los resultados de la ejecución

gestión de la base de conocimientos

Diálogo según la base de conocimiento, como pdf, csv, txt, palabras, etc.

Características de un vistazo

En la actualidad, hemos lanzado una variedad de funciones clave. Aquí enumeramos y demostramos las capacidades de la versión actual.

  • Capacidades del lenguaje SQL

    • generación de SQL
    • Diagnósticos de SQL
  • Preguntas y respuestas de dominio privado y procesamiento de datos

    • Gestión de la base de conocimientos (actualmente admite txt, pdf, md, html, doc, ppt y url)
    • Cuestionario de conocimiento de la base de datos
    • procesamiento de datos
  • modelo enchufable

    • Admite complementos personalizados para realizar tareas y, de forma nativa, admite complementos Auto-GPT. como:
      • Ejecute automáticamente SQL para obtener resultados de consulta
      • Conocimiento de aprendizaje de rastreo automático
  • Índice/almacenamiento de vectores unificados de la base de conocimiento

    • Compatibilidad con datos no estructurados, incluidos PDF, MarkDown, CSV, WebURL
  • Soporte de múltiples modelos

    • Admite múltiples modelos de idiomas grandes, actualmente admite Vicuna (7b, 13b), ChatGLM-6b (int4, int8), guanaco (7b, 13b, 33b), Gorilla (7b, 13b)
    • TODO: codet5p, codegen2

plano de arquitectura

DB-GPT crea un entorno operativo de modelo grande basado en  FastChat  y proporciona vicuña como un modelo de lenguaje grande basado en él. Además, proporcionamos capacidades de respuesta a preguntas de base de conocimiento de dominio privado a través de LangChain. Al mismo tiempo, admitimos el modo de complemento y admitimos de forma nativa el diseño del complemento Auto-GPT. Nuestra visión es hacer que sea más fácil y conveniente crear aplicaciones en torno a bases de datos y LLM.

La arquitectura de todo el DB-GPT se muestra en la siguiente figura

Las competencias básicas incluyen principalmente las siguientes partes.

  1. Capacidad de la base de conocimientos: admite la capacidad de respuesta a preguntas de la base de conocimientos de dominio privado
  2. Capacidad de gestión de modelos grandes: proporcione un entorno operativo de modelos grandes basado en FastChat .
  3. Indexación y almacenamiento vectorizado de datos unificados: proporciona una forma unificada de almacenar e indexar varios tipos de datos.
  4. Módulo de conexión: se utiliza para conectar diferentes módulos y fuentes de datos para realizar el flujo de datos y la interacción.
  5. Agente y complemento: proporcione un agente y un mecanismo de complemento para que los usuarios puedan personalizar y mejorar el comportamiento del sistema.
  6. Optimización y generación automática de avisos: genere automáticamente avisos de alta calidad y optimícelos para mejorar la eficiencia de respuesta del sistema.
  7. Interfaz de producto multiterminal: admite una variedad de diferentes productos de cliente, como aplicaciones web, móviles y de escritorio.

Instalar

Inicio rápido

Conmutación multilingüe

En el archivo de configuración .env, modifique el parámetro IDIOMA para cambiar entre diferentes idiomas, el predeterminado es inglés (chino zh, inglés en, se agregarán otros idiomas)

Instrucciones de uso

Uso multimodelo

guía del usuario

Si encuentra errores relacionados con nltk al usar el repositorio, debe instalar el kit de herramientas nltk. Para obtener más detalles, consulte: documentación de nltk  Ejecute el intérprete de Python y escriba los comandos:

>>> importar nltk 
>>> nltk.descargar()

Brindamos una nueva interfaz de usuario a través de la cual puede usar DB-GPT. Al mismo tiempo, hemos preparado los siguientes artículos de referencia sobre algunos códigos y principios relacionados con nuestro proyecto.

  1. Serie de combate de modelos grandes (1) —— Aplicación de combate con Langchain-Vicuña
  2. Serie de combate de modelos grandes (2) —— DB-GPT Alibaba Cloud Deployment Guide
  3. Serie de combate real de modelo grande (3) —— Principio y aplicación del modelo de complemento DB-GPT

agradecido

Los logros del proyecto deben agradecer a la comunidad técnica, especialmente los siguientes proyectos.

contribuir

  • Ejecute antes de enviar el código. black .

Esta es una herramienta compleja e innovadora para bases de datos. Nuestro proyecto también está en desarrollo urgente, y algunas características nuevas se lanzarán una tras otra. Si tiene alguna pregunta específica durante el uso, envíe primero un problema en el proyecto. Si es necesario, comuníquese con el siguiente WeChat y haré todo lo posible para ayudarlo. Al mismo tiempo, todos son bienvenidos a participar en el proyecto construcción.

mapa de ruta

Supongo que te gusta

Origin blog.csdn.net/sinat_37574187/article/details/131735236
Recomendado
Clasificación