Agenci AI w Amazon Bedrock

Generatywni agenci AI do zautomatyzowanych przepływów pracy

Firmy każdej wielkości stoją przed nieustanną presją utrzymania wydajności operacyjnej. Wyzwanie to jest dodatkowo potęgowane przez stale rosnące ilości danych, złożone systemy i samą liczbę interakcji z klientami, którymi trzeba zarządzać. Tradycyjne, ręczne procesy i często rozproszony charakter źródeł informacji mogą prowadzić do znacznych wąskich gardeł. Te przeszkody spowalniają podejmowanie decyzji i uniemożliwiają zespołom poświęcanie czasu i energii na pracę o wyższej wartości, która naprawdę przynosi wymierne efekty. Generatywni agenci AI stanowią transformacyjne rozwiązanie. Agenci ci mogą automatycznie łączyć się z istniejącymi systemami firmy, wykonywać szeroki zakres zadań i zapewniać natychmiastowy wgląd. Pozwala to organizacjom na efektywne skalowanie operacji bez odpowiedniego wzrostu złożoności.

Amazon Bedrock w SageMaker Unified Studio bezpośrednio odpowiada na te wszechobecne wyzwania. Oferuje ujednoliconą usługę przeznaczoną do budowania rozwiązań opartych na sztucznej inteligencji. Platforma ta centralizuje dane klientów i umożliwia interakcje w języku naturalnym, co czyni ją intuicyjną i przyjazną dla użytkownika. Kluczową zaletą jest bezproblemowa integracja z istniejącymi aplikacjami. Zawiera również podstawowe funkcje Amazon Bedrock, w tym szeroki wybór modeli podstawowych (FM), możliwości inżynierii podpowiedzi, bazy wiedzy do zrozumienia kontekstowego, agentów do wykonywania zadań, przepływy do orkiestracji przepływu pracy, narzędzia oceny do monitorowania wydajności i zabezpieczenia do odpowiedzialnego rozwoju AI. Użytkownicy mogą wygodnie uzyskać dostęp do tego kompleksowego zestawu funkcji AI za pośrednictwem systemu pojedynczego logowania (SSO) swojej organizacji. Sprzyja to współpracy między członkami zespołu i pozwala na udoskonalanie aplikacji AI bez konieczności bezpośredniego dostępu do AWS Management Console.

Generatywni agenci AI do zautomatyzowanych przepływów pracy

Amazon Bedrock w SageMaker Unified Studio umożliwia tworzenie i wdrażanie zaawansowanych agentów generatywnej AI. Agenci ci mogą bezproblemowo integrować się z aplikacjami, bazami danych, a nawet systemami zewnętrznymi Twojej organizacji. Ten poziom integracji umożliwia interakcje w języku naturalnym w całym stosie technologicznym. Agent czatu działa jako kluczowy pomost, łącząc złożone systemy informacyjne z przyjazną dla użytkownika komunikacją. Wykorzystując funkcje Amazon Bedrock i bazy wiedzy Amazon Bedrock, agent zyskuje możliwość łączenia się z różnymi źródłami danych. Źródła te mogą obejmować interfejsy API JIRA do śledzenia statusu projektu w czasie rzeczywistym, a także systemy zarządzania relacjami z klientami (CRM) do pobierania informacji o klientach. Agent może również aktualizować zadania projektu, zarządzać preferencjami użytkowników i wiele więcej.

Ta kompleksowa funkcjonalność zapewnia znaczące korzyści różnym zespołom w organizacji. Zespoły sprzedaży i marketingu mogą uzyskać szybki dostęp do informacji o klientach i ich preferowanych terminach spotkań. Menedżerowie projektów mogą efektywnie zarządzać zadaniami i harmonogramami JIRA, optymalizując przepływy pracy projektu. Ten usprawniony proces, ułatwiony przez agenta AI, prowadzi do zwiększonej produktywności i lepszych interakcji z klientami w całej organizacji.

Przegląd rozwiązania

