AWS Bedrock과 Nova Pro로 영화 추천 챗봇 구축 가이드 (60자 이내)
SEO 설명: AWS
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

영화 추천 챗봇 구축: AWS Bedrock과 Nova Pro 활용

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

웹 개발

대상자

AWS 서비스 경험자, 클라우드 애플리케이션 개발자 (난이도: 중간~고급)

핵심 요약

  • AWS Bedrock의 Nova Pro 모델Converse API를 활용한 컨텍스트 유지형 챗봇 구현
  • S3 + CloudFront + Route 53을 통한 정적 웹 호스팅 및 CDN 구성
  • DynamoDB를 사용한 세션 관리 및 ElasticSearch 컨테이너 배포 (EC2 기반)
  • Lambda + API Gateway를 통한 실시간 영화 추천 로직 구현

섹션별 세부 요약

1. 프론트엔드 배포

  • S3 버킷 생성 및 정적 웹 호스팅 활성화 (도메인: chitrangi.cloudnirvana.in)
  • CloudFront 배포 및 SSL 인증서 적용 (Certificate Manager 사용)
  • Route 53 서브도메인 레코드 생성 (CloudFront에 연결)
  • HTML/CSS/JavaScript 기반 챗봇 인터페이스 구현 (typing indicator, 메시지 스타일링 포함)
  • localStorage를 활용한 세션 ID 관리 (crypto.randomUUID() 사용)

2. API 계층 배포

  • Python 기반 Lambda 함수 생성 (Chitrangi)
  • API Gateway HTTP API 설정 및 Lambda와의 통합 (CORS 활성화)
  • Lambda 핵심 로직:

```python

import boto3

def lambda_handler(event, context):

# DynamoDB에서 영화 데이터 검색 + Bedrock 모델 사용

# Nova Pro 모델을 통한 사용자 입력 처리

```

3. 백엔드 서비스 구축

  • DynamoDB 테이블 생성:

- imdb_movies (Partition Key: movie_id, Sort Key: title)

- chatbot_sessions (Partition Key: session_id, Sort Key: timestamp)

  • 데이터 로딩 스크립트:

```python

import pandas as pd

df = pd.read_csv("imdb_movies.csv")

for index, row in df.iterrows():

dynamodb.Table("imdb_movies").put_item(Item=row.to_dict())

```

  • EC2 인스턴스로 ElasticSearch 컨테이너 실행 (오픈소스 도메인 생성 대신 유연한 관리 목적)
  • Bedrock 모델 활용:

- Titan Text Embeddings V2 (벡터 생성)

- Nova Pro (사용자 프롬프트 처리)

결론

  • AWS 서비스 통합을 통한 실시간 영화 추천 챗봇 구현 시, Lambda + API Gateway의 비동기 처리가 핵심
  • DynamoDB의 세션 관리와 ElasticSearch의 검색 성능을 최적화해야 하며, Bedrock 모델 접근 권한은 사전 요청 필수
  • 프론트엔드 개발 시, CSS 애니메이션JavaScript 이벤트 핸들링을 통해 자연스러운 사용자 경험 구현 권장