Glosář AI a LLM termínů
Úvod
Svět a příslib umělé inteligence, zejména velkých jazykových modelů (LLM), přináší nadšení a možnosti. Přináší také novou terminologii, které je třeba porozumět.
Tento glosář se zaměřuje na AI, RAG a velké jazykové modely, aby vám pomohl rychle zvládnout koncepty strojového učení.
Agentic RAG
Agentic RAG je přístup k vytváření AI asistentů a agentů pomocí LLM, který zahrnuje komplexní uvažování, vícekrokové plánování, volání funkcí a používání nástrojů.
Hlavní výhoda Agentic RAG spočívá ve schopnosti volat nástroje pro vyhledávání informací a provádění úkolů.
Například pokud požádáte AI asistenta postaveného na Agentic RAG o porovnání příjmů Apple a Microsoft v roce 2022, může analyzovat dotaz a dvakrát zavolat nástroj pro finanční výkazy – jednou pro Apple a jednou pro Microsoft. Poté sloučí výsledky obou volání a vytvoří požadovanou odpověď.
Attention (Pozornost)
Mechanismy pozornosti ve velkých jazykových modelech (LLM) jsou základní komponenty, které těmto modelům umožňují efektivněji zpracovávat a rozumět textu. Byly představeny Vaswani et al. v článku "Attention is All You Need".
Klíčovou inovací je self-attention (sebe-pozornost), kde model vypočítává skóre pozornosti mezi každým párem tokenů ve vstupní sekvenci. Tato skóre určují, kolik pozornosti věnovat každému tokenu při generování výstupu.
Mechanismy pozornosti byly klíčové pro pokrok v NLP a pohánějí aplikace jako strojový překlad a chatboty.
ChatGPT
ChatGPT je konverzační chatbot vyvinutý společností OpenAI. Je založen na architektuře GPT (Generative Pre-trained Transformer), což je typ modelu hlubokého učení navržený k porozumění a generování textu podobného lidskému.
Základní technologií ChatGPT je neuronová síť typu transformer, která se vyznačuje mechanismem self-attention.
Jednou z výrazných vlastností ChatGPT je schopnost vést otevřené konverzace s uživateli. Na rozdíl od mnoha jiných chatbotů, které fungují na základě předdefinovaných pravidel, ChatGPT dynamicky generuje odpovědi na základě vstupu.
Je důležité poznamenat, že ChatGPT není neomylný – spoléhá na trénovací data a může někdy produkovat nepřesné odpovědi (tzv. halucinace).
Chunking (Dělení na části)
Chunking je proces používaný ke zvýšení efektivity a přesnosti vyhledávání informací v NLP úlohách. V RAG je vstupní text rozdělen na menší, zvládnutelné jednotky nazývané "chunky". Tyto chunky mohou být věty, odstavce nebo jiné specifické rozdělení většího textu.
Účel chunkingu:
- Efektivita: Práce s menšími chunky zrychluje proces vyhledávání a vyžaduje méně výpočetního výkonu.
- Přesnost: Chunky poskytují cílenější informace, snižují šum a zlepšují relevanci získaných dat.
- Škálovatelnost: Chunking umožňuje systému efektivněji zpracovávat větší dokumenty.
V RAG je po chunkování každý chunk indexován a uložen v retrieval systému (jako text i jako embedding vektor).
Embeddings (Vektorové reprezentace)
V kontextu LLM jsou vektorové embeddingy typem reprezentace, která zachycuje sémantický význam nebo kontext slov či vět v kompaktní formě. Jsou to v podstatě vektory reálných čísel, kde každá dimenze může reprezentovat jinou vlastnost zachycující něco o významu daného konceptu.
Vektorové embeddingy jsou také známé jako "husté reprezentace" (dense representations), na rozdíl od tradičnějších "řídkých reprezentací" (sparse representations).
Typy embeddingů:
- Word embeddings: mapují každé slovo na vektorový embedding
- Sentence embeddings: mapují celou větu, odstavec nebo jakýkoli textový chunk do vektorového embeddingu
Vektorové embeddingy slouží jako vstup pro různé NLP úlohy jako klasifikace textu, analýza sentimentu nebo strojový překlad.
Explainability (Vysvětlitelnost)
Ve světě RAG vysvětlitelnost znamená, že systém může ukázat přesně, jak dospěl ke své odpovědi, včetně odkazů na původní zdroje.
Namísto toho, abyste přemýšleli, odkud informace pochází, systém může poskytnout jasné reference nebo citace, podobně jako poznámky pod čarou, takže si můžete detaily ověřit sami.
Tento transparentní přístup buduje důvěru a pomáhá porozumět uvažování za odpovědí.
Few Shot Learning
V kontextu LLM se koncept few shot learning vztahuje na schopnost poskytnout LLM příklady úkolu, který chcete provést, a tím zlepšit jeho výkon.
Zero shot příklad:
"Přelož následující z angličtiny do francouzštiny: How are you today?"
Few shot příklad:
"Přelož následující z angličtiny do francouzštiny:
- Hello → Bonjour
- Goodbye → Au revoir
Přelož: How are you today?"
V druhém případě poskytujeme dva příklady dobrého překladu, čímž pomáháme modelu lépe splnit požadovaný úkol.
Fine-tuning (Doladění)
Fine-tuning je způsob provádění transfer learningu. Při fine-tuningu vezmete předtrénovaný model a pokračujete v jeho trénování na specifickém (obvykle menším) datasetu.
Běžné techniky fine-tuningu:
- Pokračování v tréninku celé neuronové sítě na specifickém datasetu
- Zmrazení některých vrstev a trénování ostatních
- Přidání nové vrstvy pro nový typ úkolu a trénování pouze této vrstvy
Fine-tuning je mnohem méně komplikovaný a výrazně levnější úkol než plné trénování LLM.
Nedávno byly navrženy techniky jako LORA (low-rank-adaptation), které fine-tuning ještě zrychlují a zlevňují při zachování podobného výkonu.
GPTs (Vlastní GPT)
V listopadu 2023 OpenAI představila možnost uživatelů nebo vývojářů vytvářet vlastní verze ChatGPT. Tato schopnost je zaměřena na relativně malé přizpůsobení, umožňující konfigurovat vlastní GPT s určitým tónem hlasu, hledáním na webu a až 20 PDF dokumenty.
GPT jsou nejlepší pro malá přizpůsobení GPT a nejsou ideálním řešením pro enterprise případy s tisíci nebo miliony dokumentů, kde škálovatelná RAG řešení zůstávají doporučeným přístupem.
LLM Hallucinations (Halucinace LLM)
Když LLM generuje text, který je nesmyslný nebo nevěrný poskytnutému zdrojovému obsahu, často říkáme, že tento obsah je halucinace LLM (také nazývaná fabrication).
Halucinace LLM nastávají ze dvou hlavních důvodů:
-
Ptáte se na otázku, na kterou odpověď není LLM "známa" (tj. není dostupná v jeho trénovacích datech). V tomto případě LLM může odpovědět špatnou odpovědí.
-
Odpověď na vaši otázku je LLM "známa", ale obsahuje fiktivní obsah nebo obsah, který je subjektivní jako názory a přesvědčení.
HHEM
HHEM (Hughes Hallucination Evaluation Model) je open source klasifikační model dostupný na HuggingFace, který lze použít k detekci halucinací.
Je zvláště užitečný v kontextu budování RAG aplikací, kde je sada faktů sumarizována LLM, ale model lze použít i v jiných kontextech.
HHEM se také používá k hodnocení LLM podle jejich celkové pravděpodobnosti halucinovat tímto způsobem.
Hybrid Search (Hybridní vyhledávání)
Sémantické vyhledávání poskytuje fantastický přístup k získávání relevantních výsledků, ale není dokonalé. Existují případy, zejména u jednoslovných dotazů hledajících informace o konkrétním produktu, kde tradiční vyhledávání na základě klíčových slov funguje lépe.
Hybridní vyhledávání se pokouší kombinovat sémantické vyhledávání s tradičním vyhledáváním na základě klíčových slov, využívající přesnost keyword vyhledávání s kontextovým porozuměním sémantického vyhledávání.
Kombinací obou metod nabízí hybridní vyhledávání nuancovanější a efektivnější přístup k vyhledávání informací.
LLM Inference (Inference LLM)
Inference je operace, při které generujete text s generativním LLM. Vstupem je sekvence tokenů a výstupem je další předpovězený token. Pokud chcete generovat celou sekvenci, generujete jeden token po druhém.
Inference s LLM je stochastická operace a nemusí pokaždé generovat stejný výsledek.
Parametry ovládající inferenci:
-
Temperature: Ovládá, jak randomizovaná je odpověď. Při temp=0 je odpověď deterministická (LLM vždy volí token s nejvyšší pravděpodobností), zatímco vyšší hodnoty vedou k více randomizovaným výsledkům.
-
Top_p a top_k: Dva mechanismy pro výběr dalšího tokenu.
- Top_k je celočíselná hodnota určující délku top tokenů k zvážení
- Top_p pracuje podobně, ale vybírá top N tokenů tak, aby jejich kumulativní pravděpodobnost byla rovna nebo vyšší než hodnota top_p (0…1)
Large Language Model (LLM) - Velký jazykový model
Velký jazykový model (LLM) je neuronová síť trénovaná k porozumění jazyku a může být použita pro různé úkoly jako sumarizace, překlad, predikce a generování textu. LLM je trénován na masivních textových datasetech jako Common Crawl, WebText2, Books1, Books2 a Wikipedia.
Běžný typ LLM, nazývaný také auto-regresivní (AR) LLM, je ten, kde je model trénován k předpovídání dalšího tokenu podmíněného všemi předchozími tokeny. GPT-3 a GPT-4 patří do této kategorie.
Tyto modely se také nazývají generativní LLM.
MAMBA
Mamba je nová architektura pro modelování sekvencí, která nabízí slibnou alternativu k modelům Transformer. Využívá selektivní stavové prostory k dosažení modelování sekvencí v lineárním čase, což poskytuje významné zlepšení efektivity a škálovatelnosti ve srovnání s kvadratickou složitostí Transformerů.
Klíčová inovace Mamby spočívá v její schopnosti selektivně uchovávat nebo zapomínat informace prostřednictvím selekčního mechanismu, což jí umožňuje efektivně zpracovávat dlouhodobé závislosti.
Architektura Mamba demonstruje působivý výkon napříč různými úkoly včetně jazykového modelování, analýzy sekvencí DNA a generování audia. Nabízí 5x vyšší propustnost generování ve srovnání s Transformery podobné velikosti.
Max Marginal Relevance Ranking (MMR)
V kontextu RAG se MMR vztahuje na techniku, při které jsou relevantní fakta poskytnutá krokem vyhledávání přeuspořádána tak, aby vytvořila rozmanitější sadu faktů. Původně navržená v roce 1998, je tato technika kritická například tam, kde je mnoho odpovídajících textových chunků z více dokumentů ve skutečnosti velmi podobných nebo dokonce identických.
MMR je často implementován jako krok přeuspořádání po vyhledávání. Algoritmus má složitost O(N²), ale může být implementován efektivně pro nízkou latenci.
Open Source LLM
Termín "open source", často používaný pro zdrojový kód veřejně dostupný pod různými licencemi jako Apache 2.0 nebo MIT, byl nedávno použit v kontextu LLM pro označení modelů, jejichž váhy jsou veřejně dostupné.
Nejpozoruhodnější open source modely:
- LLAMA3 od Meta (verze 8B a 70B)
- Mistral
- Google Gemma
- Microsoft Phi4
Většina open source LLM je vydána za podmínek umožňujících komerční použití, ale některé mají dodatečná omezení.
Prompt Engineering
Proces vytváření, zdokonalování a optimalizace vstupních promptů zadávaných LLM za účelem dosažení požadovaných výstupů. Prompt engineering hraje klíčovou roli při určování výkonu a chování modelů jako GPT.
Specifické techniky prompt engineeringu:
- Přeformulování: Někdy může přeformulování promptu vést k lepším výsledkům.
- Specifikace formátu: Pro úkoly, kde záleží na formátu odpovědi, můžete jej specifikovat v promptu (např. "Poskytněte odpověď v odrážkách").
- Úvodní informace: Zahrnutí dodatečného kontextu může pomoci zúžit požadovanou odpověď.
Prompt engineering je důležitý i v kontextu RAG pro získání nejlepších výsledků.
RAG Evaluation (Evaluace RAG)
Při implementaci RAG ve vaší organizaci je důležité nasadit robustní rámec pro evaluaci RAG. To vám umožní měřit kvalitu odpovědí a určit "jak přesná a užitečná je odpověď na jakoukoli uživatelskou otázku".
Dva hlavní typy metrik:
-
Metriky vyhledávání (Retrieval metrics): Tyto metriky říkají, zda jsou fakta získaná ze zdrojových dat relevantní k otázce a mohou být úspěšně použita jako podkladová data pro odpověď.
-
Metriky generování (Generation metrics): Tyto metriky hodnotí samotnou odpověď podmíněnou fakty – je odpověď správně ukotvena ve faktech?
RAG evaluace může být velmi akční a pomoci vám nejen vidět problémy, ale také je opravit.
RAG Sprawl
RAG Sprawl označuje nekontrolované šíření implementací Retrieval-Augmented Generation (RAG) napříč vaší organizací – rostoucí problém způsobující bolesti hlavy CIO a IT oddělením při vyčerpávání zdrojů, ohrožování bezpečnosti a vytváření nekonzistentních uživatelských zkušeností.
S RAG Sprawl se organizace rychle ocitne ve správě více redundantních systémů, které v podstatě vykonávají stejnou základní funkci: vyhledávání relevantních informací a jejich použití k ukotvení odpovědí LLM.
Reranking (Přeuspořádání)
V RAG hraje reranker klíčovou roli při zvyšování relevance získaných dokumentů ve dvoustupňovém modelu vyhledávání.
Zpočátku zahrnuje proces vyhledávání široké hledání pro shromáždění velké sady potenciálně relevantních dokumentových chunků pomocí rychlé a efektivní metody jako vektorové embeddingy nebo hybridní vyhledávání. Počáteční sada dokumentů však může obsahovat mnoho irelevantních nebo okrajově relevantních položek.
Zde přichází reranker jako druhý stupeň procesu vyhledávání. Aplikuje sofistikovanější algoritmus pro přehodnocení a přeuspořádání původně získaných dokumentů.
Kategorie rerankerů:
- Relevance reranker
- MMR reranker
- UDF reranker
Retrieval Augmented Generation (RAG)
Retrieval Augmented Generation (RAG) je přístup, který poskytuje LLM dodatečné, kontextové informace k ukotvení jeho odpovědí a zamezení halucinacím.
Ingest flow (tok příjmu dat):
Data jsou rozdělena na věty nebo jiné chunky. Každý chunk je poté zakódován do vektorového embeddingu (pomocí Embeddings modelu) a uložen ve vektorovém úložišti.
Query flow (tok dotazu):
Když je vydán dotaz, je nejprve zakódován do vlastního vektorového embeddingu a ty jsou porovnány s daty ve vektorovém úložišti. Nejrelevantnější věty nebo fakta jsou získány. Tato fakta jsou poté poskytnuta sumarizačnímu LLM, aby mohl odpovědět na dotaz s tímto kontextem na mysli a poskytnout přesnou odpověď založenou na datech.
Semantic Search a Neural Search (Sémantické a neurální vyhledávání)
Sémantické vyhledávání je metoda používaná ve vyhledávacích algoritmech, která bere v úvahu záměr hledajícího a kontextový význam termínů v dokumentech. Namísto pouhého hledání klíčových slov se sémantický vyhledávač snaží porozumět základním konceptům, kontextu a významu pro přesnější výsledky.
Například při hledání "apple" by tradiční vyhledávání na základě klíčových slov jednoduše vrátilo výsledky obsahující slovo "apple" bez kontextu rozlišujícího mezi Apple Inc. a jablkem jako ovocem.
Sémantické vyhledávání je často založeno na modelu hlubokého učení a nazývá se "neurální vyhledávání". Při neurálním vyhledávání je text převeden na formu nazývanou "vektorové embeddingy" reprezentující jeho sémantický význam.
Tokenization (Tokenizace)
V kontextu LLM je tokenizace proces, při kterém je textový řetězec rozdělen na menší jednotky nazývané tokeny. Tokeny mohou být jednotlivé znaky, jednotlivá slova nebo dokonce subslova, a výběr strategie tokenizace závisí na případu použití.
U tradičního NLP byla tokenizace na úrovni slov. Například věta "How am I doing today?" by byla přeložena do 5 slov: ["how", "am", "I", "doing", "today?"]
Nejběžnější strategie tokenizace pro LLM:
- BPE (Byte Pair Encoding): Tato metoda tokenizace rozděluje text na subslova. Velmi běžně používaná v rodině modelů GPT.
- Wordpiece: Vyvinutý společností Google a používaný v původní implementaci BERT.
- Unigram: Používaný v algoritmu SentencePiece od Google.
Transformers
Transformery jsou typ architektury neuronové sítě široce používané v zpracování přirozeného jazyka a jazykovém modelování. Transformery aplikují mechanismus pozornosti (attention), který umožňuje modelu současně zvažovat důležitost všech slov ve větě. To vede k modelům, které lépe zachycují kontext a dlouhodobé závislosti v jazyce.
Architektura transformeru se skládá z enkodéru a dekodéru. Enkodér čte vstupní sekvenci a vytváří její reprezentaci. Dekodér pak používá tuto reprezentaci ke generování výstupní sekvence.
Typy implementací:
- Pouze enkodér (např. BERT)
- Pouze dekodér (např. GPT-3, Anthropic)
- Enkodér i dekodér (např. T5)
Modely jako BERT, GPT-3 a T5 jsou všechny založeny na architektuře transformer.
Transfer Learning (Přenosové učení)
V tradičním strojovém učení je cílem natrénovat model k provedení určitého úkolu jako klasifikace nebo regrese.
S transfer learningem vezmete předtrénovaný model a použijete ho (adaptujete) na nový úkol. Protože předtrénování modelu je poměrně nákladné, myšlenka transfer learningu je následující: můžeme znovu použít část znalostí naučených během procesu předtrénování a aplikovat ji na nový úkol, který z těchto znalostí těží?
Transfer learning není nová myšlenka, jen se stal běžnějším s moderními neuronovými sítěmi, které jsou velké a nákladné na předtrénování.
Vector Store / Vector Database (Vektorové úložiště / databáze)
Vektorové úložiště je typ databáze, která ukládá vysokodimenzionální vektorová data a poskytuje dotazovací schopnosti na těchto vektorech jako similarity search, kde cílem je najít nejpodobnější dokumenty nebo položky k danému dotazu.
Nejběžnější typy vektorových úložišť: FAISS, Annoy, NMSLib
Vektorová databáze je specializovanější typ vektorového úložiště optimalizovaný pro efektivní správu velkých datasetů vektorů. Vektorové databáze typicky nabízejí pokročilé funkce jako podpora více typů vektorů, efektivní indexování a vysoká škálovatelnost.
Dostupné vektorové databáze: Qdrant, Weaviate, Pinecone, Milvus, Chroma
Při budování GenAI aplikací od nuly vývojáři často kombinují různé komponenty jako LangChain nebo LlamaIndex, poskytovatele embeddingů jako OpenAI nebo Cohere, sumarizační nebo Chat LLM jako OpenAI, a vektorovou databázi.
![]()






