Przejdź do głównej zawartości

Weaviate

Jak uruchomić wektorową bazę danych Weaviate w CGC poleceniem cgc db create i jak się z nią połączyć.

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

Uruchamianie​

Utwórz wolumen dla danych:

cgc volume create -s 5 -sc <storage_class> 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

Embeddingi tekstu są dostępne w LLM API CGC przez endpoint /v1/embeddings albo możesz samodzielnie uruchomić model embeddingowy w vLLM.

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.
  • ENABLE_MODULES=text2vec-openai: Moduły Weaviate włączone domyślnie.
informacja

Jeśli chcesz nadpisać AUTHENTICATION_APIKEY_ALLOWED_KEYS i zachować jego prawidłowe wyświetlanie podczas cgc db 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<4.0.0"

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