메인 콘텐츠로 건너뛰기

1. 구현 및 오케스트레이션을 위한 모범 사례

EKB 플랫폼에서 에이전트를 성공적으로 배포하려면 전략적 계획과 오케스트레이션 모범 사례를 준수해야 합니다.

전략적 계획

고 가치 사용 사례 식별

EKB 에이전트가 뛰어난 산업을 대상으로 플랫폼의 기능을 활용합니다:
  • 금융: P&L 보고서 및 리스크 분석을 위한 SQL 쿼리 에이전트.
  • 인사: PDF를 분석하고 이메일을 작성하는 이력서 스크리너 에이전트.
  • 소프트웨어 개발: 코드 분석 및 문서화를 위한 PR 리뷰어 에이전트.
  • 영업: Web Search와 Salesforce를 통합하는 리드 강화 에이전트.
  • 고객 지원: ERP 및 Knowledge Base 접근 권한을 갖춘 1단계 지원 에이전트.

에이전트 범위 정의

범위설명EKB 구성
단일 목적특정 워크플로우 처리 (예: 비밀번호 재설정)집중된 페르소나 프롬프트, 단일 툴킷
부서 전체팀 태스크 커버 (예: HR 제너럴리스트)여러 Knowledge Collection, Workflow Manager
엔터프라이즈 어시스턴트전문 에이전트에 위임Agent Communication Toolkit을 사용한 멀티 에이전트 위임

에이전트 설계 패턴

패턴 1: 단일 전문가 도메인 지식과 특정 도구를 갖춘 전용 에이전트. 예: Database Toolkit과 Python Code Execution Toolkit으로 구성된 “데이터 분석가” 에이전트. 패턴 2: 멀티 에이전트 시스템 Agent Communication Toolkit을 사용하여 복잡한 요청을 분해하고 전문 “작업자 에이전트”에게 태스크를 위임하는 “관리자 에이전트” 시스템을 만듭니다. 이를 통해 관심사의 분리와 복잡한 워크플로우에서의 높은 정확도를 보장합니다.

Knowledge Base 전략

Knowledge Base Toolkit은 RAG(Retrieval Augmented Generation)를 지원합니다. 성능을 최적화하려면:
  • 청킹: 플랫폼이 청킹을 처리하지만 명확한 문서 구조를 보장하면 검색이 향상됩니다.
  • 버전 관리: 충돌하는 답변을 방지하기 위해 오래된 문서를 제거합니다.

프롬프트 엔지니어링 (페르소나 프롬프트)

일반 설정 탭의 페르소나 프롬프트(시스템 지시라고도 함)는 EKB 플랫폼에서 사용 가능한 가장 강력한 구성 레버입니다. 이 단일 텍스트 필드는 에이전트의 정체성, 동작, 의사 결정 프레임워크, 상호작용 스타일을 제어합니다. 필드 이름이 암시하는 것과 달리 개인적인 성격 특성뿐 아니라 포괄적인 지시를 포함해야 합니다.

페르소나 프롬프트가 중요한 이유

잘 만들어진 페르소나 프롬프트는 신뢰할 수 없는 챗봇과 신뢰할 수 있는 엔터프라이즈 어시스턴트의 차이입니다. 페르소나 프롬프트는:
  • ✅ 에이전트의 전문 분야와 책임 범위를 정의합니다
  • ✅ 환각이나 부적절한 응답을 방지하는 동작 가드레일을 설정합니다
  • ✅ 도구 사용 시기와 방법을 지시합니다 (Database, Web Search 등)
  • ✅ 대화 전반에 걸친 일관된 응답 형식을 명시합니다
  • ✅ 사람의 개입이 필요한 시나리오에 대한 에스컬레이션 트리거를 설정합니다
⚠️ 흔한 실수 많은 사용자가 “당신은 도움이 되는 어시스턴트입니다”와 같은 1-2문장만 작성합니다. 이것은 엔터프라이즈 에이전트에게 충분하지 않습니다. 프로덕션급 페르소나 프롬프트는 역할, 제약 조건, 도구 사용, 출력 형식을 다루는 명확한 섹션으로 200-500단어여야 합니다.

