AI 챗봇을 똑똑하게 쓰는 법: 시스템 프롬프트와 유저 프롬프트의 차이

Promm team's avatar
Apr 25, 2025
AI 챗봇을 똑똑하게 쓰는 법: 시스템 프롬프트와 유저 프롬프트의 차이

최근 인공지능, 특히 거대 언어 모델(LLM)이 빠르게 발전하고 AI 챗봇 사용이 늘면서, 원하는 결과를 얻기 위한 '프롬프트 엔지니어링'에도 관심이 커지고 있습니다.

하지만 이 과정에서 '시스템 프롬프트'와 '유저 프롬프트' 용어를 혼동하는 경우가 많습니다. 이 둘은 AI 상호작용에서 매우 다른 역할을 하기 때문에 이 차이를 이해하는 것이 AI를 효과적으로 활용하는 데 중요합니다.

이번 글에서는 두 프롬프트의 정의를 명확히 구분하고, 왜 이 구분이 중요한지, AI와 대화할 때 어떤 점을 유의해야 하는지 살펴보겠습니다.

팟캐스트로 듣기

프롬프트(Prompt)란 무엇인가?

우선 프롬프트의 의미를 간단히 정리하면, 프롬프트는 사용자가 AI 모델에게 특정 작업을 요청하거나 질문하기 위해 입력하는 내용입니다. AI의 응답은 프롬프트에 크게 좌우되는데요, 프롬프트 설계 방식에 따라 AI의 성능과 결과물 품질이 달라집니다. 이를 최적화하는 기술이 '프롬프트 엔지니어링'입니다.

프롬프트는 '유저 프롬프트'와 '시스템 프롬프트'로 구분할 수 있습니다.

1. 유저 프롬프트

유저 프롬프트는 AI와 대화하는 사용자가 AI에게 직접 입력하는 내용입니다. 챗GPT 같은 AI 챗봇에게 질문하거나 작업 요청 시 채팅창에 쓰는 모든 텍스트가 여기에 해당합니다.

  • 목적: AI에게 요청하는 작업, 질문, 정보를 전달합니다. AI가 당장 처리할 '무엇'에 집중합니다.

  • 특징: 사용자가 직접 쓰고 편집합니다. 대화 흐름에 따라 실시간으로 바뀝니다. 사용자가 AI 대화에서 가장 직접적으로 관여하는 부분입니다.

  • 예시:

    • "서울 날씨 알려줘."

    • "이 글을 세 문장으로 요약해줘."

    • "내일 회의 안건 목록 만들어줘."

    • "파이썬으로 간단한 계산기 코드 보여줘."

2. 시스템 프롬프트

AI 모델에게 미리 설정해두는 배경 지침입니다. 시스템 프롬프트는 AI 모델이 유저 프롬프트를 '어떻게' 해석하고 응답할지 전반적인 가이드라인을 제공합니다.

  • 목적: AI 모델의 '역할'이나 '성격'을 정하고 일관된 '응답 방식'을 지정합니다. 즉, AI가 어떤 '관점'에서 요청을 처리할지 결정합니다.

  • 특징: 시스템 프롬프트는 대화 세션 전체에 걸쳐 지속적으로 적용됩니다. AI 서비스 공급자 레벨에서 설정된 시스템 프롬프트도 있지만, 각 서비스는 일반 사용자 레벨에서 시스템 프롬프트를 설정할 수 있는 기능을 제공합니다. (ChatGPT의 ChatGPT 맞춤 설정 메뉴, Claude 프로필 설정의 “Claude가 응답할 때 고려해야 할 개인 선호 사항은 무엇인가요?” 필드)

  • 예시:

    • "당신은 항상 도움이 되는 친절한 AI입니다." (AI 기본 성격)

    • "사용자 질문에 대해 정확하고 사실에 기반한 정보만 제공하세요." (정확성 제약)

    • "법률 자문은 절대 제공할 수 없습니다. 법률 관련 질문 시 전문가 상담을 안내하세요." (역할 및 제약)

    • "항상 한국어로만 답변하고, 예의 바른 말투를 사용하세요." (스타일 가이드)

시스템 프롬프트 VS 유저 프롬프트

왜 이 구분이 중요한가?

