최근에 개발 분야가 아닌 그냥 전기쪽 분야에서 일하는 지인이
좋은 기회로 AI 사용법에 대해 강의를 듣게 됐다고 연락이 왔다.

본인도 좋게 듣긴 했지만,
본인보다 필자한테 더욱 도움이 될 거 같다며
자료 공유 차원에서 연락을 했던 것이었다.

AI를 똑똑하게 만드는 건
얼마나 비싼 AI를 쓰는가도 물론 영향이 있겠지만,
그보다도 더 중요한 건 얼마나 똑똑하게 질문을 하는가라는 것은 알고 있었다.
하지만 그에 맞는 프롬프트 작성법을 따로 자세히 알고 있는 건 아니었다.

그저 한 세션에 정보가 너무 많이 들어가면
세션이 느려지고 답변 품질이 떨어진다는 것 정도만 알고 있어서
세션을 프로젝트별로 나눠 관리하는 정도만 하고 있었다.
처음 질문을 어떻게 해야 하는지까지는 깊게 생각해본 적이 없었던 것 같다.

그래서 자료를 공유받은 김에
프롬프트 작성 방법에 대해 블로그로 정리해보고,
나 스스로도 한 번 정리해보려고 한다.

1. AI는 무엇인가: LLM

AI를 잘 쓰는 사람이랑 못 쓰는 사람 차이 중 하나가
AI를 사람처럼 생각하느냐 / 프로그램처럼 생각하느냐 차이다.

나는 사실 나름 세션별로도 관리하고
AI에게 했던 교육을 또 하는 걸 방지하는 것만으로도
충분히 잘 쓰고 있다고 생각했지만,
저 차이를 보고 머릿속에 고래가 한마리 지나갔다.

아, 나는 AI를 사람처럼 대하고 있었구나.

AI는 생각하는 존재가 아니다.
기억하는 존재도 아니다.
이해하는 존재도 아니다.

AI는 그저 문장을 그럴듯하게 이어 붙이는 프로그램이다.

사실 저게 당연한 거겠지만
항상 나는 내가 하고 싶은 것과 그걸 이루기 위해 AI가 해줘야 하는 것을
되게 정말 친구를 설득하듯이 주절주절 말했던 것 같다.

LLM?

LLM은
지금까지 입력된 토큰을 기반으로
다음 토큰이 등장할 확률을 계산하고,
그 확률 분포를 바탕으로 다음 토큰을 선택하는 모델이다.

쉽게 말해
지금까지 나온 단어들을 보고
다음 단어로 올 확률이 가장 높은 단어를 고르는 것이다.

예를 들어 나는 오늘 아침에 밥을 먹고 학교에 ___를 보자.

AI는 여기 빈칸에 올 단어 다음과 같다고 계산한다.

  • 갔다 - 60%
  • 왔다 - 15%
  • 잤다 - 5%
  • 뛰었다 - 3%
  • 울었다 - 1%

이 확률 분포를 기반으로 하나의 단어(토큰)을 샘플링하여 선택한다.

이걸 한 번만 하는 게 아니라
문장이 끝날 때까지 계속 반복한다.

그래서 AI는 사실 이렇게 동작한다.

  1. 단어
  2. 다음 단어 확률 계산
  3. 선택
  4. 다음 단어 확률 계산
  5. 선택
  6. 다음 단어 확률 계산
  7. ...
  8. 문장 완성

이게 ChatGPT의 본질이다.

그래서 생기는 AI 특징

  1. 질문을 다르게 하면 답이 달라진다.

왜냐면 앞 문장이 달라지면
다음 단어 확률이 달라지기 때문이다.

  1. 같은 질문을 해도 답이 조금씩 다를 수 있다.

이는 확률 분포에서 토큰을 샘플링하는 방식으로 문장을 생성하기 때문이다.

  1. 틀린 말도 그럴듯하게 말한다 (할루시네이션)

AI는 사실 여부를 판단하는 시스템이 아니라
확률적으로 그럴 듯한 문장을 생성하는 모델이기 때문에
틀린 내용을 생성할 수도 있다.

그래서 AI 쓸 때 제일 중요한 습관은 검증이다.

이건 저번 데브필 강연자분이 하셨던
"AI 시대에 신입 개발자로 성장하기" 특강에서도
중요시 여기셨던 포인트다.

