보안/교육

Official Practice Question Set: AWS Certified AI Practitioner

수달정보보호 2025. 10. 16. 20:48

Amazon Bedrock Guardrails

Amazon Bedrock Guardrails는 사용 사례 및 책임 있는 AI 정책에 따라 생성 AI 애플리케이션에 구성할 수 있는 보호 기능을 제공한다. 다양한 사용 사례에 맞춰 여러 가드레일을 생성하고, 여러 기반 모델(FM)에 적용하여 일관된 사용자 경험을 제공하고, 생성 AI 애플리케이션 전반에 걸쳐 안전 및 개인정보 보호 제어를 표준화할 수 있다. 또한, 모델 프롬프트와 자연어 응답 모두에 가드레일을 사용할 수도 있다.

Amazon Bedrock Guardrails를 다양한 방식으로 활용하여 생성 AI 애플리케이션을 안전하게 보호할 수 있다. 예를 들면 다음과 같다.

챗봇 애플리케이션은 가드레일을 사용하여 유해한 사용자 입력과 유해한 모델 응답을 필터링할 수 있다. 은행 애플리케이션은 가드레일을 사용하여 투자 조언을 구하거나 제공하는 것과 관련된 사용자 질의나 모델 응답을 차단하는 데 도움을 줄 수도 있다. 사용자와 상담원 간의 대화 내용을 요약하는 콜센터 애플리케이션은 가드레일을 사용하여 사용자의 개인 식별 정보(PII)를 삭제하여 사용자 개인 정보를 보호할 수 있다.

 

Amazon Bedrock Guardrails는 유해한 콘텐츠를 감지하고 필터링하기 위해 다음과 같은 보호 장치(=정책)를 제공한다.

① 콘텐츠 필터: 입력 프롬프트 또는 모델 응답에서 유해한 텍스트 또는 이미지 콘텐츠를 감지하고 필터링한다. 필터링은 증오, 모욕, 성, 폭력, 위법 행위, 즉흥적 공격 등 미리 정의된 유해 콘텐츠 범주를 감지하여 수행된다. 각 범주의 필터 강도를 조정할 수도 있다.

② 거부된 주제: 애플리케이션 컨텍스트에서 바람직하지 않은 주제 집합을 정의한다. 이 필터는 사용자 쿼리 또는 모델 응답에서 이러한 주제가 감지될 경우 차단하는 데 도움이 된다.

③ 단어 필터: 원치 않는 단어, 문구, 욕설(정확히 일치하는 단어)을 차단하는 필터를 구성할 수 있다. 이러한 단어에는 불쾌감을 주는 용어, 경쟁사 이름 등이 포함될 수 있을 것이다.

④ 민감한 정보 필터: 개인 식별 정보(PII)와 같은 민감한 정보나 사용자 입력 및 모델 응답의 사용자 지정 정규식을 차단하거나 마스킹하는 데 도움이 되는 필터를 구성한다. 차단 또는 마스킹은 주민등록번호, 생년월일, 주소 등과 같은 엔터티의 표준 형식에 포함된 민감한 정보를 확률적으로 탐지하여 수행된다. 또한, 식별자 패턴 탐지를 위한 정규 표현식 기반 탐지를 구성할 수도 있다.

⑤ 상황별 기반 검사: 출처에 기반한 근거와 사용자 질의와의 관련성을 토대로 모델 응답 내 환각 현상을 탐지하고 필터링하는 데 도움된다.

⑥ 자동 추론 검사: 일련의 논리적 규칙에 따라 기초 모델 응답의 정확성을 검증하는 데 도움이 된다. 자동 추론 검사를 사용하여 환각을 감지하고, 수정 사항을 제안하고, 모델 응답에서 언급되지 않은 가정을 강조할 수 있다.

위의 정책 외에도 사용자 입력이나 모델 응답이 가드레일에 정의된 정책을 위반하는 경우 사용자에게 반환할 메시지를 구성할 수도 있다. 


