Przejdź do głównej zawartości

Weaviate

Weaviate to open source'owa, AI-native, wektorowa baza danych, która pomaga deweloperom tworzyć intuicyjne i niezawodne aplikacje oparte na sztucznej inteligencji.

Weaviate jest wyposażony w niestandardowy vectorizer, zasilany modelem intfloat/multilingual-e5-large.
Więcej informacji o modelu można znaleźć na oficjalnym repozytorium huggingface.

Vectorizer

Vectorizer musi być uruchomiony oddzielnie jako zasób obliczeniowy.

Uruchamianie

Utwórz wolumen dla danych:

cgc volume create -s 5 weaviate-volume

Jeśli chcesz uruchomić podstawową bazę danych, wystarczy utworzyć nową bazę danych za pomocą cgc, z podłączonym wolumenem:

cgc db create --name weaviate01 -c 4 -m 8 -v weaviate-volume weaviate

Jeśli chcesz użyć zewnętrznego vectorizer'a, najpierw musisz go uruchomić

cgc compute create --name vectorizer -c 4 -m 24 -g 1 -gt A5000 t2v-transformers

Aby uzyskać więcej informacji na temat vectorizer'a, proszę odwołać się do strony dokumentacji

a następnie przekazać dodatkowe parametry do polecenia uruchamiającego

cgc db create --name weaviate01 -c 4 -m 8 -v weaviate-volume weaviate -e weaviate_enable_modules=text2vec-transformers -e weaviate_transformers_inference_api=http://<VECTORIZER_RESOURCE_NAME>:8080

Domyślna konfiguracja

Domyślna konfiguracja dla Weaviate jest ustawiona do używania silnika bazy danych Weaviate. Baza danych zostanie utworzona z następującymi parametrami:

  • QUERY_DEFAULTS_LIMIT=20: Domyślny limit dla zapytań.
  • AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED=false: Wyłącza anonimowy dostęp do bazy danych.
  • AUTHENTICATION_APIKEY_ENABLED=true: Włącza uwierzytelnienie za pomocą klucza API.
  • AUTHENTICATION_APIKEY_ALLOWED_KEYS: Lista dozwolonych kluczy API do uwierzytelnienia. Jest ustawiona na specyficzny dla CGC app_token, który otrzymujesz po utworzeniu bazy danych.
  • AUTHENTICATION_APIKEY_USERS=admin@localhost: Lista użytkowników uprawnionych do dostępu do bazy danych.
  • PERSISTENCE_DATA_PATH: Ścieżka do katalogu danych, w którym baza danych będzie przechowywać swoje dane. Jest ustawiona na /mnt/vectordb.
  • CLUSTER_HOSTNAME=node1: Nazwa hosta węzła bazy danych.
informacja

Jeśli chcesz nadpisać AUTHENTICATION_APIKEY_ALLOWED_KEYS i zachować jego prawidłowe wyświetlanie podczas cgc compute list -d, zalecamy użycie flagi CGC -ce app_token=TWOJE_HASŁO

Jak się połączyć

Pracujemy nad włączeniem klienta weaviate do CGC SDK, ale na razie prosimy użyć oficjalnego klienta zainstalowanego za pomocą pip.
W środowisku notebooka możesz połączyć się z bazą danych w ten sposób.

Najpierw zainstaluj klienta weaviate

!pip install weaviate-client

Następnie uzyskaj swój token weaviate z

cgc db list -d

Następnie zaimportuj klienta i wykonaj połączenie

import weaviate

WEAVIATE_URL = "http://weaviate:8080"

auth_client_secret = weaviate.AuthApiKey(api_key="<WEAVIATE_TOKEN>")
client = weaviate.Client(
url=WEAVIATE_URL,
auth_client_secret=auth_client_secret,
)