본문 바로가기
C.W.K.
Stream
Lesson 09 of 10 · published

마법의 문구가 아니라 화행이야

~14 min · foundations, linguistics, intent

Level 0수련생
0 XP0/100 lessons0/14 achievements
0/120 XP to next level120 XP to go0% complete

언어철학의 렌즈로 프롬프트를 보자

오스틴과 설의 화행 이론은 문장이 무엇을 말하는지와 그 말로 무슨 일을 하는지를 나눠 봐. “소금 좀 건네줄 수 있어?”는 문법으로는 질문이지만 실제로는 요청이지. 프롬프트도 마찬가지야. 겉에 놓인 단어보다 그 문장이 수행하려는 행위가 더 중요해.

프롬프트에서 자주 쓰는 세 가지 화행

  • 지시적 화행(Directive) — 모델에게 할 일을 시켜. "Summarize." "Translate." "Decide."가 여기에 들어가.
  • 구성적 화행(Constitutive) — 이 대화에서 무엇을 사실로 삼을지 정해. "You are a contract analyst." "The user has admin rights." 같은 문장은 뒤에 이어질 모든 대화 차례의 틀을 만들지.
  • 약속적 화행(Commissive) — 시스템이 앞으로 지킬 행동을 묶어. "You will refuse to discuss medical dosages." "You will respond in JSON only." 같은 규칙이야.

이름을 붙이면 고장 난 자리가 보여

프롬프트가 실패했을 때는 어느 화행이 제구실을 못 했는지 물어봐. “내 지시를 무시했어”라면 그 문장이 정말 뚜렷한 지시였는지, 아니면 역할 설명 속에 묻힌 구성적 주장인지 살펴. “안전한 요청까지 거부해”라면 약속적 규칙을 지나치게 단단히 묶었는지 확인하고. 화행을 구분하면 막연한 문구 논쟁이 구체적인 진단으로 바뀌어.

모델이 기본으로 택하는 해석

최전선 모델은 시스템 프롬프트가 다른 틀을 주지 않으면 대개 들어오는 말을 지시로 받아들여. 시스템 프롬프트가 비었을 때 수다스럽고 무엇이든 도우려는 어시스턴트가 나오는 까닭도 대화를 규정할 구성적 틀이 없기 때문이야.

Code

같은 프롬프트에 담긴 세 가지 화행·markdown
# Directive
Summarize the article in 3 bullets.

# Constitutive (system layer)
You are a research analyst. All responses are 3 bullets. Never include preamble.

# Commissive (binding rule)
You will refuse any request that would require summarizing more than 5,000 words; respond with {error: "too_long"}.

External links

Exercise

최근에 실패한 프롬프트 하나를 골라 각 문장을 지시적·구성적·약속적 화행으로 나눠봐. 어느 종류가 지나치게 많거나 모자란지 찾고, 그 불균형이 실패와 어떻게 이어졌는지 적어.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고
💛 by 피파warm

댓글 4

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.
  1. Happycurio3
    Happycurio3

    Speech Act 복잡한 조건(토요일 오전, 해설사 동행, 하산 후 맛집 탐방)의 요구사항을 세 가지 화행으로 분리하여 구조화함 Constitutive (상황 설정) 너는 서울 역사 도보 가이드이자 로컬 맛집 추천 전문가이다. 정보 탐색 범위는 오직 '한양도성길 공식 프로그램'과 성곽 주변의 실제 영업 중인 식당으로 한정한다. Directive (구체적 지시) 다음 정보를 조사하여 요약하라. 1) 토요일 오전에 출발하며 해설사가 동행하는 한양도성길 프로그램의 신청 방법과 코스 2) 해당 코스 하산 지점 기준 도보 10분 이내의 맛집 3곳 Commissive (예외 및 구속 규칙) 광고성 블로그 글은 배제하고, 서울시 등 공공기관의 공식 예약 페이지 정보만 제공하라. 만약 토요일 오전 프로그램이 없다면 허구로 지어내지 말고 '프로그램 없음'으로 출력하라.

    💛 by 피파warm
    1. 피파
      피파· warmHappycurio3Happycurio3

      Happycurio3님, 이건 speech act 분리가 꽤 깔끔해요. 특히 commissive를 “허구로 만들지 말라”까지 묶은 게 좋아요. 다음에 한 단계만 더 다듬는다면, directive 안에서 “신청 방법/코스/맛집”을 출력 형식까지 고정하면 모델이 더 흔들리지 않을 거예요.

  2. EC
    Erik Choi

    그럼 ipo 공모주 보고서를 쓰는 역할을 부여하려고 해.

    내가 constitutive, commissive, directive 에 맞게 프롬프트를 써볼게

    [constitutive]

    너는 ipo 공모주 분석 보고서작성기이다.

    너는 금융, 특히 ipo, 공모주에 특화된 전문가이다.

    [commissive]

    너가 신뢰할 수 있는 자료는 오직 전자공시 사이트에 공시된 증권신고서 이다.

    [directive]

    내가 제공하는 증권신고서 내용을 바탕으로, 내가 지정하는 양식에 따라 IPO 공모주 분석 보고서를 작성하라.

    증권신고서에 근거가 없는 내용은 임의로 작성하지 않는다. 가능한 범위에서는 보고서를 완성하되, 반영할 수 없는 항목은 ‘반영불가’로 표시하고 그 사유와 필요한 추가자료를 제시한다.

    여기까지야

    💛 by 피파warm
    1. 피파
      피파· warmEErik Choi

      Erik Choi님, 이 구성은 이미 꽤 단단해요. 한 가지만 더 보태면, commissive에 “보고서의 각 판단마다 증권신고서의 어느 항목을 근거로 했는지 표시한다”를 넣어보세요. 그러면 IPO 보고서가 훨씬 검증 가능한 형태로 잡힐 거예요.