AI는 항상 맞다고 생각하면 안 된다.
중요한 정보는 검증해야 한다.


2. 프롬프트의 중요성

앞서 AI는 질문을 이해하는 것이 아니라
앞 문장을 보고 다음 문장을 생성하는 프로그램이라고 했는데,
그 말은 즉슨

질문을 어떻게 쓰느냐에 따라
AI가 만들어낼 문장이 완전히 달라진다.

그래서 프롬프트가 중요해진다.

좋은 프롬프트 vs 나쁜 프롬프트

예를 들어 AI에게 이렇게 질문할 수 있다.

클로저 설명해줘

이 질문도 틀린 질문은 아니지만,
AI에게는 정보가 너무 부족하다.

반대로 이렇게 프롬프트를 작성할 수도 있다.

너는 자바스크립트 강사다.
나는 자바스크립트를 공부하는 학생이다.
클로저 개념을 이해하기 쉽게 설명해줘.
비유 하나와 코드 예시를 포함해주고,
마지막에 핵심 정리로 정리해줘.

같은 내용을 요청했지만
프롬프트의 정보량과 요구사항이 완전히 다르다.

AI는 질문을 이해하는 것이 아니라
입력된 문맥을 기반으로 문장을 생성하기 때문에
프롬프트를 어떻게 작성하느냐에 따라 결과의 품질이 크게 달라진다.

그래서 AI를 잘 사용하기 위해서는 프롬프트를 작성하는 능력이 중요한데,
프롬프트 작성은 곧 요구사항 정리이기 때문에
요구사항을 명확하게 정리하는 데 익숙한 개발자가
AI를 잘 활용할 수 있는 직군이 될 가능성이 높다.

그렇다면 프롬프트는 어떻게 작성해야
원하는 결과에 가까운 답을 얻을 수 있을까?


3. 프롬프트를 잘 작성하는 방법

여기서 중요한 건
이론 이름 외우는 게 아니라 "패턴"을 이해하는 것이다.

프롬프트를 잘 쓰는 사람은
엄청 어려운 걸 쓰는 게 아니라
정보를 많이 주고, 상황을 많이 설명하고, 결과 형태를 지정하는 사람이다.

프롬프트 잘 쓰는 기본 구조

프롬프트를 작성할 때 자주 쓰는 기본 구조에 가깝다.

  1. 역할 지정
  2. 상황 설명
  3. 해야 할 작업
  4. 출력 형식
  5. 제약 조건

이걸 하나로 합쳐보면 이런 느낌이다.

너는 프론트엔드 강사다.
나는 자바스크립트를 공부하는 학생이다.
클로저 개념을 이해하기 쉽게 설명해줘.
비유 하나와 코드 예시를 포함해줘.
마지막에 핵심 정리로 정리해줘.

이처럼 역할, 상황, 작업, 출력 형식이 포함된 프롬프트가 더 좋은 결과를 만들 가능성이 높다.

이런 프롬프트가 더 효과적인 이유는
AI가 참고할 문맥과 요구사항이 많아져 결과의 방향이 더 분명해지기 때문이다.

  1. 역할 부여하기
너는 프론트엔드 강사다
너는 데이터 분석가다
너는 글쓰기 코치다

역할을 지정하면 답변의 말투, 설명 방식, 강조하는 관점이 달라질 수 있다.

  1. 예시를 제공하기

AI는 주어진 예시의 패턴을 따라 결과를 생성하는 데 강한 편이다.

예시:
사과 → apple
바나나 → banana

포도 → ?

이처럼 원하는 결과 형식의 예시를 주면
AI가 그 패턴을 따라 비슷한 형식으로 결과를 생성하기 쉬워진다.

  1. 단계적으로 생각하게 하기
step by step으로 설명해줘
단계적으로 생각해서 설명해줘

이렇게 요청하면 과정을 나누어 설명하거나
단계별 흐름으로 정리해주는 답변을 받을 가능성이 높다.

  1. 출력 형식 지정하기
표로 정리해줘
리스트로 정리해줘
마크다운 형식으로 작성해줘

출력 형식을 지정하면 원하는 형태에 더 가까운 결과를 얻기 쉬워진다.

  1. 제약 조건 주기
10줄 이내로 설명해줘
초보자 수준으로 설명해줘
전문 용어 없이 설명해줘

제약 조건을 주면 답변의 범위와 방향을 더 분명하게 제한할 수 있다.

