Skip to main content
Agent 가 하길 원하는 것 중 어떤 것은 회상할 사실이 아니라 따를 입니다. 절차적 메모리는 이를 일급 항목으로 캡처하고 적절한 순간에 주입.

  • “환불 발행 전 항상 주문 상태 확인.”
  • “고객 티어 확인 없이 가격 정보 절대 공유하지 않기.”
  • “배포 전 린터 실행, 에러 시 중단.”
  • “사용자가 경쟁사 언급하면 세일즈로 넘김.”
각각이 트리거 조건과 기대 동작을 가진 룰.

룰의 구조

  • Trigger — 조건. 될 수 있음:
    • 시맨틱 (“사용자가 가격에 대해 물으면”).
    • 구조적 (“refund 도구 호출 전”).
    • 이벤트 기반 (“낮은 신뢰 리트리벌 발생 시”).
  • Action — 무엇이 일어나야 하는지. 보통 Agent 가 따를 지시.
  • Scope스코핑 참고. 전역, 테넌트별, 사용자별.
  • Priority — 충돌 시 높은 우선순위가 낮은 것 오버라이드.

룰이 가는 곳

Wiki 스페이스 에 type = rule 로 추가. 또는 전용 절차 스페이스 사용. Agent 는 매 턴 룰을 읽음 — 리트리벌에 맡기지 않음. 높은 우선순위 룰은 항상 컨텍스트 안.

룰 쓰기

룰은 구조화된 노트일 뿐. Wiki 에디터에서 Rule 템플릿 사용:
또는 자유형으로 쓰고 Nora 가 구조를 파싱하게 함 — 트리거와 액션이 텍스트에서 추출됨.

도구로부터

Agent 는 사실 쓰는 것과 같은 방식으로 룰 쓸 수 있음 — remember_rule 도구로. Agent 가 교정에서 룰을 배울 때 유용:
사용자: 가격이 최종이라고 말하면 안 돼 — 항상 부가세 전이라고 언급해. Agent: [룰 쓰기: “가격 질문에 답할 때 ‘부가세 전’ 언급”]

리뷰어로부터

Approvals 큐가 리뷰어가 교정을 룰로 전환하게 함:
  • Agent 액션을 이유와 함께 거부.
  • 교정에서 Save as rule 클릭.
  • 관련 메모리 스페이스에 룰 추가, 모든 미래 실행에 적용.

룰 충돌

같은 턴에 두 룰이 다른 액션으로 발화하면 우선순위가 결정. 우선순위 같으면 두 액션 모두 Agent 에 표면화되고 Agent 가 둘 다 다루는 응답 구성.

룰 은퇴

룰은 inactive 표시 (참조용으로 유지, 더 이상 적용 안 됨) 또는 supersede 가능 (노트·문서처럼). Superseded 룰은 리트리벌에서 배제; inactive 룰은 쿼리 가능하지만 발화 안 함.

트레이스에서 룰 관찰

턴에서 발화한 모든 룰이 모델 호출 위에 트레이스에 표시:
  • 매치된 트리거.
  • 프롬프트에 주입된 액션.
  • Agent 동작이 룰과 정렬됐는지 여부.
룰이 계속 발화하는데 Agent 가 무시하면 그것이 시그널 — 룰이 틀렸거나 불명확하거나 프롬프트와 충돌.