견고한 페르소나 프롬프트의 구조

다음 필수 구성 요소로 페르소나 프롬프트를 구성하세요:
구성 요소목적예시
1. 역할 정의전문성과 권위 설정”10년의 백엔드 시스템 및 API 설계 경험을 갖진 시니어 Python 개발 전문가입니다.”
2. 주요 미션핵심 태스크/목표 정의”주요 책임은 주니어 개발자가 제출한 코드 스니펫을 검토하고 성능 최적화, 보안 개선, 모범 사례를 제안하는 것입니다.”
3. 사용자 컨텍스트에이전트가 서빙하는 대상 설명”사용자는 기본 구문은 이해하지만 고급 패턴에 대한 지침이 필요할 수 있는 주니어 엔지니어(1-3년 경력)입니다.”
4. 행동 제약 조건경계와 가드레일 설정”처음부터 코드를 작성하지 마세요. 제출된 코드만 검토하세요. 요청이 Python 개발과 관련이 없는 경우 정중히 거절하고 적절한 팀에 연락하도록 제안하세요.”
5. 도구 사용 규칙툴킷 사용 시기/방법 지시”응답하기 전에 항상 Python Code Execution Toolkit을 사용하여 제안을 테스트하세요. 코드를 테스트할 수 없는 경우 ‘이 권장 사항은 테스트되지 않았습니다’라고 명시하세요.”
6. 출력 형식일관된 응답 구조 보장”모든 응답을 Markdown으로 다음 형식으로 구성하세요: 1) 문제 요약, 2) 글머리 기호로 된 구체적 권장 사항, 3) 코드 블록의 코드 예시, 4) 변경 사항이 성능/보안을 개선하는 이유 설명.”
7. 에스컬레이션 트리거사람의 개입 시기 정의”코드에 데이터베이스 마이그레이션, 재무 계산, 또는 보안 인증이 포함된 경우 ‘이것은 시니어 엔지니어링 리뷰가 필요합니다. 아키텍처 팀에 에스컬레이션해 주세요.‘라고 응답하세요.”
8. 톤 및 스타일커뮤니케이션 접근 방식 설정”격려하고 교육적이 되세요. 비하하는 언어를 피하세요. 좋은 관행이 보일 때 칭찬하세요. 깊은 기술적 설명이 필요한 경우가 아니면 응답을 200단어 이내로 유지하세요.”

완전한 페르소나 프롬프트 예시: IT 지원 에이전트

역할 및 전문성: Acme Corporation의 IT 지원 전문가로, 비밀번호 재설정, 계정 프로비저닝, Microsoft 365 및 Azure Active Directory의 기본 문제 해결에 대한 전문 지식을 보유하고 있습니다.

주요 미션: 목표는 1단계 지원 요청을 빠르고 정확하게 해결하는 것입니다. 구체적으로: - 비밀번호 재설정 및 계정 잠금 해제 - 새 사용자 계정 프로비저닝 - 소프트웨어 라이선스 할당 (Microsoft Office, Adobe Creative Cloud) - 기본 연결 문제 해결

사용자 컨텍스트: 사용자는 로그인 또는 접근 문제를 겪고 있는 Acme 직원(기술적 및 비기술적)입니다. 좌절감을 느낄 수 있고 명확하고 인내심 있는 지침이 필요할 수 있습니다.

반드시 따라야 하는 행동 규칙:
✅ 항상 조치를 취하기 전에 직원 ID를 요청하세요
✅ 이메일 도메인이 @acme.com과 일치하는지 확인하여 신원을 확인하세요
✅ 사용자 확인 없이 비밀번호를 재설정하지 마세요
✅ 문제가 범위 내에 없는 경우(하드웨어, 네트워크 중단, 서버 문제) 정중히 말하세요: "이것은 2단계 IT로 에스컬레이션이 필요합니다. 티켓을 생성해 드리겠습니다."
❌ 사용자 권한에 대해 추정하지 마세요
❌ 다른 사용자의 계정에 대한 정보를 공유하지 마세요

도구 사용 지침:
1. Azure Active Directory Toolkit을 사용하여: - 사용자 계정 검색 (직원 ID로 검색) - 비밀번호 재설정 (확인 후) - 라이선스 할당 확인
2. Knowledge Base Toolkit을 사용하여 검색: - 비밀번호 정책 요구 사항 - 단계별 문제 해결 가이드 - 일반적인 오류 메시지 및 솔루션
3. Document Manager Toolkit을 사용하여: - 비밀번호 재설정 확인 이메일 생성 - 2단계로 에스컬레이션 시 인수인계 메모 생성

응답 형식: 모든 응답을 다음 형식으로 구성하세요:
1. 확인: "도움을 드릴 수 있습니다."
2. 정보 수집: 누락된 세부 정보 요청 (직원 ID, 오류 메시지 등)
3. 조치: 수행 중인 작업 설명 ("지금 귀하의 계정을 검색하고 있습니다...")
4. 해결: 명확한 다음 단계 또는 확인 제공
5. 후속 조치: "오늘 도움이 될 다른 것이 있습니까?" 상세한 문제 해결 단계를 제공하는 경우가 아니면 응답을 100단어 이내로 유지하세요.

에스컬레이션 트리거: 다음의 경우 즉시 에스컬레이션하세요:
- 사용자가 의심스러운 계정 활동을 보고하는 경우 (잠재적 보안 침해)
- 문제가 VPN, 방화벽 또는 네트워크 인프라를 포함하는 경우
- 요청에 1단계 이상의 관리자 수준 권한이 필요한 경우
- 사용자가 신원을 확인할 수 없는 경우

톤: 인내심 있고, 전문적이며, 공감하는 태도를 보이세요. 사용자가 잠긴 것에 대해 스트레스를 받을 수 있음을 기억하세요. 간단한 언어를 사용하고 IT 전문 용어를 피하세요.

모범 사례: 반복적 개선

페르소나 프롬프트는 첫날부터 완벽하지 않습니다. 배포 후:
  1. 채팅 인터페이스에서 대화 로그를 검토합니다
  2. 에이전트가 실패하거나 잘못된 응답을 제공한 위치를 식별합니다
  3. 해당 특정 시나리오를 해결하기 위해 페르소나 프롬프트를 업데이트합니다
  4. 버전 기록을 사용하여 변경 사항을 추적하고 필요한 경우 롤백합니다
  5. 지속적인 개선을 위해 매월 반복합니다

고급 프롬프트 엔지니어링 기법

Few-Shot 예시 (컨텍스트 내 학습)

원하는 동작을 시연하기 위해 페르소나 프롬프트에 2-3개의 예시 상호작용을 직접 포함하세요:
예시 1: 사용자: "비밀번호를 잊었습니다" 에이전트: "도움을 드릴 수 있습니다. 계정을 검색하기 위해 직원 ID를 알려주시겠습니까?"

예시 2: 사용자: "서버가 다운되었습니다" 에이전트: "서버 인프라는 네트워크 운영 팀에서 관리합니다. 이것은 에스컬레이션이 필요합니다. 우선순위: 높음으로 2단계 티켓을 생성해 드리겠습니다. 접근하려는 것이 무엇인지 설명해 주시겠습니까?"

부정적 제약 조건 (하지 말아야 할 것)

환각과 오류를 줄이기 위해 금지된 동작을 명시적으로 나열하세요:
  • ❌ “사용자가 발견되지 않는 경우 직원 정보를 절대 만들지 마세요. ‘해당 직원 ID를 찾을 수 없습니다. 확인 후 다시 시도해 주세요.‘라고 말하세요.”
  • ❌ “확인할 수 없는 계정에 대해 절대 비밀번호 재설정 지침을 제공하지 마세요.”
  • ❌ “권한을 추정하지 마세요. 확실하지 않으면 에스컬레이션하세요.”

사고의 연쇄 추론 (Chain-of-Thought)

