brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Jan 18. 2024

AWS 45탄-2. 생성형 AI 서비스-Bedrock

목표

Amazon Bedrock = 파운데이션 모델(FM)을 사용하는 생성형 AI를 알아보자.

플레이 그라운드인 PartyRock  사용법을 알아보자.

배드락을 통해 직접 모델을 호출하고, 결과를 출력하는 이미지 생성 애플리케션 만들어 보자.

// 참고: 파운데이션 모델 = 사전 학습된 모델




<1> 생성형 AI (Generative AI) 란?

<2> Amazon Bedrock = 파운데이션 모델(FM)을 사용하는 생성형 AI이다.

<3> Amazon Bedrock  특징

<4> 플레이 그라운드인 PartyRock 사용해 보자- 실습

<5> 베드락을 통해 직접 모델을 호출하고, 결과를 출력하는 이미지 생성 애플리케이션 만들기 - 실습





<1> 생성형 AI (Generative AI) 란?


1

인공지능의 한 형태, 사전의 데이터로 새로운 기술을 생성한다.

대화, 스토리, 이미지, 동영상, 이미지 등을 생성할 수 있다.

방대한 데이터를 기반으로 알고리즘으로 만들어 놓은 것이다.= 파운데이션 모델 = FM 

파운데이션 모델이 계속 나오고 있다.

사용하기 위한 방법이 제공되고 있다.



2

파운데이션 모델을 기반으로 한 생성형 AI

방대한 양의 비정형 데이터에 대한 사전 훈련

복잡한 개념을 훈련할수 있는 파라미터 - 실제 사용시 파라미터 수정해가며 확인 가능하다.



3

코드 관련해서도 서비스를 제공한다. = 아마존  코드 휘스프러  서비스 제공한다.





<2> Amazon Bedrock = 파운데이션 모델(FM)을 사용하는 생성형 AI이다.


1

인프라 관리 없이 API를 통해 FM을 사용한다.




2

용도에 가장 적합한 모델을 사용하자.


다양한 FM 들?


Amazon

Amazon Titan 

텍스트 요약, 생성, 분류



AI21labs

Jurassic-2

다국어를 지원하는 모델

여러 언어로 텍스트 생성



ANTHROP\C

Claude2

다양한 대화와 텍스트 작업 수정

필터링 제공

엔트로픽사



cohere

Command+Embed

코희어 (Cohere) 사

대화 등 실용적인 애플리케이션



Stability.ai 

Stable Diffusion XL 1.0

TEXT to IMAGE 생성 모델

고품질 이미지 등 기능



가장 적합한 모델을 선택하여 고객이 필요한 것을 제공한다!!!




4

사용 사례


텍스트 생성을 통해 독창적인 콘텐츠 생성 - 소설, 에세이

챗봇 기능으로 대화형 인터페이스 지원

이미지 생성

텍스트 요약 가능 - 장문의 텍스트 요약

빠른 검색

개인화





<3> Amazon Bedrock  특징


1

핵심 API인 invoke Model  만으로도 서비스 구현할 수 있다.

모델 ID , 콘텐츠 유형을 전달하여  결과를 받아오는 방식이다.

이 API를 활용하면 다양한 변환작업이 가능, 텍스트에서 이미지 등

텍스트 to 테스트, 텍스트 to 이미지 가능 하다.

모델을 호출하고 원하는 결과를 받을 수 있다.

타이탄등 지원이 된다.

가장 적합한 모델을 선택하여 사용하면 된다.



2

Bedrock Core API  : Streaming responses

모델을 호출하고 받는 결과를 이벤트 스트리밍 형식으로 응답받는 API도 제공한다.



3

LangChain에서도  사용 가능하다.

보다 쉽게 애플리케이션 개발 가능하게 해 준다.



4

파인 튜닝( Fine-tunning)?

API를 사용하여 파인 튜닝된 모델 생성.



5

안전한 데이터 보호?

프롬프트 데이터나 고객 데이터는 다른 고객을 위한 모델을 개선하는 데 사용되지 않는다.

리전에 유지됨.



6

모니터링은 CloudWatch와의 통합해 사용한다.

모델 호출 횟수

호출 지연 시간

클라이언트 측 오류, 서버 측 오류 등 모니터링 가능하다.





<4> 플레이 그라운드인 PartyRock 사용해 보자- 실습



1

아마존 베드락 기반의 플레이 그라운드 서비스인 파티락.


https://partyrock.aws/


파티락 샘플 - 일본의 정형시 생성하는 애플리케이션




2

샘플 1

계절인 winter   입력하면 내용과 이미지 나옴


샘플 2

가고자 하는 지역 입력하면 내용이 나온다.


샘플 3

팟캐스트는 토픽을 입력하면 팟캐스트 이름과 커버 이미지를 생성해 준다.



2

실습 1. AWS 서비스 도우미 만들어보자.


https://partyrock.aws/



Build your own app 



aws 서비스 도우미 입력

Generate app



완성

확인해 보자.

ec2 생성법 알려줘







실습 2.  네이버 클라우드 서비스 도우미도 만들어 질까?



만들어진다.














<5> 베드락을 통해 직접 모델을 호출하고, 결과를 출력하는 이미지 생성 애플리케이션 만들기 - 실습



1

Amazon Bedrock으로 검색.


오래곤 리전으로 변경





2

 get started 클릭 > Manage Model  Access (모델 액세스)  클릭




3

베드락에서 사용할 모델과 권한을 요청해야 한다.

오른 상단의 Manage model Access (모델 액세스 관리) 버튼 클릭.

Stale Diffusion 사용할 예정이라  SDXL 1.0 선택 > 변경 사항 저장한다.

Access 허용되면 정상!!  

10분 걸림




진행중



4

샘플코드

https://github.com/AWS-Janghwan/Genai_App/tree/main



5

샘플 코드 설명?


Step #1

파이선 예제 필요한 모듈, Stable Diffusion에서 제공되는 Preset Style 목록



Step #2  

아마존 배드락 실행

아마존 배드락을 API로 호출하기 위해 정보를 초기화하기 위한 부분

리전에 오래곤  us-west2 입력



Step #3  

스테블 디포전 모델 실행 (invoke)

모델 부분에 다른 모델을 넣으면 다른 모델도 가능한 코드이다.



Step #4  

API로 받은 결과를 화면에 출력해 주는 내용이다.

파이썬 이미지 라이브러리를 사용해 화면에 출력해 준다.



Step #5

 Streamlit을 사용하여 웹페이지를 통해 베드락과 상호작용한다.

서비스를 이용할 수 있도록 구성함.



6

전체 코드를 IDE환경에 복사해 코드를 실행해 보자.


AWS IDC의 Cloud9 사용

genai.py를 만들고 복사한다.

실행



pip3 install streamlit


Streamlit run genai.py 




웹 브라우저로 접속



7

사용








8

테스트를 마쳤으면 사용하지 않는 모델은 remove




다음 AI

https://brunch.co.kr/@topasvga/3618



감사합니다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari