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

Список функций
- Синхронизация данных: поддерживает синхронизацию данных пользовательских приложений, API, баз данных и данных веб-сайтов с картографическими и векторными базами данных.
- Интеграция с несколькими источниками данных: поддержка более 20 видов интеграции с источниками данных, продолжает увеличиваться.
- Поддержка векторных баз данных: по умолчанию используются экземпляры Weaviate, но пользователи также могут настроить собственные векторные базы данных.
- Конфигурация без кода: пользователи могут сделать приложения доступными для поиска в несколько кликов без написания кода.
- Асинхронная обработка: поддерживает асинхронную обработку крупномасштабной синхронизации данных.
- Ядро с открытым исходным кодом: основная функция с открытым исходным кодом, в будущем будут предоставляться более продвинутые коммерческие функции.
Использование помощи
Процесс установки
- Хранилище клонирования:
git clone https://github.com/airweave-ai/airweave.git
cd airweave
- Запущен и работает:
chmod +x start.sh
./start.sh
После выполнения приведенной выше команды Airweave запустится локально.
Процесс использования
Использование фронтэнда
- интервью React Пользовательский интерфейс: Откройте браузер и посетите
http://localhost:8080
. - Добавьте новый источник данных: перейдите на страницу "Источники" и добавьте новый источник данных.
- Настройка расписания синхронизации: установите или просмотрите расписание синхронизации на странице Расписания.
- Мониторинг заданий синхронизации: отслеживайте состояние заданий синхронизации на странице "Задания".
Использование API
- Чтобы получить доступ к документации Swagger, откройте браузер и посетите
http://localhost:8001/docs
Просмотрите документацию по API. - Получите все источники данных:
GET /sources
- Подключитесь к источнику данных:
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")),
)
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...