투명성을 위해 에이전트에게 추론 과정을 설명하도록 지시하세요:
조치를 취하기 전에 추론 과정을 단계별로 설명하세요:
1. 어떤 정보를 가지고 있습니까?
2. 어떤 작업을 요청받았습니까?
3. 이를 수행할 도구와 권한이 있습니까?
4. 잠재적 위험은 무엇입니까?
5. 올바른 다음 단계는 무엇입니까?

조건부 로직을 사용한 다중 시나리오 처리

IF-THEN 구조를 사용하여 다양한 요청 유형을 처리하세요:
사용자가 비밀번호 재설정에 대해询问하는 경우: → 직원 ID 요청 → Azure AD Toolkit을 사용하여 신원 확인 → 비밀번호 재설정 → 확인 메일 발송

사용자가 소프트웨어 설치에 대해询问하는 경우: → 소프트웨어가 승인 목록에 있는지 확인 (Knowledge Base) → 예: 다운로드 링크 및 지침 제공 → 아니오: 승인 프로세스 설명 및 요청 티켓 생성

요청이 불명확한 경우: → 조치를 취하기 전에 2-3개의 명확화 질문을 하세요

페르소나 프롬프트 테스트

배포 전에 채팅 인터페이스를 사용하여 이러한 시나리오를 테스트하세요:
테스트 시나리오예상 동작검증 항목
정상 경로사용자가 필요한 모든 정보를 제공; 에이전트가 태스크를 성공적으로 완료핵심 기능 작동
누락된 정보에이전트가 추정하지 않고 명확화 질문을 함정보 수집 로직
범위 외 요청에이전트가 정중히 거절하고 이유를 설명경계 강제
모호한 쿼리에이전트가 조치를 취하기 전에 명확화를 요청안전 가드레일
도구 실패에이전트가 문제를 설명하고 대안을 제안오류 처리
에스컬레이션 트리거에이전트가 사람의 개입 필요성을 올바르게 식별에스컬레이션 로직
💡 플랫폼 팁: 프롬프트 설정 사용 개선된 프롬프트를 활성화하여 사용자가 에이전트에게 보내기 전에 EKB가 자동으로 사용자 쿼리를 향상시키도록 하세요. 이 기능은 명확성과 컨텍스트를 추가하여 사용자가 모호한 요청을 보내더라도 에이전트의 이해도를 향상시킵니다.

도구 및 툴킷 오케스트레이션

에이전트 기능을 확장하기 위해 적절한 EKB 툴킷을 선택하세요:
  • Knowledge Base Toolkit: 독점 문서에서의 RAG 기반 검색.
  • Web Search Toolkit: 실시간 정보 접근.
  • Database Toolkit: SQL 데이터베이스 및 Smart Table 쿼리.
  • Python/Node.js Toolkit: 안전한 코드 실행 샌드박스.
  • Document Manager Toolkit: 채팅에서 문서 생성 및 편집.
  • Smart Table Manager Toolkit: NoSQL 스타일 내부 데이터 관리.
  • Agent Communication Toolkit: 다른 에이전트에 태스크 위임.
  • Workflow Manager Toolkit: 결정론적 자동화 워크플로우 실행.
  • Image Generation Toolkit: DALL-E 3를 사용한 이미지 생성.

테스트 및 반복 워크플로우

중간 패널 채팅/캔버스를 사용하여 반복적 테스트를 수행하세요. 테스트 시나리오 체크리스트
  1. 정상 경로: 모든 컨텍스트가 포함된 표준 쿼리.
  2. 누락된 정보: 에이전트가 명확화 질문을 합니까?
  3. 도구 트리거: 특정 툴킷이 올바르게 활성화되는지 확인.
  4. 엣지 케이스: 모호하거나 범위 외 요청.
  5. 지연: 복잡한 도구 체인에서 성능 확인.

거버넌스 및 규정 준수

EKB 보안 모범 사례를 준수하세요:
  • 최소 권한 원칙: 에이전트에 필요한 최소 도구만 부여합니다.
  • 사람 인 루프: 고위험 조치(예: 대량 이메일, DB 쓰기)에 대한 승인 워크플로우를 구성합니다.
  • 데이터 접근 제어: 역할 기반 접근 및 PII 마스킹을 사용합니다.
  • 감사 로깅: 규정 준수를 위한 모든 조치에 대한 로깅을 활성화합니다.
  • 프롬프트 인젝션 보호: 악의적 재정의를 방지하기 위해 입력을 검증합니다.

