지니언스 기술 블로그

프롬프트 엔지니어링과 지니언스 솔루션(NAC, EDR, ZTNA)의 AI 도입 및 보안 운영의 변화

작성자: Genians | May 8, 2025 11:57:43 PM

1. AI의 종류 간단 소개

ChatGPT, Gemini, Perplexity와 같은 대규모 언어 모델(LLM: Large Language Model)은 수십억 개의 파라미터를 기반으로 방대한 데이터를 학습하여 다양한 분야에서 활용되고 있습니다.

이러한 모델들은 뛰어난 성능을 보이지만, 보안 제품과 같이 제한된 자원 환경에서 구동하기에는 자원 소모가 클 수 있습니다. 따라서 본 글에서는 대규모 AI 대신, 보안 제품에 효율적으로 통합될 수 있는 경량화된 대규모 언어 모델, sLLM(smaller Large Language Model) 또는 소규모 언어 모델 SLM(Small Language Model)에 대해 자세히 알아보고자 합니다.

갤럭시 핸드폰에 사용되는 AI와 마찬가지로, sLLM과 SLM은 보안 제품의 성능과 효율성 향상에 중점을 두고 설계되었습니다.

sLLM은 대형 언어 모델을 압축하거나 경량화하여 LLM의 주요 기능을 유지하면서 더 빠른 응답 속도를 제공합니다. 하지만 빠른 응답 속도를 위해서는 충분한 CPU 또는 GPU 성능이 필수적입니다. 반면, SLM은 특정 작업에 최적화된 상대적으로 적은 수의 파라미터를 사용합니다. 빠르고 경량화된 성능이 중요하며, 저사양 환경에서도 효율적으로 작동하므로 보안 제품의 특정 기능에 통합하는 데 적합합니다.

 

1-1 소형 언어모델 ? sLLM 이란 무엇일까요?

sLLM의 대표적 AI 모델 : 알파카, 젬마, 파이, 제미나이 미니
 

  • 소형 언어 모델이란?
    소형 언어 모델이란 매개변수의 수가 수십억, 수백업대로 비교적 LLM 과 대비 크기가 작은 언어모델을 말합니다. (참고로 OpenAI의 GPT-3.5의 경우 1750억개이며 구글의PaLM 의 경우 5400억 개 정도) sLLM은 슈퍼커퓨터같은 거창한 컴퓨터로 하지않아도 머신런닝(ML)이 가능해 파라미터를 줄여서 비용과 시간을 아낄 수 있습니다. 미세조정 이라고 불리는 파인튜닝으로 정확도를 높이는 맞춤형 LLM 이며 modelfile 이라는 환경설정 파일 안에 temperature, template, SYSTEM 등 여러 parameter 값을 지정 및 조정 입력하여 사용하여 모델을 생성합니다. 즉 LLM의 장점을 유지하고 비즈니스 비용을 획기적으로 줄일 수 있습니다.

 

[Modelfile 내용 예시 (출처 작성자 본인)]


저의 경우는 허깅페이스 (Hugging Face – The AI community building the future. ) 에서 ggml-model-Q4-K_M.gguf 라는 모델 파일을 받아 modelfile을 생성하여 미세조정 값을 지정한 뒤 별도의 모델을 설치 했습니다.

모델 기반은 Meta 에서 개발한 LLama3.1 기반으로 제작되어있는 파일입니다.

개인 PC나 서버에서 구동해보려면 Ollama 라는 구동 framework 를 다운로드 받아 테스트 해볼 수 있습니다. 텍스트기반이 익숙치 않다면 GUI 기반의 msty 를 사용해 보셔도 됩니다. (모두 무료입니다.)

[sLM의 매개변수 변화 이미지(출처 : Dr Alan D. Thompson – LifeArchitect.ai)]

 

위의 자료는 매개변수(파라미터) 수의 변화를 나타냅니다. 파라미터수가 많을수록 범용적으로 사용할 수 있으나 성능이 뒤따라 줘야한다는 단점이 있습니다.

