프로세스 설계
이 스킬을 사용하여 "텍스트의 단어를 세는 프로세스를 만들어 줘"와 같은 요청을 단계 계획으로 변환하세요. 그런 다음 create-process 스킬로 구현합니다.
패키지는 process_package/에 있습니다. 부모 클래스는 process_package/toy_process/process.py입니다.
1. 단계 나열
목표를 각각 동사 구로 이루어진 작은 작업의 정렬된 목록으로 작성하세요:
WordReport
1. 텍스트 정리
2. 단어 세기
3. 보고서 작성
각 단계는 하나의 작업만 수행하고 그 결과를 공유 context 딕셔너리에 저장해야 합니다.
2. 각 단계의 유형 결정
모든 단계에 대해 다음 중 선택하세요:
| 메서드 단계를 사용할 때... | 하위 프로세스 단계를 사용할 때... |
|---|---|
| 하나의 작은 동작인 경우 | 함께 속한 여러 동작인 경우 |
| 이 프로세스에서만 사용되는 경우 | 다른 프로세스에서 재사용될 수 있는 경우 |
| 자체 설정이 필요 없는 경우 | 자체 매개변수가 있는 경우 |
하위 프로세스는 다시 하위 프로세스를 포함할 수 있습니다. 중첩은 얕게 유지하세요: 대부분의 장난감 프로세스에서는 두 단계면 충분합니다.
3. 계획 작성
각 프로세스(부모 및 모든 하위 프로세스)에 대해 다음을 기록하세요:
- 클래스 이름:
CamelCase로 된 명사 또는 동사 구 (예:CleanText). - 매개변수: 이름 → 기본값.
set_parameters에 기록됩니다. - 단계: 순서대로. 메서드는
snake_case; 하위 프로세스는 클래스 이름을 사용합니다. - 컨텍스트 키: 각 단계가 읽고 쓰는 항목.
예시 계획:
CleanText params: lowercase=True
- strip_punctuation reads text writes text
- normalise_case reads text writes text
WordReport params: text="", lowercase=True, top_n=3
- load_text reads - writes text
- CleanText(lowercase=...) (하위 프로세스)
- count_words reads text writes counts
- build_report reads counts writes report
4. 계획 확인
- 단계가 읽는 모든 컨텍스트 키는 이전 단계에서 작성되었는지 확인하세요.
- 단계가 사용하는 모든 매개변수는 해당 프로세스의 매개변수에 포함되어 있는지 확인하세요.
- 하위 프로세스는 부모로부터 키워드 인수로 매개변수를 전달받습니다 (예:
CleanText(lowercase=self.params["lowercase"])).
요청이 모호한 경우 계획을 사용자에게 보여준 후 create-process 스킬을 따르세요.