Amazon Bedrock zapewnia zarządzane, oparte na współpracy środowisko, a wszystko to w ramach SageMaker Unified Studio, do budowania i udostępniania aplikacji generatywnej AI. Przyjrzyjmy się praktycznemu przykładowi rozwiązania, które demonstruje wdrożenie agenta zarządzania klientami:

  • Agentic Chat: Zaawansowana aplikacja czatu agentowego może być zbudowana przy użyciu funkcji aplikacji czatu Amazon Bedrock. Ta aplikacja czatu może być bezproblemowo zintegrowana z funkcjami, które można łatwo zbudować przy użyciu innych usług AWS, takich jak AWS Lambda do obliczeń bezserwerowych i Amazon API Gateway do tworzenia interfejsów API i zarządzania nimi.
  • Zarządzanie danymi: SageMaker Unified Studio, w połączeniu z Amazon DataZone, oferuje kompleksowe rozwiązanie do zarządzania danymi dzięki zintegrowanym usługom. Administratorzy organizacji mają szczegółową kontrolę nad dostępem członków do modeli i funkcji Amazon Bedrock. Zapewnia to bezpieczne zarządzanie tożsamością i szczegółową kontrolę dostępu, zachowując bezpieczeństwo danych i zgodność z przepisami.

Zanim zagłębimy się w szczegóły wdrażania agenta AI, warto przejść przez kluczowe etapy architektury.

Przepływ pracy przebiega następująco:

  1. Uwierzytelnianie i interakcja użytkownika: Użytkownik inicjuje proces, logując się do SageMaker Unified Studio przy użyciu danych uwierzytelniających SSO swojej organizacji z AWS IAM Identity Center. Po uwierzytelnieniu użytkownik wchodzi w interakcję z aplikacją czatu, używając języka naturalnego, zadając pytania lub zgłaszając żądania.
  2. Wywołanie funkcji: Aplikacja czatu Amazon Bedrock inteligentnie wykorzystuje predefiniowaną funkcję do pobierania odpowiednich informacji. Funkcja ta może być zaprojektowana do pobierania aktualizacji statusu JIRA lub informacji o klientach z bazy danych. Pobieranie odbywa się za pośrednictwem bezpiecznego punktu końcowego przy użyciu API Gateway.
  3. Bezpieczny dostęp i wyzwalacz Lambda: Aplikacja czatu uwierzytelnia się w API Gateway, aby bezpiecznie uzyskać dostęp do wyznaczonego punktu końcowego. Uwierzytelnianie to odbywa się przy użyciu losowo wygenerowanego klucza API bezpiecznie przechowywanego w AWS Secrets Manager. W zależności od żądania użytkownika wyzwalana jest odpowiednia funkcja Lambda.
  4. Wykonywanie akcji: Funkcja Lambda, teraz aktywowana, wykonuje określone działania żądane przez użytkownika. Obejmuje to wywołanie interfejsu API JIRA lub zapytanie do bazy danych z niezbędnymi parametrami dostarczonymi przez agenta. Agent jest zaprojektowany do obsługi różnych zadań, w tym:
    1. Przedstawienie zwięzłego przeglądu konkretnego klienta.
    2. Wyświetlenie listy ostatnich interakcji z danym klientem.
    3. Pobranie preferencji dotyczących spotkań dla wyznaczonego klienta.
    4. Pobranie listy otwartych zgłoszeń JIRA powiązanych z określonym projektem.
    5. Aktualizacja terminu realizacji dla konkretnego zgłoszenia JIRA.

Wymagania wstępne

Aby śledzić implementację tego rozwiązania i zbudować własnego agenta zarządzania klientami, potrzebne są następujące wymagania wstępne:

  • Konto AWS: Aktywne konto AWS jest niezbędne do uzyskania dostępu do niezbędnych usług.
  • Dostęp do SageMaker Unified Studio: Wymagany jest dostęp użytkownika do Amazon Bedrock w ramach SageMaker Unified Studio.
  • Dostęp do modelu: Potrzebny będzie dostęp do modelu Amazon Nova Pro w Amazon Bedrock. Upewnij się, że ten model jest dostępny w obsługiwanym regionie AWS.
  • Konfiguracja JIRA: Aplikacja JIRA, odpowiadający jej adres URL JIRA i token API JIRA powiązany z Twoim kontem są niezbędne do integracji z JIRA.

Zakłada się, że masz podstawową wiedzę na temat podstawowych koncepcji bezserwerowych w AWS, w tym API Gateway, funkcji Lambda i IAM Identity Center. Chociaż ten post nie zawiera szczegółowych definicji tych usług, zademonstrujemy ich przypadki użycia w kontekście nowych funkcji Amazon Bedrock dostępnych w SageMaker Unified Studio.

