Kontakt z nami

Szybka inżynieria

Najnowsze nowoczesne postępy w szybkiej inżynierii: kompleksowy przewodnik

mm

Opublikowany

 on

Szybka inżynieria, sztuka i nauka tworzenia podpowiedzi, które wywołują pożądane reakcje ze strony LLM, stała się kluczowym obszarem badań i rozwoju.

Od zwiększania możliwości rozumowania po umożliwianie bezproblemowej integracji z zewnętrznymi narzędziami i programami, najnowsze osiągnięcia w dziedzinie szybkiej inżynierii otwierają nowe granice sztucznej inteligencji. W tym obszernym blogu technicznym zagłębimy się w najnowsze, najnowocześniejsze techniki i strategie, które kształtują przyszłość szybkiej inżynierii.

Szybka inżynieria

Szybka inżynieria

Zaawansowane strategie podpowiedzi umożliwiające rozwiązywanie złożonych problemów

Kompletujemy wszystkie dokumenty (wymagana jest kopia paszportu i XNUMX zdjęcia) potrzebne do Monit CoT okazało się skuteczne w przypadku wielu zadań związanych z rozumowaniem, badacze zbadali bardziej zaawansowane strategie podpowiedzi, aby uporać się z jeszcze bardziej złożonymi problemami. Jednym z takich podejść jest metoda podpowiedzi od najmniejszego do największego, która dzieli złożony problem na mniejsze, łatwiejsze w zarządzaniu podproblemy, które są rozwiązywane niezależnie, a następnie łączone w celu osiągnięcia ostatecznego rozwiązania.

Inną innowacyjną techniką jest podpowiadanie za pomocą drzewa myśli (ToT), które pozwala LLM generować równolegle wiele linii rozumowania lub „myśli”, oceniać własny postęp w kierunku rozwiązania i w razie potrzeby wycofywać się lub badać alternatywne ścieżki. Podejście to wykorzystuje algorytmy wyszukiwania, takie jak przeszukiwanie wszerz lub w głąb, umożliwiając LLM wykorzystywanie funkcji wyprzedzania i wycofywania się podczas procesu rozwiązywania problemów.

Integracja LLM z zewnętrznymi narzędziami i programami

Chociaż LLM są niezwykle potężne, mają nieodłączne ograniczenia, takie jak niemożność dostępu do aktualnych informacji lub wykonywania precyzyjnego rozumowania matematycznego. Aby zaradzić tym niedogodnościom, badacze opracowali techniki umożliwiające programom LLM bezproblemową integrację z zewnętrznymi narzędziami i programami.

Godnym uwagi przykładem jest narzędzie Toolformer, które uczy LLM identyfikowania scenariuszy wymagających użycia narzędzi zewnętrznych, określania, którego narzędzia użyć, dostarczania odpowiednich danych wejściowych i włączania wyników narzędzia do ostatecznej reakcji. Podejście to polega na skonstruowaniu syntetycznego zbioru danych szkoleniowych, który demonstruje prawidłowe użycie różnych interfejsów API zamiany tekstu na tekst.

Inna innowacyjna platforma, Chameleon, wykorzystuje podejście „plug and play”, umożliwiając centralnemu kontrolerowi opartemu na LLM generowanie programów w języku naturalnym, które tworzą i wykonują szeroką gamę narzędzi, w tym LLM, modele wizji, wyszukiwarki internetowe i Funkcje Pythona. To modułowe podejście umożliwia Chameleonowi radzenie sobie ze złożonymi, multimodalnymi zadaniami rozumowania poprzez wykorzystanie mocnych stron różnych narzędzi i modeli.

Podstawowe strategie podpowiedzi

Podpowiadanie strzału zerowego

Podpowiadanie zerowe polega na opisaniu zadania w podpowiedzi i poproszeniu modelu o rozwiązanie go bez żadnych przykładów. Na przykład, aby przetłumaczyć „ser” na francuski, monit zerowy może wyglądać następująco:

Translate the following English word to French: cheese.

Podejście to jest proste, ale może być ograniczone przez niejednoznaczność opisów zadań.

Podpowiedź kilku strzałów

Podpowiadanie o kilku strzałach poprawia się w przypadku strzału zerowego poprzez dołączenie kilku przykładów zadania. Na przykład:

Translate the following English words to French:
1. apple => pomme
2. house => maison
3. cheese => fromage

