Jak zautomatyzować zadania za pomocą narzędzi Anthropic i Claude 3?

Rozpoczęcie pracy z narzędziami Anthropic

Największą zaletą zatrudniania LLM do zadań jest ich wszechstronność. LLM mogą być podpowiadane w określony sposób, aby służyć niezliczonym celom, funkcjonując jako API do generowania tekstu lub konwertowania nieustrukturyzowanych danych do zorganizowanych formatów. Wielu z nas korzysta z ChatGPT w codziennych zadaniach, czy to komponując e-maile, czy angażując się w zabawne debaty ze sztuczną inteligencją.

Architektura wtyczek, znanych również jako “GPT”, opiera się na identyfikowaniu słów kluczowych z odpowiedzi i zapytań oraz wykonywaniu odpowiednich funkcji. Wtyczki te umożliwiają interakcję z zewnętrznymi aplikacjami lub uruchamiają niestandardowe funkcje.

Podczas gdy OpenAI przodował w umożliwianiu wywoływania funkcji zewnętrznych do wykonywania zadań, Anthropic wprowadził niedawno ulepszoną funkcję o nazwie “Tool Use”, zastępując poprzedni mechanizm wywoływania funkcji. Zaktualizowana wersja upraszcza programowanie, wykorzystując JSON zamiast znaczników XML. Dodatkowo, Claude-3 Opus może pochwalić się przewagą nad modelami GPT dzięki większemu oknu kontekstowemu wynoszącemu 200 tys. tokenów, co jest szczególnie cenne w określonych scenariuszach.

Na tym blogu zbadamy koncepcję “korzystania z narzędzi”, omówimy jej funkcje i zaoferujemy wskazówki dotyczące rozpoczęcia pracy.

Co to jest “korzystanie z narzędzi”?

Claude ma możliwość interakcji z zewnętrznymi narzędziami i funkcjami po stronie klienta, umożliwiając wyposażenie Claude we własne niestandardowe narzędzia do szerszego zakresu zadań.

Przepływ pracy podczas korzystania z Tools with Claude jest następujący:

  1. Zapewnienie Claude’owi narzędzi i podpowiedzi dla użytkownika (żądanie API)
    • Zdefiniuj zestaw narzędzi do wyboru przez Claude’a.
    • Dołącz je wraz z zapytaniem użytkownika do monitu o wygenerowanie tekstu.
  2. Claude wybiera narzędzie
    • Claude analizuje monit użytkownika i porównuje go ze wszystkimi dostępnymi narzędziami, aby wybrać najbardziej odpowiednie.
    • Wykorzystując proces “myślenia” LLM, identyfikuje słowa kluczowe wymagane dla odpowiedniego narzędzia.
  3. Generowanie odpowiedzi (odpowiedź API)
    • Po zakończeniu procesu jako dane wyjściowe generowany jest monit wraz z wybranym narzędziem i parametrami.

Po zakończeniu tego procesu użytkownik wykonuje wybraną funkcję/narzędzie i w razie potrzeby wykorzystuje jej dane wyjściowe do wygenerowania kolejnej odpowiedzi.

Ogólny schemat narzędzia

Schemat
Schemat ten służy jako środek przekazywania wymagań dotyczących procesu wywoływania funkcji do LLM. Nie wywołuje ona bezpośrednio żadnej funkcji ani nie wyzwala samodzielnie żadnych działań. Aby zapewnić dokładną identyfikację narzędzi, należy podać szczegółowy opis każdego z nich. Properties w schemacie są wykorzystywane do identyfikacji parametrów, które zostaną przekazane do funkcji na późniejszym etapie.

Demonstracja

Przejdźmy dalej i zbudujmy narzędzia do skrobania sieci i znajdowania ceny dowolnych akcji.

Narzędzia Schemat

Kod 1

Narzędzie scrape_website pobierze adres URL strony internetowej z monitu użytkownika. Jeśli chodzi o narzędzie stock_price, zidentyfikuje ono nazwę firmy z monitu użytkownika i przekonwertuje ją na ticker yfinance.

Monit użytkownika

Kod 2

Zadanie botowi dwóch zapytań, po jednym dla każdego narzędzia, daje nam następujące wyniki:

Kod 3

Proces myślenia obejmuje wszystkie kroki podejmowane przez LLM w celu dokładnego wyboru odpowiedniego narzędzia dla każdego zapytania i wykonania niezbędnych konwersji zgodnie z opisami narzędzi.

Wybór odpowiedniego narzędzia

Będziemy musieli napisać dodatkowy kod, który uruchomi odpowiednie funkcje w oparciu o warunki.

Kod 4

Funkcja ta służy do aktywacji odpowiedniego kodu na podstawie nazwy narzędzia pobranej w odpowiedzi LLM. W pierwszym warunku pobieramy adres URL strony internetowej uzyskany z danych wejściowych narzędzia, podczas gdy w drugim warunku pobieramy ticker giełdowy i przekazujemy go do biblioteki python yfinance.

Wykonywanie funkcji

Przekażemy cały adres ToolUseBlock w funkcji select_tool(), aby uruchomić odpowiedni kod.

Wyjścia

  1. Pierwsza zachętaKod 5
  2. Druga zachętaKod 4

Jeśli chcesz zobaczyć cały kod źródłowy tej demonstracji, możesz wyświetlić ten notatnik.

Niektóre przypadki użycia

Funkcja “tool use” dla Claude podnosi wszechstronność LLM na zupełnie nowy poziom. Chociaż podany przykład jest podstawowy, służy jako podstawa do rozszerzenia funkcjonalności. Oto jedno z jego rzeczywistych zastosowań:

Aby znaleźć więcej przypadków użycia, można odwiedzić oficjalne repozytorium Anthropic
tutaj
.

More From Our Blog

Od chatbota do wyszukiwarki: jak wyszukiwarka ChatGPT firmy OpenAI zmienia zasady gry

Od chatbota do wyszukiwarki: jak wyszukiwarka ChatGPT firmy OpenAI zmienia zasady gry

Ewolucja wyszukiwań internetowych opartych na sztucznej inteligencji Najnowsza innowacja OpenAI, ChatGPT Search, oznacza znaczący skok w możliwościach wyszukiwania w sieci opartych na sztucznej inteligencji. Funkcja ta integruje wyszukiwanie inte...

Read More
Nemotron 70B od Nvidia AI wydany: Czy OpenAI i Anthropic powinny się bać?

Nemotron 70B od Nvidia AI wydany: Czy OpenAI i Anthropic powinny się bać?

Nvidia po cichu zaprezentowała swój najnowszy model AI, Nemotron 70B, który robi furorę w sektorze sztucznej inteligencji, przewyższając dobrze znane modele, takie jak GPT-4 firmy OpenAI i Claude 3.5 Sonnet firmy Anthropic. Ta strategiczna prem...

Read More

Build Your Own Business AI

Get Started Free
Top