Przejdź do głównej zawartości

Text-to-Vec API

Przegląd

Moduł text2vec-transformers umożliwia Weaviate uzyskanie wektorów lokalnie z tekstu przy użyciu modelu opartego na transformers. Obejmuje modele w kontenerach Docker, umożliwiając niezależne skalowanie na sprzęcie z obsługą GPU, zachowując jednocześnie Weaviate na sprzęcie wyłącznie z CPU. Jest to korzystne, ponieważ Weaviate jest zoptymalizowane pod kątem CPU.

Główne funkcję:

  • Aktywacja tego modułu umożliwia użycie operatora wyszukiwania nearText.
  • Obsługuje użycie publicznie dostępnych transformer models.
  • Automatycznie dzieli tekst przed przekazaniem go do modelu.

Ograniczenia:

  • Obecnie cgc oferuje tylko tokenizer intfloat/multilingual-e5-large. Jeśli chcesz użyć innego modelu, skontaktuj się z nami.

Jak uruchomić

Aplikacja Vectorizer jest dostępna jako zasób obliczeniowy w środowisku obsługującym CUDA. Upewnij się, że przypisujesz wystarczające zasoby CPU i RAM do poprawnego działania. Pamięć RAM powinna być co najmniej tak duża jak pamięć wybranej karty GPU plus 1 GB. Możesz jednak eksperymentować z różnymi wartościami, jeśli nie przewidujesz dużego obciążenia.

Najlepszym GPU do tego zadania jest NVIDIA A5000.

Aby uruchomić instancję, użyj następującego polecenia:

cgc compute create --name txt-2-vec -c 4 -m 25 -g 1 -gt A5000 t2v-transformers

Po inicjalizacji Twoje vectorizer API będzie dostępne pod adresem:

http://txt-2-vec:8080 - lokalnie w twoim namespace

Uwaga

Vectorizer nie jest przeznaczony do użytku jako publiczne API ze względu na brak mechanizmów autoryzacji.

Integracja z Weaviate

Aby użyć modułu text2vec-transformers z Weaviate, podaj adres URL dostępu t2v podczas uruchamiania bazy danych.

Dodatkowe informacje

  • Aby uzyskać więcej informacji na temat integracji z Weaviate, zapoznaj się z dokumentacją Weaviate.
  • Aby uzyskać więcej informacji na temat repozytorium modeli Hugging Face, odwiedź stronę internetową Hugging Face.
  • Wybraliśmy ten konkretny vectorizer po przeprowadzeniu wielu testów. Wierzymy, że jest to jedno z najlepszych rozwiązań do wektoryzacji tekstu zarówno w języku polskim, jak i angielskim.

Podsumowanie

Moduł text2vec-transformers to potężne narzędzie, które umożliwia Weaviate uzyskiwanie wektorów lokalnie z tekstu przy użyciu modelu opartego na transformers. Oferuje kluczowe funkcje, takie jak wsparcie dla wyszukiwania nearText, użycie publicznie dostępnych modeli z repozytorium modeli Hugging Face oraz automatyczne dzielenie tekstu. Choć istnieją pewne ograniczenia, takie jak obecnie wsparcie tylko dla jednego tokenizer'a, moduł ten jest wartościowym dodatkiem do ekosystemu Weaviate.