따라서 임베디드 형태나 클라우드 형태로 제품이 도입되어야 하기에는 sLLM 또는 더 하위 모델인 SLM (Small Language Model) 을 사용해야 할 것입니다.

참고) 보안 솔루션에 적합한 AI 모델 선택 기준
 
• 자원 효율성 : 제한된 하드웨어 환경에서 운영 가능한 경량화 모델
• 보안성 : 모델 자체의 보안 취약점 최소화
• 특화된 기능 : 보안 정책 관리, 위협 탐지, 로그 분석 등 특정 보안 작업에 최적화된 모델
• 응답 속도 : 실시간 위협 대응을 위한 빠른 처리 능력
• 확장성 : 다양한 보안 환경에 적응 가능한 유연성


 

2. 프롬프트 엔지니어링?

** AI가 도입된다면 여러분들은 이제 논리적인 프롬프트를 연습하셔야 할 때입니다 **

AI 를 사용하면 프롬프트를 잘 입력해야 되는거 아닌가요 ? 라고 생각 하실 수 있습니다. 맞습니다. 프롬프트는 자세하고 잘 작성할수록 그 결과가 다릅니다. 특히나 이미지 생성과 영상제작에서는 더욱 그렇습니다.

같은 AI 지만 결과물이 조금씩 다르게 나옵니다. 또한 프롬프트도 “광고 모델을 만들어줘” 라고 하는 것보다는 “화장품 광고에 어울리고 뒷배경은 블러처리되었으며 분홍색 옷을 입은 여성모델을 만들어줘” 라고 하는 것처럼 자세하게 표현하는 것이 중요합니다.

“화장품 광고에 어울리고 뒷배경은 블러처리되었으며 분홍색 옷을 입은 여성모델을 만들어줘” 라고 생성한 AI 이미지입니다.

[생성형 AI로 제작한 이미지]

 

두 번째는 조금 더 미세조정된 파닝튜닝 프롬프트 입력 기법을 사용하여 더욱 자세하고 정교한 프롬프트 입력으로 아래와 같은 사진을 만들었습니다.

[생성형 AI로 제작한 이미지]

이 두 가지 AI 이미지는 같은 AI 모델을 사용하여 만들었지만 입력하는 내용과 기법에 따라 전혀 다른 결과물을 도출해냅니다.

sLLM 이라고 다를까요? Small LLM 또한 마찬가지입니다.
내가 원하는 바를 명확하게 설명하여 질문 하여야 올바른 대답과 명쾌한 답변을 알려줍니다.

같은 AI를 사용하더라도 상세한 질문 방법을 활용하면 더욱 원하는 대답을 얻을 수 있습니다.
똑같은 질문이어도 다른 AI를 사용하면 출력물이 다르기에 각 상황에 맞는 AI를 도입•검토해야 합니다.

 

 

프롬프트 엔지니어링의 주요 기법은 여러가지가 있습니다.
(아래의 내용은 프롬프트 엔지니어링 가이드 – Nextra 에서 발췌했음을 밝힙니다.)