Wdrażanie rozwiązania

Aby wdrożyć rozwiązanie agenta zarządzania klientami, wykonaj następujące kroki:

  1. Pobierz kod: Zacznij od pobrania niezbędnego kodu z dostarczonego repozytorium GitHub.
  2. Pobierz poświadczenia JIRA: Uzyskaj wartości dla JIRA_API_KEY_ARN, JIRA_URL i JIRA_USER_NAME dla funkcji Lambda. Te poświadczenia zostaną użyte do uwierzytelnienia w instancji JIRA.
  3. Uruchom stos CloudFormation: Użyj dostarczonego szablonu AWS CloudFormation. Zapoznaj się z dokumentacją „Create a stack from the CloudFormation console”, aby uzyskać szczegółowe instrukcje dotyczące uruchamiania stosu w preferowanym regionie AWS.
  4. Adres URL API Gateway: Po pomyślnym wdrożeniu stosu CloudFormation przejdź do zakładki Outputs. Znajdź i zanotuj wartość ApiInvokeURL. Ten adres URL reprezentuje punkt końcowy dla Twojego API Gateway.
  5. Konfiguracja Secrets Manager: Uzyskaj dostęp do konsoli Secrets Manager. Znajdź sekrety odpowiadające JIRA_API_KEY_ARN, JIRA_URL i JIRA_USER_NAME.
  6. Zaktualizuj wartości sekretów: Wybierz opcję Retrieve secret dla każdego sekretu. Skopiuj odpowiednie zmienne uzyskane w kroku 2 do ciągu tekstowego sekretu. Spowoduje to bezpieczne przechowywanie poświadczeń JIRA.
  7. Zaloguj się do SageMaker Unified Studio: Zaloguj się do SageMaker Unified Studio, używając danych uwierzytelniających SSO swojej organizacji.

Tworzenie nowego projektu

Mając już infrastrukturę, utwórzmy nowy projekt w SageMaker Unified Studio:

  1. Tworzenie projektu: Na stronie docelowej SageMaker Unified Studio zainicjuj tworzenie nowego projektu.
  2. Nazewnictwo projektu: Przypisz opisową nazwę do swojego projektu (np. crm-agent).
  3. Wybór profilu: Wybierz Generative AI application development profile i przejdź dalej.
  4. Ustawienia domyślne: Zaakceptuj ustawienia domyślne i kontynuuj.
  5. Potwierdzenie: Przejrzyj konfigurację projektu i wybierz Create project, aby potwierdzić.

Budowanie aplikacji agenta czatu

Teraz zbudujmy rdzeń naszego rozwiązania – aplikację agenta czatu:

  1. Inicjacja agenta czatu: Na stronie docelowej projektu crm-agent znajdź sekcję New po prawej stronie. Wybierz Chat agent, aby rozpocząć budowanie aplikacji.
    Spowoduje to wyświetlenie listy konfiguracji dla aplikacji agenta.

  2. Wybór modelu: W sekcji modelu wybierz żądany model podstawowy (FM) obsługiwany przez Amazon Bedrock. Dla tego crm-agent wybierzemy Amazon Nova Pro.

  3. Definicja podpowiedzi systemowej: W sekcji podpowiedzi systemowej podaj następującą podpowiedź. Ta podpowiedź będzie kierować zachowaniem i odpowiedziami agenta. Możesz opcjonalnie dołączyć przykłady danych wejściowych użytkownika i odpowiedzi modelu, aby jeszcze bardziej udoskonalić jego działanie.

    Jesteś agentem ds. zarządzania relacjami z klientami, którego zadaniem jest pomoc sprzedawcy w planowaniu pracy z klientami. Otrzymujesz punkt końcowy API. Ten punkt końcowy może dostarczać informacji, takich jak przegląd firmy, historia interakcji firmy (godziny spotkań i notatki), preferencje dotyczące spotkań firmy (typ spotkania, dzień tygodnia i pora dnia). Możesz także wysyłać zapytania do zadań Jira i aktualizować ich harmonogram. Po otrzymaniu odpowiedzi wyczyść ją do czytelnego formatu. Jeśli dane wyjściowe są listą numerowaną, sformatuj ją jako taką ze znakami nowego wiersza i numerami.

  4. Tworzenie funkcji: W sekcji Functions wybierz Create a new function. Ta funkcja zdefiniuje akcje, które agent może wykonać.

  5. Nazewnictwo funkcji: Nadaj swojej funkcji opisową nazwę, taką jak crm_agent_calling.

  6. Schemat funkcji: Dla Function schema użyj definicji OpenAPI dostarczonej w repozytorium GitHub. Ten schemat definiuje parametry wejściowe i wyjściowe dla Twojej funkcji.

  7. Konfiguracja uwierzytelniania: Dla Authentication method wybierz API Keys (Max. 2 Keys) i wprowadź następujące szczegóły:

    1. Dla Key sent in wybierz Header.
    2. Dla Key name wprowadź x-api-key.
    3. Dla Key value wprowadź klucz API Secrets Manager.
  8. Punkt końcowy serwera API: W sekcji API servers wprowadź adres URL punktu końcowego uzyskany z danych wyjściowych CloudFormation ( ApiInvokeURL ).

  9. Finalizacja funkcji: Wybierz Create, aby zakończyć tworzenie funkcji.

  10. Zapisywanie aplikacji: W sekcji Functions aplikacji agenta czatu wybierz właśnie utworzoną funkcję i wybierz Save, aby zakończyć tworzenie aplikacji.

