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

Jeśli chcesz uruchomić podstawową bazę danych, wystarczy utworzyć nową bazę danych za pomocą cgc.

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.

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,
)