기법 개요
명확한 입력 육하원칙에 따르거나 출력 문서 수를 지정하여 애매한 부분 제거
역할 부여 GPT에 역할 또는 숙련도 같은 페르소나 지정
가상 입력 제공 가상의 유저가 입력할 것으로 예상되는 내용 제공(Dan prompt)
출력 형식 지정 원하는 출력 형식을 지정하거나 예시 작성
질문 및 답변 예시 제공 예상 질문 또는 예상 답변 예시 제공
단계적 추론 결론을 바로 내리지 않고, 단계적으로 응답 작성 지시(천천히 스텝 바이 스텝으로 해봐~ 등)
목적 제공 수단과 함께 달성하려는 최종 목표를 작성
지식 및 해법 제공 해결에 필요한 지식 및 논리 전개 절차를 제공(수식을 달려준다던지...)
기호 활용 프로그램에서 활용하는 기호나 문법 활용(표 아래의 내용에서 자세히 다룹니다!)
프로그래밍 활용 엄격하게 순서가 정해진 지시는 프로그래밍 언어로 작성
구조화 구조화된 형식으로 지시 작성(JSON 또는 Mark Down 형태)
영문화 지시는 영문화로 내리고 응답은 한국어로 받기
- 우리가 사용하는 해외 GPT들은 한국어로 질문하여도 내부적으로는 영문으로 자체적으로 번역 후 응답을 한국어로 하게 되어있습니다. 그래야 더욱 답변도 잘 나오기때문에 내부적 셋팅이 그렇게 되어있고 그렇기에 자동화 번역된 내용으로 하기보다 애초에 영어로 질문하고 답변만 한국어로 받는것이 더욱 품질이 좋습니다. (영어를 공부해야하는 이유…?!)
정보 배치 순서 조정 중요한 정보를 프롬프트의 맨 뒤에 배치
직접적 표현 사용 부정적 표현 및 완곡한 표현을 피하고 명확하게 지시

 

 

'프롬프트' 와 '구분 기호'가 있습니다.

기호만 잘 사용해도 LLM 답변의 품질이 달라집니다.

프롬프트 작성에서 기호 사용은 중요합니다. 구조화 때문인데요.
구조가 명확해지면, LLM이 불필요한 설명을 하거나 엉뚱한 부분 그리고 할루시네이션(헛소리) 답변하는 확률이 줄어듭니다.

