핵심 개념

에이전트의 소울(시스템 프롬프트)이란?

에이전트가 누구인지에 대한 상시적 서술 — 그 성격, 어조, 타협 불가능한 원칙 — 으로, 그것이 마침 하고 있는 일과는 별도로 보관됩니다.

이렇게도 부릅니다페르소나에이전트 성격시스템 프롬프트

대부분의 팀에게 에이전트의 성격이 어디에 사는지 물으면 답은 "프롬프트 어딘가"인데, 이는 아무도 정확히 모른다는 말의 다른 표현입니다. 여기서 에이전트는 세 부분으로 정의되며, 그것들을 떼어 두는 것이 이 모든 것을 유지보수 가능하게 만드는 요소입니다.

soul
A requestAnswerrulesAgent · soulidentity &refusal rules
The agent answers what's in scope and refuses what crosses its rules — however it's asked.

소울, 태스크, 그리고 편집할 수 없는 부분

소울 — 그것이 누구인가. 성격, 어조, 상시적 행동 규칙. 문의를 선별하든 서류를 독촉하든 변함없이 참인 것들. "결과를 절대 약속하지 말라"가 여기에 속합니다.

태스크 — 그것이 무엇을 위한 것인가. 이 특정 에이전트가 하는 일. 한 테넌트가 소울을 공유하면서 태스크가 다른 여러 에이전트를 운영할 수 있습니다: 접수에서와 후속 조치에서의 같은 회사의 목소리.

모더레이션 — 누구도 끌 수 없는 부분. 플랫폼 전역의 안전 규칙으로, 당신 것을 포함한 모든 에이전트에 주입됩니다. 이 층은 의도적으로 테넌트가 편집할 수 없습니다. 에이전트에게 원하는 어떤 성격이든 부여할 수 있지만, 그 아래의 안전 규칙을 무시할 권한을 줄 수는 없습니다.

이 셋은 그 순서로 시스템 프롬프트의 고정 접두부(fixed prefix)에 이어 붙여집니다.

왜 순서가 보이는 것보다 더 중요한가

프롬프트는 층으로 되어 있습니다: 고정 접두부(소울 + 태스크 + 모더레이션), 그다음 사용 가능한 Skill 목록, 그다음 동적 컨텍스트 — 검색된 구절, 고객 프로필, 대화 이력 — 마지막으로 현재 질문.

그 접두부는 모든 대화의 모든 턴에서 안정적이며, 그래서 캐시할 수 있습니다. 가변적인 자료는 그 뒤에 자리합니다. 그래서 당신이 쓰는 정체성은 유지하기에 값싼 부분이고, 매 메시지마다 바뀌는 층은 매번 값을 치르는 부분입니다. 다섯 페이지짜리 소울을 쓰는 것은 영리한 일이 아니라, 모든 응답에 붙는 영구적인 세금입니다.

고객은 어디에 들어가나

소울 바로 뒤에, 프롬프트는 대화 상대에 관한 블록을 담습니다 — 이전 대화들에 걸쳐 그 사람에 대해 알게 된 것으로, 그들 자신의 스페이스 안에 있습니다. 소울은 어떻게 행동할지를 말하고, 그 블록은 이 사람이 누구인지를 말합니다.

그것들을 분리해 두는 것이, 에이전트가 네 번 대화한 상대에게는 다르게 인사하면서도 하나의 소울이 모든 고객을 서비스하게 하는 요소입니다.

어떻게 갱신되나

활성 정의는 데이터베이스에 살며, 그것이 단일한 진실의 원천입니다. 콘솔에서 편집하면 다음 턴이 새 텍스트로 구성됩니다 — 빌드도, 배포도, 재시작도 없습니다.

알아 둘 만한 두 가지 결과가 있습니다.

관계 중간에 효력이 발생합니다. 이미 진행 중인 대화는 다음 메시지에서 새 소울을 이어받습니다. 규칙을 하나 고치면 한 번에 모든 곳에서 고쳐지는데, 이는 대개 당신이 원하는 바이면서 가끔은 뜻밖의 일입니다.

템플릿은 출발점이지 링크가 아닙니다. 템플릿에서 에이전트를 만들면 그 템플릿의 소울이 당신의 에이전트로 복사됩니다. 이후 템플릿을 변경해도 이미 그것에서 만들어진 에이전트에는 되돌아 미치지 않습니다 — 당신 것은 당신 것입니다.

좋은 소울은 짧고, 지식이 아니라 행동에 관한 것입니다. 사실은 지식 베이스에, 절차는 Skill에 속합니다. 소울에 수수료 표를 붙여 넣고 있다면, 그것은 잘못된 곳에 있는 것입니다 — 그리고 모든 단일 메시지에서 읽힐 것입니다.

동작 원리가 궁금하신가요?프롬프트가 조립되는 방식