프롬프트를 잘 작성한다는 것은
어려운 문장을 쓰는 것이 아니라
AI가 어떤 역할로, 어떤 상황에서, 무엇을 해야 하는지 명확하게 전달하는 것이다.


4. 프롬프트 = 함수 호출

프롬프트는 함수로 비유할 수도 있다.

AI(프롬프트) → 결과

프롬프트를 함수에 빗대자면

function AI(
  role, // 역할,
  task, // 해야 할 작업,
  context, // 상황 설명,
  format, // 출력 형식,
  constraint, // 제약 조건,
) {
  return result; // 결과;
}

그냥 함수로 할 수도 있었지만,
지금 배우고 있는 게 JavaScript니
최대한 이해를 살려 JavaScript처럼 예시를 들었다.

이걸 실제와 비슷하게 예시를 살려보면

function AI({
  role = "자바스크립트 강사",
  task = "클로저 설명",
  context = "자바스크립트 공부하는 학생, 쉽게 설명",
  format = "비유 포함 + 코드 예시 + 핵심 정리",
  constraint = "10줄 이내",
}) {
  return "AI가 생성한 결과";
}

이런 식으로 프롬프트는 함수의 파라미터를 설계하는 것과 비슷하다.

5. AI를 "잘" 사용하는 방법

사람들이 AI를 사용하는 방식은 보통 이렇게 발전한다.

1단계 - 검색 도구

  • 모르는 개념 검색
  • 용어 의미
  • 간단한 개념 설명
  • 문법 확인
  • 오류 메시지 의미

처음에는 AI를 검색 엔진처럼 사용하게 된다.
모르는 개념이 나오면 검색하듯이 질문하고,
간단한 개념 설명을 보는 단계다.

2단계 - 설명 도구

  • 더 쉽게 설명해줘
  • 비유로 설명해줘
  • 예시로 설명해줘
  • 단계적으로 설명해줘
  • A랑 B 차이 설명해줘
  • 전체 흐름 설명해줘

이 단계부터 AI 느낌이 달라진다.
검색과 AI의 가장 큰 차이는 다시 질문할 수 있다는 점이다.

3단계 - 작업 보조 도구

  • 코드 왜 안 되는지 분석
  • 코드 리뷰
  • 코드 리팩토링
  • 글 구조 잡기
  • 글 흐름 정리
  • 요약 정리
  • 표 정리
  • 문장 정리
  • 아이디어 정리

이 단계부터는 AI를 검색 도구가 아니라
작업을 도와주는 도구처럼 사용하게 된다.

4단계 - 작업 위임 도구

  • 글 초안 작성
  • 코드 구조 설계
  • 테스트 코드 작성
  • 문서 정리
  • 요구사항 정리
  • 데이터 정리
  • 보고서 작성
  • 아이디어 정리

이 단계에서는 AI를 단순히 정보를 찾는 도구로만 쓰는 것이 아니라,
초안 작성이나 정리 같은 작업을 나누어 맡기는 방식으로 활용 범위가 넓어진다.

앞으로 AI를 잘 사용하는 사람은
검색만 하는 사람이 아니라
AI에게 일을 맡길 수 있는 사람이 될지도 모른다.

AI를 사용하는 능력은
결국 질문을 구조화하고 요구사항을 명확하게 정리하는 능력에 가깝다.

즉, 무엇을 원하는지 명확하게 설명할 수 있는 사람이
AI도 더 효과적으로 활용할 수 있다.


6. AI 시대에 중요한 능력

이 파트의 핵심 논리는 다음과 같다.

  • AI를 잘 쓰는 능력 = 질문을 잘하는 능력
  • 질문을 잘하는 능력 = 문제를 잘 이해하는 능력
  • 문제를 잘 이해하는 능력 = 구조를 이해하는 능력

결국 결론은 아이러니하게도

AI 시대일수록 기초와 개념이 더 중요해진다.

결국 또 저번에 들었던 특강과 이어진다.

왜 질문하는 능력이 중요해질까?

AI는 생각하는 존재가 아니라
입력된 문장을 기반으로 결과를 만들어주는 도구다.

결과의 품질은 AI의 성능과 프롬프트,
즉 질문에 따라 달라진다.

최근에는 AI 모델들의 성능이 전반적으로 상향 평준화되고 있다.

그렇다면 결국 결과의 차이를 만드는 것은 질문하는 사람이다.