Metoda ta zmniejsza niejednoznaczność i zapewnia jaśniejsze wskazówki dla modelu, wykorzystując możliwości uczenia się w kontekście LLM.

Podpowiadanie instrukcji

Podpowiadanie instrukcji wyraźnie opisuje pożądany wynik, co jest szczególnie skuteczne w przypadku modeli przeszkolonych w zakresie wykonywania instrukcji. Na przykład:

Translate the word "cheese" to French. The correct translation is "fromage."

Modele takie jak GPT-4 zostały specjalnie dostrojone, aby dokładnie przestrzegać takich instrukcji.

Zaawansowane techniki podpowiedzi

Zwiększanie zdolności rozumowania za pomocą podpowiedzi w postaci łańcucha myśli

Jednym z najważniejszych przełomów w inżynierii szybkiej był rozwój Podpowiadanie łańcucha myśli (CoT).. Technika ta ma na celu wydobycie i ulepszenie zdolności rozumowania osób LLM poprzez zachęcanie ich do generowania krok po kroku procesu myślowego lub uzasadnienia przed udzieleniem ostatecznej odpowiedzi.

Po lewej: Tradycyjne metody monitowania LLM opierają się na ogólnych danych wejściowych (0-shot CoT) lub wymagają oznaczonych przykładów (coT z kilkoma strzałami). Po prawej: nowatorskie podejście skłania władze LLM do samodzielnego tworzenia odpowiednich przykładów przed rozwiązaniem problemu, eliminując potrzebę etykietowania i dostosowując przykłady do każdego unikalnego problemu

Po lewej: Tradycyjne metody monitowania LLM opierają się na ogólnych danych wejściowych (0-shot CoT) lub wymagają oznaczonych przykładów (coT z kilkoma strzałami). Po prawej: nowatorskie podejście skłania władze LLM do samodzielnego tworzenia odpowiednich przykładów przed rozwiązaniem problemu, eliminując potrzebę etykietowania i dostosowując przykłady do każdego unikalnego problemu

Podpowiadanie CoT polega na przedstawianiu LLM przykładów obejmujących nie tylko dane wejściowe i wyjściowe, ale także pośrednie etapy rozumowania lub „łańcuch myślowy” prowadzący do rozwiązania. Ucząc się na tych przykładach, LLM może następnie wygenerować własny łańcuch myślowy w przypadku pojawienia się nowych problemów, poprawiając swoją zdolność do radzenia sobie ze złożonymi zadaniami rozumowania.

Przykład:

Wejście: Natalie ma 3 jabłka i chce podzielić się nimi po równo z dwójką swoich przyjaciół. Ile jabłek dostanie każda osoba? Łańcuch myślowy: OK, rozbijmy to krok po kroku:

  1. Natalia ma 3 jabłka
  2. Chce dzielić się nimi po równo z 2 przyjaciółmi
  3. Więc w sumie są 3 osoby (Natalie i jej 2 przyjaciół)
  4. Aby po równo podzielić jabłka, dzielimy całkowitą liczbę jabłek (3) przez liczbę osób (3)
  5. 3 podzielone przez 3 to 1
  6. Dlatego każda osoba otrzyma 1 jabłko. Wynik: Każda osoba otrzyma 1 jabłko.

Poprzez wyraźne generowanie procesu rozumowania, LLM, takie jak GPT-3 i Codex, wykazały znaczną poprawę w zadaniach arytmetycznych, zdroworozsądkowych i symbolicznych.

samospójność

Wzajemna spójność poprawia niezawodność podpowiedzi CoT poprzez generowanie wielu łańcuchów myślowych i podejmowanie większości głosów w sprawie ostatecznej odpowiedzi. Ta metoda łagodzi wpływ dowolnej pojedynczej nieprawidłowej ścieżki rozumowania.

Najmniej do najbardziej zachęcające

Podpowiadanie od najmniejszego do największego dzieli złożone problemy na prostsze podproblemy, rozwiązując każdy z nich sekwencyjnie i wykorzystując kontekst poprzednich rozwiązań do informowania o kolejnych krokach. Takie podejście jest korzystne w przypadku zadań rozumowania wieloetapowego.

Najnowsze postępy w inżynierii szybkiej

Szybka inżynieria szybko się rozwija i pojawiło się kilka innowacyjnych technik poprawiających wydajność dużych modeli językowych (LLM). Przyjrzyjmy się szczegółowo niektórym z tych nowatorskich metod:

Auto-CoT (automatyczne podpowiadanie na podstawie łańcucha myśli)

