Uruchomienie ChatGPT i wzrost popularności generatywnej sztucznej inteligencji pobudziły wyobraźnię klientów, którzy są ciekawi, w jaki sposób mogą wykorzystać tę technologię do tworzenia nowych produktów i usług na AWS, takich jak chatboty dla przedsiębiorstw, które są bardziej konwersacyjne. W tym poście dowiesz się, jak utworzyć internetowy interfejs użytkownika, który nazywamy Chat Studio, aby rozpocząć rozmowę i wchodzić w interakcję z podstawowymi modelami dostępnymi w Amazon SageMaker JumpStart takie jak Llama 2, Stable Diffusion i inne modele dostępne na Amazon Sage Maker. Po wdrożeniu tego rozwiązania użytkownicy będą mogli szybko rozpocząć pracę i poznać możliwości wielu podstawowych modeli konwersacyjnej sztucznej inteligencji za pośrednictwem interfejsu internetowego.
Chat Studio może również opcjonalnie wywołać punkt końcowy modelu Stable Diffusion, aby zwrócić kolaż odpowiednich obrazów i filmów, jeśli użytkownik zażąda wyświetlenia multimediów. Ta funkcja może pomóc ulepszyć doświadczenie użytkownika dzięki wykorzystaniu multimediów jako zasobów towarzyszących odpowiedzi. To tylko jeden przykład tego, jak możesz wzbogacić Chat Studio o dodatkowe integracje, aby osiągnąć swoje cele.
Poniższe zrzuty ekranu pokazują przykłady wyglądu zapytania i odpowiedzi użytkownika.
Duże modele językowe
Generacyjne chatboty AI, takie jak ChatGPT, działają w oparciu o duże modele językowe (LLM), które opierają się na sieci neuronowej głębokiego uczenia, którą można szkolić na dużych ilościach nieoznakowanego tekstu. Korzystanie z LLM pozwala na lepsze doświadczenia konwersacyjne, które bardzo przypominają interakcje z prawdziwymi ludźmi, wzmacniając poczucie połączenia i zwiększając satysfakcję użytkownika.
Modele fundamentów SageMaker
W 2021 r. Instytut Sztucznej Inteligencji Skoncentrowanej na Człowieku Stanforda określił niektóre LLM jako modele fundamentów. Modele podstawowe są wstępnie trenowane na dużym i szerokim zestawie danych ogólnych i mają służyć jako podstawa do dalszych optymalizacji w szerokim zakresie przypadków użycia, od generowania grafiki cyfrowej po klasyfikację tekstu wielojęzycznego. Te modele podstawowe cieszą się popularnością wśród klientów, ponieważ szkolenie nowego modelu od podstaw wymaga czasu i może być kosztowne. SageMaker JumpStart zapewnia dostęp do setek podstawowych modeli utrzymywanych od zewnętrznych dostawców open source i zastrzeżonych.
Omówienie rozwiązania
W tym poście omówiono przepływ pracy wymagający niewielkiej ilości kodu, umożliwiający wdrażanie wstępnie przeszkolonych i niestandardowych aplikacji LLM za pomocą programu SageMaker oraz tworzenie internetowego interfejsu użytkownika umożliwiającego współpracę z wdrożonymi modelami. Omawiamy następujące kroki:
- Wdrażaj modele fundamentów SageMaker.
- Rozmieścić AWS Lambda i AWS Zarządzanie tożsamością i dostępem (IAM) przy użyciu uprawnień Tworzenie chmury AWS.
- Skonfiguruj i uruchom interfejs użytkownika.
- Opcjonalnie dodaj inne modele fundamentów SageMaker. Ten krok rozszerza możliwości Chat Studio w zakresie interakcji z dodatkowymi modelami podstawowymi.
- Opcjonalnie wdróż aplikację za pomocą Wzmocnienie AWS. Ten krok powoduje wdrożenie Chat Studio w Internecie.
Przegląd architektury rozwiązania można znaleźć na poniższym diagramie.
Wymagania wstępne
Aby przejść przez rozwiązanie, musisz mieć następujące wymagania wstępne:
- An Konto AWS z wystarczającymi uprawnieniami użytkownika IAM.
npm
zainstalowany w środowisku lokalnym. Aby uzyskać instrukcje dotyczące instalacjinpm
, odnosić się do Pobieranie i instalowanie Node.js i npm.- Limit usług wynoszący 1 dla odpowiednich punktów końcowych SageMaker. W przypadku Llama 2 13b Chat używamy instancji ml.g5.48xlarge, a w przypadku Stable Diffusion 2.1 używamy instancji ml.p3.2xlarge.
Aby poprosić o zwiększenie limitu usług, na stronie Konsola przydziałów usług AWS, nawigować do Usługi AWS, SageMakeri żądanie zwiększenia limitu usług do wartości 1 dla ml.g5.48xlarge w przypadku użycia punktu końcowego i ml.p3.2xlarge w przypadku użycia punktu końcowego.
Zatwierdzenie żądania dotyczącego przydziału usługi może zająć kilka godzin, w zależności od dostępności typu instancji.
Wdrażaj modele fundamentów SageMaker
SageMaker to w pełni zarządzana usługa uczenia maszynowego (ML) przeznaczona dla programistów, umożliwiająca szybkie i łatwe tworzenie modeli uczenia maszynowego. Wykonaj następujące kroki, aby wdrożyć modele podstawowe Lama 2 13b Chat i Stable Diffusion 2.1 przy użyciu Studio Amazon SageMaker:
- Utwórz domenę SageMaker. Aby uzyskać instrukcje, zobacz Dołącz do domeny Amazon SageMaker za pomocą szybkiej konfiguracji.
Domena konfiguruje całą pamięć i umożliwia dodawanie użytkowników mających dostęp do SageMaker.
- W konsoli SageMaker wybierz Studio w okienku nawigacji, a następnie wybierz Otwórz studio.
- Po uruchomieniu Studio, w pliku SageMaker Szybki start w okienku nawigacji wybierz Modele, notebooki, rozwiązania.
- W pasku wyszukiwania wyszukaj Llama 2 13b Chat.
- Pod Konfiguracja wdrożenia, Dla Instancja hostingu SageMakerwybierz ml.g5.48xduży i dla Nazwa punktu końcowego, wchodzić
meta-textgeneration-llama-2-13b-f
. - Dodaj Wdrożyć.
Po pomyślnym wdrożeniu powinieneś zobaczyć plik In Service
stan.
- Na Modele, notebooki, rozwiązania wyszukaj Stable Diffusion 2.1.
- Pod Konfiguracja wdrożenia, Dla Instancja hostingu SageMakerwybierz ml.p3.2xduże i dla Nazwa punktu końcowego, wchodzić
jumpstart-dft-stable-diffusion-v2-1-base
. - Dodaj Rozmieścić.
Po pomyślnym wdrożeniu powinieneś zobaczyć plik In Service
stan.
Wdróż uprawnienia Lambda i IAM za pomocą AWS CloudFormation
W tej sekcji opisano, jak uruchomić stos CloudFormation, który wdraża funkcję Lambda, która przetwarza żądanie użytkownika i wywołuje wdrożony punkt końcowy SageMaker oraz wdraża wszystkie niezbędne uprawnienia IAM. Wykonaj następujące kroki:
- Nawiguj do Repozytorium GitHub i pobierz szablon CloudFormation (
lambda.cfn.yaml
) na komputer lokalny. - W konsoli CloudFormation wybierz opcję Utwórz stos menu rozwijane i wybierz Z nowymi zasobami (standard).
- Na Określ szablon strona, wybierz Prześlij plik szablonu i Wybierz plik.
- Wybierz
lambda.cfn.yaml
pobrany plik, a następnie wybierz Następna. - Na Określ szczegóły stosu stronie, wprowadź nazwę stosu i klucz API uzyskany w wymaganiach wstępnych, a następnie wybierz Następna.
- Na Skonfiguruj opcje stosu wybierz stronę Następna.
- Przejrzyj i zatwierdź zmiany, a następnie wybierz Prześlij.
Skonfiguruj interfejs WWW
W tej sekcji opisano kroki umożliwiające uruchomienie internetowego interfejsu użytkownika (utworzonego przy użyciu System projektowania chmur) na komputerze lokalnym:
- W konsoli IAM przejdź do użytkownika
functionUrl
. - Na Poświadczenia bezpieczeństwa kartę, wybierz Utwórz klucz dostępu.
- Na Uzyskaj dostęp do najważniejszych najlepszych praktyk i alternatyw strona, wybierz Interfejs wiersza poleceń (CLI) i wybierz Następna.
- Na Ustaw znacznik opisu wybierz stronę Utwórz klucz dostępu.
- Skopiuj klucz dostępu i tajny klucz dostępu.
- Dodaj Gotowe .
- Nawiguj do Repozytorium GitHub i pobierz
react-llm-chat-studio
kod. - Uruchom folder w preferowanym IDE i otwórz terminal.
- Nawigować do
src/configs/aws.json
i wprowadź otrzymany klucz dostępu i tajny klucz dostępu. - Wpisz następujące polecenia w terminalu:
- Otwarte http://localhost:3000 w swojej przeglądarce i rozpocznij interakcję ze swoimi modelami!
Aby skorzystać z Chat Studio, wybierz podstawowy model z menu rozwijanego i wpisz zapytanie w polu tekstowym. Aby wraz z odpowiedzią otrzymać obrazy wygenerowane przez sztuczną inteligencję, dodaj na końcu zapytania frazę „z obrazami”.
Dodaj inne modele fundamentów SageMaker
Możesz dodatkowo rozszerzyć możliwości tego rozwiązania, aby uwzględnić dodatkowe modele fundamentów SageMaker. Ponieważ każdy model oczekuje różnych formatów wejściowych i wyjściowych podczas wywoływania punktu końcowego SageMaker, konieczne będzie napisanie kodu transformacji w funkcji Lambda callSageMakerEndpoints, aby połączyć się z modelem.
W tej sekcji opisano ogólne kroki i zmiany w kodzie wymagane do zaimplementowania dodatkowego wybranego modelu. Pamiętaj, że w przypadku kroków 6–8 wymagana jest podstawowa znajomość języka Python.
- W SageMaker Studio wdróż wybrany przez siebie model podstawowy SageMaker.
- Dodaj SageMaker Szybki start i Uruchom zasoby JumpStart.
- Wybierz nowo wdrożony punkt końcowy modelu i wybierz Otwórz notatnik.
- Na konsoli notebooka znajdź parametry ładunku.
Są to pola, których nowy model oczekuje podczas wywoływania punktu końcowego SageMaker. Poniższy zrzut ekranu pokazuje przykład.
- W konsoli Lambda przejdź do
callSageMakerEndpoints
. - Dodaj niestandardową procedurę obsługi danych wejściowych dla swojego nowego modelu.
Na poniższym zrzucie ekranu przekształciliśmy dane wejściowe dla Falcon 40B Instruct BF16 i GPT NeoXT Chat Base 20B FP16. Możesz wstawić logikę parametrów niestandardowych, jak wskazano, aby dodać logikę transformacji wejściowej w odniesieniu do skopiowanych parametrów ładunku.
- Wróć do konsoli notebooka i zlokalizuj
query_endpoint
.
Ta funkcja daje wyobrażenie o tym, jak przekształcić dane wyjściowe modeli, aby wyodrębnić ostateczną odpowiedź tekstową.
- W nawiązaniu do kodu w
query_endpoint
, dodaj niestandardową procedurę obsługi danych wyjściowych dla nowego modelu. - Dodaj Wdrożyć.
- Otwórz swoje IDE, uruchom
react-llm-chat-studio
kod i przejdź dosrc/configs/models.json
. - Dodaj nazwę modelu i punkt końcowy modelu, a następnie wprowadź parametry ładunku z kroku 4 w sekcji
payload
używając następującego formatu: - Odśwież przeglądarkę, aby rozpocząć interakcję ze swoim nowym modelem!
Wdróż aplikację za pomocą Amplify
Amplify to kompletne rozwiązanie, które pozwala szybko i sprawnie wdrożyć aplikację. W tej sekcji opisano kroki wdrażania Chat Studio w pliku Amazon CloudFront dystrybucję za pomocą Amplify, jeśli chcesz udostępnić swoją aplikację innym użytkownikom.
- Nawiguj do
react-llm-chat-studio
folder code, który utworzyłeś wcześniej. - Wprowadź następujące polecenia w terminalu i postępuj zgodnie z instrukcjami instalacji:
- Zainicjuj nowy projekt Amplify za pomocą następującego polecenia. Podaj nazwę projektu, zaakceptuj konfiguracje domyślne i wybierz Klucze dostępu AWS po wyświetleniu monitu o wybranie metody uwierzytelniania.
- Hostuj projekt Amplify za pomocą następującego polecenia. Wybierać Amazon CloudFront i S3 po wyświetleniu monitu o wybranie trybu wtyczki.
- Na koniec zbuduj i wdróż projekt za pomocą następującego polecenia:
- Po pomyślnym wdrożeniu otwórz adres URL podany w przeglądarce i rozpocznij interakcję ze swoimi modelami!
Sprzątać
Aby uniknąć przyszłych opłat, wykonaj następujące czynności:
- Usuń stos CloudFormation. Aby uzyskać instrukcje, patrz Usuwanie stosu w konsoli AWS CloudFormation.
- Usuń punkt końcowy SageMaker JumpStart. Aby uzyskać instrukcje, zobacz Usuń punkty końcowe i zasoby.
- Usuń domenę SageMaker. Aby uzyskać instrukcje, zobacz Usuń domenę Amazon SageMaker.
Wnioski
W tym poście wyjaśniliśmy, jak utworzyć interfejs sieciowy do komunikacji z LLM wdrożonymi w AWS.
Dzięki temu rozwiązaniu możesz wchodzić w interakcję ze swoim LLM i prowadzić rozmowę w przyjazny dla użytkownika sposób, aby przetestować LLM lub zadać pytania LLM, a także uzyskać kolaż zdjęć i filmów, jeśli to konieczne.
Rozwiązanie to można rozbudowywać na różne sposoby, np. integrując dodatkowe modele fundamentów, zintegruj się z Amazon Kendra aby umożliwić inteligentne wyszukiwanie oparte na technologii ML w celu zrozumienia treści korporacyjnych i nie tylko!
Zapraszamy do eksperymentowania różne wstępnie przeszkolone LLM dostępne w AWSlub buduj na bazie lub nawet twórz własne LLM w SageMaker. Daj nam znać o swoich pytaniach i ustaleniach w komentarzach i baw się dobrze!
O autorach
Jarretta Yeo Shan Wei jest współpracownikiem Cloud Architect w AWS Professional Services obejmującym sektor publiczny w całym regionie ASEAN i jest zwolennikiem pomagania klientom w modernizacji i migracji do chmury. Uzyskał pięć certyfikatów AWS, a także opublikował artykuł badawczy na temat zespołów maszyn zwiększających gradient podczas 8. Międzynarodowej Konferencji na temat sztucznej inteligencji. W wolnym czasie Jarrett skupia się na scenie generatywnej sztucznej inteligencji w AWS i wnosi do niej swój wkład.
Tammy Lim Lee Xin jest Associate Cloud Architect w AWS. Wykorzystuje technologię, aby pomóc klientom osiągnąć pożądane rezultaty na drodze do wdrożenia chmury i pasjonuje się sztuczną inteligencją/ML. Poza pracą uwielbia podróżować, wędrować i spędzać czas z rodziną i przyjaciółmi.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- PlatoData.Network Pionowe generatywne AI. Wzmocnij się. Dostęp tutaj.
- PlatoAiStream. Inteligencja Web3. Wiedza wzmocniona. Dostęp tutaj.
- PlatonESG. Węgiel Czysta technologia, Energia, Środowisko, Słoneczny, Gospodarowanie odpadami. Dostęp tutaj.
- Platon Zdrowie. Inteligencja w zakresie biotechnologii i badań klinicznych. Dostęp tutaj.
- Źródło: https://aws.amazon.com/blogs/machine-learning/create-a-web-ui-to-interact-with-llms-using-amazon-sagemaker-jumpstart/
- :ma
- :Jest
- $W GÓRĘ
- 1
- 10
- 120
- 160
- 2021
- 3000
- 320
- 7
- 8
- 8
- a
- Zdolny
- O nas
- Akceptuj
- dostęp
- uznać
- w poprzek
- Dodaj
- Dodatkowy
- Przyjęcie
- rzecznik
- Po
- AI
- AI / ML
- Wszystkie kategorie
- pozwala
- wzdłuż
- również
- Amazonka
- Amazon Sage Maker
- Amazon SageMaker JumpStart
- Amazon Web Services
- wzmacniać
- an
- i
- api
- Zastosowanie
- zatwierdzony
- architektura
- SĄ
- Sztuka
- sztuczny
- sztuczna inteligencja
- AS
- ASEAN
- zapytać
- Aktywa
- Współpracownik
- At
- osiągnięty
- Uwierzytelnianie
- dostępność
- dostępny
- uniknąć
- AWS
- Tworzenie chmury AWS
- Usługi profesjonalne AWS
- bar
- baza
- na podstawie
- podstawowy
- BE
- bo
- BEST
- Najlepsze praktyki
- Ulepsz Swój
- pobudzanie
- Pudełko
- szeroki
- przeglądarka
- budować
- by
- wezwanie
- Połączenia
- CAN
- Może uzyskać
- możliwości
- zdolność
- Zajęte
- Etui
- certyfikaty
- Zmiany
- Opłaty
- nasze chatboty
- ChatGPT
- wybór
- Dodaj
- klasyfikacja
- dokładnie
- Chmura
- adopcja chmury
- kod
- komentarze
- kompletny
- Konferencja
- systemu
- połączenie
- Konsola
- zawartość
- przyczynia się
- Rozmowa
- konwersacyjny
- konwersacyjna sztuczna inteligencja
- Odpowiedni
- pokrywa
- pokrycie
- Stwórz
- stworzony
- Tworzenie
- ciekawy
- zwyczaj
- Klientów
- dane
- głęboko
- głęboka nauka
- Domyślnie
- dostarczyć
- W zależności
- rozwijać
- wdrażane
- wdrażanie
- Wdrożenie
- wdraża się
- opis
- Wnętrze
- życzenia
- detale
- deweloperzy
- różne
- Transmitowanie
- cyfrowy
- Sztuka cyfrowa
- wystawiany
- 分配
- domena
- pobieranie
- Wcześniej
- łatwość
- skutecznie
- umożliwiać
- zakończenia
- Punkt końcowy
- wzmacniać
- wzbogacać
- Wchodzę
- Enterprise
- Środowisko
- Parzyste
- Każdy
- przykład
- przykłady
- oczekuje
- drogi
- doświadczenie
- eksperyment
- wyjaśnione
- rozciągać się
- rozciąga się
- wyciąg
- członków Twojej rodziny
- Cecha
- kilka
- Łąka
- filet
- finał
- Znajdź
- Ustalenia
- pięć
- koncentruje
- obserwuj
- następujący
- W razie zamówieenia projektu
- format
- wychowanie
- Fundacja
- podstawowy
- Darmowy
- przyjaciele
- od
- w pełni
- funkcjonować
- dalej
- przyszłość
- Ogólne
- ogólne dane
- generujący
- generatywny
- generatywna sztuczna inteligencja
- otrzymać
- daje
- Gole
- Have
- he
- pomoc
- pomoc
- jego
- przytrzymaj
- Hosting
- GODZINY
- W jaki sposób
- How To
- HTML
- http
- HTTPS
- Ludzie
- Setki
- pomysł
- tożsamość
- if
- zdjęcia
- wyobraźnia
- wdrożenia
- ulepszony
- in
- zawierać
- Zwiększać
- wskazany
- wkład
- zainstalować
- zainstalowany
- Instalacja
- przykład
- Instytut
- instrukcje
- integrować
- integracje
- Inteligencja
- Inteligentny
- interakcji
- interakcji
- Interakcje
- Interfejs
- na świecie
- najnowszych
- zapraszać
- JEGO
- podróż
- jpg
- właśnie
- tylko jeden
- Klawisz
- Wiedzieć
- wiedza
- język
- duży
- uruchomić
- wodowanie
- nauka
- Lee
- niech
- lubić
- Linia
- Lama
- LLM
- miejscowy
- logika
- Popatrz
- wygląda jak
- kocha
- maszyna
- uczenie maszynowe
- zarządzane
- sposób
- Może..
- Oznaczało
- Media
- Poznaj nasz
- Menu
- metoda
- migrować
- ML
- Moda
- model
- modele
- zmodernizować
- jeszcze
- wielokrotność
- musi
- Nazwa
- Nawigacja
- Nawigacja
- niezbędny
- Potrzebować
- sieć
- nerwowy
- sieci neuronowe
- Nowości
- Nowe produkty
- nowo
- węzeł
- node.js
- noty
- notatnik
- uzyskane
- of
- on
- ONE
- koncepcja
- open source
- Opcje
- or
- Inne
- wyniki
- wydajność
- zewnętrzne
- przegląd
- własny
- strona
- chleb
- Papier
- parametr
- parametry
- namiętny
- uprawnienia
- plato
- Analiza danych Platona
- PlatoDane
- wtyczka
- Popularny
- popularność
- Post
- powered
- praktyki
- Korzystny
- warunki wstępne
- przywileje
- procesów
- Produkty
- profesjonalny
- projekt
- własność
- zapewniać
- pod warunkiem,
- dostawców
- zapewnia
- publiczny
- opublikowany
- Python
- pytania
- Szybki
- szybko
- podnieść
- zasięg
- real
- odnosić się
- odniesienie
- zażądać
- wywołań
- wymagany
- Badania naukowe
- przypomina
- Zasoby
- odpowiedź
- powrót
- Rosnąć
- run
- sagemaker
- klientów
- scena
- zadraśnięcie
- screeny
- Szukaj
- Tajemnica
- Sekcja
- sektor
- widzieć
- wybierać
- rozsądek
- służyć
- usługa
- Usługi
- zestaw
- Zestawy
- ustawienie
- Share
- ona
- powinien
- pokazać
- Targi
- skrawek
- rozwiązanie
- kilka
- Źródło
- Spędzanie
- stabilny
- stos
- standard
- Stanford
- początek
- rozpoczęty
- Rynek
- Ewolucja krok po kroku
- Cel
- przechowywanie
- studio
- taki
- wystarczający
- Brać
- trwa
- Technologia
- szablon
- terminal
- test
- XNUMX
- Klasyfikacja tekstu
- że
- Połączenia
- ich
- następnie
- Te
- one
- innych firm
- to
- chociaż?
- Przez
- czas
- do
- Top
- Pociąg
- przeszkolony
- Trening
- Przekształcać
- Transformacja
- przekształcony
- rodzaj
- ui
- dla
- zrozumienie
- URL
- us
- Stosowanie
- posługiwać się
- Użytkownik
- Doświadczenie użytkownika
- Interfejs użytkownika
- łatwy w obsłudze
- Użytkownicy
- zastosowania
- za pomocą
- wartość
- różnorodny
- Filmy
- spacer
- spacery
- sposoby
- we
- sieć
- usługi internetowe
- Co
- jeśli chodzi o komunikację i motywację
- który
- KIM
- szeroki
- Szeroki zasięg
- będzie
- chcieć
- w
- Praca
- workflow
- napisać
- Yeo
- You
- Twój
- zefirnet