권장 사항
권장 사항은 AI를 사용하여 실제 세션 추적에서 최적화된 에이전트 구성을 생성합니다. 프롬프트 또는 도구 설명을 수동으로 다시 작성하는 대신 서비스가 에이전트의 트레이스를 가리키고 대상 평가자를 보상 신호로 지정하며 최적화된 구성을 수신합니다.
참고
권장 사항은 LLMs에서 생성됩니다. 적용하기 전에 검토하고 테스트합니다.
Amazon Bedrock AgentCore는 다음 두 가지 권장 유형을 지원합니다.
-
시스템 프롬프트 권장 사항: 에이전트 추적을 분석하고 최적화된 시스템 프롬프트를 생성하여 대상 평가자의 성능을 개선합니다. 서비스는 장애 패턴을 식별하고 특정 동작 지침을 추가합니다.
-
도구 설명 권장 사항: 에이전트 트레이스를 분석하고 도구 선택 혼동을 줄이는 선명화된 도구 설명을 생성합니다. 이는 에이전트가 모호한 요청에 대해 잘못된 도구를 선택할 때 유용합니다.
각 권장 사항에는 최적화할 현재 에이전트 구성과 분석할 에이전트 추적이라는 두 가지 입력이 필요합니다.
구성 입력 모드
다음 두 가지 방법 중 하나로 현재 구성을 제공합니다.
-
인라인 텍스트: API 요청에서 구성을 문자열로 직접 제공합니다. 시스템 프롬프트 권장 사항의 경우
systemPrompt.text필드에 프롬프트 텍스트를 전달합니다. 도구 설명 권장 사항의 경우toolDescription.toolDescriptionText.tools목록에 각 도구의 이름과 설명을 전달합니다. 이 모드는 빠른 실험, 적극적으로 반복하는 프롬프트를 테스트하려는 경우 또는 구성이 번들에 저장되지 않은 경우에 유용합니다.추천 유형 CLI 플래그 API 필드 시스템 프롬프트
--inline "prompt text"또는--prompt-file ./path.txtsystemPrompt.text도구 설명
--tools "name:description, name:description"toolDescription.toolDescriptionText.tools:toolName및가 있는 객체 목록toolDescription -
구성 번들: 기존 구성 번들 버전을 참조합니다. 서비스는 지정한 JSON 경로를 사용하여 번들에서 현재 구성을 읽고, 최적화된 버전을 생성하고, 결과를 새 번들 버전에 다시 씁니다. 이렇게 하면 최적화 기록이 번들과 함께 버전이 지정됩니다. 이 모드는 구성 번들을 사용하여 구성을 중앙에서 관리하고 최적화된 출력을 번들에 자동으로 다시 쓰도록 할 때 유용합니다.
추천 유형 CLI 플래그 API 필드 시스템 프롬프트
--bundle-name <bundle-name>+--bundle-version <bundle-version>+--system-prompt-json-path <path>systemPrompt.configurationBundlebundleArn,versionId,systemPromptJsonPath도구 설명
--bundle-name <bundle-name>+--bundle-version <bundle-version>+--tool-desc-json-path "name:jsonpath"(각 도구에 대해 반복)toolDescription.configurationBundle및bundleArn가 포함된versionId,toolName및tools목록 포함toolDescriptionJsonPath구성 번들을 사용하는 경우 권장 결과에는가 있는
configurationBundle필드bundleArn와 최적화된 구성이 포함된 번들 버전을versionId가리키는 새가 포함됩니다.
에이전트 추적 소스
agentTraces 파라미터는 다음 두 가지 소스 중 하나를 허용합니다.
-
CloudWatch Logs: 에이전트 런타임이 CloudWatch에 원격 측정을 쓸 때 사용합니다. 서비스는 필요한 시간 범위 내에서 지정된 로그 그룹에서 직접 트레이스를 읽습니다.
logGroupArns,serviceNames,startTime및를 제공해야 합니다endTime. 선택적rule필드를 사용하면 트레이스를 필터링할 수 있습니다(예:goal_success_rate가 임계값 미만인 세션만 선택).참고
권장 사항 API는 로그 그룹 이름이 아닌 로그 그룹 ARNs(
logGroupArns)을 사용합니다. 이는를 사용하는 배치 평가와 다릅니다logGroupNames.Field 유형 필수 설명 cloudwatchLogs.logGroupArns문자열 목록
예
CloudWatch Logs 에이전트 원격 측정이 저장되는 로그 그룹 ARNs입니다. 형식:
arn:aws:logs:{region}:{account}:log-group:{log-group-name}cloudwatchLogs.serviceNames문자열 목록
예
CloudWatch에서 에이전트의 트레이스를 식별하는 서비스 이름입니다. 규칙:
{RuntimeName}.DEFAULT.cloudwatchLogs.startTimeISO 8601 날짜/시간
예
추적 수집 기간의 시작입니다. 이 시간 이후의 트레이스만 포함됩니다.
cloudwatchLogs.endTimeISO 8601 날짜/시간
예
추적 수집 기간의 끝입니다. 이 시간 이전의 트레이스만 포함됩니다.
cloudwatchLogs.rule객체
아니요
추적 선택 범위를 좁히는 선택적 필터 규칙입니다. 각 필터가
key,operator(예:LESS_THAN) 및value(예: )를 지정하는filters목록을 포함합니다{"doubleValue": 0.5}.예
-
인라인 세션 범위: 로컬에서(예: 로컬 테스트 실행, CI/CD 파이프라인 또는 최적화하려는 특정 세션에서) 트레이스를 사용할 수 있는 경우 사용합니다. OpenTelemetry 호환 스팬 객체 목록으로 API 요청 본문에 스팬을 직접 제공합니다.
Field 유형 필수 설명 sessionSpans객체 목록
예
OpenTelemetry 호환 형식의 에이전트 추적 범위입니다. 각 스팬에는 트레이스 ID, 스팬 ID, 이름, 타임스탬프 및 속성이 포함됩니다.
예
참고
agentcore run recommendation는 비동기식입니다. 이 없으면 --wait명령이 권장 작업을 제출하고 즉시 반환합니다. 작업은 비터미널 상태(예: PENDING 또는 IN_PROGRESS)에서 시작되며 나중에 결과를 검색합니다. 권장 사항이 터미널 상태에 도달할 때까지 --wait 블록에 전달합니다. 제출된 작업의 결과를 폴링하거나 검색하려면를 실행합니다. agentcore view recommendation <id>여기서 id는 권장 작업 ID입니다.
AgentCore CLI는 기본 API 트레이스 소스 유형에 매핑되는 편의 플래그를 제공합니다.
| CLI 플래그 | API 매핑 | 설명 |
|---|---|---|
|
|
|
CloudWatch Logs를 통해 지난 N일 동안의 추적을 수집합니다. CLI는 런타임 구성에서 로그 그룹 ARNs 및 서비스 이름을 확인합니다. |
|
|
|
지정된 세션 클라이언트 측의 스팬을 수집하여 인라인 세션 스팬으로 전달합니다. 권장 사항 API 자체는 CloudWatch 소스에서 세션 ID 필터링을 지원하지 않습니다. |
|
|
|
로컬 JSON 파일에서 범위를 읽고 인라인 세션 범위로 전달합니다. |
|
|
해당 사항 없음(클라이언트 측 폴링) |
권장 사항이 터미널 상태에 도달할 때까지 차단합니다. |