Przykładowe interakcje

Przyjrzyjmy się kilku praktycznym przykładom, jak można wykorzystać tego agenta czatu:

Przypadek użycia 1: Analityk CRM pobierający dane klienta

Analityk CRM może używać języka naturalnego do pobierania danych klienta przechowywanych w bazie danych. Oto kilka przykładowych pytań, które mogą zadać:

  • “Podaj mi krótki przegląd klienta C-jkl101112.”
  • “Wymień 2 ostatnie interakcje dla klienta C-def456.”
  • “Jaką metodę komunikacji preferuje klient C-mno131415?”
  • “Zalec optymalny czas i kanał kontaktu, aby skontaktować się z C-ghi789 w oparciu o ich preferencje i naszą ostatnią interakcję.”

Agent, po otrzymaniu tych żądań, inteligentnie zapyta bazę danych i dostarczy odpowiednie odpowiedzi w jasnym i zwięzłym formacie.

Przypadek użycia 2: Menedżer projektu zarządzający zgłoszeniami JIRA

Menedżer projektu może użyć agenta do wyświetlania i aktualizowania zgłoszeń JIRA. Oto kilka przykładowych interakcji:

  • “Jakie są otwarte zadania JIRA dla identyfikatora projektu CRM?”
  • “Zaktualizuj zadanie JIRA CRM-3 do 1 tygodnia.”

Agent uzyska dostęp do tablicy JIRA, pobierze odpowiednie informacje o projekcie i przedstawi listę otwartych zadań JIRA. Zaktualizuje również harmonogram określonego zadania zgodnie z żądaniem użytkownika.

Czyszczenie

Aby zapobiec ponoszeniu niepotrzebnych kosztów, wykonaj następujące czynności czyszczenia:

  1. Usuń stos CloudFormation: Usuń stos CloudFormation, który wdrożyłeś wcześniej.
  2. Usuń komponent funkcji: Usuń komponent funkcji utworzony w Amazon Bedrock.
  3. Usuń aplikację agenta czatu: Usuń aplikację agenta czatu w Amazon Bedrock.
  4. Usuń domeny: Usuń domeny w SageMaker Unified Studio.

Koszt

Korzystanie z Amazon Bedrock w SageMaker Unified Studio nie wiąże się z żadnymi oddzielnymi opłatami. Będziesz jednak obciążany opłatami za poszczególne usługi i zasoby AWS wykorzystywane w ramach usługi. Amazon Bedrock działa w modelu płatności zgodnie z rzeczywistym użyciem, co oznacza, że płacisz tylko za zużyte zasoby, bez minimalnych opłat i zobowiązań z góry.

Jeśli potrzebujesz dalszej pomocy w obliczaniu cen lub masz pytania dotyczące optymalizacji kosztów dla konkretnego przypadku użycia, zaleca się skontaktowanie się z pomocą techniczną AWS lub skonsultowanie się z menedżerem konta. Mogą oni udzielić indywidualnych wskazówek w oparciu o Twoje potrzeby.