가드레일은 추론 API 호출 시 가드레일 ID와 버전을 지정하여 FM과 직접 함께 사용할 수 있다. 또한, ApplyGuardrail기반 모델을 호출하지 않고 API를 통해 가드레일을 직접 사용할 수도 있다. 가드레일을 사용하면 정의된 정책에 따라 입력 프롬프트와 FM 완료를 평가하게 된다.

검색 증강 생성(RAG) 또는 대화형 애플리케이션의 경우, 시스템 지침, 검색 결과, 대화 기록 또는 몇 가지 짧은 예시를 제외하고 입력 프롬프트에서 사용자 입력만 평가해야 할 수 있다.

생성형 AI의 세션에서 파운데이션 모델(FM)

FM은 참가할 양의 데이터를 사전 훈련하고 실제로 활동할 수 있는 모델이다. 더 작은 데이터 세트를 사용하여 다운 스트림 이벤트에 도전할 수도 있다. FM은 훈련용으로 포함된 모델이 아니라는 점을 기억해야 한다. 결국, 금융 또는 서비스 등의 제한된 용도에서 훈련을 담당하는 지역에 기반을 둔 보존 모델이다.

 

Amazon SageMaker Jumpstart를 이용하면, FM을 사용하여 계약서가 규정 준수 규칙을 지키는지 평가할 수 있다. SageMaker JumpStart는 사전 훈련된 오픈 소스 모델을 사용할 수 있도록 제공하는 SageMaker AI의 특성이다. SageMaker JumpStart는 요약 사용 사례에 적합한 FM을 제공한다.

 

(*  Amazon SageMaker AI 추론 옵션을 비교할 때, 실시간 추론이 지연시간이 아주 낮고, 그 다음은 비동기식 추론이며, 배치 변환의 지연시간이 제일 높음에 주의한다.)

 

그런데 FM은 사전 훈련'만' 가능한 것이 아니다. 사용자 지정도 가능하다. FM을 사용자 지정하려면 사전 훈련된 공개 FM을 사용하는 것보다 더 많은 예산이 필요하다. FM을 사용자 지정하려면 태스크를 수행할 컴퓨팅 리소스와 숙련된 ML 엔지니어가 필요하기 때문이다. 이 프로세스는 사전 훈련된 FM을 사용하는 것보다 구현이 더 복잡하고 더 많은 노력이 필요하다. 훈련 데이터를 준비하고, 재훈련을 설정하고, 모델을 평가하여 모델이 좋은 성능을 내는지 확인해야 하기 때문이다. 이렇게만 들으면 돈만 많이 먹는다고 생각할 수 있으나, 독점 데이터 및 사용 사례별 데이터로 FM을 사용자 지정하면 할루시네이션 위험이 줄어드는 장점이 있다. 즉, 정확도가 늘어난다. 또한, 그러면서도 지연 시간에는 영향이 없다. 지연 시간은 모델이 입력을 받은 후 출력을 제공하는 데 걸리는 시간을 말하는데, 전용 데이터 및 사용 사례별 데이터로 FM을 사용자 지정해도 추론 또는 작동 중에 지연 시간이 길어지지는 않는다. 즉, 합리적인 현질이라는 것이다.

 

한편, 모델의 성능을 개선하기 위해 훈련 데이터세트의 변수 수를 늘리길 원한다면, ① 특성 추출 ② 데이터 수집을 통해 늘릴 수 있을 것이다.

 

그렇게 만들어진 FM의 성능을 평가하고 싶다면, ROUGE(Recall-Oriented Understudy for Gisting Evaluation)가 좋은 선택이 될 수 있다. ROUGE는 텍스트 요약 및 텍스트 생성의 품질을 평가하는 데 사용할 수 있는 지표다. ROUGE를 사용하여 텍스트 생성을 위한 FM의 성능을 평가할 수 있다.

 

