Głównym źródłem informacji o wielu terminach związanych z uczeniem maszynowym jest słowniczek uczenia maszynowego. Zamiast powielać ich pracę, uwzględniamy tylko często cytowane słowa i terminy, których nie ma w słowniku ML.
Plan systemu AI
Podczas tworzenia nowych funkcji lub usług AI zdefiniuj plan systemu AI, mapując możliwości AI na sposób, w jaki zbudujesz rozwiązanie. Należy zdefiniować:
- Dlaczego tworzysz? Jakie są dostępne przypadki użycia AI i jaką wartość przynoszą one użytkownikom?
- Jak będzie działać Twoja aplikacja?
- Jak zadbać o odpowiedzialne opracowanie każdej części systemu?
Przeczytaj o tym w wprowadzeniu do AI w internecie.
Architektura złożonej AI
Złożone architektury AI, czyli kombinacje co najmniej 1 modelu i innych komponentów, takich jak bazy danych, interfejsy API i mechanizmy zabezpieczające, które współpracują ze sobą, aby zapewnić niezawodne zachowanie uwzględniające kontekst.
Inżynieria kontekstu
Inżynieria kontekstu to proces dynamicznego wybierania najbardziej odpowiednich informacji (tokenów) dla danego żądania, aby zmaksymalizować prawdopodobieństwo uzyskania wartościowego wyniku.
Dryf danych
Dryf danych występuje, gdy dane treningowe nie są już reprezentatywne dla rzeczywistości. Zachowania użytkowników, gromadzenie danych i środowisko danych mogą się w każdej chwili zmienić, co może spowodować spadek skuteczności modelu.
Oprogramowanie deterministyczne
Oprogramowanie deterministyczne zawsze wykonuje tę samą serię czynności, aby uzyskać identyczne dane wyjściowe. Są to najbardziej niezawodne typy oprogramowania, ponieważ działają w przewidywalny i wydajny sposób.
Sztuczna inteligencja nie jest deterministyczna. Ścieżki i wyniki mogą się znacznie różnić, nawet w przypadku identycznych promptów.
Programowanie oparte na ocenie (EDD)
Opracowywanie oparte na ocenie (EDD) to platforma, która zapewnia powtarzalny i testowalny proces ulepszania wyników w małych i pewnych krokach, wykrywania regresji oraz dostosowywania z czasem zachowania modelu do oczekiwań użytkowników i produktu.
Możesz o tym myśleć jak o programowaniu sterowanym testami (TDD), dostosowanym do niepewności związanej z AI. W przeciwieństwie do deterministycznych testów jednostkowych oceny AI nie mogą być zakodowane na stałe, ponieważ dane wyjściowe, zarówno prawidłowe, jak i nieprawidłowe, mogą przyjmować wiele różnych form, których nie można przewidzieć.
Generatywna AI
Generatywna AI to system uczenia maszynowego, który może tworzyć treści. Oznacza to, że model może pisać tekst, generować obrazy, tworzyć kod, a nawet projektować pełne interfejsy użytkownika.
Zarządzanie
Obejmujemy 3 wymiary nadzoru nad AI:
- Prywatność: odpowiedzialnie zarządzaj danymi, wyjaśniaj, jakie informacje są zbierane, i minimalizuj ilość danych opuszczających przeglądarkę.
- Sprawiedliwość: sprawdzaj modele pod kątem zachowań dyskryminacyjnych (obciążenia) i twórz pętle, które umożliwiają użytkownikom zgłaszanie problemów.
- Zaufanie i przejrzystość: zaprojektuj system tak, aby był przejrzysty i wzbudzał zaufanie, dzięki czemu użytkownicy będą mogli z niego korzystać pomimo niepewności i potencjalnych błędów.
Ostatni wymiar, bezpieczeństwo, jest ważnym aspektem zarządzania AI. W przyszłych modułach zamierzamy podać więcej informacji o bezpieczeństwie.
W międzyczasie zachęcamy do zapoznania się z artykułem Secure AI Framework od Google (SAIF) i blogiem Google Security.
Model
Modele są najważniejszym elementem systemu AI. Model to zbiór parametrów i struktury, które umożliwiają systemowi tworzenie prognoz. Sposób działania modelu może się różnić w zależności od stylu trenowania (z nadzorem lub bez nadzoru) i przeznaczenia modelu (predykcyjnego lub generatywnego).
Karta modelu
Karty modeli to uporządkowane omówienia sposobu projektowania i oceny modelu. Są one kluczowymi elementami wspierającymi podejście Google do odpowiedzialnego korzystania z AI.
Wagi modelu
Wagi modelu to wartości liczbowe, które określają znaczenie określonych informacji. Te wartości są stale aktualizowane podczas trenowania modelu, dopóki nie zostanie ustawiona idealna waga. Możesz modyfikować wagi otwartych modeli, takich jak Gemma.
Możliwości wykorzystania AI
Istnieje kilka kategorii, w których można umieścić rozwiązania oparte na AI:
- Statystyki: ułatwiają podejmowanie decyzji.
- Wygoda: usuwanie przeszkód.
- Automatyzacja: zastąp powtarzalną pracę.
- Wspomaganie: pomoc użytkownikom w wykonywaniu złożonych lub kreatywnych zadań.
- Personalizacja: dostosowywanie produktu do potrzeb i preferencji użytkownika.
Szczegółowe informacje znajdziesz w sekcji Przypadki użycia.
Platformy
AI po stronie klienta działa bezpośrednio w przeglądarce. Oznacza to, że dane mogą pozostać prywatne na urządzeniu użytkownika i nie występuje opóźnienie sieci. Aby jednak działać prawidłowo, AI po stronie klienta potrzebuje bardzo konkretnych i dobrze zdefiniowanych przypadków użycia.
AI po stronie serwera obejmuje modele hostowane i wykonujące wnioskowanie w chmurze. Jest to bardzo wydajne i skalowalne rozwiązanie, ale może być droższe i wymaga połączenia z siecią.
Predykcyjna AI
Predykcyjna (lub analityczna) AI to zbiór algorytmów, które pomagają zrozumieć istniejące dane i przewidzieć, co prawdopodobnie wydarzy się w przyszłości. Na podstawie wzorców historycznych predykcyjne modele AI uczą się prognozować wyniki, dostarczać statystyki i ułatwiać podejmowanie trafniejszych decyzji.
Tworzenie promptów
Inżynieria promptów to proces pisania i przepisywania promptów w celu uzyskania wyników zgodnych z oczekiwaniami użytkowników. Dobrze napisany prompt:
- Określa, jak model LLM powinien tworzyć odpowiedź.
- Składa się z wielu komponentów, które można wersjonować, testować i ulepszać z czasem.
- Może pełnić rolę wspólnego artefaktu do współpracy między zespołami.
W inżynierii promptów możesz stosować różne techniki, o których przeczytasz w module Inżynieria promptów.
Typy promptów
Typ promptu to odbiorcy promptu. Więcej informacji na ten temat znajdziesz w module dotyczącym inżynierii promptów.
Prompt systemowy
Prompt systemowy jest dostarczany przez deweloperów aplikacji i określa ogólne zachowanie modelu. Może określać rolę modelu („Jesteś asystentem pisania”), oczekiwany ton, format danych wyjściowych (np. ścisły schemat JSON) i wszelkie ograniczenia globalne. Ten prompt pozostaje niezmienny w przypadku wszystkich żądań.
Prompt użytkownika
Prompt użytkownika zawiera bezpośrednie żądanie, które prowadzi do uzyskania wyniku. Użytkownik podaje zmienne wejściowe (np. zaznaczenie tekstu lub oczekiwany styl) i prosi o wykonanie określonego zadania. Możesz na przykład wpisać „Wygeneruj 3 tytuły tego posta”, „Dokończ ten akapit” lub „Nadaj temu tekstowi bardziej formalny charakter”.