Co to jest: Auto-CoT to metoda automatyzująca generowanie łańcuchów rozumowania dla LLM, eliminująca potrzebę ręcznego tworzenia przykładów. Technika ta wykorzystuje podpowiedzi typu zero-shot Chain-of-Thought (CoT), podczas których model jest kierowany do myślenia krok po kroku w celu wygenerowania łańcuchów rozumowania.

Jak to działa:

  1. Podpowiedź Zero-Shot CoT: Model otrzymuje prosty monit, taki jak „Pomyślmy krok po kroku”, aby zachęcić do szczegółowego rozumowania.
  2. Różnorodność demonstracji: Auto-CoT wybiera różnorodne pytania i generuje dla nich łańcuchy rozumowania, zapewniając różnorodność typów problemów i wzorców rozumowania.

Zalety:

  • Automatyka: Zmniejsza wysiłek ręczny wymagany do tworzenia demonstracji rozumowania.
  • Wydajność: W przypadku różnych zadań wnioskowania porównawczego funkcja Auto-CoT dorównuje lub przekracza wydajność ręcznego monitowania CoT.

Podpowiadanie oparte na złożoności

Co to jest: Ta technika wybiera przykłady o największej złożoności (tj. zawierające najwięcej etapów rozumowania), które należy uwzględnić w podpowiedzi. Ma na celu poprawę wydajności modelu w przypadku zadań wymagających wielu etapów rozumowania.

Jak to działa:

  1. Przykładowy wybór: Podpowiedzi są wybierane na podstawie liczby kroków rozumowania, jakie zawierają.
  2. Spójność oparta na złożoności: Podczas dekodowania próbkowanych jest wiele łańcuchów rozumowania, a większość głosów pochodzi z najbardziej złożonych łańcuchów.

Zalety:

  • Lepsza wydajność: Znacznie większa dokładność w zadaniach wnioskowania wieloetapowego.
  • Krzepkość: Efektywne nawet przy różnych szybkich dystrybucjach i zaszumionych danych.

Podpowiedzi progresywne (PHP)

Co to jest: PHP iteracyjnie udoskonala odpowiedzi modelu, wykorzystując wcześniej wygenerowane uzasadnienia jako wskazówki. Ta metoda wykorzystuje poprzednie odpowiedzi modelu, aby poprowadzić go do prawidłowej odpowiedzi poprzez wiele iteracji.

Jak to działa:

  1. Początkowa odpowiedź: Model generuje odpowiedź bazową za pomocą standardowego podpowiedzi.
  2. Wskazówki i udoskonalenia: Ta podstawowa odpowiedź jest następnie używana jako wskazówka w kolejnych monitach w celu doprecyzowania odpowiedzi.
  3. Proces iteracyjny: Proces ten trwa do momentu ustabilizowania się odpowiedzi w kolejnych iteracjach.

Zalety:

  • Dokładność: Znacząca poprawa dokładności rozumowania.
  • Wydajność: Zmniejsza liczbę potrzebnych ścieżek próbkowania, zwiększając wydajność obliczeniową.

Zdekomponowane monity (DecomP)

Co to jest: DecomP dzieli złożone zadania na prostsze podzadania, z których każde jest obsługiwane przez określony monit lub model. To modułowe podejście pozwala na bardziej efektywną obsługę skomplikowanych problemów.

Jak to działa:

  1. Rozkład zadań: Główny problem jest podzielony na prostsze podzadania.
  2. Osoby obsługujące podzadania: Każde podzadanie jest zarządzane przez dedykowany model lub zachętę.
  3. Integracja modułowa: Te procedury obsługi można w razie potrzeby optymalizować, wymieniać lub łączyć w celu rozwiązania złożonego zadania.

Zalety:

  • Elastyczność: Łatwe debugowanie i ulepszanie określonych podzadań.
  • Skalowalność: Skutecznie radzi sobie z zadaniami o długich kontekstach i złożonych podzadaniach.

Podpowiadanie z hipotez na teorie (HtT).

Co to jest: HtT wykorzystuje proces odkryć naukowych, w którym model generuje i weryfikuje hipotezy w celu rozwiązania złożonych problemów. Metoda ta polega na utworzeniu biblioteki reguł ze zweryfikowanych hipotez, którą model wykorzystuje do wnioskowania.

