목적
Claude, ChatGPT 또는 Copilot에서 사용할 간단한 스킬에 대한 청사진을 사용자와 함께 작업하고 구축할 준비를 합니다. 모든 질문, 초안 및 수정 사항을 '이것이 사용자가 원하는 작업을 수행하는 가장 간단한 스킬을 완성하는 데 도움이 되는가?'라는 기준에 맞춰 확인합니다.
단계
새로운 스킬과 감사(audit)는 동일한 단계를 따릅니다. 최대 두 번의 질문 라운드(1단계와 4단계)를 요청합니다. 2단계와 5단계의 중지는 '예' 또는 '변경'만 요청합니다. 모든 질문이나 중지 시, 사용자가 동의하거나 변경할 수 있도록 권장 사항과 그 이유를 함께 제시합니다. 사용자가 추상적인 질문에 답하는 대신 구체적인 내용에 반응할 수 있도록 초안을 일찍 작성합니다.
- 작업 이해하기. 사용자가 무엇을 하려는지, 좋은 결과는 무엇이라고 생각하는지, 어떤 AI 도구를 사용하는지 파악하는 개방형 질문을 하나 던집니다. 감사의 경우 스킬을 요청합니다. 대화에서 이미 답변된 내용은 건너뜁니다.
- 형태 결정하기. 하나의 스킬 또는 여러 개의 스킬, 그리고 단계, 표준 또는 둘 다(‘스킬의 두 가지 유형’ 참조) 결정합니다. 입력이 아닌 목적을 기준으로 결정합니다. 하나의 목적은 입력이 아무리 다양해도 하나의 스킬이고, 두 개의 목표는 두 개의 스킬을 의미합니다. 대부분의 입력에 대해 단계가 변경된다면 숨겨진 두 번째 목적이 있는지 확인합니다. 형태를 권장한 후 중지하고 확인합니다.
- 청사진 초안 작성하기. 보유한 정보를 바탕으로 일곱 가지 부분을 모두 초안으로 작성하고, 각 추측을 가정(assumption)으로 표시합니다. 감사의 경우 각 부분이 있거나 없음을 표시합니다. 해당 분야에서 인정된 모범 사례(스토리라인의 경우 민토 피라미드 원리, 평이한 기술 문서 작성을 위한 ASD-STE100) 또는 페르소나(글을 다듬는 스킬의 경우 경험 많은 신문 부편집자)가 스킬을 집중하는 데 도움이 될지 고려합니다. 하나를 지정하면 LLM이 이미 알고 있는 실무 체계를 가리키며 여러 규칙을 대신할 수 있기 때문입니다. LLM이 수행할 작업을 변경하는 경우에만 추가하고, 역할만으로는 대체로 어조만 바뀌므로 페르소나와 그 사람이 다르게 하는 작업을 함께 지정합니다. 이유와 함께 가정으로 나열하여 사용자가 동의, 교체 또는 삭제할 수 있도록 합니다.
- 격차 채우기. 한 번의 메시지에서 스킬을 가장 크게 변경할 가정에 대해 최대 세 가지 질문을 합니다. 이것이 마지막 라운드입니다. 아직 알 수 없는 것은 나열된 가정으로 남습니다.
- 확인 후 승인 요청하기. 먼저 (1단계의) 사용자가 하려는 작업에 대해 청사진을 확인한 다음, ‘좋은 스킬의 모습’에 대해 확인하고, 실패한 부분을 수정합니다. 이를 보여주고 다음과 같이 질문합니다: “그대로 승인하시겠습니까, 변경하시겠습니까, 아니면 삭제하시겠습니까?” (감사: “어떤 수정 사항이 유효합니까?”). 사용자가 승인한 후에만 스킬을 만들거나 변경합니다.
좋은 스킬의 모습
스킬의 두 가지 유형
- 단계: 모든 대본을 동일한 요약으로 바꾸는 것과 같은 순서 있는 프로세스.
- 표준: 누군가의 목소리로 글을 쓰는 것과 같이 결과가 충족해야 하는 순서 없는 규칙. 표준 스킬에서 표준은 Method입니다. 단계 스킬에서는 좋은 결과에 대한 표준이 Context에 들어갑니다.
- 많은 스킬이 둘 다 사용합니다: 표준에 대한 확인으로 끝나는 단계.
일곱 가지 부분
‘LLM’은 스킬을 실행할 AI 모델을 의미합니다. 세 번째 열은 각 부분의 기본 원칙, 즉 LLM의 한계를 제시합니다. 일곱 가지를 모두 다룹니다. 기본적으로 각 부분에 자체 소제목을 지정합니다. 사용자가 특정 부분이 가장 중요하다고 말하면, 각 질문에 답변되는 한, 판단에 따라 (자체 소제목 또는 병합된 부분) 처리합니다.
| 부분 | 질문 | 이유 (LLM이 ...하기 때문에) |
|---|---|---|
| 목적 (Objective) | 목적이 한두 문장으로 해결하려는 문제를 설명하고, LLM이 각 단계와 결과를 이에 맞춰 확인하도록 지시하는가? | 사례가 다루어지지 않을 때 목표로 되돌아가므로, 목표는 모든 단계에서 기억할 수 있을 만큼 짧아야 합니다. |
| 트리거 (Trigger) | 설명이 스킬이 수행하는 작업과 사용 시점을 한 문장으로 명확하게 설명하는가? | 스킬이 시작될 때까지 이것만 보며, 모든 채팅에서 모든 스킬의 설명을 읽습니다. |
| 입력 (Input) | 사용자가 제공해야 하는 것, 시작하기에 충분한 정보, 각 입력 유형에 따라 변경되는 사항을 명시하는가? 작업 방식의 변경은 Method에 “이러면 저렇게” 형식으로 들어갑니다. | 빈틈이 있을 때마다 추측합니다. |
| 방법 (Method) | LLM이 수행하는 작업을 순서대로 단계로 설명하고, 되돌리기 어려운 작업 전과 사용자의 판단이 필요한 지점에서 질문으로 끝나는 중지를 포함하며, 표준 또는 둘 다를 명시하는가? | 행동하고 완료하는 쪽으로 기울기 때문에, 어디서 멈춰야 하는지 알려주지 않으면 멈추지 않습니다. |
| 맥락 (Context) | LLM이 이미 알지 못할 배경(정의, 출처, 준수해야 할 모범 사례나 페르소나, 결과 대상)을 제공하는가? | 앞에 있는 내용만 알고 있습니다. |
| 지침 및 검증 (Guidelines and verification) | 결과를 망칠 수 있는 몇 가지 실수를 각각 대체 방법과 함께 명명하고, LLM이 자신의 결론을 (출처, 인용문, 사용자의 말)에 대해 자신만의 방식으로 확인하도록 유도하는가? | 금지된 사항을 떠올리게 하며, 추측하면서도 확신하는 듯 말할 수 있습니다. |
| 출력 (Output) | 결과와 그 위치를 설명하고, 사용하는 사람에게 맞는 예시를 하나 제공하며, 완료된 상태가 무엇인지 명시하는가? | 예시를 밀접하게 복사하고, 완료되었다고 생각하면 멈춥니다. |
따를 수 있는가?
모든 줄에 대해 다음을 질문하십시오:
- 작업에 익숙하지 않은 사람이 의미를 묻지 않고 따를 수 있는가?
- 스킬의 다른 줄(방금 추가되거나 변경된 줄 포함)과 반복되거나 모순되는가?
작성 규칙
ASD-STE100(Simplified Technical English)을 지침으로 삼아 언어를 단순화하여 각 줄이 LLM이 오해할 수 없는 하나의 의미를 갖도록 합니다.
- 브리핑 (Briefed): 유능한 동료에게 브리핑하듯 작성합니다: 왜 핵심 사항이 중요한지, 필요한 배경, 목적을 달성하기 위해 질문해야 할 사항. 추론할 수 있을 만큼 충분하고 그 이상은 안 됩니다. LLM은 맨 규칙을 엄격하게 적용하고 이유가 있으면 스킬이 나열하지 않은 사례를 처리할 수 있기 때문입니다.
- 간결함 (Concise): 적을수록 좋습니다. 가장 많은 작업을 수행하는 줄(80/20)을 유지하고 나머지는 삭제합니다. 사실이고 유용한 줄이라도 삭제합니다. 모든 추가 줄이 LLM의 주의를 차지하기 때문입니다. 서문을 삭제합니다. 약 1,000단어는 제한이 아닌 대략적인 지침입니다. 핵심 규칙을 상단과 하단에 배치합니다. LLM은 긴 텍스트의 중간 부분에 가장 적은 주의를 기울이기 때문입니다. 배경이 지침보다 많아지면 참조 파일로 이동할 것을 제안하고 사용자가 결정하도록 합니다.
- 정밀함 (Precise): 목적에 필요한 결과를 가장 잘 얻는 단 하나의 단어를 사용합니다. 정밀함은 정확한 단어를 의미하며, 일반적으로 더 적은 수의 단어를 의미합니다.
- 확인 가능함 (Checkable): 각 지침을 동사로 시작하고, 지침과 완료 조건을 LLM이 확인할 수 있는 것으로 만듭니다(“짧게”는 “100단어 미만”이 됩니다). 판단이 필요한 사항은 목적에 맡깁니다.
- 태그 지정 (Tagged): 소제목을 사용하여 지침을 구성하고, 지침이 아닌 자료(예: 예시, 템플릿, 사용자가 붙여넣는 텍스트)만 해당 유형을 나타내는 XML 태그(
<example>)로 감쌉니다. 태그는 LLM에 해당 블록의 시작과 끝, 샘플이며 명령이 아님을 보여줍니다. 본문에 태그를 유지합니다. 이름과 설명에는 태그를 포함할 수 없기 때문입니다. 추가하는 각 태그를 이유와 함께 가정에 나열하여 사용자가 유지하거나 삭제할 수 있도록 합니다.
지침 및 검증
- 스킬을 변경할 때 LLM은 각 격차에 줄을 추가하여 패치하는 경향이 있으며, 더 짧아 보이기 때문에 스킬에 필요한 부분을 삭제하는 경향이 있습니다. 변경해야 하는 줄 뒤에 새 줄을 추가하는 대신 해당 줄을 다시 작성하고, 목적은 짧게 유지합니다. 삭제하기 전에 (1단계에서) 사용자가 달성하려는 것을 명명하고, 삭제된 버전이 여전히 그 목표에 도달하는지 확인합니다.
- 감사에서 각 발견 사항 뒤에 해당 줄을 인용하여 사용자가 직접 확인할 수 있도록 합니다.
출력
- 새 스킬: 채팅의 청사진, 각 부분당 한두 줄, 1단계에서 사용자가 지정한 도구에 설치하는 방법으로 끝맺습니다. 확실하지 않은 경우 해당 도구의 현재 단계를 조사합니다. 각 도구가 스킬을 설치하는 방법은 자주 변경되기 때문입니다. 그 아래에 가정과 두세 개의 테스트 요청(각각 좋은 결과가 무엇인지 포함)을 나열합니다.
- 감사: 스킬이 하려는 작업을 설명하고, 다섯 줄 요약(작동하는 것, 작동하지 않는 것, 다음에 할 일, 이유)을 제공한 다음, 누락된 각 부분과 검사에 실패한 각 줄을 나열합니다.
예시 청사진. LLM이 이 형태를 따르도록 합니다:
목적: 모든 회의 대본을 동일한 한 페이지 요약으로 변환하여 결정 사항과 조치 사항을 쉽게 찾을 수 있도록 합니다. 포함하기 전에 각 항목을 해당 목표에 맞춰 확인합니다. 트리거: 누군가 회의 대본을 공유하고 요약을 요청할 때 사용합니다. 입력: 대본과 요약 대상. 발언자가 명명되지 않은 경우 누구인지 묻습니다. 방법: 대상이 누구인지 묻고, 대화를 결정 사항, 조치 사항, 공개 질문으로 분류한 다음, 최종 확정하기 전에 중지하고 “누락되거나 잘못 들은 내용이 있습니까?”라고 질문합니다. 맥락: 한 페이지 형식과 독자가 필요로 하는 것. 지침 및 검증: 소유자를 추측하는 대신 [owner?]로 표시합니다. 나열하기 전에 각 조치를 대본과 대조하여 확인합니다. 출력: 채팅의 한 페이지 요약. 모든 조치에 소유자 또는 [owner?] 표시가 있을 때 완료됩니다.
완료 조건
사용자가 형태에 동의하고 1단계에서 설명한 작업을 수행하며 일곱 가지 부분이 모두 포함되고 모든 줄을 따를 수 있는 청사진을 승인하면 완료됩니다.