프롬프트에 사용하는 기호를 구분자 (Delimiters) 라고 합니다.
구분자 사용은 프롬프트 엔지니어링의 기본 기법입니다. OpenAI 와 Anthropic 등의 모델사에서는 프롬프트에 기호 사용을 권장합니다. sLLM 도 마찬가지입니다.

  • 구분자란?
    프롬프트 내부에서 서로 다른 부분을 명확히 구별하기 위해 사용하는 특수 문자열이나 기호. """ (트리플 따옴표), ``` (트리플 백틱), --- (트리플 대시), <...> (각종 꺾쇠 괄호 또는 XML 태그) 등

  • 구분자 사용이 LLM 응답 품질에 미치는 영향과 관련 연구
    최근 2-3년간 프롬프트 형식이 LLM에 미치는 연구들이 진행되고 있습니다. 소형언어 모델일 수록 프롬프트의 형식이 LLM에 성능에 미치는 영향이 큼을 실증했습니다.

  • 기호를 언제 사용하면 좋을까?
    • 텍스트 블록이 많은 경우
      긴 문장이나 여러 섹션을 다루는 경우에는 ###, --- 등을 활용해 구분하기.
    • 질문과 답변을 명확히 분리하고 싶을 때
      “질문: ... 답변: ...” 형태의 프롬프트에서 구분자를 넣으면 답변이 더 깔끔해짐.
    • 목록, 변수, 옵션 등을 강조하고 싶을 때
      대괄호 [ ] 또는 중괄호 { }로 명시해주면 모델이 데이터를 받아들이는 방식 개선됨.
    • 규칙적인 포맷 요구
      JSON 형태, 목록 형태 등 특정 형식을 요구할 때는 { }, [ ] 등 구분자 사용 필수.

  • 자주 쓰는 기호와 사용법
    • ### : 텍스트 내 큰 구분을 만들어 주거나, 섹션(Section)을 분리할 때 사용
      프롬프트에서 긴 텍스트를 다룰 때, ### 로 섹션을 나눠주면 모델이 각 섹션을 독립적으로 인식.
    • [ ] (대괄호) : 특정 텍스트를 구분하거나, 옵션, 변수 등을 표시할 때 사용.
    • { } (중괄호) :  텍스트 내에서 변수나 속성, JSON 형태의 구조를 표시할 때 활용 
      프롬프트 엔지니어링에서 중괄호는 종종 JSON 형태의 구조 데이터를 표현할 때 사용. 다음 정보를 JSON으로 보내줘” 라고 요청하면서 { } 구문 안에 키-값 형태로 구성해달라고 지정하면, 모델이 좀 더 안정적으로 JSON 형식을 유지해서 응답.
    • ---(하이픈) : 텍스트 구분선 처럼 사용, 섹션 나누기.  
      ‘하이픈 세 개’는 MarkDown 문법에서 구분선(Horizontal Rule) 역할을 하거나, 의미적으로도 “이 지점에서 내용이 끊겨요”라는 신호로 사용.
    • → 화살표 :  순서 혹은 결과를 나타내는 화살표로 사용, “이후에”라는 연속성을 표현.

  • 결론
    프롬프트 “최적 템플릿”은 모델이나 과제마다 제각기 다릅니다.
    한 모델에서 잘 먹힌 형식을 다른 모델(심지어 같은 계열의 모델)에게 적용해도 효과가 없거나 악화될 수 있습니다.모든 모델에게 통하는 보편적인 구분자 형식은 존재 하지 않습니다.
    그래서 프롬프트는 시도와 경험이 중요합니다.

그럼 어떻게 하는걸까요 ?

“아이돌 사진 만들어줘” 라고 단순 한글로 입력했을 때의 결과값은 아래에 있는 사진 입니다.

 
[생성형 AI로 제작한 아이돌 이미지]

 

이제는 프롬프트 엔지니어링을 통해 이미지 생성 예시 프롬프트를 작성해 보았습니다.

[예시 프롬프팅]
I want a make a idol girl group member (girl group), (idol uniform), (in the stage), (wide hips:1.3), (sexy:1.4), (bunny girl), (blond hair), (wearing suite), (thigh gap:1.2), (huge breasts:1.7), (intricate details:1.2), (face, mature female:1.2), Depth of field, Cinematic Light, Lens Flare, Ray tracing, perspective, RAW, detailed skin, sharp focus, delicate, korean, instagram, pop idol, korean beauty, korean mixed, best quality, extremely fine and beautiful, best illumination, semi realistic, aegyo sal, illustration, FEMININE, adult, pale white skin, by Joao Ruas, by John William Waterhouse, [by Gil Elvgren], cinematic lightings, soft volumetric lighting, subsurface scattering, (night photography:1.3), (solo:1.2), solo focus, (crowd:1.2), outdoors, blurry background, (walking:1.3), (bangs:1.3), (looking away, long hair, :1.3), (thighs, Crop sweater, denim jeans, luxury bag, necklace, earrings, jewelry, :1.2)| 

[이상한 부분을 제거하는 프롬프팅]
Negative Prompt
weird fingers, blurred face, indistinctive product label(제품을 넣을 경우)

이런 프롬프트를 가지고 생성한 아래의 결과물은…..

[예시문의 프롬프트로 생성된 이미지]
 
 
 

3. 제품의 매뉴얼이 이제 필요한가요?

현대 사회는 초시대, 초개인, 원격근무 시대, 그리고 제로트러스트 시대를 맞이하고 있습니다. 이러한 환경 변화는 보안 시스템에 대한 요구 사항을 더욱 까다롭게 만들고 있습니다. 보안 시스템은 이전보다 더욱 강력하고, 복잡하며, 개인화된 보호 기능을 제공해야 합니다. 보안 제품의 증가와 복잡한 상호 연동으로 인해, 보안 및 운영 담당자들은 복잡한 연결 및 정책 설정 관리에 어려움을 겪고 있습니다. 매뉴얼을 통한 관리 방식은 이러한 복잡성을 더욱 증폭시키는 요인입니다.

하지만 sLLM과 같은 경량화된 AI를 도입하면 이러한 운영 환경의 어려움을 크게 해소할 수 있습니다. 지니언스의 제품을 예시로, AI 도입 시 어떤 이점이 있을지 예상해 볼까요 ?

  • NAC+ZTNA(네트워크 접근 제어) 제품
    sLLM을 통해 NAC+ZTNA 제품의 보안 정책을 자동화하여 관리 효율성을 획기적으로 높일 수 있습니다. 복잡한 수동 설정 대신, AI에게 정책 생성을 요청하고, 각 사용자에게 맞춤화된 정책을 적용하여 정교한 접근 제어를 구현할 수 있습니다. 더 나아가, AI는 생성된 정책의 정합성까지 확인하여 오류를 최소화합니다. 이를 통해 관리자는 반복적인 작업에서 해방되어 더욱 중요한 업무에 집중할 수 있습니다.
    보안 맥락에서의 구분자 사용 예시
    ⇒ 작업 유형 : 네트워크 접근 정책 생성
     
    [사용자 정보]
    역할 : 재무팀 관리자
    접근 필요 시스템 : ERP, 회계 시스템, 데이터 웨어하우스
    위치 : 본사 및 재택근무

    [보안 요구사항]
    • 다중 인증 필수
    • 업무 시간 외 접근 제한
    • VPN 필수 연결
      </보안 요구사항>

    정책 생성 요청: 위 정보를 바탕으로 제로트러스트 환경에 적합한 접근 정책을 생성해주세요.

  • EDR(엔드포인트 탐지 및 대응) 제품
    sLLM을 활용하여 EDR 제품의 위협 탐지 및 분석 속도를 향상시키고, 사용자 맞춤형 보고서를 자동으로 생성할 수 있습니다. sLLM의 자연어 처리 기능을 통해 보안 경고 및 이벤트에 대한 직관적인 보고서를 생성하여 내용의 가시성을 높이고, 관련 에러 리포트를 자동으로 취합합니다. 이렇게 취합된 정보는 SIEM 및 SOAR과의 효율적인 통합을 통해 사용자에게 더욱 효과적이고 이해하기 쉬운 정보를 제공합니다. 즉, AI를 통해 얻은 통찰력은 보안 담당자의 의사결정을 지원하고, 보다 신속하고 정확한 대응을 가능하게 합니다.

  • 메뉴와 데이터의 시각화
    정형화된 메뉴에 따라 시각화되는 것이 아닌 사용자에 명령에 따른 필요한 것만 정리해서 보여주는 시각화 기능 또한 AI 분야에서 발전하는 분야로 이젠 고정된 UI UX 를 볼 필요 없이, 그리고 데이터 또한 보기 편하게 시각화되어 더욱 가시성을 높일 수 있을 것입니다.

정말 이런 것이 가능할까 싶으시다면, 맺음말을 읽어 주시길 바랍니다.

 

 

맺음말. 이제는 AI 그리고 에이전트의 시대

 

[AI 에이전트 종류]
 

위의 자료는 AgentOps AI에서 조사한 AI에이전트들입니다. 코딩, 세일즈, 보이스, 영상 등 여러 부분이 있습니다. 여기에 보안 어시스턴트 AI agent 가 나오게 된다면 어떨까요? 제품별 에이전트가 나오거나 보안 제품 매뉴얼을 학습한 에이전트가 출시될지도 모르는 일입니다.

(이렇게 엄청나게 많은 AI 서비스가 생겨나고 있습니다.)

 

앞으로 각종 AI와 더불어 여러 제품들이 출시되겠지만 인터넷이 사용 가능한 상태의 제품이거나 클라우드 형태로 구독하는 보안 제품의 경우 AI 에이전트를 통해 정책을 자동화 하고 편하게 관리할 수도 있을 거라 기대합니다.

또한 기술의 발전으로 제품내 sLLM 이 탑재되어 더욱 편리하게 이용 할 수 있는 날이 멀지 않았습니다.

AI가 나날이 발전하듯 지니언스 또한 발전합니다.



 

글쓴이. 이승준

지니언스 ZT전략기술팀에서 새로운 기술의 접목과 제품연구와 정책과제를 담당하고 있습니다.