
Agentforce 가이드 소개
추론, 주제, 명령 및 작업
추론, 주제, 명령 및 작업
AI 에이전트에는 효율성을 높이고, 수작업을 줄이고, 더 정교하고 적응력 있는 직장 환경을 조성하여 조직에 혁신을 가져올 수 있는 잠재력이 있습니다. 그렇기 때문에 저희는 AI 에이전트 구축 플랫폼인 Agentforce을 출시했습니다. 하지만 새로운 기술에는 새로운 개념과 새로운 구현 고려 사항이 수반됩니다.
이 가이드는 Agentforce의 핵심 요소를 살펴보며, Agentforce와 함께 발전해 나갈 일련의 가이드 중 첫 번째 가이드입니다. 이 리소스에서는 Agentforce 작동 방식, 그리고 아키텍트 및 모든 기술 실무자가 Agentforce를 통해 구축할 때 알아야 할 핵심 기능 및 트레이드오프에 대해 살펴볼 수 있습니다.
간단히 말해, 에이전트는 생성형 AI를 사용하여 다음에 무엇을 할지 그리고 어떻게 할지에 대한 결정을 내리는 소프트웨어의 일종입니다. 에이전트는 질문(흔히 발화라고 함)을 이해하고 자율적으로 추론하여 목표 달성을 위해 어떤 행동을 할지 결정하고, 필요한 데이터를 식별한 다음, 인간 개입 여부에 관계없이 조치를 취할 수 있습니다. 가장 좋은 점은 무엇인가요? 에이전트는 사전 작성된 엄격한 규칙 대신 대규모 언어 모델(LLM)을 사용합니다. 규칙 기반 자동화가 아니라 대규모 언어 모델을 사용함으로써 더 동적인 에이전트가 될 뿐 아니라, 하드코딩된 명령을 따르는 기존 소프트웨어와도 뚜렷한 차이가 있습니다.
AI 에이전트의 핵심 기능
에이전트는 기존 소프트웨어처럼 하드코딩된 로직을 따르지 않지만 Agentforce 에서는 에이전트가 추론하는 방식에 추가적인 제어 기능을 추가할 수 있는 다양한 구성 요소를 제공합니다. Agentforce를 확장할 수 있는 여러 기능도 있습니다. 이러한 구성 요소에 대해 간단히 살펴보겠습니다.
구성 요소 | 사용 시기 | 필요한 기술 |
---|---|---|
에이전트 호출 불가 작업 | Flow 또는 Apex에서 에이전트를 호출하려면 | 로우 코드 |
에이전트 API | Salesforce 외부에서 에이전트를 호출할 때 | 프로코드 |
에이전트 변수 | 에이전트가 추론하는 방식에 주제 및 작업 선택을 통해 추가적인 제어 기능을 추가할 때 | 로우 코드 |
Agentforce SDK | 프로그래밍 인터페이스를 통해 Python 코드를 사용하여 Salesforce의 Agentforce 인프라에 처음부터 새로 에이전트를 구축할 때 | 프로코드 |
모델 빌더 | 생성형 AI 모델 사용자 지정 또는 예측 모델 생성 | 로우 코드 |
전략 계획은 AI 에이전트 배포에 있어 매우 중요한 부분입니다. 조직에 전략이 마련되어 있지 않은 경우 Trailhead의 AI 전략 배지 를 통해 준비해 보시길 추천해 드립니다. 이후 내용은 AI 비전 정의, AI 위원회 구성, AI 거버넌스 수립, AI 사용 사례 도출, 로드맵 구축 프로세스에 이미 익숙하다는 전제를 바탕으로 진행됩니다.
에이전트를 구축하려면 시간과 리소스가 필요합니다. 계획을 꼼꼼히 세우면 처음부터 올바르게 시작할 수 있습니다. 에이전트 구축을 시작하기 전에 사용 사례를 정의하고 구축하려는 각 에이전트에 대한 프로세스 맵을 만듭니다. Trailhead의 에이전트 계획 배지 에서는 '에이전트의 업무 개요 ' 유닛의 프로세스 매핑을 다룹니다. 이상적인 사용자 경험과 함께 시스템이 사용자 입력에 대응하는 방식과 잠재적인 오류나 문제를 처리하는 방법을 간략하게 설명합니다.
완성된 다이어그램은 흐름을 이해하는 데 도움이 됩니다. 이는 명령을 생성하고 작업, 변수 및 필터를 어디에서 사용해야 하는지 파악하는 데도 도움이 됩니다. 이러한 에이전트 계획 접근 방식의 이점은 다음과 같습니다.
계속하기 전에, 에이전트가 Salesforce Platform에서 사용할 수 있는 유일한 생성형 AI 도구는 아니라는 점을 알아 두어야 합니다. 프롬프트 템플릿은 생성형 AI를 사용하는 애플리케이션을 구축하는 또 하나의 강력한 도구입니다. 프롬프트 빌더에 내장된 프롬프트 템플릿을 사용하면 생성형 AI 모델이 특정 출력을 생성하도록 안내하는 구조화되고 재사용 가능한 일련의 명령을 정의할 수 있습니다. 사전 정의된 필드, 데이터 그래프 및 컨텍스트에 맞는 데이터 검색 증강 생성(RAG)을 통해 Salesforce 데이터를 참조할 수 있습니다. 또한 프롬프트 템플릿은 매우 안전합니다. 모든 프롬프트는 Salesforce의 신뢰 계층을 통해 라우팅되어 권한을 존중하고, 민감한 데이터를 마스킹하고, 유해한 출력을 플래그합니다.
프롬프트 템플릿은 AI와 한 번의 발화와 응답(싱글턴)으로 상호 작용하는 것이며, 메모리나 다단계 추론이 필요하지 않은 일회성 업무에 적합합니다. 예를 들어, 프롬프트 템플릿은 한 문장을 다른 말로 바꾸거나 어떤 사례를 요약해야 할 때 이상적인데 지속적인 컨텍스트가 필요하지 않기 때문입니다. 프롬프트 템플릿으로 솔루션을 설계할 때는 프롬프트 템플릿이 무상태(대화 사이에 메모리를 유지하지 않음)이며, 결정을 내리거나 조치를 취하지 않는다는 점을 기억해야 합니다. 프롬프트 템플릿은 설계 시 제공한 입력 및 로직에 따라 응답을 생성합니다.
프롬프트 템플릿은 임베디드 AI 솔루션에서 자체적으로 사용하거나 에이전트에 프롬프트 템플릿을 에이전트 작업으로 추가할 수도 있습니다. 프롬프트 템플릿을 단독으로 사용하는 것은 다음과 같은 경우에 이상적입니다.
프롬프트 템플릿 사용 사례:
프롬프트 템플릿은 런타임에 렌더링되는 동적 입력에 따라 데이터를 동적으로 채우고 응답을 생성할 수는 있지만 옵션을 추론하거나 작업를 취할 수는 없습니다.
에이전트는 계속해서 변하는 컨텍스트에 따라 수행할 일, 순서, 그 방법을 자율적으로 결정하는 소프트웨어 시스템입니다. 에이전트는 단일 프롬프트에서 더 나아가, 계획하고, 추론하고, 외부 작업(예: API 호출 또는 데이터베이스 조회)을 호출하고, 결과에 따라 반응할 수 있습니다. 중간 프로세스에서 무엇을 학습하느냐에 따라 다른 경로나 응답을 선택할 수 있습니다. 에이전트는 다음 경우에 가장 효과적입니다.
AI 에이전트 사용 사례:
Agentforce가 어떻게 사용자 요청을 이해하고 취할 조치를 결정하는지 알고 싶으세요? 이 섹션에서는 Agentforce 의사 결정 프로세스의 핵심인 아틀라스 추론 엔진에 대해 자세히 알려드립니다. Salesforce에 레코드가 저장될 때 무슨 일이 일어나는지 이해하려면 실행 순서를 이해하는 것이 아주 중요한 것처럼, 아틀라스 추론 엔진이 백그라운드에서 어떻게 작동하는지 알면 Agentforce의 작동 방식을 이해할 수 있습니다.
아틀라스 추론 엔진은 일련의 프롬프트, 코드, LLM 호출 및 세 가지의 핵심 기초 구성 요소를 사용하여 에이전트가 효과적으로 이해하고 대응하도록 도와줍니다. 세 가지 요소인 주제, 명령 및 작업을, 에이전트를 사용자를 위해 작동하게 제어하는 손잡이라고 생각하세요. 이러한 요소를 조정하는 것은 추론 엔진이 이해하고 판단하고 행동하는 데 사용하는 프롬프트를 엔지니어링하는 일입니다. 맞습니다. Agentforce는 추론 엔진의 프롬프트를 사용하여 주제와 작업을 분류합니다. 즉, 에이전트 빌더에서 에이전트를 구축할 때마다 프롬프트 엔지니어링을 하게 되는 것입니다!
아틀라스 추론 엔진에 대해 더 자세히 살펴보기 전에 Agentforce를 통해 에이전트를 구축할 때마다 정의하는 세 가지의 중요한 메타데이터 요소인 주제, 명령 및 작업에 대해 더 자세히 살펴보겠습니다.
주제는 에이전트 기능의 기초로서, 에이전트가 할 수 있는 일과 처리할 수 있는 고객 요청의 유형을 정의합니다. 특정 전문 지식, 도구(작업) 및 가이드라인(명령)을 갖춘 전문 부서라고 생각할 수 있습니다. 고객이 메시지를 전송하면 에이전트가 요청을 처리해야 할 '부서(주제)'를 먼저 결정한 다음, 해당 부서의 가이드라인에 따라 도구를 사용하여 고객을 돕습니다. 주제에는 특정 주제 영역 내에서 에이전트가 할 수 있는 일과 할 수 없는 일을 정의하는 범위도 있습니다.
명령은 토픽 내에서 대화를 처리하는 방법을 지시하고, 작업 선택을 안내하고, 대화 패턴을 설정하고, 비즈니스 컨텍스트를 제공하는 가이드라인입니다. 명확하고 뚜렷한 토픽을 통해 중복을 방지하고 추론 엔진이 고객 요청을 정확하게 분류할 수 있습니다. 에이전트를 효과적으로 안내하려면 명령이 명확하고 구체적이며 실행 가능한 것이어야 합니다.
작업은 에이전트가 정보를 얻거나 작업을 수행하는 데 사용하는 도구의 역할을 합니다. 작업을 정의할 때는 추론 엔진이 작업을 처리하는 방식을 이해하는 것이 중요합니다. 엔진은 이름, 설명, 입력은 물론 주제 명령 및 대화 컨텍스트에 따라 사용 가능한 작업을 검토합니다. Agentforce에는 다양한 표준 에이전트 작업이 제공되며, 사용자 지정 에이전트 작업을 생성하여 구현 범위를 더욱 확장할 수 있습니다. 하지만 사용자 지정 작업을 생성하기 전에 항상 표준 작업을 사용할 수 있는지 확인해야 합니다. 작업은 여러 주제에서 사용될 수 있으므로 재사용 가능성을 염두에 두고 작업을 설계하세요. 다음은 사용 가능한 사용자 지정 에이전트 작업 목록과 사용해야 하는 시기입니다.
구성 요소 | 사용 시기 | 필요한 기술 | 추가 라이선스가 필요한가요? |
---|---|---|---|
프롬프트 템플릿 | LLM을 호출하여 응답을 생성합니다. 프롬프트 템플릿 작업은 에이전트가 검색 증강 생성(RAG)을 사용하는 한 방법입니다. | 로우 코드 | 그렇습니다. |
흐름 | 로우코드 규칙 기반 자동화 및 레코드 검색을 실행할 때 | 로우 코드 | 아니요 |
Apex 코드 | 프로 코드 규칙 기반 자동화 및 레코드 검색을 실행하려면 | 프로코드 | 아니요 |
MuleSoft API | 복잡한 엔터프라이즈 환경에서 레거시 시스템 및 기타 외부 애플리케이션의 데이터를 검색할 때 | 프로코드 | 그렇습니다. |
외부 서비스 | OpenAPI 사양을 지원하는 REST API로부터 데이터를 검색하려면 | 로우 코드 | 그렇습니다. |
예측 모델 | 에이전트와 함께 예측 AI를 사용하려면 | 로우 코드 | 그렇습니다. |
에이전트가 토픽, 명령 및 작업을 사용하여 업무를 완료하는 방법에 대해 정확하게 궁금할 수 있습니다. 다음은 에이전트가 호출될 때마다 Atlas 추론 엔진 내에서 어떤 일이 발생하는지 단계별로 분석한 것입니다.
사용자로부터 메시지나 쿼리가 수신되거나 이벤트, 데이터 변경 또는 API 호출로 인해 에이전트가 호출될 때 프로세스가 시작됩니다.
추론 엔진이 사용자의 메시지를 분석하여 관련성이 가장 높은 주제로 분류합니다. 이 분류 단계에서는 추론 엔진이 주제 이름과 주제 분류 설명만 봅니다. 일치하는 적절한 주제를 발견하지 못하면 기본적으로 '주제 외' 분류로 설정합니다.
선택한 주제와 관련된 범위, 명령 및 작업은 원래 사용자 메시지 및 대화 기록(일반적으로 마지막 6번의 대화)과 함께 프롬프트에 삽입됩니다. 이렇게 생성된 프롬프트는 LLM에 전달되어 에이전트의 다음 동작을 판단하는 데 사용됩니다.
에이전트는 결합된 입력(사용자 메시지, 명령, 잠재적 작업)을 분석하여 다음 단계를 결정합니다.
최종 응답을 전송하기 전에 에이전트는 제안된 응답이 해당 주제에 대해 제공된 명령에 그라운딩되고 이에 부합하는지 마지막으로 한 번 더 확인합니다. 이 단계는 응답이 다음과 같은지 확인하는 것입니다.
최종적으로 검증된 응답이 사용자에게 전송됩니다. 그라운딩 단계가 실패하면 에이전트가 다시 시도하여 그라운딩 응답을 생성하려고 시도합니다. 그라운딩된 응답을 생성할 수 없는 경우, 사용자에게 요청을 도와줄 수 없음을 알리는 표준 메시지를 보냅니다.
이 워크플로를 이해하면 에이전트의 각 구성 요소(주제, 명령 및 작업)가 이 추론 프로세스와 함께 작동하도록 신중하게 설계되어야 하는 이유를 설명하는 데 도움이 됩니다. 하지만 여기서 끝이 아닙니다.
추가적인 제어 기능을 제공하고 에이전트 워크플로우에 결정론적 로직을 추가하기 위해 Agentforce에서는 조건부 필터링을 사용합니다. 이는 양식 필드에 대해서는 동적 가시성 규칙이 있지만 추론할 때 에이전트에게 적용되는 것과 같습니다.
조건부 필터는 추론 과정에서 특정 토픽 또는 작업을 고려해야 하는지 여부를 결정하는 게이트키퍼 역할을 합니다. LLM의 결정을 안내하는 명령과 달리 필터는 시스템 수준에서 작동하여 특정 조건에 따라 토픽과 작업을 완전히 제거하거나 포함시킵니다.
조건부 필터링은 두 가지 매우 중요한 방식으로 에이전트의 성능을 개선합니다.
1. 주제 분류 정확도 개선
대화 상태에 따라 관련 없는 주제를 고려 대상에서 제거함으로써 주제 분류 프로세스에서 '의미를 왜곡하는 요소'를 줄입니다. 이렇게 하면 LLM이 사용자 쿼리에 맞는 올바른 주제를 더 쉽게 선택할 수 있습니다.
예를 들어, 사용자가 아직 인증하지 않은 경우, 필터를 통해 계정별 작업과 관련된 모든 토픽을 숨길 수 있습니다. 이렇게 하면 에이전트가 일반 쿼리를 민감한 주제로 잘못 분류하여 궁극적으로 인증 오류나 부적절한 응답을 초래하는 것을 방지할 수 있습니다.
2. 컨텍스트에 맞는 작업 선택
토픽을 선택하면 필터를 통해 현재 대화 상태에 따라 해당 토픽 내에서 사용할 수 있는 작업을 더욱 세분화할 수 있습니다.
조건부 필터링 작동 방법
아틀라스 추론 엔진은 컨텍스트 변수와 사용자 지정 변수라는 두 가지 유형의 변수에 따라 필터링을 지원합니다. 다음은 각 유형의 속성에 대한 간략한 개요입니다.
구성 요소 | 컨텍스트 변수 | 사용자 지정 변수 |
---|---|---|
사용자가 인스턴스화할 수 있음 | 아니요 | 그렇습니다. |
작업의 입력 가능 | 그렇습니다. | 그렇습니다. |
작업의 출력이 될 수 있음 | 아니요 | 그렇습니다. |
작업별로 업데이트할 수 있음 | 아니요 | 그렇습니다. |
작업 및 주제의 필터에 사용할 수 있음 | 그렇습니다. | 그렇습니다. |
지원되는 유형 | 텍스트/숫자 | 텍스트/숫자 |
이러한 변수는 메시징 세션에서 파생된 변수로, 다음을 포함할 수 있습니다.
컨텍스트 변수는 에이전트가 대화로 물어볼 필요 없이 알려진 고객 정보를 기반으로 상호 작용을 개인화하는 데 특히 유용합니다. 컨텍스트 변수를 사용하여 솔루션을 설계할 때는 세션 시작 시 설정되며 해당 세션 동안에는 변경할 수 없다는 점에 유의해야합니다.
사용자 지정 변수는 작업에서 반환된 정보를 저장합니다. 다음 용도로 사용할 수 있습니다.
필터는 컨텍스트 및 사용자 지정 변수의 값을 기반으로 합니다. 필터는 주제와 작업 수준 모두에 적용할 수 있습니다.
다음은 주제 수준 및 작업 수준 필터가 추론 플로에 적용되는 방법을 보여주는 아틀라스 추론 엔진의 간단한 보기입니다.
필터링의 가장 일반적인 사용 사례는 민감한 작동에 대한 액세스를 제어하는 것입니다.
필터: "인증 필요"
조건: authenticationStatus = "인증됨"
적용 대상: 계정 관리 주제, 결제 처리 주제
이렇게 하면 사용자가 인증하기 전에 계정이나 결제와 관련된 질문을 하더라도 에이전트는 이러한 주제를 호출하는 것을 허용하지 않게 됩니다.
필터를 사용하여 프로세스 단계가 올바른 순서로 실행되도록 도울 수도 있습니다.
필터: "필수 주문 번호"
조건: orderNumber != null
적용 대상: 주문 상태 확인 작업, 주문 수정 작업
이렇게 하면 주문 번호가 수집되어 변수에 저장된 후에만 주문 관련 작업을 사용할 수 있습니다.
필터링과 명령의 차이점을 이해하는 것은 중요합니다.
아틀라스 추론 엔진의 또 다른 기능은 인용입니다. 인용을 사용하여 LLM이 응답을 생성하는 데 사용한 소스를 검증할 수 있습니다. 아래 다이어그램은 추론 엔진 플로에서 인용이 어디에 적합한지 보여줍니다.
또한 이 다이어그램에서 추론 엔진의 구성 가능한 아키텍처를 잘 볼 수 있습니다. 에스컬레이션, 출처 표기 및 가드레일은 서비스 템플릿용 Agentforce를 사용하여 에이전트를 구축할 때 추론 엔진에서 사용하는 모듈식 구성 요소입니다. 오늘날 추론 엔진에서 사용하는 모듈식 구성 요소는 템플릿별로 설정됩니다. Salesforce는 향후 고객이 이러한 구성 요소를 마치 레고 블록처럼 에이전트에서 넣었다 빼었다 할 수 있게 만들려고 노력하고 있습니다.
이미 많은 내용을 살펴보았습니다. 이제 한 걸음 물러나 고객이 에이전트에게 질문할 때 토픽, 명령 및 작업이 추론 엔진과 함께 어떻게 작동하는지 전체적인 예를 살펴보겠습니다.
고객 메시지: "어제 빨간 스웨터를 주문했는데 배송 주소를 변경해야 합니다."
이제 추론 엔진의 작동 방식과 토픽, 작업 및 명령이 중요한 이유를 이해했으니 이제 이를 생성하기 위한 몇 가지 모범 사례를 살펴보겠습니다.
토픽은 에이전트 역량의 기초가 됩니다. 에이전트가 수행할 수 있는 작업과 처리할 수 있는 고객 요청의 종류를 정의합니다. 토픽의 세 가지 요소는 토픽 이름, 분류 설명 및 범위입니다.
잘못된 예 | 좋은 예 | 더 나은 이유 |
---|---|---|
고객 정보 | 주문 상태 및 세부 정보 제공 | 해야 할 일을 명확하게 설명 |
지원 | 기술적인 질문에 답변 | 제공되는 도움말 유형을 지정합니다. |
거래 | 결제 세부 정보 업데이트 지원 | 제공되는 도움말 유형을 지정합니다. |
여기에서는 이 토픽을 트리거해야 하는 사용자 메시지에 대해 설명합니다. 이 토픽은 에이전트가 언제 이 토픽를 사용해야 하는지 이해하는 데 매우 중요하며, 분류 단계에서 사용됩니다.
잘못된 예 | 좋은 예 | 더 나은 이유 |
---|---|---|
주문 관련 질문을 처리합니다. | 주문 번호를 확인한 후 고객에게 주문 세부 정보 및 상태에 대한 업데이트를 제공합니다. | 주제의 범위를 명확히 합니다. |
계정을 지원합니다. | 로그인 문제, 계정 생성, 비밀번호 재설정을 지원합니다. | 더 구체적이어서 에이전트가 올바른 것을 선택할 수 있도록 합니다. |
결제 문제를 처리하기 전에 검증합니다. | 사용자가 신용 카드 및 PayPal 세부 정보를 포함한 결제 정보를 추가하거나 업데이트할 수 있도록 지원합니다. | 다른 주제로 리디렉션하도록 구체적으로 언급합니다. 리마인더: 더 높은 결정성을 위해 조건부 주제 필터를 사용합니다. |
에이전트가 사용자 쿼리에 대해 지속적으로 올바른 토픽을 선택하지 못하는 경우 가장 먼저 토픽 이름과 설명을 조사하고 개선해야 합니다.
이 토픽 내에서 에이전트가 할 수 있는 것과 할 수 없는 것의 경계를 정의합니다.
잘못된 예 | 좋은 예 | 더 나은 이유 |
---|---|---|
주문 질문 및 문제를 처리합니다. | 여러분의 임무는 고객의 주문 상태, 반품 상태 또는 반품 및 수리 정책과 관련된 질문에 답변하는 것뿐입니다. 주문이나 반품을 절대 시작하거나 생성하지 않습니다. | 에이전트가 해야 할 일과 하지 말아야 할 일에 대한 명확한 경계를 설정합니다. |
로그인 문제를 지원합니다. | 귀하의 업무는 로그인할 수 없는 고객이 비밀번호를 재설정하거나 사용자 이름을 조회하도록 도와주는 것뿐입니다. 계정 정보를 업데이트하거나 권한을 수정할 수 없습니다. | 주제를 수행할 수 있는 활동과 범위를 명시적으로 설명합니다. |
에이전트가 사용자의 비밀번호 재설정을 도와줄 수 있도록 설계 시, 주제를 구성하는 방법에 대해 살펴보겠습니다. 주제, 명령 및 작업은 다음과 같습니다.
구성 요소 | 콘텐츠 |
---|---|
주제 이름 | 비밀번호 재설정 |
분류 설명 | 비밀번호를 잊어버렸거나, 로그인할 수 없거나, 자격증명 재설정이 필요하거나, 잠겨 있거나, 로그인 문제가 발생한 고객을 지원합니다. 사용자가 비밀번호를 변경하거나 계정 액세스 권한을 복구하도록 도와줍니다. |
범위 | 귀하의 업무는 고객이 비밀번호를 재설정하거나 사용자 이름을 복구하도록 돕는 것뿐입니다. 이메일/전화를 통해 신원을 인증하고 비밀번호 재설정을 시작할 수 있습니다. 인증 이외의 계정 세부 사항에 액세스하거나 비밀번호 이외의 다른 고객 정보를 수정할 수 없습니다. |
명령 |
---|
신원 인증을 진행하기 전에 고객이 선호하는 인증 방식(이메일 또는 전화)을 물어봅니다. |
고객 환경설정에 따라 고객 이메일 인증 또는 고객 전화 인증 작업을 사용합니다. 인증에 성공할 때까지 비밀번호 재설정을 시도하지 않습니다. |
인증 후 "24시간 후에 만료되는 안전한 재설정 링크를 이메일로 보내드리겠습니다"라고 재설정 프로세스를 설명합니다. |
고객이 등록된 이메일/전화에 액세스할 수 없는 경우에만 보안 질문 인증을 사용합니다. |
재설정을 완료한 후 계정 액세스와 관련된 다른 지원이 필요한지 물어봅니다. |
작업 이름 | 설명 | 입력 |
---|---|---|
고객 이메일을 검증하려면 | 이메일과 계정을 일치시켜 신원을 확인합니다. 성공하면 인증 상태와 고객 ID를 반환합니다. | 이메일 주소: 고객 이메일(형식: example@domain.com). |
고객 전화 인증 | 고객의 휴대폰으로 코드를 전송하여 신원을 확인합니다. 이메일 인증이 불가능할 때 사용합니다. | 전화번호: 특수 문자를 제외한 10자리 숫자. |
비밀번호 재설정 이메일 보내기 | 인증된 이메일로 24시간 만료 재설정 링크를 보냅니다. 인증에 성공한 후에만 사용합니다. | 고객 ID: 인증 성공 시의 인증된 ID |
그런 다음 실행 시, 고객이 회사의 웹사이트에서 에이전트와 상호 작용할 때 다음과 같은 일이 일어납니다.
명령은 에이전트에게 토픽 내에서 대화를 처리하는 방법을 알려주는 가이드라인입니다. 명령은 에이전트가 취해야 할 작업과 대응 방법에 대한 결정을 내리는 데 도움이 됩니다.
명령은 에이전트의 의사 결정 프로세스에서 몇 가지 매우 중요한 역할을 합니다.
명확한 명령이 없으면 에이전트가 잘못된 작업을 선택하거나, 사용자 요청을 잘못 이해하거나, 일관성 없는 응답을 제공할 수 있습니다. 하지만 명령은 프롬프트에 병합되어 LLM으로 전송되므로 결정론적이지 않다는 점을 기억하세요. 작업 내에 코딩된 비즈니스 규칙에 대한 필요성을 대체하지는 않습니다.
추론 엔진은 고객 요청을 처리할 때 명령을 사용하여 다음과 같이 처리합니다.
명령이 명확하고 구체적일수록 에이전트가 더 일관성 있게 수행할 수 있습니다.
에이전트를 구축할 때, 기능을 구현하기 위해 언제 명령을 사용하고 언제 작업을 사용해야 하는지 이해하는 것이 매우 중요합니다. 일관되게 적용되어야 하는(예: 복잡한 계산, 민감한 정보 처리, 특정 순서가 필요한 다단계 작동) 매우 중요한 비즈니스 로직에는 작업을 사용합니다. 반대로 대화 플로를 안내하고, 에이전트가 컨텍스트에 따라 적절한 작업을 선택하도록 돕고, 응답 서식 지정과 어조를 정의하고, 정보가 모호할 때 명확화 전략을 수립하기 위해서는 명령을 사용합니다.
환불 주문 작업 예:
public with sharing class RefundOrderHandler {
public class RefundResult {
@AuraEnabled public Boolean canReturn;
@AuraEnabled public String message;
}
@AuraEnabled
public static RefundResult processRefund(Id orderId, Date orderDate) {
RefundResult result = new RefundResult();
if (orderDate == null || orderId == null) {
result.canReturn = false;
result.message = '잘못된 입력: 주문 ID와 주문 날짜가 필요합니다.';
return result;
}
Date today = Date.today();
Integer daysSinceOrder = today.daysBetween(orderDate);
if (daysSinceOrder > 30) {
result.canReturn = false;
result.message = '주문을 반품할 수 없습니다. 30일 이상 경과했습니다.';
} else {
result.canReturn = true;
result.message = '주문을 반품할 수 있습니다. 반품 전표를 전송합니다.';
sendReturnEmail(orderId);
}
return result;
}
다음은 추론 엔진과 잘 작동하는 몇 가지 명령의 예입니다.
잘못된 예 | 좋은 예 | 더 나은 이유 |
---|---|---|
고객의 주문 세부 사항을 가져오세요. | 고객이 주문 상태에 대해 문의하는 경우 이메일 주소, 주문 날짜 또는 주문 ID를 포함한 모든 조회 옵션을 제공합니다. | 구체적인 지침을 제공하고 작업 이름과 유사한 언어를 사용합니다. |
디바이스 문제를 지원하시오. | 지식으로 질문에 답변하기 작업을 사용하여 문제 해결 정보를 검색하기 전에 어떤 유형의 디바이스(iOS 또는 Android)인지 명확히 합니다. 지식으로 질문에 답하기 작업의 검색 쿼리에 장치 유형을 포함합니다. | 어떤 정보를 먼저 수집할지에 대한 명확한 명령을 제공하고 어떤 작업을 사용할지 지정합니다. |
제품 관련 질문에는 지식을 활용합니다. | 제품 기능에 대한 질문의 경우, 먼저 고객이 질문하고 있는 특정 제품을 식별하시오. 그런 다음, 정확한 제품 이름으로 정확한 정보를 검색하여 지식 작업을 사용하시오. | 명확한 단계 순서를 제공하고 작업을 더 효과적으로 만드는 방법을 지정합니다. |
고객에게 지원이 필요한지 확인하시오. | 배송 상태에 대한 정보를 제공한 후에는 항상 고객에게 주문과 관련된 다른 도움이 필요한지 물어봅니다. | 후속 조치의 시기와 방법에 대해 구체적으로 설명합니다. |
작업은 에이전트가 정보를 얻거나 작업을 수행하는 데 사용하는 도구입니다.
에이전트가 고객 요청을 처리하면 추론 엔진은 다음을 수행합니다.
이 프로세스가 효과적으로 작동하려면 추론 엔진이 작업을 언제, 어떻게 사용하는지 이해하는 데 도움이 되는 명확하고 설명적인 작업 이름과 명령이 필요합니다. 지연 시간을 최소화하고 성능을 개선하려면 한 주제에 15개가 넘는 작업을 배정하지 말고, 작업은 여러 주제에서 재사용될 수 있다는 점을 기억하시기 바랍니다!
에이전트의 각 작업에는 구성해야 하는 세 가지 중요한 부분, 즉 작업 이름, 작업 명령 및 작업 입력 명령이 있습니다.
잘못된 예 | 좋은 예 | 더 나은 이유 |
---|---|---|
GetOrderInfo | LookupOrderStatus | 작업이 제공하는 정보가 무엇인지 명확하게 설명 |
UpdateContactRecord | UpdateCustomerPhoneNumber | 업데이트되는 내용을 구체적으로 설명합니다. |
ProcessPmt | ProcessPayment | 명확성을 위해 약어 사용하지 않기 |
작업 지침은 작업이 무엇을 하는지와 언제 사용해야 할지를 추론 엔진에 알려줍니다. 이러한 지침은 에이전트가 적시에 올바른 작업을 선택하도록 도와주는 데 매우 중요합니다.
잘못된 예 | 좋은 예 | 더 나은 이유 |
---|---|---|
전화번호를 업데이트합니다. | 사용자 레코드와 연결된 사용자의 전화번호를 업데이트합니다. 일치하는 레코드가 없으면 새 레코드를 생성합니다. | 작업이 무슨 일을 하는지와 엣지 케이스 처리 방법에 대해 설명합니다. |
추적 정보를 가져오시오. | 추적 번호와 배송지 우편 번호를 기반으로 고객 주문에 대한 반품 추적 정보를 반환합니다. | 이 작업을 사용하는 경우와 작업에 필요한 정보를 설명합니다. |
지식을 제공하시오. | 제품, 정책 또는 절차에 대한 사용자 질문에 답변하기 위해 기술 자료를 검색합니다. 이 작업은 사용자가 '방법'에 대한 질문을 하거나 계정에 한정되지 않는 정보가 필요할 때 사용해야 합니다. | 대화 플로우에서 언제 작업을 사용해야 하는지 설명합니다. |
계정을 확인합니다. | 고객 계정이 존재하는지 확인하고 계정 상태 정보를 반환합니다. 고객이 이미 계정을 가지고 있는지 또는 계정이 활성화되어 있는지 확인하려는 경우, 이 작업을 사용합니다. 조회를 수행하려면 이메일 주소 또는 전화번호가 필요합니다. | 사용 목적, 사용 시기, 필요한 정보를 명확하게 설명합니다. |
작업 지침에 대한 모범 사례:
작업 입력 지침은 작업에 필요한 정보가 무엇인지와 에이전트가 그 정보를 고객으로부터 어떻게 수집해야 하는지 정의합니다. 명확한 입력 지침은 에이전트가 올바른 형식으로 올바른 정보를 수집하는 데 도움이 됩니다.
잘못된 예 | 좋은 예 | 더 나은 이유 |
---|---|---|
주문 ID 입력. | 주문 ID는 18자의 영숫자 식별자입니다. | 형식 세부 정보를 제공합니다. |
고객 이메일. | 계정 인증에 사용되는 고객의 이메일 주소입니다. 형식은 유효한 이메일 주소(example@domain.com)여야 합니다. | 형식 및 검증 요구 사항을 지정합니다. |
검색 쿼리. | 사용자의 질문을 설명하는 상세한 검색 쿼리. 검색 결과를 개선하기 위해 사용자가 언급한 특정 제품 이름, 오류 코드 또는 증상을 포함합니다. 기술적인 문제의 경우, 디바이스 유형(iOS/Android) 및 앱 버전이 언급되었다면 항상 포함합니다. | 포함할 특정 요소와 함께 효과적인 쿼리를 구성하는 방법을 설명합니다. |
전화번호. | 공백이나 특수 문자를 제외한 고객의 10자리 전화번호입니다. 고객이 서식 설정이 있는 숫자(예: 555-123-4567)를 제공한 경우에는 작업으로 넘어가기 전에 특수 문자를 제거합니다. | 명확한 서식 설정 명령과 처리 지침을 제공합니다. |
작업 입력 명령을 위한 핵심 팁
고객으로부터 자주 듣는 질문입니다. 짧은 답변은 "예"입니다. Data Cloud 아키텍처는 에이전트 애널리틱스 및 디지털 지갑과 같은 Agentforce의 특정 기능에 활용되므로 Data Cloud는 Agentforce의 필수적인 부분입니다. 또한 Data Cloud 인프라는 비정형 데이터에 대한 인덱싱 및 검색뿐만 아니라 피드백 로깅 및 감사 내역도 지원합니다. Data Cloud는 Agentforce에도 추가적인 확장성을 제공할 수 있습니다. 고객은 Agentforce에 구축된 에이전트를 통해 Salesforce 외부 플랫폼에 구축된 데이터와 모델을 사용할 수 있는 BYOL(Bring Your Own Lake) 및 BYO-LLM(Bring Your Own Large Language Model)과 같은 기능을 활성화할 수도 있습니다.
데이터 페더레이션을 통한 다른 데이터 레이크의 데이터 액세스부터 페타바이트급 데이터를 위한 하이퍼스케일 인프라 활용까지, Data Cloud의 아키텍처와 Agentforce를 활용하면 고객은 지금 바로 더 나은 AI 결과를 경험하며, 에이전트를 구동하는 기본 데이터 세트가 아무리 크거나 복잡하더라도 성공적인 에이전트 도입을 위한 장기적인 실행 가능성을 보장할 수 있습니다.
Data Cloud으로 구동되는 특정 Agentforce 기능이 무엇인지 궁금하신가요? 아래에는 디폴트로 Data Cloud에서 지원되는 Agentforce 기능과 구현을 확장하려는 고객이 설정할 수 있는 옵션 Data Cloud 기능에 대한 요약을 살펴볼 수 있습니다.
Agentforce 기능 | 설명 | 프로비저닝 |
---|---|---|
감사 내역 및 피드백 기록 | 생성형 AI 감사 데이터 | 선택 가능 |
데이터 라이브러리 자동화 | 검색 색인 및 검색기 생성을 자동화하여 지식으로 질문에 답하는 등의 에이전트 작업을 지원합니다. | 디폴트로 프로비저닝됨 |
자체 LLM 가져오기(BYO-LLM) | 고객이 자체 LLM을 사용하도록 허용 | 선택 가능 |
에이전트 분석 | 보고서 및 대시보드를 위해 사용량 데이터를 Data Cloud로 스트리밍 | 디폴트로 프로비저닝됨 |
외부 데이터 소스(CRM 외) | 고객이 외부 소스의 데이터를 사용하여 AI가 생성한 응답을 그라운딩하도록 지원 | 선택 가능 |
비정형 데이터 | 고객이 비정형 데이터를 사용하여 AI 생성 응답을 그라운딩할 수 있음 | 선택 가능 |
실시간 데이터 그래프 | 고객이 여러 Data Cloud 소스의 정규화된 데이터를 사용하여 AI 생성 응답을 거의 실시간으로 그라운딩할 수 있음 | 선택 가능 |
검색 증강 생성(RAG) | 고객이 추론 시점에 검색된 Salesforce 및 Data Cloud의 데이터를 통해 프롬프트를 보강할 수 있습니다. | 디폴트로 프로비저닝됨 |
Atlas 추론 엔진, 그리고 토픽, 명령 및 작업 사용 방법 등 Agentforce를 작동하게 하는 핵심 요소에 대해 살펴보았습니다. 이러한 구성 요소를 이해해야 Agentforce를 효과적으로 사용할 수 있습니다. Agentforce 결과를 개선하기 위해 Agentforce 구현 시작 시, 이 가이드를 활용하시기 바랍니다. 자세한 내용은 제공된 리소스를 확인하시기 바랍니다.
에이전트 계획: 에이전트의 업무 개요
https://trailhead.salesforce.com/content/learn/modules/agentforce-agent-planning/outline-the-agents-work
작업 지침:
https://help.salesforce.com/s/articleView?id=ai.copilot_actions_instructions.htm&type=5
주제 명령:
https://help.salesforce.com/s/articleView?id=ai.copilot_topics_instructions.htm&type=5
에이전트 문제 해결:
https://help.salesforce.com/s/articleView?id=ai.copilot_troubleshoot.htm&type=5
Agentforce 변수:
https://developer.salesforce.com/blogs/2025/04/agentforce-variables-a-new-way-to-structure-agent-memory
https://developer.salesforce.com/blogs/2025/04/control-agent-access-and-decision-making-with-variables-and-filters
Agentforce 가이드는 Salesforce의 Agentforce 플랫폼을 사용하여 AI 에이전트를 구축하는 방법에 대해 설명하며 에이전트, 주제, 명령, 작업 및 아틀라스 추론 엔진과 같은 핵심 요소를 다룹니다.
이 가이드는 Agentforce를 사용하여 AI 에이전트를 구축 및 배포하는 데 참여하는 기술 실무자 및 아키텍트를 대상으로 합니다.
이 가이드에서는 Agentforce 기본 사항, 프롬프트와 에이전트의 차이점, Agentforce 추론 방식, 다양한 구성 요소에 대한 모범 사례, Agentforce의 Data Cloud 필요 여부 등을 다룹니다.
Agentforce은(는) 자율적으로 계획, 추론 및 행동할 수 있는 AI 에이전트를 도입하여 수작업을 줄이고 효율성을 높여 기업 생산성을 향상합니다.
주요 이점에는 에이전트가 다양한 상황에 적응하고, 효과적으로 계획하며, 도구를 자율적으로 또는 인간의 개입을 통해 사용하는 능력과 다양한 Agentforce 기능을 구동하는 데 있어 Data Cloud의 중요성이 포함됩니다.
예, 이 가이드는 전략 계획 수립, 주제 및 범위 정의, 명확한 명령 작성, 작업 구성을 위한 모범 사례 등 구현과 관련된 조언을 제공합니다.
Agentforce은(는) 필터링, 그라운딩 확인, 작업 및 명령의 세심한 설계와 같은 메커니즘을 통해 에이전트가 책임감 있게 동작하고 정확한 응답을 제공하도록 함으로써 책임 있는 AI를 구현합니다.