시스템 프롬프트와 유저 프롬프트의 차이를 이해하고 각 역할에 맞게 사용하면 것이 AI 활용 효율을 높입니다.

  1. AI 행동의 일관성: 시스템 프롬프트는 AI가 정해진 역할과 규칙을 따르도록 합니다. 특정 전문가 역할을 부여하거나, 유해 정보 생성을 막는 등 AI의 근본적인 행동 제어는 시스템 프롬프트 역할입니다. 유저 프롬프트만으로는 어렵습니다.

  2. AI 성능 최적화: 특정 업무에 AI를 쓸 때, 시스템 프롬프트로 업무 특성과 필요한 정보를 설정하면 AI가 더 정확하고 유용한 답변을 줍니다.

  3. 효율적인 프롬프트 작성: 시스템 프롬프트로 AI의 기본 역할을 정해두면, 유저 프롬프트는 순수하게 작업 지시에만 집중할 수 있습니다. 프롬프트가 간결해지고 AI가 의도를 더 잘 파악합니다.

구분하지 않았을 때의 문제점

많은 AI 서비스에서 시스템 프롬프트 설정을 지나치기 쉽습니다. 메뉴 깊숙이 있거나 시스템 프롬프트라고 인식하기 어렵기 때문입니다. 그래서 많은 사용자는 AI에게 역할을 주거나 규칙을 지정할 때, 첫 유저 프롬프트에 그 내용을 함께 넣습니다. 예를 들어, "너는 중학교 선생님이고, 질문에 대하여 중학생이 이해할만한 수준으로 설명해줘"와 같은 내용을 질문 앞에 붙입니다

이 방식은 직관적이지만, 시스템 프롬프트와 유저 프롬프트의 차이 때문에 문제가 생길 수 있습니다.

1. 맥락 유실 위험 (컨텍스트 윈도우 한계)

LLM은 '컨텍스트 윈도우'라는 제한된 입력 공간에서만 이전 대화 내용을 기억합니다. 대화가 길어져 이전 내용이 많아지면, 가장 오래된 내용은 컨텍스트에서 잘려 나갑니다. 만약 역할 정의나 중요한 규칙을 첫 유저 프롬프트에 넣었다면, 대화가 길어질수록 AI는 그 내용을 '잊어버리고' 초기에 설정한 역할을 벗어날 위험이 큽니다. 유저 프롬프트의 지시는 시스템 프롬프트처럼 지속적으로 영향을 미치도록 설계되지 않았기 때문입니다.

2. 프롬프트 공간 및 토큰 낭비

AI 사용은 '토큰' 단위로 계산되며, 비용과 관련됩니다. 역할 정의 같은 시스템 지침을 매번 유저 프롬프트에 넣으면, 실제 작업 지시보다 부가 설명이 프롬프트의 많은 부분을 차지합니다. 이는 효율을 낮추고, 중요한 정보를 입력할 공간을 줄이며, 불필요한 토큰 사용을 늘립니다.

3. 반복적인 작업 

새 대화 시작 시 매번 같은 역할 정의나 규칙을 유저 프롬프트에 다시 입력해야 합니다. 매우 번거롭고 비효율적입니다.

효과적인 AI 활용 방안

가장 좋은 방법은 유저 프롬프트를 입력하는 채팅창에서도 시스템 프롬프트를 간편히 설정할 수 있도록 하는 것입니다. 이렇게 하면 시스템 프롬프트로 AI가 '어떻게' 행동할지(역할, 규칙) 설정하고, 유저 프롬프트로 AI에게 '무엇'을 할지(구체적인 작업, 질문) 전달할 수 있게 됩니다.

이렇게 하면 AI는 대화 길이에 관계없이 시스템 프롬프트의 가이드라인을 따르면서, 최신 유저 프롬프트에 맞춰 정확하고 관련성 높은 응답을 생성합니다. 유저 프롬프트 공간을 순수하게 작업 지시에만 써서 프롬프트의 명확성과 효율성을 높일 수 있습니다.

Promm.ai 에서는 이미지처럼 시스템 프롬프트를 간편히 설정할 수 있는 기능을 지원합니다. 무료로 제공되는 토큰으로 부담없이 테스트해보실 수 있습니다.

Share article

Promm AI