만일 SageMaker Model Cards를 사용하면, 레코드를 생성하고 ML 모델에 대한 세부 정보를 한 곳에서 문서화할 수 있다. SageMaker Model Cards는 필수 모델 정보에 대한 포괄적이고 변경 불가능한 문서를 제공하여 투명하고 설명 가능한 모델 개발을 지원한다.

명령 기반 미세 조정(파인 튠)

명령어 기반 미세 조정(Instruction-based fine-tuning)은 레이블이 지정된 예시를 사용하여 사전 학습된 파운데이션 모델의 특정 작업 성능을 향상시키는 방식이다. 이 레이블이 지정된 예시들은 프롬프트와 응답 쌍으로 구성되며, 명령어의 형태로 표현된다. 이 미세 조정 과정은 모델의 가중치를 수정한다. 

 

FLAN(Fine-tuned LAnguage Net) 모델은 명령어 튜닝을 사용하여 모델이 일반적인 하위 자연어 처리(NLP) 작업을 해결하는 데 더 적합하도록 만든다. Amazon SageMaker JumpStart는 FLAN 모델 계열의 여러 파운데이션 모델을 제공한다. 예를 들어, FLAN-T5 모델은 다양한 일반적인 사용 사례에 대한 제로샷(zero-shot) 성능을 높이기 위해 광범위한 작업에 대해 명령어 미세 조정되기도 했다.

 

추가적인 데이터와 미세 조정을 통해 명령어 기반 모델은 사전 학습 시 고려되지 않았던 더 구체적인 작업에 맞게 추가로 조정될 수 있다.

 

① 특정 작업에 대한 미세 조정 방법

프롬프트-응답 쌍 작업 명령어를 사용하여 대규모 언어 모델(LLM)을 특정 작업에 미세 조정하려면 다음 단계를 따라야 한다.

 

⑴ JSON 파일로 명령어 준비

⑵ 미세 조정 훈련 작업 생성

⑶ 예제 확인

 

여기서 주의할 점은, JumpStart 파운데이션 모델 중 일부만 명령어 기반 미세 조정과 호환된다는 점이다. 

Amazon Polly

Amazon Polly는 텍스트를 스피치로 변환하는 서비스다. Amazon Polly를 사용하면 참여도와 접근성을 높이는 애플리케이션을 개발할 수 있을 것이다. Amazon Polly는 여러 언어를 지원하며, 다양하고 생생한 음성을 포함한다. Amazon Polly를 사용하면 여러 위치에서 고객에게 적합한 음성을 사용하는 스피치 지원 애플리케이션을 빌드할 수도 있다. 또한, 합성한 텍스트에 대해서만 비용을 지불한다. 또한, Amazon Polly에서 생성된 스피치를 캐시하여 추가 요금 없이 재생할 수 있다.

 

Amazon Polly는 생성형, 롱폼, 신경망 및 표준 텍스트-투-스피치(TTS) 옵션을 비롯한 다양한 음성 옵션을 제공한다. 이러한 음성은 새로운 기계 학습 기술을 사용하여 음성 품질을 획기적으로 개선하고 최대한 자연스럽고 사람과 유사한 텍스트-투-스피치 음성을 제공한다. 상황에 따라 앵커 톤, MC 톤 등 모두가 가능한 것이다.

 

Amazon Textract

Amazon Textract는 애플리케이션에 문서 텍스트 감지 및 분석 기능을 추가하도록 돕습니다. Amazon Textract를 사용하면 다음을 수행할 수 있다.

 

① 재무 보고서, 의료 기록, 세금 양식을 포함하여 다양한 문서에서 인쇄된 텍스트와 필기 텍스트를 감지한다.

② Amazon Textract 문서 분석 API를 사용하여 구조화된 데이터가 포함된 문서에서 텍스트, 양식 및 표를 추출한다.

③ Amazon Textract Analyze Document API 내의 쿼리(Queries) 기능을 사용하여 문서에서 정보를 지정하고 추출한다.

④ AnalyzeExpense API를 사용하여 송장(인보이스)과 영수증을 처리한다.

