Estamos mejorando constantemente el Retriever de autores de Langchain. Algunas de las características aún no se fusionan.

Otra aplicación de chat con documentos, pero admite consulta sobre millones de archivos con MyScale y Langchain.
ChatData es una aplicación robusta de chat con documentos diseñados para extraer información y proporcionar respuestas consultando la base de conocimiento gratuita de MyScale o sus documentos cargados.
Impulsado por el marco de generación aumentada de recuperación (RAG), ChatData aprovecha millones de páginas de Wikipedia y documentos ARXIV como su base de conocimiento externo, con MyScale administrar todas las tareas de alojamiento de datos. Simplemente ingrese sus preguntas en lenguaje natural, y ChatData se encarga de generar SQL, consultar los datos y presentar los resultados.
Mejorando su experiencia de chat, ChatData presenta tres características clave. Vamos a profundizar en cada uno de ellos en detalle.
MyScale trabaja en estrecha colaboración con Langchain, proporcionando la interfaz más fácil para construir consultas complejas con LLM.
Retriever de autolerencia: el recolectivo de consulta de Langchain aumentada de MyScale, donde el LLM puede usar más tipos de datos, por ejemplo, las marcas de tiempo y la variedad de cuerdas, para construir filtros para la consulta.
VECTORSQL: SQL es potente y puede usarse para construir consultas de búsqueda complejas. El lenguaje de consulta estructurada de Vector (Vector SQL) está diseñado para enseñar a LLM cómo consultar bases de datos de vectores SQL. Además de los tipos y funciones de datos generales, VectorSQL contiene funciones adicionales como la distancia (columna, query_vector) y NeuralArray (entidad), con la que podemos extender el SQL estándar para la búsqueda de vectores.
Para mejorar su experiencia y continuar sin problemas las interacciones con las sesiones existentes, ChatData ha introducido la función de gestión de sesiones. Puede personalizar fácilmente su ID de sesión y modificar su solicitud para guiar los chatData para abordar sus consultas. Con solo unos pocos clics, puede disfrutar de interacciones de sesión suaves y personalizadas.
Además de aprovechar la base de conocimiento externa de ChatData impulsada por MyScale para respuestas, también tiene la opción de cargar sus propios archivos y establecer una base de conocimiento personalizada. Hemos implementado la API no estructurada para este propósito, asegurando que solo se almacenen textos procesados de sus documentos, priorizando su privacidad de datos.
En conclusión, con ChatData, puede navegar sin esfuerzo a través de grandes cantidades de datos, accediendo sin esfuerzo precisamente lo que necesita. Ya sea que sea un investigador, un estudiante o un entusiasta del conocimiento, ChatData le facilita la exploración de documentos académicos y documentos de investigación como nunca antes. Desbloquee el verdadero potencial de recuperación de información con ChatData y descubra un mundo de conocimiento a su alcance.
➡️ ¿Bucear y experimentar chatData en la cara abrazada?

Credenciales de la base de datos:
MYSCALE_HOST = " msc-950b9f1f.us-east-1.aws.myscale.com "
MYSCALE_PORT = 443
MYSCALE_USER = " chatdata "
MYSCALE_PASSWORD = " myscale_rocks " wiki.WikipediaChatData también le proporciona acceso a Wikipedia, una gran base de conocimiento que contiene alrededor de 36 millones de párrafos menos de 5 millones de páginas wiki. La base de conocimiento es una instantánea en 2022-12.
Puede consultar desde esta tabla con la cuenta pública aquí.
CREATE TABLE wiki .Wikipedia (
-- Record ID
` id ` String,
-- Page title to this paragraph
` title ` String,
-- Paragraph text
` text ` String,
-- Page URL
` url ` String,
-- Wiki page ID
` wiki_id ` UInt64,
-- View statistics
` views ` Float32,
-- Paragraph ID
` paragraph_id ` UInt64,
-- Language ID
` langs ` UInt32,
-- Feature vector to this paragraph
` emb ` Array(Float32),
-- Vector Index
VECTOR INDEX emb_idx emb TYPE MSTG( ' metric_type=Cosine ' ),
CONSTRAINT emb_len CHECK length(emb) = 768 )
ENGINE = ReplacingMergeTree ORDER BY id SETTINGS index_granularity = 8192 default.ChatArXivChatData trae millones de documentos a su base de conocimiento. Importamos 2.2 millones de documentos con información de metadatos, que contiene:
id : la identificación arxiv de Paperabstract : los resúmenes de Paper utilizados como criterio de clasificación (con instructxl)vector : columna que contiene la matriz vectorial en Array(Float32)metadata : columnas compatibles con Langchain VectorStoremetadata.authors : autores de papel en la lista de cuerdasmetadata.abstract : los resúmenes de Paper utilizados como criterio de clasificación (con instructxl)metadata.titles : títulos de papelmetadata.categories : categorías de documentos en la lista de cadenas como ["cs.cv"]metadata.pubdate : la fecha de publicación del documento en cadenas formadas ISO 8601metadata.primary_category : la categoría principal del documento en cadenas definidas por ARXIVmetadata.comment : algunos comentarios adicionales al periódicoLas columnas a continuación son columnas nativas en myscale y solo se pueden usar como sqldatabase
authors : los autores de Paper en la lista de cuerdastitles : títulos de papelescategories : Categorías de Paper en la lista de cadenas como ["Cs.CV"]pubdate : Fecha de publicación en Documento en Date32 Tipo de datos (más rápido)primary_category : la categoría principal del documento en cadenas definidas por ARXIVcomment : algún comentario adicional al periódicoY para el esquema de tabla general, consulte la sección de creación de tabla en Docs/AutoQuery.md.
Si desea utilizar esta base de datos con langchain.chains.sql_database.base.SQLDatabaseChain o langchain.retrievers.SQLDatabaseRetriever , siga las guías en la sección de preparación de datos y la sección de creación de cadena en docs/vector-sql.md
De los archivos de Parquet en S3
O usar directamente la base de datos myscale como servicio ... de forma gratuita
import clickhouse_connect
client = clickhouse_connect . get_client (
host = 'msc-950b9f1f.us-east-1.aws.myscale.com' ,
port = 443 ,
username = 'chatdata' ,
password = 'myscale_rocks'
)app/ cd app/python3 -m venv venv
source venv/bin/activatepython3 -m pip install -r requirements.txt # fill you OpenAI key in .streamlit/secrets.toml
cp . streamlit / secrets . example . toml . streamlit / secrets . toml
# start the app
python3 - m streamlit run app . pyLea el artículo completo
Lea el artículo completo