Vektorové databáze zlepšují práci s AI

19. 7. 2024

Sdílet

 Autor: Depositphotos
Vektorové databáze a vyhledávání nejsou nové, ale vektorizace je nezbytná pro generativní AI a práci s modely LLM. Přinášíme vše, co potřebujete vědět.

Jedním z prvních projektů autora tohoto příspěvku jako softwarového vývojáře bylo vytvoření algoritmů genetické analýzy. Vytvořil software pro skenování vzorků elektroforézy do databáze, přičemž úkolem bylo převést obraz každého vzoru DNA na reprezentativní data.

Co se dozvíte v článku
  1. Jak to funguje
  2. Případy použití
  3. Použití v LLM
  4. Výběr databáze
  5. Rizika od GenAI
  6. Evoluce pokračuje

Využíváte už ve firmě autonomní agenty postavené na bázi umělé inteligence?

Udělal to tak, že obrázek převedl na vektor, přičemž každý bod představoval atributy vzorku. Po vektorizaci se mohly ukládat informace efektivně a také bylo možné vypočítat podobnost mezi vzorky DNA.

Převod nestrukturovaných informací na vektory je dnes běžnou záležitostí a používá se ve velkých jazykových modelech LLM (Large Language Model) pro rozpoznávání obrázků, ke zpracování přirozeného jazyka, ve strojích generujících doporučení a v dalších případech využití strojového učení.

Vektorové databáze a vektorové vyhledávání jsou dvě primární platformy, které vývojáři využívají k převodu nestrukturovaných informací na vektory, nyní častěji nazývané jako embedding (reprezentace).

Jakmile se informace zakódují jako reprezentace, je ukládání, vyhledávání a porovnávání informací mnohem jednodušší, rychlejší a výrazně škálovatelnější pro velké datové sady.

„Na naší průkopnické cestě světem vektorových databází jsme si všimli, že navzdory rozruchu dochází k běžnému podceňování jejich skutečného potenciálu,“ tvrdí Charles Xie, výkonný ředitel společnosti Zilliz.

Kybernetická bezpečnost s Computerworldem II.: Připravte se na NIS2
Kybernetická bezpečnost s Computerworldem II.: Připravte se na NIS2
0:00/

Skutečným pokladem vektorových databází je podle něj jejich schopnost ponořit se hluboko do obrovského objemu nestrukturovaných dat a umožnit snáze využít jejich hodnotu.

Je důležité si uvědomit, že jejich role se neomezuje na paměťové úložiště pro LLM a že skrývají transformační schopnosti, které se stále objevují.

Jak to funguje

Představte si, že vytváříte vyhledávací funkci pro digitální fotoaparáty. Digitální fotoaparáty mají desítky atributů včetně velikosti, značky, ceny, typu objektivu, typu snímače, rozlišení obrazu a dalších funkcí. Jeden vyhledávač digitálních fotoaparátů má dokonce padesát atributů pro vyhledávání v počtu více než 2,5 tisíce fotoaparátů.

Existuje mnoho způsobů, jak implementovat vyhledávání a porovnávání, ale jedním z možných přístupů je převést každý atribut na jeden nebo více datových bodů v reprezentaci. Jakmile se atributy vektorizují, mohou vzorce pro vektorové vzdálenosti vypočítat podobnosti produktů a vyhledávání.

Fotoaparáty jsou sice problémem s nízkou dimenzionalitou, představte si však, že váš úkol vyžaduje prohledávání stovek tisíc vědeckých dokumentů nebo poskytování hudebních doporučení pro více než 100 milionů skladeb.

Databáze, které nabízejí nativní podporu strojového učení Přečtěte si také:

Databáze, které nabízejí nativní podporu strojového učení

Konvenční vyhledávací mechanismy v takovém měřítku už nelze použít, ale vektorové vyhledávání snižuje složitost informací a umožňuje rychlejší výpočty.

„Vektorová databáze kóduje informace do matematické reprezentace, která je ideálně vhodná pro počítačové chápání,“ popisuje Josh Miramant, výkonný ředitel společnosti BlueOrange.

Tyto matematické reprezentace nebo vektory podle něj mohou zakódovat podobnosti a rozdíly mezi různými daty, jako by dvě barvy byly bližší vektorová reprezentace. Vzdálenosti nebo míry podobnosti jsou to, co mnoho modelů používá k určení nejlepšího nebo nejhoršího výsledku pro danou otázku.

Případy použití

Jednou z funkcí vektorové databáze je zjednodušit informace, ale její skutečnou schopností je vytváření aplikací pro podporu široké řady dotazů v přirozeném jazyce.

Video ke kávě

Máte čas na rychlé a informativní video?

Vyhledávání podle klíčových slov a pokročilé vyhledávací formuláře zjednodušují překlad toho, co lidé hledají, do vyhledávacího dotazu, zpracování otázky v přirozeném jazyce však nabízí mnohem větší flexibilitu. U vektorových databází se otázka převede na reprezentaci a použije se k vyhledávání.

bitcoin_skoleni

Lze tak například říci: „Najdi mi fotoaparát zrcadlovku za střední cenu, která je na trhu nová, má vynikající záznam videa a funguje dobře i při slabém osvětlení.“  Transformer převede tuto otázku na embedding (reprezentaci).

Vektorové databáze běžně používají kodérové transformery. Vývojář nejprve tokenizuje otázku na slova, poté použije transformer ke kódování pozic slov, přidání vah relevance a poté vytvoří abstraktní reprezentace pomocí dopředné neuronové sítě FFNN (Feed-Forward Neural Network). Následně použije dokončený embedding otázky k prohledání vektorové databáze.