⑤ AnalyzeID API를 사용하여 미국 정부에서 발급한 운전면허증 및 여권과 같은 신분증 문서를 처리한다.

⑥ Analyze Lending 워크플로를 사용하여 모기지 대출 패키지를 업로드하고 처리하며, 문서 페이지를 적절한 Amazon Textract 분석 작업으로 자동 라우팅한다. 그리하여 각 문서 페이지에 대한 분석 결과를 검색하거나 일련의 문서 페이지에 대한 요약된 결과를 검색할 수 있다.

⑦ 사용자 지정 쿼리(Custom Queries)를 사용하여 고객의 다운스트림 처리 요구 사항을 지원하기 위해 고객의 데이터를 활용하여 사전 학습된 쿼리 기능을 사용자 지정한다.

 

Amazon Textract는 Amazon의 컴퓨터 비전 과학자들이 매일 수십억 개의 이미지와 비디오를 분석하기 위해 개발한 검증되고 확장성이 뛰어난 동일한 딥러닝 기술을 기반으로 한다. Amazon Textract에는 이미지 파일과 PDF 파일을 분석할 수 있는 간단하고 사용하기 쉬운 API 작업이 포함되어 있으므로, 이를 사용하기 위해 기계 학습 전문 지식이 필요하지 않다.

Amazon Kendra

Amazon Kendra는 자연어 처리와 고급 딥러닝 모델을 사용하는 관리형 정보 검색 및 지능형 검색 서비스다. 기존의 키워드 기반 검색과 달리, Amazon Kendra는 의미론적 및 문맥적 유사성 그리고 순위 지정 기능을 사용하여 텍스트 청크 또는 문서가 검색 쿼리와 관련이 있는지 결정한다.

 

Amazon Kendra를 사용하면 여러 데이터 저장소를 하나의 인덱스에 연결하고 문서를 수집 및 크롤링하여 통합된 검색 및 검색 경험을 만들 수 있다. 문서 메타데이터를 사용하여 사용자 지정되고 기능이 풍부한 검색 경험을 사용자에게 제공할 수 있으며, 사용자가 쿼리에 대한 올바른 답변을 효율적으로 찾도록 돕는다.

Amazon Comprehend

Amazon Comprehend는 자연어 처리(NLP)를 사용하여 문서 내용에 대한 통찰력을 추출한다. 이는 문서 내의 개체(entities), 핵심 구문, 언어, 감정 및 기타 일반적인 요소를 인식하여 통찰력을 개발한다. 그리하여, Amazon Comprehend를 사용하여 문서 구조를 이해하는 것에 기반한 새로운 제품을 만들 수 있을 것이다. 예를 들어, Amazon Comprehend를 사용하여 소셜 네트워킹 피드에서 제품 언급을 검색하거나 전체 문서 저장소를 핵심 구문 검색할 수 있다.

 

Amazon Comprehend 콘솔이나 Amazon Comprehend API를 사용하면 Amazon Comprehend 문서 분석 기능에 접근할 수 있다. 소규모 작업 부하에 대해서는 실시간 분석을 실행하거나, 대규모 문서 세트에 대해서는 비동기식 분석 작업을 시작할 수도 있다. Amazon Comprehend가 제공하는 사전 학습된 모델을 사용할 수도 있고, 분류 및 개체 인식을 위해 자체 사용자 지정 모델을 훈련할 수도 있다.

Amazon Transcribe

 Amazon Transcribe는 음성을 텍스트로 변환하는 데 사용할 수 있는 서비스다. Amazon Transcribe를 사용하여 오디오 녹음의 트랜스크립션을 제공할 수 있다.

 

미디어에 도메인별 용어나 비표준 용어가 포함된 경우, 사용자 지정 어휘 또는 사용자 지정 모델을 사용하여 트랜스크립션의 정확도를 높일 수 있다. 도메인별 또는 비표준 용어의 예로는 브랜드 이름, 약어, 기술 용어 및 전문 용어가 있다.

검색 증강 생성(RAG)