Jak to działa:

  1. Etap indukcyjny: Model generuje potencjalne reguły i weryfikuje je na przykładach szkoleniowych.
  2. Tworzenie biblioteki reguł: Zweryfikowane reguły są gromadzone w celu utworzenia biblioteki reguł.
  3. Etap odliczenia: Model stosuje te reguły do ​​nowych problemów, wykorzystując bibliotekę reguł do kierowania swoim rozumowaniem.

Zalety:

  • Dokładność: Zmniejsza prawdopodobieństwo błędów, opierając się na zweryfikowanym zestawie reguł.
  • Możliwość przenoszenia: Wyuczone reguły można przenieść na różne modele i formy problemów.

Techniki podpowiedzi wspomagane narzędziami

Kształtownik narzędzi

Kształtownik narzędzi integruje LLM z narzędziami zewnętrznymi za pośrednictwem interfejsów API zamiany tekstu na tekst, umożliwiając modelowi korzystanie z tych narzędzi w celu rozwiązywania problemów, których w przeciwnym razie nie byłby w stanie rozwiązać. Na przykład LLM może wywołać interfejs API kalkulatora w celu wykonywania operacji arytmetycznych.

Kameleon

Kameleon wykorzystuje centralny kontroler oparty na LLM do generowania programu składającego się z kilku narzędzi do rozwiązywania złożonych zadań rozumowania. Podejście to wykorzystuje szeroki zestaw narzędzi, w tym modele wizji i wyszukiwarki internetowe, w celu zwiększenia możliwości rozwiązywania problemów.

Narzędzia GPT4

Narzędzia GPT4 dostraja programy LLM typu open source tak, aby korzystały z narzędzi multimodalnych w ramach samodzielnego nauczania, pokazując, że nawet niezastrzeżone modele mogą skutecznie wykorzystywać narzędzia zewnętrzne w celu poprawy wydajności.

Goryl i przytulanieGPT

Zarówno Goryl, jak i PrzytulanieGPT integruj LLM ze specjalistycznymi modelami głębokiego uczenia się dostępnymi online. Systemy te wykorzystują, odpowiednio, proces dostrajania uwzględniający wyszukiwanie oraz podejście do planowania i koordynacji, aby rozwiązywać złożone zadania obejmujące wiele modeli.

Modele językowe wspomagane programowo (PAL) i programy myślowe (PoT)

Oprócz integracji z narzędziami zewnętrznymi badacze zbadali sposoby zwiększenia możliwości rozwiązywania problemów uczniów LLM poprzez połączenie języka naturalnego z konstrukcjami programistycznymi. Modele językowe wspomagane programowo (PAL) i programy myślowe (PoT) to dwa takie podejścia, które wykorzystują kod do usprawnienia procesu rozumowania LLM.

PAL poproś LLM o wygenerowanie uzasadnienia, które przeplata język naturalny z kodem (np. Python), które można następnie wykonać w celu uzyskania ostatecznego rozwiązania. Podejście to rozwiązuje częsty przypadek niepowodzenia, w którym LLM generują prawidłowe rozumowanie, ale dają niepoprawną ostateczną odpowiedź.

Podobnie PoT wykorzystują symboliczną bibliotekę matematyczną, taką jak SymPy, umożliwiając LLM definiowanie symboli matematycznych i wyrażeń, które można łączyć i oceniać za pomocą funkcji rozwiązywania SymPy. Delegując złożone obliczenia interpretatorowi kodu, techniki te oddzielają rozumowanie od obliczeń, umożliwiając osobom LLM skuteczne rozwiązywanie bardziej skomplikowanych problemów.

Zrozumienie i wykorzystanie okien kontekstowych

Wydajność LLM w dużej mierze zależy od ich zdolności do przetwarzania i wykorzystania kontekstu podanego w monicie. Naukowcy zbadali, w jaki sposób LLM radzą sobie z długimi kontekstami oraz wpływ nieistotnych lub rozpraszających informacji na ich wyniki.

Zjawisko „Lost in the Middle” podkreśla, że ​​LLM mają tendencję do zwracania większej uwagi na informacje na początku i na końcu kontekstu, podczas gdy informacje znajdujące się pośrodku są często pomijane lub „tracone”. Ta wiedza ma wpływ na szybką inżynierię, ponieważ staranne umieszczenie odpowiednich informacji w kontekście może znacząco wpłynąć na wydajność.

