AI 기술이 발전하면서 거대 언어 모델(LLM)과 검색 증강(RAG, Retrieval-Augmented Generation)을 활용한 앱 개발이 활발해지고 있습니다.
구글 클라우드 환경에서는 다음과 같이 간편하게 서버리스 환경에서 LLM과 RAG를 적용한 AI 앱을 쉽게 구현해 사용자에게 서비스를 제공할 수 있습니다.
🤔 LLM과 RAG 기반 앱 개발에서 꼭 고려해야 할 것은?
LLM, RAG 그리고 개발 도구와 플랫폼의 빠른 발전 덕분에 도메인 특화 LLM을 다양한 앱에 적용하는 것은 점점 더 편리해지고 있습니다. 구현이 쉽다고 당장 실제 앱에 반영할 수 있는 것은 또 아닌데요. 기업은 강력한 보안 정책과 규제 가이드라인을 따라야 하다 보니 보안 측면에서 따져봐야 할 것이 여전히 많습니다. 이번 포스팅에서는 LLM과 RAG를 활용할 때 기업의 중요 자산이자 민감한 자산 중 하나인 데이터베이스를 어떻게 활용할 것 인지를 보안 측면에서 풀어 보았습니다.
LLM과 RAG를 통해 더 정교하고 정확한 답변을 사용자에게 제공하고자 할 때 데이터베이스 접근에 제약을 두지 않는다면 어떤 일이 일어날 수 있을까요? RAG는 AI가 실시간으로 데이터베이스에서 정보를 조회하여 사용자에게 답변을 제공하는 기술입니다. 예를 들어 사용자가 “내 항공편 목록을 보여줘”라는 질문을 하면 AI는 데이터베이스를 조회해 해당 정보를 제공할 수 있습니다.
그러나 만약 AI가 무제한으로 데이터베이스에 접근할 수 있게 된다면, 다른 사용자의 정보를 볼 수 있는 심각한 보안 문제가 발생할 수 있습니다. 따라서 AI가 데이터베이스에 직접 접근하는 것을 차단하고 API를 통해 미리 정의된 쿼리만 실행하도록 해야 합니다. 이렇게 하면 AI가 직접 쿼리를 실행하지 않고 사전에 정의된 API를 통해서만 데이터를 조회하거나 처리할 수 있습니다. 앞서 소개한 항공편 질문의 경우 AI는 항공편 정보 조회만 수행하도록 설계한 API를 이용해 사용자가 요청할 때마다 이 도구를 호출하는 방식으로 작동합니다. 이는 전통적인 API 설계와 크게 다르지 않습니다. 근래에 만든 애플리케이션의 경우 대부분 데이터베이스 중간에 API를 두고 데이터를 안전하게 주고받습니다.
AI의 데이터베이스 접근을 정교하게 제어하지 않을 경우 사용자 프라이버시 보호에도 문제가 생길 수 있습니다. 이 문제는 규제 측면에서 민감한 사안입니다. 개인 정보가 의도치 않게 노출될 수도 있기 때문입니다. AI는 사용자 인증 토큰이나 ID와 같은 민감한 정보를 처리할 수 있지만, 이러한 정보가 노출되면 프라이버시 침해로 이어질 수 있습니다. 따라서 AI가 이러한 정보를 직접 보지 않도록 오케스트레이션 계층을 사용하여 중개 역할을 하도록 해야 합니다. 이 계층은 AI와 데이터베이스 사이에서 작동하며, AI가 요청한 작업만 수행하고 민감한 정보를 차단합니다.
다소 복잡하게 들릴 수 있는데, 간단히 생각하면 보안 업계에서 말하는 ‘최소 권한의 원칙’을 적용하는 것입니다. 최소 권한이란 사용자나 시스템의 각 구성 요소가 자신의 작업을 수행하는 데 필요한 최소한의 권한만 부여받는 보안 원칙을 말합니다. LLM과 RAG를 사용하는 앱에서도 마찬가지로 AI는 필요한 정보만 접근할 수 있도록 제한되어야 합니다. 구글 클라우드를 예로 들자면 AI는 사용자 인증 토큰이나 ID를 보지 못하고, 해당 정보는 애플리케이션과 Retrieval Service 안에만 남아 있습니다.
정리하자면 LLM과 RAG를 이용한 앱 개발에서 보안을 우선시하는 것은 단순한 기술적 요구 사항을 넘어, 사용자 신뢰를 구축하고 데이터 유출 위험을 방지하는 핵심 요소입니다. 데이터 접근 제한, 프라이버시 보호, 최소 권한 원칙을 철저히 적용함으로써, 안전하면서도 사용자 중심의 AI 시스템을 구축할 수 있습니다. 더 자세한 내용이 궁금하시다면 메가존소프트가 도움을 드리겠습니다. 😎 [ 문의하기 ]