Airweave: позволяет приложениям быстро интегрировать базы знаний для интеллектуального поиска

Общее введение

Airweave - это инструмент с открытым исходным кодом, предназначенный для создания поисковой системы в любом приложении путем синхронизации данных пользовательских приложений, API, баз данных и веб-сайтов с графовыми и векторными базами данных. Airweave упрощает процесс создания поисковых данных, как структурированных, так и неструктурированных, позволяя обрабатывать, хранить и извлекать их с помощью Airweave. Основные функции включают синхронизацию данных, интеграцию с несколькими источниками данных, поддержку нескольких векторных баз данных и т. д. Airweave был разработан с целью предоставления простого, масштабируемого и прозрачного решения, которое облегчает пользователям семантический поиск в данных.

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

 

Список функций

  • Синхронизация данных: поддерживает синхронизацию данных пользовательских приложений, API, баз данных и данных веб-сайтов с картографическими и векторными базами данных.
  • Интеграция с несколькими источниками данных: поддержка более 20 видов интеграции с источниками данных, продолжает увеличиваться.
  • Поддержка векторных баз данных: по умолчанию используются экземпляры Weaviate, но пользователи также могут настроить собственные векторные базы данных.
  • Конфигурация без кода: пользователи могут сделать приложения доступными для поиска в несколько кликов без написания кода.
  • Асинхронная обработка: поддерживает асинхронную обработку крупномасштабной синхронизации данных.
  • Ядро с открытым исходным кодом: основная функция с открытым исходным кодом, в будущем будут предоставляться более продвинутые коммерческие функции.

 

Использование помощи

Процесс установки

  1. Хранилище клонирования:
   git clone https://github.com/airweave-ai/airweave.git
cd airweave
  1. Запущен и работает:
   chmod +x start.sh
./start.sh

После выполнения приведенной выше команды Airweave запустится локально.

Процесс использования

Использование фронтэнда

  1. интервью React Пользовательский интерфейс: Откройте браузер и посетите http://localhost:8080.
  2. Добавьте новый источник данных: перейдите на страницу "Источники" и добавьте новый источник данных.
  3. Настройка расписания синхронизации: установите или просмотрите расписание синхронизации на странице Расписания.
  4. Мониторинг заданий синхронизации: отслеживайте состояние заданий синхронизации на странице "Задания".

Использование API

  1. Чтобы получить доступ к документации Swagger, откройте браузер и посетите http://localhost:8001/docs Просмотрите документацию по API.
  2. Получите все источники данных:
   GET /sources
  1. Подключитесь к источнику данных:
   POST /connections/{short_name}

Расширенная конфигурация

  • Настройка пользовательской базы данных векторов: пользователи могут настроить собственную базу данных векторов в пользовательском интерфейсе приложения или через API.
  • Асинхронный клиент: Airweave предоставляет асинхронный клиент, который поддерживает неблокирующие вызовы 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())

Обработка исключений

Исключение ApiError выбрасывается, когда API возвращает неуспешный код состояния (ответ 4xx или 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)

автоповтор

В SDK настроен механизм автоматического повтора, а количество повторов по умолчанию равно 2. Пользователи могут использовать max_retries настраивает поведение повторных попыток.

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

установка тайм-аута

По умолчанию в SDK таймаут составляет 60 секунд, а пользователи могут настроить таймаут на уровне клиента или запроса.

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

Индивидуальные клиенты

Пользователи могут переопределить клиент httpx для поддержки пользовательских требований, таких как прокси-серверы и транспорты.

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")),
)
© заявление об авторских правах

Похожие статьи

包阅AI:智能AI阅读助手,智能分析文档、总结知识与多语言翻译

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...