-
[AWS Bedrock] RAG를 위한 지식베이스 생성Programing/AWS 2024. 2. 27. 23:19반응형
이전 글에서는 Bedrock을 이용해 간단한 서비스를 생성했습니다.
하지만 이정도만 할 거라면 굳이 AWS를 사용할 필요가 없죠.
OpenAI나 기타 서비스가 제공하는 API를 이용하는게 훨씬 간편하고 저렴하니까요.
클라우드를 이용할 때의 장점 중 하나는 여러 서비스 자원을 쉽게 활용할 수 있다는 것이므로,
이번에는 Bedrock이 S3 저장소에 있는 자료를 참고해서 답변을 하도록 해보겠습니다.
전반적인 구조는 다음과 같습니다.
사전준비
bedrock이 접근할 수 있는 벡터데이터베이스는 다음과 같습니다.
이 중, 가장 간단한 형태인 OpenSearch Serverless를 이용해 보겠습니다.
1) S3 버킷, 데이터 준비
Bedrock이 참고할만한 S3 버킷을 준비해주세요.
저는 테스트용으로 S3 버킷을 새로 만든 뒤,
네이버지도에서 크롤링한 맛집 데이터 200개를 하나의 csv에 담아서 올렸습니다.
2) IAM계정으로 로그인
만약 root계정이라면, IAM계정으로 다시 로그인해야합니다.
왜 인지는 모르겠지만 root는 지식베이스 생성이 불가합니다.
Knowledge base 생성
임베딩 선택시 access 권한 있는 모델인지 사전에 확인해주세요. (이전 글의 [시작하기] 참조)
Vector database를 OpenSearch Serverless가 아닌, 타 DB를 선택하고 싶다면
하단에서 Choose vector store you have created를 선택하시면 됩니다.
Step4까지 가서 Create knowledge base 버튼을 누르면 생성을 시작합니다.
약 10분정도가 지나니 생성이 완료되었습니다!
테스트
현재, 지식베이스 생성 결과를 AWS워크벤치 상에서 테스트 할 수 있는 모델은 Anthropic의 모델밖에 없습니다.
따라서 Anthropic에 대한 Access 권한도 추가로 요청한 뒤 아래의 테스트를 진행했습니다.
실 데이터에 기반해서 꽤 그럴싸한 답변을 도출했습니다!
다만 아직 답변도출 시간, 퀄리티에 대해 아쉬운 점이 많습니다.
- 임베딩 모델 or 응답생성 모델을 타 모델로 변경할 경우
- 1개의 csv파일이 아닌 각 정보단위 별로 파일을 분리할 경우
답변 도출에 얼마나 걸릴지, 그 퀄리티는 어떨지 테스트 할 필요가 있을 듯 합니다.
반응형'Programing > AWS' 카테고리의 다른 글
[AWS Bedrock] Langchain과 Bedrock 함께쓰기 (2) 2024.03.12 [AWS Bedrock] Agents로 Bedrock 기능 구체화하기 (0) 2024.03.03 [AWS Bedrock] Bedrock 시작하기 (0) 2024.02.27 [생성AI 서비스 선택] AWS Sagemaker VS AWS Bedrock (0) 2024.02.26 [Python] AWS S3에 모델파일 저장하기, 불러오기 (boto3) (0) 2023.02.16