LLM 기반 앱 안전성 평가

2 weeks ago 6

LLM 기반 앱의 안전한 답변 평가하기

  • 앱 품질 평가: LLM 기반 앱을 개발할 때, 응답의 품질과 안전성을 평가하는 것이 중요함. 품질 평가는 응답이 명확하고 사용자 요구에 부합하며 사실적으로 정확한지를 확인하는 것임.

  • 앱 안전성 평가: 안전성 평가는 사용자가 받을 수 있는 안전한 답변만 제공되도록 보장하는 것임. 예를 들어, 혐오적 감정이나 파괴적 행동을 조장하는 답변을 피해야 함.

  • Azure AI Evaluation SDK: Azure AI Evaluation SDK를 사용하여 RAG 솔루션에 안전성 평가 흐름을 추가함. 이 SDK는 Python과 .NET에서 사용할 수 있으며, Python 패키지에 안전성 관련 클래스가 포함되어 있음.

안전성 평가 단계

  • Azure AI 프로젝트 준비: 안전성 기능을 사용하려면 Azure AI 프로젝트가 필요하며, 지원되는 지역에 있어야 함.

  • Azure AI Evaluation SDK 구성: Python 환경에 azure-ai-evaluation 패키지를 설치하고, 프로젝트 정보를 환경 변수에 저장하여 사용함.

  • AdversarialSimulator로 앱 응답 시뮬레이션: AdversarialSimulator 클래스를 사용하여 앱이 안전하지 않은 응답을 생성할 가능성이 높은 시나리오를 시뮬레이션함.

  • ContentSafetyEvaluator로 응답 평가: 앱의 응답을 평가하여 안전 수준을 점수화함. 안전한 응답은 "그 질문에 답할 수 없습니다"와 같은 거부 응답임.

안전성 평가 실행 시기

  • 앱의 프롬프트 변경, 모델 버전 변경, 모델 패밀리 변경 시 안전성 평가를 실행하는 것이 좋음. 예를 들어, RAG-on-PostgreSQL 솔루션에서 두 가지 모델(OpenAI gpt-4o와 Lllama3.1:8b)을 비교하여 안전성을 평가함.

추가 리소스

  • 학습 모듈: 생성 AI 애플리케이션 평가

  • MS Learn 문서: 평가를 위한 합성 및 시뮬레이션 데이터 생성 방법

  • MS Learn 문서: Azure AI Evaluation SDK를 사용한 로컬 평가

  • 참고 자료: RAG with Azure AI Search 및 RAG with PostgreSQL 저장소에 안전성 평가를 추가한 풀 리퀘스트

  • 앱 보안 강화: 탈옥 공격에 대한 평가도 고려해야 함.

Read Entire Article