검색 증강 생성(RAG)은 대규모 언어 모델의 출력을 최적화하여 응답을 생성하기 전에 훈련 데이터 소스 외부의 신뢰할 수 있는 기술 자료를 참조하도록 하는 프로세스다. 대규모 언어 모델(LLM)은 방대한 양의 데이터를 기반으로 훈련되며, 수십억 개의 파라미터를 사용하여 질문에 대한 답변, 언어 번역, 문장 완성 등의 작업에서 독창적인 결과를 생성한다.

 

그런데 RAG는 이미 강력한 LLM의 기능을 특정 도메인이나 조직의 내부 기술 자료로 확장하므로 모델을 다시 훈련할 필요가 없다. 이는 LLM 결과를 개선하여 다양한 상황에서 연관성, 정확성 및 유용성을 유지하기 위한 비용 효율적인 접근 방식이라 할 수 있다.

 

RAG의 이점은 다음과 같다.

① 비용 효율적: 챗봇 개발은 일반적으로 파운데이션 모델을 사용하여 시작된다. 파운데이션 모델(FM)은 광범위한 일반화 데이터와 레이블이 지정되지 않은 데이터에 대해 훈련된 API 액세스 가능 LLM다. 조직 또는 도메인별 정보를 위해 FM을 재교육하는 데 컴퓨팅 및 재정적 비용이 많이 소요되지만, RAG를 사용한다면 LLM에 새 데이터를 더 비용 효율적으로 도입할 수 있다. 그리고 생성형 인공 지능(생성형 AI) 기술을 보다 폭넓게 접근하고 사용할 수도 있다. 최소한의 개발 노력을 원한다면, RAG가 적합한 선택이 될 것이다.

② 최신의 정보 제공: LLM의 원본 훈련 데이터 소스가 요구 사항에 적합하더라도 연관성을 유지하기가 어렵다. 그럴 때 개발자는 RAG를 사용하여 생성형 모델에 최신 연구, 통계 또는 뉴스를 제공할 수 있다. RAG를 사용하여 LLM을 라이브 소셜 미디어 피드, 뉴스 사이트 또는 기타 자주 업데이트되는 정보 소스에 직접 연결할 수 있기 때문이다. 그러면 LLM은 사용자에게 최신 정보를 제공할 수 있다.

③ 사용자 신뢰 강화: RAG은 LLM이 소스의 저작자 표시를 통해 정확한 정보를 제공할 수 있게 한다. 출력에는 소스에 대한 인용 또는 참조가 포함될 수 있을 것이다. 이를 통해 생성형 AI 솔루션에 대한 신뢰와 확신을 높일 수 있다.

④ 개발자 제어 강화: 개발자는 RAG를 사용하여 채팅 애플리케이션을 보다 효율적으로 테스트하고 개선할 수 있다. 변화하는 요구사항 또는 부서 간 사용에 맞게 LLM의 정보 소스를 제어하고 변경할 수도 있다. 또한, 개발자는 민감한 정보 검색을 다양한 인증 수준으로 제한하여 LLM이 적절한 응답 생성을 유도할 수 있다. 그리고 LLM이 특정 질문에 대해 잘못된 정보 소스를 참조하는 경우 문제를 해결하고 수정할 수도 있다.

Amazon Inspector

Amazon Inspector는 소프트웨어 취약성과 의도하지 않은 네트워크 노출에 대해 워크로드를 지속적으로 스캔하는 취약성 관리 서비스다. Amazon Inspector는 모범 사례 및 일반적인 취약성을 기반으로 자동 보안 검사를 수행하여 AWS 리소스의 보안 및 규정 준수를 평가한다. Amazon Inspector는 EC2 인스턴스 및 Amazon ECR 리포지토리를 평가하여 문제 해결을 위한 세부적 결과 및 권장 사항을 제공할 수도 있다. 따라서 Amazon Inspector를 사용하면 안전하고 규정을 준수하는 AWS 환경을 유지할 수 있다.

Zero-shot Learning