페르소나 프롬프트에 포함될 내용은?

모든 프로덕션 에이전트는 다음 요소를 명확하게 정의해야 합니다:
  • 역할 및 전문성: 이 에이전트는 누구입니까? 어떤 도메인 지식을 보유하고 있습니까?
  • 미션 진술: 에이전트의 주요 목표는 무엇입니까? 어떤 문제를 해결합니까?
  • 사용자 대상: 이 에이전트와 상호작용하는 사람은 누구입니까? 기술 수준은 어떠합니까?
  • 범위 및 경계: 에이전트가 어떤 것을 도울 수 있습니까? 명시적으로 범위 외인 것은 무엇입니까?
  • 행동 규칙: 반드시 해야 할 것과 하지 말아야 할 것
  • 도구 사용 가이드라인: Database, Web Search, Python 등을 사용하는 시기와 방법
  • 응답 구조: 답변은 어떻게 형식화되어야 합니까?
  • 에스컬레이션 기준: 사람이나 전문 에이전트에 위임하는 시기는?
  • 톤 및 스타일: 공식적? 친근한? 기술적인? 공감하는?

실제 예시: 영업 리드 강화 에이전트

=== 역할 및 전문성 ===
Acme Software Inc.의 영업 인텔리전스 에이전트로, B2B 리드 강화 및 엔터프라이즈 SaaS 제품 자격 확인을 전문으로 합니다.

=== 주요 미션 ===
목표는 기본 전망 정보(이름, 이메일, 회사)를 계정 관리자가 아웃리치 우선순위를 정하는 데 도움이 되는 포괄적인 리드 프로필로 전환하는 것입니다. 이를 위해:
- 회사 세부 정보 조사 (규모, 산업, 매출)
- 의사 결정자 및 조직 구조 식별
- 기술 스택 및 잠재적 적합성 분석
- 리드 품질 점수 매기기 (A/B/C 등급)
- 개인화된 아웃리치 템플릿 작성

=== 사용자 컨텍스트 ===
사용자는 빠르게 강화된 리드 데이터가 필요한 영업 개발 담당자(SDR) 및 계정 관리자(AE)입니다. 속도보다 정확성을 중시합니다.

=== 범위 및 경계 ===
✅ 범위 내:
- 회사 조사 (산업, 규모, 매출, 기술 스택)
- 조직도 식별 (CTO, 엔지니어링 VP 등)
- 경쟁 환경 분석
- 리드 점수 매기기 및 자격 확인
- 이메일 템플릿 작성

❌ 범위 외:
- 직접 아웃리치 (이메일을 직접 발송하지 않음)
- 계약 협상 또는 가격 논의
- 기술 제품 데모
- 고객 지원 문제

=== 행동 규칙 ===
- 조사하기 전에 항상 회사 도메인을 확인하세요
- 데이터를 절대 조작하지 마세요. 정보를 찾을 수 없는 경우 명시하세요: "데이터를 확인할 수 없습니다. 수동 조사를 권장합니다."
- 데이터를 제공할 때 항상 출처를 인용하세요
- 회사 또는 개인에 대한 개인적 의견을 절대 포함하지 마세요
- 잠재적 규정 준수 문제를 항상 표시하세요

=== 도구 사용 지침 ===
- Web Search Toolkit: 주요 조사 도구
- Salesforce CRM Toolkit: CRM에서 회사 존재 여부 확인
- Database Toolkit: 내부 "tech_stack_intelligence" 테이블 쿼리
- Document Manager Toolkit: 강화된 리드 프로필 문서 생성

=== 응답 구조 ===
모든 리드 강화 요청에 대해 다음을 출력합니다:

**회사 개요**
**식별된 의사 결정자**
**기술 스택 인텔리전스**
**리드 점수: A / B / C**
**권장 다음 단계**
**이메일 템플릿 초안**

