|
Chat2Anything es un sistema de preguntas y respuestas de base de conocimientos de modelo grande (LLM) para entornos internos empresariales. Tiene las siguientes funciones:
Incluye el cliente (Chat2Anything) y el sistema de gestión de backend (Chat2Anything Admin). El sistema de gestión de backend es responsable de la creación y gestión de la base de conocimientos del modelo grande. Los usuarios pueden agregar conocimiento interno corporativo (mecanismo Langchain) al modelo grande. cargar archivos Excel, Word, PDF y otros ); el sistema de gestión incluye permisos completos de usuario, roles, organizaciones, gestión de diccionario de datos y otras funciones.
Admite modelos grandes convencionales como ChatGPT, ChatGLM y Vicuna. Los usuarios pueden cambiar de modelo grande en cualquier momento cuando usan ChatGLM y Vicuna, todo el sistema puede lograr una implementación completa del dominio privado y una circulación interna del 100% de los datos empresariales.
Admite el acceso a la base de datos del sistema empresarial, la selección manual/automática de tablas involucradas en el análisis de consultas y text2SQL basado en descripciones de problemas del usuario (por mejorar), y los resultados de las consultas se ejecutan y visualizan automáticamente (por desarrollar)
Configure localmente ChatGLM (https://github.com/THUDM/ChatGLM-6B)/Vicuna (https://github.com/lm-sys/FastChat) y otros modelos grandes, como el uso de ChatGPT, en Chat2Anything/configs/ openai_config. Configure OPENAI_API_KEY y OPENAI_API_BASE en el archivo py.
Ejecutar controlador:
python3 -m fastchat.serve.controller
Ejecute model_worker (se recomienda ChatGLM-6B, ChatGLM2-6B (https://github.com/THUDM/ChatGLM2-6B)):
python3 -m fastchat.serve.model_worker_chatglm --model-path /path/to/model/weights
o
Ejecute model_worker (vicuña):
python3 -m fastchat.serve.model_worker --model-path /path/to/model/weights
Ejecutar el servidor web del cliente
python3 -m fastchat.serve.chat2anything_web_server
Si usa ChatGPT, agregue el parámetro de inicio --add-chatgpt
Entorno de prueba básico
Ubuntu 20.04 CUDA 11.7 Python 3.9 PyTorch 1.13
Tesla V100 32GB * 1
Configuración de la base de datos (MySQL):
# MySql配置信息
MYSQL_HOST =数据库地址
MYSQL_PORT =数据库端口
MYSQL_DATABASE = chat2anything_db
MYSQL_USERNAME =账户
MYSQL_PASSWORD =密码
# 密钥配置
SECRET_KEY = '一定要改'
Configuración relacionada con el modelo:
# model_config.py
embedding_model_dict = {
'text2vec": "/Path/to/text2vec-large-chinese' ,
}
# 密钥配置
VECTOR_ROOT_PATH = os . path . join ( '/Path/to/Chat2Anything' , 'vector_stores' )
Inicialización de la base de datos:
flask db init
flask db migrate
flask db upgrade
flask admin init
correr:
# Windows
run.bat
# Linux
chmod +x run.sh
./run.sh
# 管理员默写账户密码
admin 123456
Agradecemos las siguientes contribuciones: