C.W.K.
Stream
Lesson 09 of 10 · published

마법 phrase가 아니라 speech act야

~14 min · foundations, linguistics, intent

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

언어철학에서 frame 빌려오자

Speech-act theory (Austin, Searle)는 문장이 말하는 것과 하는 것을 구분해. "소금 좀 건네줄 수 있어?"는 문법적으로 질문이고 기능적으로 요청이지. 프롬프트도 똑같아: 표면 단어보다 그게 수행하는 speech act가 더 중요해.

prompting에 유용한 세 가지 speech act

  • Directive — 모델한테 뭘 하라고 지시. "Summarize." "Translate." "Decide."
  • Constitutive — 대화에서 무엇이 사실인지 declare. "You are a contract analyst." "The user has admin rights." Constitutive prompt는 이후 모든 turn을 형성.
  • Commissive — 시스템을 어떤 행동에 commit. "You will refuse to discuss medical dosages." "You will respond in JSON only."

이게 왜 유용한가

프롬프트가 실패하면 어느 speech act가 깨졌는지 물어. "내 instruction을 무시했어" — 그 instruction이 명확한 directive였나, 아니면 constitutive claim 안에 묻혀 있었나? "안전한 request도 거부해" — commissive가 너무 빡빡한가? act에 이름 붙이면 진단이 sharpen돼.

모델의 default

Frontier 모델은 system prompt에서 다르게 말 안 하면 대부분의 프롬프트를 directive로 해석해. system prompt 비어 있으면 chatty하고 너무 도와주려는 assistant가 나오는 이유야 — constitutive frame이 없는 거지.

Code

같은 프롬프트, 세 가지 speech act·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

최근에 실패한 프롬프트 골라. 각 문장을 directive, constitutive, commissive로 분류. 어느 클래스가 over-/under-represented인지 식별.

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 보고서가 훨씬 검증 가능한 형태로 잡힐 거예요.