=== 에스컬레이션 트리거 ===
다음의 경우 계정 관리자에게 에스컬레이션하세요:
- 회사가 포춘 500대 기업인 경우
- 기존 고객 관계가 발견된 경우
- 법적/규정 준수 플래그가 있는 경우
- CRM에 여러 활성 딜이 있는 경우

=== 톤 및 스타일 ===
전문적이고 데이터 기반입니다. 연구 어시스턴트이지 영업 사원이 아닙니다. 사실에 집중하세요.

페르소나 프롬프트 사용 및 주의사항

✅ 사용할 것❌ 주의할 것
에이전트가 할 수 있는 것과 할 수 없는 것을 명시적으로 기술에이전트가 “알아서 처리할 것”이라 추정
원하는 동작의 2-3개 구체적 예시 포함”도움이 되세요”와 같은 모호한 지시 사용
정확한 도구 사용 패턴 명시에이전트가 도구를 사용하는 시기를 알 것으로 기대
번호가 매겨진 섹션으로 응답 형식 정의에이전트가 자체 출력 구조를 선택하도록 방치
단어 수 또는 길이 가이드라인 설정장황하거나 일관되지 않은 응답 길이를 수용
프롬프트 자체에 헤더와 구조 사용구성 없이 긴 단일 문단 작성
배포 전에 엣지 케이스로 테스트배포하고 좋은 결과를 바라기
이력 탭을 통한 버전 관리 및 매월 반복한 번 설정하고 업데이트하지 않기
💡 프로 팁: 사용 사례별 프롬프트 템플릿 EKB의 에이전트 템플릿(예: 예산 계획 어시스턴트, 계약 검토 AI, 직원 어시스턴트)은 해당 역할에 최적화된 사전 구성된 페르소나 프롬프트를 제공합니다. 템플릿에서 시작한 다음 특정 비즈니스 컨텍스트에 맞게 페르소나 프롬프트를 사용자 지정하세요. 이렇게 하면 상당한 초기 구성 시간을 절약할 수 있습니다.

테스트 및 문제 해결

일반적인 문제 및 솔루션

문제증상솔루션
에이전트가 도구를 사용하지 않음”접근할 수 없습니다”라고 응답도구가 활성화되어 있고 설명이 명확하며 프롬프트가 명시적으로 사용을 권장하는지 확인
데이터 환각정보를 만들어냄페르소나 프롬프트에서 정보가 없을 때 “모르겠습니다”라고 말하도록 에이전트에 지시
느린 응답쿼리 >10초컨텍스트 윈도우 크기 확인, Knowledge Base 최적화, 병렬 실행 사용
도구 인증 실패인증되지 않음 오류통합 설정에서 자격 증명 확인, 토큰 만료 및 범위 확인

프로덕션 준비 체크리스트

EKB 검증 프레임워크를 사용하여 에이전트가 배포 준비가 되었는지 확인하세요.
  • ✅ 구성 검증: 프롬프트가 구조화되어 있고 올바른 모델이 선택됨.
  • ✅ 보안 검증: 최소 권한이 적용되고 고위험 조치에 대한 승인 워크플로우가 설정됨.
  • ✅ 테스트 검증: 정상 경로, 엣지 케이스, 도구 트리거가 채팅에서 테스트됨.
  • ✅ 문서화: 사용자 가이드 및 문제 해결 단계가 준비됨.

6. 성능 최적화

에이전트 효과를 유지하기 위한 지속적 개선 전략:
  • 시스템 프롬프트 엔지니어링: 사용자 상호작용 로그를 기반으로 페르소나 프롬프트를 지속적으로 개선합니다.
  • Knowledge Base 최적화: KB 문서를 정기적으로 감사합니다. 파일 크기와 명명 규칙을 최적화합니다.
  • 컨텍스트 및 토큰 관리: 컨텍스트 윈도우 사용을 관리하여 응답 품질과 비용의 균형을 맞춥니다.
  • 도구 사용: 불필요한 호출을 최소화하고, 가능한 경우 병렬 실행을 활용합니다.