Tworzenie aplikacji AI z LlamaIndex. Praktyczny przewodnik po RAG i LLM - Helion

ebook
Autor: Andrei GheorghiuTytuł oryginału: Building Data-Driven Applications with LlamaIndex: A practical guide to retrieval-augmented generation (RAG) to enhance LLM applications
Tłumaczenie: Anna Mizerska
ISBN: 978-83-289-2306-5
stron: 360, Format: ebook
Księgarnia: Helion
Cena książki: 89,00 zł
Książka będzie dostępna od kwietnia 2025
Tagi: Sztuczna inteligencja
Chocia
Zobacz także:
- React z AI. Kurs video. Programowanie wspomagane sztuczn 119,00 zł, (47,60 zł -60%)
- Uczenie g 129,00 zł, (51,60 zł -60%)
- Prompt engineering. Kurs video. Precyzyjne tworzenie zapyta 169,00 zł, (67,60 zł -60%)
- Sztuczna inteligencja w Azure. Kurs video. Uczenie maszynowe i Azure Machine Learning Service 198,98 zł, (79,59 zł -60%)
- Web scraping w Data Science. Kurs video. Uczenie maszynowe i architektura splotowych sieci neuronowych 179,00 zł, (71,60 zł -60%)
Spis treści
Tworzenie aplikacji AI z LlamaIndex. Praktyczny przewodnik po RAG i LLM eBook -- spis treści
O autorze
O korektorach merytorycznych
Wstęp
Część 1. Wprowadzenie do generatywnej sztucznej inteligencji i frameworka LlamaIndex
- Rozdział 1. Duże modele językowe
- Wprowadzenie do generatywnej sztucznej inteligencji i dużych modeli językowych
- Czym jest generatywna sztuczna inteligencja?
- Czym jest duży model językowy?
- Rola modeli LLM we współczesnej technologii
- Wyzwania związane z modelami LLM
- Wzbogacanie modeli LLM za pomocą techniki RAG
- Podsumowanie
- Wprowadzenie do generatywnej sztucznej inteligencji i dużych modeli językowych
- Rozdział 2. LlamaIndex - ukryty skarb. Wprowadzenie do ekosystemu LlamaIndex
- Wymagania techniczne
- Optymalizacja modeli językowych - dostrajanie, RAG i LlamaIndex
- Czy RAG jest jedynym rozwiązaniem?
- Co robi LlamaIndex?
- Zalety stopniowego ujawniania złożoności
- Ważny aspekt do uwzględnienia
- System PITS - praktyczny projekt z użyciem LlamaIndexu
- Sposób działania PITS
- Przygotowanie środowiska programistycznego
- Instalacja Pythona
- Instalacja Gita
- Instalacja LlamaIndexu
- Rejestracja klucza API OpenAI
- Odkrywanie Streamlita - idealnego narzędzia do szybkiego tworzenia i wdrażania
- Instalacja Streamlita
- Ostatnie przygotowania
- Ostatnia kontrola
- Struktura bazy kodu w LlamaIndexie
- Podsumowanie
Część 2. Rozpoczęcie pracy nad pierwszym projektem z użyciem frameworka LlamaIndex
- Rozdział 3. Rozpoczęcie pracy z LlamaIndexem
- Wymagania techniczne
- Podstawowe elementy LlamaIndexu: dokumenty, węzły i indeksy
- Dokumenty
- Węzły
- Ręczne tworzenie obiektu węzła
- Automatyczne wyodrębnianie węzłów z dokumentów za pomocą separatorów
- Węzły nie lubią być same - pragną relacji
- Dlaczego relacje są ważne?
- Indeksy
- Czy to już wszystko?
- Jak to właściwie działa?
- Krótki przegląd kluczowych koncepcji
- Budowanie pierwszej interaktywnej aplikacji z użyciem dużego modelu językowego
- Wykorzystanie funkcji rejestru w LlamaIndexie do zrozumienia logiki i debugowania aplikacji
- Dostosowywanie modelu LLM używanego przez LlamaIndex
- Łatwe jak 1, 2, 3
- Parametr temperatury
- Jak używać Settings do dostosowywania modeli?
- Rozpoczęcie pracy nad projektem PITS - ćwiczenie praktyczne
- Kod źródłowy
- Podsumowanie
- Rozdział 4. Wprowadzanie danych do przepływu pracy RAG
- Wymagania techniczne
- Wprowadzanie danych za pomocą LlamaHuba
- Wprowadzenie do LlamaHuba
- Stosowanie ładowarek danych z LlamaHuba do wprowadzania treści
- Wprowadzanie danych ze stron internetowych
- Wprowadzanie danych z bazy danych
- Masowe wprowadzanie danych ze źródeł z wieloma formatami plików
- Podział dokumentów na węzły
- Proste narzędzia do dzielenia tekstu
- Stosowanie bardziej zaawansowanych parserów węzłów
- Stosowanie parserów relacyjnych
- Parsery węzłów i dzielniki tekstu to to samo?
- Parametry chunk_size i chunk_overlap
- Uwzględnianie relacji za pomocą parametru include_prev_next_rel
- Praktyczne sposoby wykorzystania modeli tworzenia węzłów
- Praca z metadanymi w celu poprawy kontekstu
- SummaryExtractor
- QuestionsAnsweredExtractor
- TitleExtractor
- EntityExtractor
- KeywordExtractor
- PydanticProgramExtractor
- MarvinMetadataExtractor
- Definiowanie własnego ekstraktora
- Czy posiadanie wszystkich metadanych jest zawsze potrzebne?
- Szacowanie kosztów użycia ekstraktorów metadanych
- Najlepsze praktyki minimalizowania kosztów
- Oszacuj maksymalne koszty przed uruchomieniem rzeczywistych ekstraktorów
- Ochrona prywatności z ekstraktorami metadanych i nie tylko
- Usuwanie danych osobowych i innych wrażliwych informacji
- Stosowanie przepływu wprowadzania danych do poprawy wydajności
- Obsługa dokumentów zawierających mieszankę tekstu i danych tabelarycznych
- Praktyka: wprowadzanie materiałów szkoleniowych do aplikacji PITS
- Podsumowanie
- Rozdział 5. Indeksowanie z LlamaIndexem
- Wymagania techniczne
- Indeksowanie danych - spojrzenie z lotu ptaka
- Wspólne cechy wszystkich typów indeksów
- VectorStoreIndex
- Prosty przykład użycia indeksu VectorStoreIndex
- Osadzenia
- Wyszukiwanie podobieństwa
- Jak LlamaIndex generuje osadzenia?
- Jak wybrać model osadzający?
- Przechowywanie i ponowne używanie indeksów
- StorageContext
- Różnica między magazynami wektorów a wektorowymi bazami danych
- Inne typy indeksów w LlamaIndexie
- SummaryIndex
- DocumentSummaryIndex
- KeywordTableIndex
- TreeIndex
- KnowledgeGraphIndex
- Budowanie indeksów na bazie innych indeksów za pomocą grafu ComposableGraph
- Jak używać grafu ComposableGraph?
- Więcej szczegółów na temat grafu ComposableGraph
- Szacowanie potencjalnych kosztów budowy i przeszukiwania indeksów
- Indeksowanie materiałów do nauki PITS - praktyka
- Podsumowanie
Część 3. Przeszukiwanie i praca ze zindeksowanymi danymi
- Rozdział 6. Zapytania do własnych danych, część 1. - wyszukiwanie kontekstu
- Wymagania techniczne
- Mechanika zapytań - przegląd
- Podstawowe mechanizmy wyszukiwania
- Mechanizmy wyszukiwania dla indeksu VectorStoreIndex
- Mechanizmy wyszukiwania dla indeksu SummaryIndex
- Mechanizmy wyszukiwania dla indeksu DocumentSummaryIndex
- Mechanizmy wyszukiwania dla indeksu TreeIndex
- Mechanizmy wyszukiwania dla indeksu KnowledgeGraphIndex
- Wspólne cechy mechanizmów wyszukiwania
- Wydajne wykorzystanie mechanizmów wyszukiwania - operacja asynchroniczna
- Budowanie bardziej zaawansowanych mechanizmów wyszukiwania
- Prosta (naiwna) metoda wyszukiwania
- Implementacja filtrów metadanych
- Użycie selektorów do bardziej zaawansowanej logiki decyzyjnej
- Narzędzia
- Przekształcanie i przeformułowywanie zapytań
- Tworzenie trafniejszych podzapytań
- Gęste i rzadkie wyszukiwanie
- Wyszukiwanie gęste
- Wyszukiwanie rzadkie
- Implementacja wyszukiwania rzadkiego w LlamaIndexie
- Inne zaawansowane metody wyszukiwania
- Podsumowanie
- Rozdział 7. Zapytania do własnych danych, część 2. - postprocessing i synteza odpowiedzi
- Wymagania techniczne
- Ponowne sortowanie, przekształcanie i filtrowanie węzłów za pomocą postprocesorów
- Sposoby filtrowania, przekształcania i ponownego sortowania węzłów przez postprocesory
- SimilarityPostprocessor
- KeywordNodePostprocessor
- PrevNextNodePostprocessor
- LongContextReorder
- PIINodePostprocessor i NERPIINodePostprocessor
- MetadataReplacementPostProcessor
- SentenceEmbeddingOptimizer
- Postprocesory oparte na czasie
- Postprocesory ponownie sortujące
- Uwagi końcowe dotyczące postprocesorów węzłów
- Syntezatory odpowiedzi
- Implementacja technik parsowania wyników
- Wydobywanie ustrukturyzowanych wyników za pomocą parserów
- Wydobywanie ustrukturyzowanych wyników za pomocą programów Pydantic
- Budowanie i stosowanie silników zapytań
- Metody budowania silników zapytań
- Zaawansowane zastosowania interfejsu QueryEngine
- Praktyka - budowanie quizów w aplikacji PITS
- Podsumowanie
- Rozdział 8. Budowanie czatbotów i agentów za pomocą LlamaIndexu
- Wymagania techniczne
- Czatboty i agenty
- Silnik czatu
- Tryby czatu
- Implementacja strategii agentowych w aplikacjach
- Tworzenie narzędzi i klas ToolSpec dla agentów
- Pętle rozumowania
- OpenAIAgent
- ReActAgent
- Jak wchodzimy w interakcję z agentami?
- Udoskonalanie agentów za pomocą narzędzi użytkowych
- Wykorzystanie agenta LLMCompiler do bardziej zaawansowanych scenariuszy
- Wykorzystanie niskopoziomowego API Agent Protocol
- Praktyka - implementacja śledzenia przebiegu rozmów w aplikacji PITS
- Podsumowanie
Część 4. Dostosowywanie, inżynieria promptów i końcowe uwagi
- Rozdział 9. Dostosowywanie i wdrażanie projektu stworzonego za pomocą LlamaIndexu
- Wymagania techniczne
- Dostosowywanie komponentów RAG
- Jak LLaMA i LLaMA 2 zmieniły krajobraz modeli otwartoźródłowych?
- Uruchamianie lokalnego modelu LLM za pomocą LM Studio
- Routing między modelami LLM za pomocą takich usług jak Neutrino lub OpenRouter
- A co z dostosowywaniem modeli osadzania?
- Wygodne i gotowe do użycia Llama Packs
- Interfejs wiersza poleceń LlamaIndexu
- Użycie zaawansowanych technik śledzenia i oceny
- Śledzenie przepływów RAG za pomocą Phoenixa
- Ocena systemu RAG
- Wprowadzenie do wdrażania z użyciem frameworka Streamlit
- Praktyka - przewodnik krok po kroku dotyczący wdrażania
- Wdrażanie projektu PITS na Streamlit Community Cloud
- Podsumowanie
- Rozdział 10. Wytyczne i najlepsze praktyki inżynierii promptów
- Wymagania techniczne
- Dlaczego prompty są Twoją tajną bronią?
- Wykorzystanie promptów przez LlamaIndex
- Dostosowywanie domyślnych promptów
- Wykorzystanie zaawansowanych technik tworzenia promptów w LlamaIndexie
- Złote zasady inżynierii promptów
- Dokładność i jasność wyrażenia
- Ukierunkowanie
- Jakość kontekstu
- Ilość kontekstu
- Wymagany format wyjściowy
- Koszt wnioskowania
- Ogólne opóźnienie systemu
- Wybór odpowiedniego modelu LLM do zadania
- Powszechne metody tworzenia skutecznych promptów
- Podsumowanie
- Rozdział 11. Zakończenie i dodatkowe źródła wiedzy
- Inne projekty i dalsza nauka
- Zbiór przykładów na stronie LlamaIndexu
- Przyszłość - nagrody Replita
- W grupie siła - społeczność LlamaIndexu
- Kluczowe wnioski i słowo końcowe
- O przyszłości RAG w szerszym kontekście generatywnej sztucznej inteligencji
- Krótka filozoficzna myśl
- Podsumowanie
- Inne projekty i dalsza nauka