레버
1. 프롬프트
Agent 의 역할이나 시스템 프롬프트 변경. 효과적:- 누락 동작 (“항상 소스 인용”).
- 잘못된 톤이나 포맷.
- 현재 프롬프트가 언급 안 하는 엣지 케이스 처리.
2. 도구 설명
도구가 약속하는 것 정제. 효과적일 때:- Agent 가 잘못된 도구 선택.
- Agent 가 올바른 도구를 잘못된 인자로 선택.
- Agent 가 호출해야 할 도구 호출 안 함.
3. 도구 구현
도구가 실제 하는 것이나 데이터 반환 방식 변경. 효과적일 때:- 도구 응답이 오해 소지 (부분 데이터에 성공 반환).
- 도구가 Agent 필요한 필드 포함 안 함.
- 도구가 너무 허용적 (게이트되어야 할 작업 허용).
4. 리트리벌 프리셋
리트리벌 설정 (가중치, 필터, top-K, 부스트) 변경. 효과적일 때:- 올바른 청크가 인덱스됐지만 리트리벌 안 됨.
- 청크 리트리벌됐지만 잘못된 순서.
- 낮은 관련도 청크가 컨텍스트 홍수.
5. 데이터 소스
지식 추가·태그·supersede·재구조화. 효과적일 때:- 답이 지식에 아예 없음 (추가).
- 답 있지만 오래됨 (supersede).
- 답 있지만 잘못 태그됨 (재태그).
6. 메모리 룰
절차적 룰 추가. 효과적일 때:- Agent 가 상시 동작 필요 (“Y 전 항상 X”).
- 특정 교정이 모든 미래 실행에 적용되어야.
7. 인과 그래프
엣지·변수 추가/조정. 효과적일 때:- 검증이 오발화 (그래프가 틀림).
- 검증이 실제 에러 못 잡음 (그래프에 엣지 누락).
8. 라우팅
다른 인텐트를 다른 Agent 로 보낼 Router 추가. 효과적일 때:- 단일 Agent 가 너무 많은 것 시도하고 아무것도 잘 못함.
- 인텐트별 비용 프로필이 예리하게 다름 (저렴한 인텐트를 저렴한 모델로 라우팅).
9. 가드레일 / 승인
특정 액션에 가드레일이나 승인 게이트 추가. 효과적일 때:- Agent 가 사람 리뷰 있어야 할 결정 내림.
- 특정 출력이 즉시 블록되어야.
10. 모델 스왑
Agent 가 쓰는 모델 변경 (또는 폴백 사용). 효과적일 때:- 지속적 실패가 모델이 도메인 처리 못함 시사.
- 비용/품질 트레이드오프가 Pareto 프론티어의 다른 모델 가리킴.
Nora 의 레버 선택
각 근본 원인 카테고리에 대해 Nora 가 특정 레버 선호:- 리트리벌 이슈 → 리트리벌 프리셋 > 데이터 소스 > 프롬프트.
- 프롬프트 이슈 → 프롬프트 > 메모리 룰 > 도구 설명.
- 도구 이슈 → 도구 설명 > 도구 구현 > 프롬프트.
- 데이터 이슈 → 데이터 소스 (추가/태그/supersede) > 다른 것으로 안 고쳐짐.
- 메모리 이슈 → 메모리 룰 > 스코프 설정 > 새 메모리 스페이스.
- 그라운딩 이슈 → 인과 그래프 > 데이터 소스.
- 모델 이슈 → 모델 스왑 > 프롬프트 조임.