Readme
Este readMe normalmente documenta los pasos que sean necesarios para poner en funcionamiento su solicitud.
Pila de tecnología
- Python 3.9
- Fastapi
- FAISS-CPU == 1.7.4
- langchain == 0.0.207
- Pinecone-Client
- pgvector
Integraciones de terceros
- SendGrid - Enviar correos electrónicos
- YouTube-transcript-api-Recibir texto URL de YouTube
- DOCX2TXT - Obtener texto del archivo DOCX
- PYPDF - Recibir texto del archivo PDF
- TEXTO DE SELENIO DEL ARCHIVO URL
- Otros cargadores de documentos y bibliotecas de análisis de datos
Configuración del proyecto
Instale las dependencias en archivos de requisitos
- PIP install -r requisitos.txt
Agregar OpenAI y otra clave API en el archivo ENV
Consulte Sample.env para obtener nombres de variables y use backend.env como archivo ENV real
Configurar las variables constantes en constant.py de acuerdo con su caso de uso
Configuración de la base de datos vectorial:
- Configurar la aplicación de acuerdo con su base de datos Vector
Otras pautas:
- Cambiar cómo se analizan los datos de acuerdo con ajustar su requisito personalizado
- Cambiar las variables constantes de acuerdo con los casos de uso
- Modifique el código de Boilerplate para los casos de uso específicos de su proyecto
características
- Puntos finales y utilitos para funciones genéricas
- Crear incrustaciones de vectores: desde el video de YouTube, la página HTML, Sitemaps, URL, PDF, DOCX, JSON, archivo de texto, CSV o base de datos relacional
- Pregunta y respuesta basada en datos personalizados con fuentes exactas
- El recuento de tokens y el token excedieron el manejo de errores con Tiktoken
- Diferente soporte de DB vectorial para puntos finales diferentes
Mejora futura
- Transmisión de la respuesta Operai en tiempo real para frontend
- Agregue algunas funciones de utilidades y mejore la funcionalidad de las existentes.
- hacer que el código sea más modular y configurable
IDE
- Píchm
- VS Código
- Texto sublime
Configuración del proyecto
- Resumen de la configuración
- Configuración
- Dependencias
- Configuración de la base de datos
- Cómo ejecutar pruebas
- Instrucciones de implementación
Convenciones de codificación
- Pep8
- escribir código modular y configurable
- No coloque el código comentado o las importaciones no utilizadas en el código principal
- Se deben usar importaciones absolutas en lugar de importaciones relativas
- Uso de F-Strings en lugar de .Format () o %S
- Los nombres de clases deben estar en Camelcase
- Los nombres de las funciones y los nombres de variables deben estar en Snake_Case
- Uso de sugerencias de tipo
- Uso de documentos
- Uso de registro
Pautas de contribución
- Pruebas de escritura
- Revisión del código
- Otras pautas
Integación de Redis
- Instalar Redis: PIP Instalar Redis Aioredis
- Congele los requisitos: Pip Freeze> Requisitos.txt
- Agregar Redis_host_url en el archivo .env
- La instancia de Redis se crea en el archivo main.py, en el evento ON_STARTUP
Integración de apio
- Instalar apio: el apio de instalación de PIP
- Congele los requisitos: Pip Freeze> Requisitos.txt
- Agregar Ceyery_broker_url en el archivo .env
- La instancia de apio se crea en el módulo de núcleo, en Ceyery_App
- Las tareas de apio se crean en el módulo de trabajadores en el directorio raíz
- El trabajador de apio se inicia con el comando: app.Ap.Worker Worker -l Info -C 1
Integración de apio ritmos
- Instalar apio: el apio de instalación de PIP
- Congele los requisitos: Pip Freeze> Requisitos.txt
- La instancia de apio Beat se crea en el módulo de trabajadores en el directorio raíz
- Al agregar nuevas tareas, agrégalas en el módulo de trabajadores en el directorio raíz con el tiempo programado en segundos
- Cereyer Beat se inicia con el comando: CEYERY -A APP.Worker Beat -L Información
Integración de centinela
- Instalar centinry SDK: PIP Instale Sentry-SDK
- Congele los requisitos: Pip Freeze> Requisitos.txt
- La instancia de Sentry se crea en el archivo main.py