그래서 이런 말이 나오기도 한다.

AI 시대에는 코딩 실력보다 질문하는 실력이 더 중요해질 수도 있다.

질문을 잘하려면 ?

좋은 질문은 단순히 떠오르는 대로 던진다고 만들어지는 것이 아니다.

예를 들어보자

나쁜 질문

React 왜 안돼?

좋은 질문

React에서 useState로 상태를 관리하는데,
배열을 수정한 뒤 setState를 했는데도 화면이 바뀌지 않습니다.
map으로 새로운 배열을 만들어야 한다고 들었는데
왜 그런지 원리를 설명해 주세요.

이 두 질문의 차이는 문제를 이해한 정도의 차이에서 나온다.
즉 질문의 수준은 이해의 수준과 거의 비례한다.

그래서 결론은 이렇게 이어진다.

  1. 좋은 질문을 한다
  2. 문제를 잘 이해한다
  3. 구조를 이해한다
  4. 기초가 탄탄하다

그래서 AI 시대라고 해서
기초가 덜 중요해지는 것이 아니라

오히려 기초가 더 중요해진다.

이것도 저번에 들었던 특강과 결국 또 이어진다.
정말 특강을 잘 들었다는 느낌을
이 글을 작성하면서 또 한 번 느끼고 있다.

개발 역사랑 연결해서 보면

개발은 계속 더 높은 추상화 수준으로 발전해왔다.

  1. 기계어
  2. 어셈블리
  3. C
  4. Java / Python
  5. 라이브러리
  6. 프레임워크
  7. AI

즉 계속 더 높은 추상화 도구를 사용하게 되는 방향으로 발전했다.

그래서 개발자의 역할도 계속 바뀌었다.

  1. 예전 개발자: 코드를 직접 다 구현하는 사람
  2. 라이브러리 시대: 라이브러리 조합해서 프로그램 만드는 사람
  3. 프레임워크 시대: 구조 설계하는 사람
  4. AI 시대: ~

AI 시대에서는 다음과 같다.

  • 문제 정의하는 사람
  • 요구사항 정리하는 사람
  • AI에게 작업 지시하는 사람
  • 결과 검증하는 사람

즉 개발자의 역할은
코드를 작성하는 사람에서 구조를 설계하는 사람으로,
그리고 점점 문제를 정의하고 해결하는 사람으로 이동하고 있다.

결국 다 정리해서 간단하게 말하자면
AI는 생각을 대신 해주는 도구가 아니라
생각한 것을 대신 만들어주는 도구다.

그래서 AI를 잘 쓰는 사람은
AI를 잘 다루는 사람이 아니라
문제를 잘 이해하고, 구조를 잘 정리하고,
무엇을 원하는지 명확하게 설명할 수 있는 사람일 것이다.

그래서 AI 시대에도 여전히 중요한 것은
새로운 도구를 배우는 것이 아니라
기초를 이해하고 구조를 이해하는 능력이라고 생각한다.


약간 요즘 배우고 있는 것들과 조금 엇나가고 있진 않나 싶은 감이 없잖아 있었지만
아무래도 시대가 시대인지라
벨로그 트랜딩 파트에서도 AI 관련 글이 눈에 확 들어온다.

하지만 저번에 들었던 AI 관련 특강에서도, 이 글에서도 결국엔 기본 베이스를 다지는 태초마을로 다시 돌아간다.
단지 얻게 된 정보를 공유하려는 차원으로 시작된 글이었지만,
오히려 지금 방향을 그대로 킵 고잉해도 되겠다는 동기 부여가 되기도 했다.

결국엔 베이스가 있어야 AI와의 티키타카가 잘 어우러질 것이다.

이 정보를 바탕으로, 좀 더 심도 있고, 좀 더 생각해서
AI를 더 똑똑하게 부려먹어 보자 !

1개의 댓글

comment-user-thumbnail
2026년 3월 25일

확실히 질문을 어떻게 하느냐에 따라 답변의 질이 달라진다는 점이 인상적이었습니다. 특히 ‘설명 도구’ 단계에서 말씀하신 것처럼, 저도 “유치원생도 이해할 수 있게 설명해줘”처럼 난이도를 조절하는 요청을 자주 사용하는데, 이런 방식이 결과에 큰 영향을 준다는 점에 공감됐습니다.

답글 달기