Team D: 프롬프트 주입

분석 대상

Module 3의 메모리 강화 시스템 프롬프트, 동적 프롬프트 주입 메커니즘

Module 1 vs Module 3 시스템 프롬프트 비교

구분
Module 1
Module 3

시작

"You are a Troubleshooting Agent"

"You are a Memory-Enhanced Troubleshooting Agent"

메모리 섹션

없음

MEMORY-ENHANCED APPROACH 추가

도구 사용

항상 도구 호출

메모리 우선, 필요시 도구

에러 처리

기본 에러

스로틀링 + 지수 백오프

스트리밍

단순 yield

재시도 로직 포함

Module 3에서 추가된 시스템 프롬프트 핵심 규칙

MEMORY_INTEGRATION_RULES

**MEMORY INTEGRATION RULES**:
1. SEMANTIC MEMORY: 메모리의 권한/아키텍처 정보를 정확히 인용
2. USER PREFERENCE MEMORY: 저장된 SOP 절차 사용, [User Preference Memory] 태그
3. SUMMARY MEMORY: 저장된 세션 컨텍스트와 PathID 정보 사용
4. VERBATIM QUOTE: 메모리 정보를 정확히 인용
5. CRITICAL: [Custom Memory] 태그 사용 금지

SUMMARIZATION_MEMORY_OVERRIDE

핵심: 이 규칙은 Summarization Memory가 활성화되면 도구 사용을 완전히 차단합니다.

동적 프롬프트 주입 메커니즘

주입 시점과 내용

전략별 추가 지시사항

전략
추가 지시사항

Semantic Memory

권한 질문 시 "Yes, you belong to..." 으로 시작

User Preference Memory

SOP 질문 시 반드시 [User Preference Memory] 태그

Summary Memory

도구 호출 금지, 메모리만 사용, 직접 fix 적용

Custom Memory

지원 티켓과 절차를 정확히 참조

프롬프트 누적 효과

주의: 시스템 프롬프트가 턴마다 증가하므로, 긴 대화에서는 토큰 사용량이 증가합니다.

on_agent_initialized에서의 프롬프트 강화

토론 질문

  1. 시스템 프롬프트가 턴마다 증가하면 비용과 지연 시간에 어떤 영향이 있나요?

  2. "FORBIDDEN" 같은 강한 제약이 실제로 LLM 행동을 100% 제어할 수 있나요?

  3. 메모리 컨텍스트가 잘못된 정보를 포함하면 어떻게 되나요?

  4. Module 1의 단순한 프롬프트 vs Module 3의 복잡한 프롬프트 중 어떤 것이 더 효과적인가요?

마지막 업데이트