Chatear con los datos de su empresa usando LLM
Esta muestra demuestra algunos enfoques para crear experiencias similares a ChatGPT sobre sus propios datos. Utiliza el servicio Azure OpenAI para acceder al modelo CHATGPT (GPT-35-TURBO y GPT3), y Vector Store (Pinecone, Redis y otros) o búsqueda cognitiva Azure para la indexación y recuperación de datos.
El repositorio proporciona una forma de cargar sus propios datos para que esté listo para probar de extremo a final.
Actualizaciones
- 30/03/2024 - Refactorizado para mantener el chat, la transmisión de chat, QNA, la carga y la funcionalidad de administración. Todos los demás serán trasladados a su propio repositorio.
- 3/10/2024 - Mueva la versión de flujo de inmediato a EntaoAIPF
- 3/9/2024 - Versión inicial de técnicas avanzadas de trapo y patrón de trapo multimodal
- 28/02/2024: eliminó las funciones de análisis de la SEC y se mueve a su propio repositorio en la SEC
- 28/01/2024 - Elimine las características de Pitchbook a medida que se mueven a su propio repositorio en PIB
- 19/19/2024 - Actualizó el paquete Python y OpenAI> 1.0. Los cambios realizados en toda la API de Python para los cambios de ruptura introducidos en OpenAi y Langchain.
- 10/12/2023 - Versión inicial de Autonomous TRACDFLOW. Por ahora, admite los índices Pinecone, pero el soporte para la búsqueda cognitiva y Redis se actualizará pronto.
- 29/09/2023 - Se agregó evaluar PractFlow. El flujo de inmediato una vez creado en Azure ML, se puede conectar a su ejecución existente para evaluar en el siguiente proceso de evaluación:
- Mase: el flujo de evaluación de fundición de preguntas y respuestas evaluará los sistemas de generación aumentados de recuperación de preguntas y respuestas al aprovechar los modelos de lenguaje grande (LLM) de vanguardia para medir la calidad y la seguridad de sus respuestas. Utilizar GPT-3.5 como modelo de lenguaje para ayudar con las mediciones tiene como objetivo lograr un alto acuerdo con las evaluaciones humanas en comparación con las mediciones matemáticas tradicionales. gpt_groundedness (contra el contexto): mide cómo las respuestas predichas del modelo están en contra del contexto. Incluso si las respuestas de LLM son ciertas, si no son verificables contra el contexto, entonces tales respuestas se consideran sin tierra.
- Similitud de ADA: el flujo de evaluación ADA_SIMILITY de preguntas y respuestas evaluará los sistemas de generación aumentada de recuperación de preguntas y respuestas aprovechando los modelos de idiomas grandes (LLM) de última generación para medir la calidad y la seguridad de sus respuestas. Utilizar GPT-3.5 como modelo de lenguaje para ayudar con las mediciones tiene como objetivo lograr un alto acuerdo con las evaluaciones humanas en comparación con las mediciones matemáticas tradicionales. El flujo de evaluación de similitud de ADA le permite evaluar y evaluar su modelo con la similitud ADA asistida por LLM metri Ada_Similarity: mide la similitud cosena de los incrustaciones ADA de la predicción del modelo y la verdad del suelo. Ada_Similarity es un valor en el rango [0, 1].
- Coherencia: el flujo de evaluación de coherencia de preguntas y respuestas evaluará los sistemas de generación aumentados de recuperación de preguntas y respuestas al aprovechar los modelos de idiomas grandes (LLM) de última generación para medir la calidad y la seguridad de sus respuestas. Utilizar GPT-3.5 como modelo de lenguaje para ayudar con las mediciones tiene como objetivo lograr un alto acuerdo con las evaluaciones humanas en comparación con las mediciones matemáticas tradicionales. El flujo de evaluación de coherencia le permite evaluar y evaluar su modelo con la métrica de coherencia asistida por LLM. GPT_Coherence: mide la calidad de todas las oraciones en la respuesta predicha de un modelo y cómo encajan naturalmente. La coherencia se califica en una escala de 1 a 5, siendo 1 la peor y 5 es la mejor.
- Similitud: el flujo de evaluación de similitud de preguntas y respuestas evaluará los sistemas de generación aumentados de recuperación de preguntas y respuestas al aprovechar los modelos de lenguaje grande (LLM) de última generación para medir la calidad y la seguridad de sus respuestas. Utilizar GPT-3.5 como modelo de lenguaje para ayudar con las mediciones tiene como objetivo lograr un alto acuerdo con las evaluaciones humanas en comparación con las mediciones matemáticas tradicionales. El flujo de evaluación de similitud le permite evaluar y evaluar su modelo con la métrica de similitud asistida por LLM. GPT_SIMILITITY: mide la similitud entre las respuestas de verdad de tierra proporcionada por el usuario y la respuesta predicha del modelo. La similitud se califica en una escala de 1 a 5, siendo 1 la peor y 5 es la mejor.
- Puntuación F1: el flujo de evaluación de puntajes F1 de preguntas y respuestas evaluará los sistemas de generación aumentada de recuperación de preguntas y respuestas utilizando puntaje F1 basado en los recuentos de palabras en la respuesta predicha y la verdad fundamental. El flujo de evaluación de puntaje F1 le permite determinar la métrica de puntaje F1 utilizando el número de tokens comunes entre la versión normalizada de la verdad del suelo y la respuesta predicha. Puntaje F1: Calcule el puntaje F1 basado en los tokens en la respuesta predicha y la verdad del suelo. La puntuación F1 es un valor en el rango [0, 1]. La métrica de tierra se califica en una escala de 1 a 5, siendo 1 la peor y 5 es la mejor.
- 22/09/2023 - Se agregó TISTFLOW para SQLask. Asegúrese de que los valores de configuración
PFSQLASK_URL
y PFSQLASK_KEY
se agregan al punto final implementado para habilitar la función. También asegúrese de que los valores de configuración de SynapseName
, SynapsePool
, SynapseUser
y SynapsePassword
se agregan a la conexión de Flow entaoai
. Movido eliminar la capacidad de sesión para chatgpt a la página de administración. - 20/09/2023 - Se agregó la configuración para permitir que el usuario final cambie el tipo de búsqueda para el índice de almacén de vectores de búsqueda cognitiva (híbrido, similitud/vector e híbrido de rank), según las mejores prácticas que compartimos. QNA, chat y flujo de inmediato se modifican. QNA y el chat están implementando la implementación de la tienda vectorial personalizada de Langchain y el flujo de inmediato utilizando las funciones auxiliares. Se solucionó el problema con QNA/CHAT/TRAdflow sin generar preguntas de seguimiento.
- 18/8/2023 - Refactorizado de SQL NLP para no usar el agente/cadena de la base de datos Langchain y, en su lugar, use indicaciones personalizadas.
- 15/09/2023 - Modificado el paquete de búsqueda de Azure a 11.4.0b9 y Langchain a la última versión. Capacidad agregada para realizar la evaluación en TRACDFLOW para QNA y CHAT. Bert PDF y los datos de evaluación se pueden usar para realizar lotes y evaluación en el flujo rápido. Muestra de cuaderno que muestra el flujo y el proceso E2E está disponible. La carpeta de chat de Bert le permite probar el flujo de inmediato E2E, la ejecución por lotes y la evaluación en forma de cuaderno.
- 9/3/2023 - API agregado para el chat usando el flujo de inmediato. Permitir que el usuario final seleccione entre las funciones de Azure como API (configuración
ApiType
en la aplicación web) o utilizando el punto final administrado con flujo de inmediato. - 9/2/2023 - API agregado para la respuesta de preguntas utilizando el flujo de inmediato. Permitir que el usuario final seleccione entre las funciones de Azure como API (configuración
ApiType
en la aplicación web) o utilizando el punto final administrado con flujo de inmediato. - 8/31/2023 - Ejemplo agregado para LLMOPS usando flujo de inmediato. El repositorio agregará la flexibilidad para usar el modelo de flujo de inmediato implementado como alternativa a las funciones actuales de Azure.
- 8/20/2023: se agregó soporte para los archivos de Markdown (como archivo zip) y eliminó el chunk_size = 1 de Azure Openaiembedding
- 8/11/2023 - Se solucionó el problema con la función de chat de transmisión.
- 8/10/2023 - Cambios de ruptura - Refactoró todo el código para usar el valor de configuración
OpenAiEndPoint
en lugar de OpenAiService
. Es para apoyar las mejores prácticas, ya que se describen en el registro empresarial a través de la gestión de API de Azure. Su OpenAiEndPoint
si el uso de APIM será la URL de la puerta de enlace API y el OpenAiKey
será la clave del producto/ilimitado. Si no usa APIM, no necesita cambiar la clave, pero asegúrese de que OpenAiEndPoint
sea una URL totalmente calificada de su implementación AOAI. OpenAiService
ya no se usa. Los cambios afectaron el trabajo en el chat en la función de transmisión, por lo que está deshabilitado por ahora y se habilitará una vez que se pruebe y se solucionará. - 8/9/2023 - FUNCIÓN AGRADA Llamando a la interfaz CHATGPT como casilla de verificación. La muestra demuestra la capacidad de llamar a las funciones. Actualmente, la API meteorológica, la API de stock y la búsqueda de Bing son compatibles. La llamada de función está en vista previa y es compatible solo desde "Versión API" de "2023-07-01-preview", así que asegúrese de actualizar la implementación existente para usar esa versión. Detalles sobre las funciones de llamadas. Para la implementación existente, agregue
WeatherEndPoint
, WeatherHost
, StockEndPoint
, StockHost
y la configuración RapidApiKey
a la aplicación de la función Azure. - 8/5/2023 - Interfaz de chat agregada con la opción "Stream". Esta característica le permite transmitir la conversación al cliente. Deberá agregar
OpenAiChat
, OpenAiChat16k
, OpenAiEmbedding
, OpenAiEndPoint
, OpenAiKey
, OpenAiApiKey
, OpenAiService
, OpenAiVersion
, PineconeEnv
, PineconeIndex
, PineconeKey
, RedisAddress
, RedisPassword
, RedisPort
Propiedad en Azure App Service (WebApp) para habilitar la característica de la despliegue existente. - 7/30/2023 - Código no utilizado eliminado - Resumen y chat y chat
- 28/7/2023 - Comenzó a eliminar el uso del modelo Davinci. Por ahora eliminó el uso de toda funcionalidad, excepto el taller. La funcionalidad de resumen refactorizada basada en la retroalimentación para permitir que el usuario especifique los temas indefinidos y predefinidos para resumirlo.
- 26/07/2023 - Elimine Operai Playground de las herramientas de desarrollador como características avanzadas de las que están disponibles en la sección CHATGPT.
- 7/25/2023 - Agregar pestaña para las capacidades de chat para admitir la capacidad de ChatGPT directamente desde el modelo en lugar de "chat en datos". Deberá agregar la propiedad
CHATGPT_URL
en Azure App Service (WebApp) para habilitar la función fuera de la implementación de la nueva función Azure. - 23/07/2023 - Se agregó el resto de la función para la interfaz de usuario PIB y la versión inicial de generar el mazo de PowerPoint como salida. Para obtener una nueva función agregada, asegúrese de agregar la variable
FMPKEY
a la configuración de WebApp. - 27/07/2023 - Función agregada para hablar con los datos de PIB (transcripción de llamadas de presentación y ganancia de la SEC). Debido a que se implementa una nueva función de Azure, asegúrese de que la propiedad
PIBCHAT_URL
se agrega a Azure WebApp con la URL para sus funciones de Azure implementadas - 18/08/2023 - Refactoró el código PIB para resolver parte del problema de rendimiento y las correcciones de errores.
- 7/17/2023: eliminó la interfaz GPT3 de chat con la jubilación de los modelos "Davinci".
- 16/06/2023 - Versión inicial de PIB UI (actualmente admite 5 pasos - Perfil de la compañía, transcripciones de llamadas, comunicados de prensa, presentaciones de la SEC y calificaciones/recomendaciones). Necesitará acceso a la suscripción paga (FMP o modificar en función de lo que su empresa tenga acceso). Para usar con FMP, deberá agregar
FmpKey
en funciones de Azure. Debido a la dependencia circular, debe agregar manualmente SecDocPersistUrl
y SecExtractionUrl
manualmente en las funciones de Azure. - 19/10/2023 - Agregue soporte para el modelo GPT3.5 16K y la capacidad de fragmentar el documento> 4000 tokens con> 500 superposición. Para el ChunkSize> 4000, se predeterminará el token de 16k para la funcionalidad de QNA y CHAT. Se agregó un proveedor de identidad a la aplicación y autenticación para la interfaz QNA y CHAT. Para el modelo GPT3.5 16K, deberá agregar la propiedad
OpenAiChat16k
en la aplicación de función Azure. - 13/07/2023: permita que el usuario final seleccione la configuración de Chunksize y Chunkoverlap. Versión inicial de la plantilla de solicitud primaria.
- 11/11/2023 - Copiloto de PIB funcional en forma de cuaderno.
- 7/8/2023 - Se agregó la función para cambiar el nombre de la sesión para ChatGPT. También agregó la interfaz de usuario para la herramienta Evaluator. Esta característica se centra en realizar la evaluación basada en LLM en su documento. Genera automáticamente el conjunto de datos de prueba (con preguntas y respuestas) y realiza la calificación en ese documento utilizando diferentes parámetros y genera los resultados de la evaluación. Se basa en funciones duraderas de Azure y se implementa utilizando el patrón de encadenamiento de funciones. Deberá agregar
BLOB_EVALUATOR_CONTAINER_NAME
(asegúrese de que el mismo nombre del contenedor se cree en la cuenta de almacenamiento) y la configuración RUNEVALUATION_URL
(URL de la implementación de funciones duraderas) en la aplicación web Azure para la implementación existente y si desea utilizar la función Evaluator. En la implementación de la función Azure, agregue AzureWebJobsFeatureFlags
(valor de valor enableworkerIndexing) y la configuración OpenAiEvaluatorContainer
. - 7/5/2023 - Se agregó la función para eliminar la sesión. Esa característica requiere la función que está en vista previa y deberá habilitar eso en la cuenta COSMOSDB en su suscripción. Se agregó un bloque de prueba/captura simple en caso de que no haya habilitado/desplegó el COSMOSDB para continuar la implementación de ChatGPT.
- 7/4/2023 - Versión inicial de almacenar "sesiones" para la interfaz GPT3.5/chatgpt. La sesión y los mensajes se almacenan/se recuperan de COSMOSDB. Asegúrese de tener el servicio COSMOSDB aprovisionado o cree uno nuevo (para la implementación existente). Deberá agregar
CosmosEndpoint
, CosmosKey
, CosmosDatabase
y Configuración CosmosContainer
en la aplicación de funciones de Azure y la aplicación web. - 25/06/2023 - Notebook que muestra la evaluación de la calidad de respuesta de una manera sistemática (preguntas de generación automática y cadena de evaluación), admitiendo la configuración de QA LLM (tamaño de fragmento, superposición, técnica de incrustación). Consulte el cuaderno evaluador para obtener más información.
- 18/06/2023 - Agregue la página de administración que respalda la gestión de la base de conocimiento.
- 17/06/2023 - Se agregó el botón "Lista de preguntas" para hacer una función de pregunta para mostrar la lista de todas las preguntas que están en la base de conocimiento. Siguiendo tres propiedades
SEARCHSERVICE
, SEARCHKEY
y KBINDEXNAME
(valor predeterminado de AOAIKB) debe agregarse al servicio de aplicaciones Azure para habilitar la función del botón "Lista de preguntas". - 6/16/2023: agregue la función para usar la búsqueda cognitiva de Azure como tienda vectorial para almacenar la base de conocimiento en caché. Las preguntas que no están en KB se envían al modelo LLM para encontrar la respuesta a través de OAI, o de lo contrario se responde desde el almacén de datos en caché. Se debe agregar una nueva propiedad
KbIndexName
a la aplicación de función Azure. Se agregó el cuaderno para probar la función como parte del taller. TODO: Agregue la función para agregar la pregunta a KB desde la interfaz de chat (y hacerlo basado en la sesión). Pronto se agregará una característica más para "regenerar" la respuesta de LLM (en lugar de la respuesta en caché). - 6/7/2023 - Agregue el patio de apertura Operai en las herramientas de desarrollador y la versión inicial de la construcción del copiloto (por ahora con cuaderno, pero eventualmente se moverá como característica de copiloto). Agregue el script, la grabación y el ejemplo del caso de uso de análisis de voz en tiempo real. Más que se agregará pronto.
- 27/05/2023: agregue contenido de taller en forma de cuadernos que se pueden aprovechar para aprender/ejecutar los escenarios. Puede encontrar los cuadernos en la carpeta del taller. Los detalles sobre el contenido del taller están disponibles aquí.
- 26/05/2023 - Agregue la función de resumen para resumir el documento usando cosas, MapReduce o refine el resumen. Para usar esta función (en la implementación existente), asegúrese de agregar la configuración
OpenAiSummaryContainer
para funcionar la aplicación y la configuración BLOB_SUMMARY_CONTAINER_NAME
al servicio Azure App (asegúrese de que el valor que ingrese es el mismo que el nombre del contenedor en el almacenamiento de Azure y que ha creado el contenedor). También debe agregar Configuración PROCESSSUMMARY_URL
al servicio de aplicaciones Azure (asegúrese de que el valor que ingrese sea el mismo que la URL de la función Azure). - 24/05/2023: agregue la función para cargar archivos CSV y agente CSV para responder/chat de preguntas en los datos tabulares. Smart Agent también admite responder preguntas sobre los datos de CSV.
- 22/02/2023 - Versión inicial de "Smart Agent" que le brinda flexibilidad para hablar con todos los documentos cargados en la solución. También le permite hablar con el escenario de la base de datos SQL. A medida que se agregan más funciones, Agent seguirá basándose en eso (por ejemplo, hablar con CSV/Excel o datos tabulares)
- 21/05/2023 - Agregar sección de herramientas de desarrollador - Conversión de código experimental y gurú de inmediato.
- 17/05/2023 - Cambie la fuente de Edgar a la tienda de vectores de búsqueda cognitiva en lugar de Redis.
- 15/05/2023 - Agregue la opción de usar "búsqueda cognitiva" como tienda vectorial para almacenar el índice. La búsqueda cognitiva de Azure ofrece búsqueda de vector puro y recuperación híbrida, así como un sofisticado sistema de re-rango impulsado por Bing en una sola solución integrada. Inscribirse. Admite cargar documentos de Word.
- 5/10/2023 - Agregue las opciones sobre cómo se debe fragmentar el documento. Si desea utilizar el reconocimiento de formulario, asegúrese de que se cree el recurso de reconocimiento de formulario y se configuran la configuración de aplicación apropiada
FormRecognizerKey
y FormRecognizerEndPoint
. - 5/07/2023 - Opción disponible para seleccionar Azure OpenAI o OpenAI. Para OpenAi, asegúrese de tener
OpenAiApiKey
en la configuración de las funciones de Azure. Para Azure OpenAi necesitará configuraciones OpenAiKey
, OpenAiService
y OpenAiEndPoint
Endpoint. También puede seleccionar esa opción para el análisis de chat/pregunta/SQL NLP/Speech Analytics y otras características (de la página de configuración del desarrollador). - 03/03/2023 - Contraseña requerida para cargar e introducir la página de administración que comienza con la administración de índices
- 30/04/2023 - Versión inicial de la función de agente de tareas agregado. Los agentes autónomos son agentes que diseñan para correr más largos. Les da uno o múltiples objetivos a largo plazo, y se ejecutan independientemente hacia esos objetivos. Las aplicaciones combinan el uso de la herramienta y la memoria a largo plazo. La característica inicial implementa el bebé AGI con herramientas de ejecución
- 29/04/2023 - Integración del proceso AWS S3 utilizando S3, función AWS Lambda y Azure Data Factory (implementación automatizada aún no disponible, los scripts están disponibles en la carpeta en/implementación/AWS)
- 28/04/2023 - Corrección de errores, citas y preguntas de seguimiento en QA y chat. Un poco más restrictivo para limitar la respuesta del documento.
- 25/04/2023 - Versión inicial de Power Virtual Agent
- 21/04/2023 - Agregue la consulta SQL y la pestaña de datos de SQL a SQL NLP y arregle las citas y preguntas de seguimiento para las características de chat y ask
- 17/04/2023 - Análisis de discurso en tiempo real y discurso a texto y texto a discurso para las funciones de chat y preguntar. (Puede configurar la función de texto a voz desde la configuración del desarrollador. Necesitará servicios de voz de Azure)
- 13/04/2023 - Agregue una nueva función para admitir hacer preguntas en múltiples documentos utilizando Vector QA Agent
- 8/8/2023 - Pregunte a su SQL - Uso de SQL Database Agent o usando la cadena de bases de datos SQL
- 29/03/2023 - Script de implementación automatizado
- 23/03/2023 - Agregar búsqueda cognitiva como opción para almacenar documentos
- 13/09/2023 - Agregar implementación de chat GPT3
- 18/03/2023 - API para generar resumen en documentos y muestras de control de calidad
- 17/03/2023
- Admite cargar múltiples documentos
- Corrección de errores: implementación de Redis VectorStore
- 16/03/2023 - Liberación inicial, pregunte sus datos y chatee con sus datos
Sitio web de prueba
Chatea y pregunta sobre tus datos
Características
Lista de características
Arquitectura

Arquitectura azul

Qa sobre sus datos con caché

Evaluación de QA LLM

Empezando
Empezar
Configuración
Configuración de la aplicación de aplicación y función
Recursos
- Revolucione sus datos empresariales con ChatGPT: aplicaciones de próxima generación con Azure OpenAI y búsqueda cognitiva
- Búsqueda cognitiva azul
- Servicio Azure OpenAI
- Redis Search
- Piña
- Tienda de vectores de búsqueda cognitiva
Contribuciones
Estamos abiertos a contribuciones, ya sea en forma de nueva función, actualización de la funcionalidad existente o una mejor documentación. Cree una solicitud de extracción y la revisaremos y fusionaremos.
Nota
Adaptado del repositorio en Operai-CogSearch, Call Center Analytics, Auto Evaluator y Edgar Crawler