Airweave: aplicaciones que integran rápidamente bases de conocimiento para búsquedas inteligentes

Introducción general

Airweave es una herramienta de código abierto diseñada para facilitar la búsqueda en cualquier aplicación mediante la sincronización de los datos de la aplicación, las API, las bases de datos y los sitios web del usuario con bases de datos gráficas y vectoriales. Airweave simplifica el proceso de búsqueda de datos, tanto estructurados como no estructurados, al permitir su procesamiento, almacenamiento y recuperación mediante Airweave. Entre sus características principales se incluyen la sincronización de datos, la integración con múltiples fuentes de datos, la compatibilidad con múltiples bases de datos vectoriales, etc. Airweave se diseñó con el objetivo de ofrecer una solución sencilla, escalable y transparente que facilite a los usuarios la búsqueda semántica de sus datos.

Airweave:让应用程序快速集成知识库,实现智能搜索

 

Lista de funciones

  • Sincronización de datos: permite sincronizar los datos de las aplicaciones de los usuarios, las API, las bases de datos y los datos de los sitios web con las bases de datos cartográficas y vectoriales.
  • Integración de múltiples fuentes de datos: admite más de 20 tipos de integración de fuentes de datos, y sigue aumentando.
  • Soporte de base de datos vectorial: por defecto se utilizan instancias de Weaviate, pero los usuarios también pueden configurar su propia base de datos vectorial.
  • Configuración sin código: los usuarios pueden hacer que las aplicaciones se puedan buscar en unos pocos clics sin escribir código.
  • Procesamiento asíncrono: admite el procesamiento asíncrono de la sincronización de datos a gran escala.
  • Núcleo de código abierto: la función principal del código abierto, el futuro proporcionará funciones comerciales más avanzadas.

 

Utilizar la ayuda

Proceso de instalación

  1. Almacén de clonación:
   git clone https://github.com/airweave-ai/airweave.git
cd airweave
  1. En marcha:
   chmod +x start.sh
./start.sh

Después de ejecutar el comando anterior, Airweave se iniciará localmente.

Proceso de utilización

Uso del front-end

  1. entrevistas Reaccione IU: Abra su navegador y visite http://localhost:8080.
  2. Añada una nueva fuente de datos: Vaya a la página "Fuentes" y añada una nueva fuente de datos.
  3. Configurar un calendario de sincronización: Configura o visualiza un calendario de sincronización en la página Horarios.
  4. Supervisar las tareas de sincronización: Supervise el estado de las tareas de sincronización en la página Trabajos.

Uso de la API

  1. Para acceder a la documentación de Swagger: Abra un navegador y visite http://localhost:8001/docs Consulte la documentación de la API.
  2. Obtener todas las fuentes de datos:
   GET /sources
  1. Conectar con la fuente de datos:
   POST /connections/{short_name}

Configuración avanzada

  • Configurar una base de datos vectorial personalizada: Los usuarios pueden configurar su propia base de datos vectorial en la interfaz de usuario de la aplicación o a través de la API.
  • Cliente asíncrono: Airweave proporciona un cliente asíncrono que admite llamadas no bloqueantes a la API.
  import asyncio
from airweave import AsyncAirweaveSDK
client = AsyncAirweaveSDK(api_key="YOUR_API_KEY", base_url="https://yourhost.com/path/to/api")
async def main():
await client.api_keys.create_api_key()
asyncio.run(main())

Gestión de excepciones

La excepción ApiError se lanza cuando la API devuelve un código de estado no satisfactorio (respuesta 4xx o 5xx).

from airweave.core.api_error import ApiError
try:
client.api_keys.create_api_key()
except ApiError as e:
print(e.status_code)
print(e.body)

auto-retry

El SDK está configurado con un mecanismo de reintentos automáticos y el número de reintentos por defecto es 2. Los usuarios pueden utilizar la función max_retries configura el comportamiento de reintento.

client.api_keys.create_api_key(..., request_options={"max_retries": 1})

configuración del tiempo de espera

El tiempo de espera predeterminado del SDK es de 60 segundos, y los usuarios pueden configurar el tiempo de espera a nivel de cliente o de solicitud.

client = AirweaveSDK(..., timeout=20.0)
client.api_keys.create_api_key(..., request_options={"timeout_in_seconds": 1})

Clientes a medida

Los usuarios pueden modificar el cliente httpx para que admita requisitos personalizados, como proxies y transportes.

import httpx
from airweave import AirweaveSDK
client = AirweaveSDK(
...,
httpx_client=httpx.Client(proxies="http://my.test.proxy.example.com", transport=httpx.HTTPTransport(local_address="0.0.0.0")),
)
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...