Inny kierunek badań skupia się na łagodzeniu szkodliwych skutków nieistotnego kontekstu, który może poważnie pogorszyć wyniki LLM. Techniki takie jak wewnętrzna spójność, wyraźne instrukcje ignorowania nieistotnych informacji oraz dołączanie przykładów demonstrujących rozwiązywanie problemów w nieistotnym kontekście mogą pomóc LLM nauczyć się skupiać na najbardziej istotnych informacjach.

Poprawa umiejętności pisania za pomocą strategii podpowiedzi

Chociaż LLM przodują w generowaniu tekstu podobnego do ludzkiego, ich możliwości pisania można dodatkowo ulepszyć dzięki wyspecjalizowanym strategiom podpowiedzi. Jedną z takich technik jest podpowiadanie Skeleton-of-Thought (SoT), którego celem jest zmniejszenie opóźnień w dekodowaniu sekwencyjnym poprzez naśladowanie procesu pisania przez człowieka.

Podpowiadanie SoT polega na poproszeniu LLM o wygenerowanie najpierw szkieletu lub zarysu odpowiedzi, a następnie równoległych wywołań API w celu wypełnienia szczegółów każdego elementu konspektu. Takie podejście nie tylko poprawia opóźnienie wnioskowania, ale może również poprawić jakość pisania, zachęcając LLM do skuteczniejszego planowania i strukturyzowania wyników.

Inna strategia podpowiedzi, podpowiedzi typu Chain of Density (CoD), koncentruje się na poprawie gęstości informacji w podsumowaniach generowanych przez LLM. Dzięki iteracyjnemu dodawaniu elementów do podsumowania przy zachowaniu stałej długości, podpowiedzi CoD pozwalają użytkownikom zbadać kompromis między zwięzłością a kompletnością, ostatecznie tworząc podsumowania zawierające więcej informacji i czytelne.

Pojawiające się kierunki i perspektywy na przyszłość

ChatGPT i zaawansowana szybka inżynieria

Zaawansowana szybka inżynieria

Dziedzina szybkiej inżynierii szybko się rozwija, a badacze nieustannie odkrywają nowe granice i przesuwają granice tego, co jest możliwe dzięki LLM. Niektóre wyłaniające się kierunki obejmują:

  1. Aktywne monitowanie: Techniki wykorzystujące zasady aktywnego uczenia się oparte na niepewności w celu identyfikacji i opisywania najbardziej przydatnych przykładów rozwiązywania konkretnych problemów z rozumowaniem.
  2. Podpowiadanie multimodalne: Rozszerzenie strategii podpowiedzi o obsługę multimodalnych danych wejściowych, które łączą tekst, obrazy i inne modalności danych.
  3. Automatyczne generowanie podpowiedzi: Opracowywanie technik optymalizacji w celu automatycznego generowania skutecznych podpowiedzi dostosowanych do konkretnych zadań lub domen.
  4. Interpretowalność i wyjaśnialność: badanie metod podpowiedzi, które poprawiają interpretowalność i wyjaśnialność wyników LLM, umożliwiając lepszą przejrzystość i zaufanie do procesów decyzyjnych.

Ponieważ LLM nadal się rozwijają i znajdują zastosowanie w różnych dziedzinach, szybka inżynieria odegra kluczową rolę w uwolnieniu ich pełnego potencjału. Wykorzystując najnowsze techniki i strategie podpowiedzi, badacze i praktycy mogą opracowywać wydajniejsze, niezawodne i dostosowane do konkretnych zadań rozwiązania sztucznej inteligencji, które przesuwają granice możliwości przetwarzania języka naturalnego.

Wnioski

Dziedzina szybkiej inżynierii dużych modeli językowych szybko się rozwija, a badacze nieustannie przesuwają granice tego, co jest możliwe. Od zwiększania możliwości rozumowania za pomocą technik takich jak podpowiadanie w oparciu o łańcuch myśli, po integrację LLM z zewnętrznymi narzędziami i programami, najnowsze postępy w inżynierii szybkiej otwierają nowe granice sztucznej inteligencji.

Ostatnie pięć lat spędziłem zanurzając się w fascynującym świecie uczenia maszynowego i głębokiego uczenia się. Moja pasja i wiedza sprawiły, że uczestniczyłem w ponad 50 różnorodnych projektach z zakresu inżynierii oprogramowania, ze szczególnym uwzględnieniem AI/ML. Moja ciągła ciekawość przyciągnęła mnie również w stronę przetwarzania języka naturalnego – dziedziny, którą chcę dalej zgłębiać.