제로샷 학습은 모델을 훈련하여 보지 못한 클래스나 작업에 대해 일반화하고 예측을 수행하는 것을 포함한다. 제로샷 학습 환경에서 프롬프트 엔지니어링을 수행하려면, 대상 작업과 원하는 출력 형식에 대한 정보를 명시적으로 제공하는 프롬프트를 구성하는 것이 좋다.

 

예를 들어, 훈련 중에 모델이 보지 못한 클래스 세트에 대해 파운데이션 모델을 제로샷 텍스트 분류에 사용하려는 경우, 잘 설계된 프롬프트는 "다음 텍스트를 스포츠, 정치 또는 엔터테인먼트 중 하나로 분류한다: [입력 텍스트]"와 같을 수 있다. 대상 클래스와 예상 출력 형식을 명시적으로 지정함으로써, 보지 못한 클래스에 대해서도 모델이 정확한 예측을 하도록 안내할 수 있다는 것이다.

Few-shot Learning

퓨샷 학습은 새로운 클래스나 작업에 대해 제한된 양의 데이터로 모델을 훈련하는 것을 포함한다. 퓨샷 학습 환경에서의 프롬프트 엔지니어링은 제한된 가용 훈련 데이터를 효과적으로 사용하는 프롬프트를 설계하는 데 중점을 둔다.

 

예를 들어, 파운데이션 모델을 이미지 분류 작업에 사용하고 새로운 이미지 클래스에 대한 예시가 몇 개만 있는 경우, 사용 가능한 레이블이 지정된 예시와 대상 클래스에 대한 플레이스홀더를 포함하는 프롬프트를 설계할 수 있다. 예를 들어, 프롬프트는 "[이미지 1], [이미지 2] 그리고 [이미지 3]은 [대상 클래스]의 예시다. 다음 이미지를 [대상 클래스]로 분류한다"와 같을 수 있다.

 

제한된 레이블이 지정된 예시를 통합하고 대상 클래스를 명시적으로 지정함으로써, 최소한의 훈련 데이터로도 모델이 일반화하고 정확한 예측을 하도록 안내할 수 있는 것이다.

 

맞춤형 제품 설명을 생성하려고 하는데, 상품 설명은 기존 웹 사이트의 고유한 스타일 및 어조와 일치해야 한다면 퓨샷이 적합한 것이다.

과대적합과 과소적합

과대적합은 기계 학습 모델이 훈련 데이터에 대한 정확한 예측을 제공하지만 새 데이터에 대해서는 제공하지 않을 때 발생하는 바람직하지 않은 기계 학습 동작이다. 데이터 과학자는 기계 학습 모델을 사용하여 예측을 수행할 때 먼저 알려진 데이터 세트에 대해 모델을 훈련시킨다. 그런 다음 이 정보를 기반으로 모델은 새 데이터 세트에 대한 결과를 예측하려고 시도한다. 과적합 모형은 부정확한 예측을 제공할 수 있으며, 모든 유형의 새 데이터에 대해 제대로 수행되지는 않는다.

 

반면, 과소적합은 모델이 입력 데이터와 출력 데이터 간의 유의미한 관계를 확인할 수 없을 때 발생하는 또 다른 유형의 오류다. 적절한 기간 동안 많은 데이터 포인트에 대해 훈련하지 않으면 과소적합 모델이 된다.

 

과소적합 모델은 훈련 데이터와 테스트 세트 모두에 대해 부정확한 결과를 제공하므로 편향성이 높다. 반면, 과대적합 모델높은 분산을 경험한다. 즉, 훈련 세트에 대해서는 정확한 결과를 제공하지만 테스트 세트에 대해서는 정확한 결과를 제공하지 않는다. 모델 훈련이 많을수록 편향은 줄어들지만 분산은 증가할 수 있다. 그렇기에 데이터 사이언티스트는 모델을 피팅할 때 과소적합과 과대적합 사이의 최적점을 찾는 것을 목표로 한다.

 

728x90