Agent Platform SDK 사용
Agent Platform SDK를 사용할 때 에이전트를 쿼리하는 코드는 로컬에서 실행되는지 아니면 원격으로 배포되는지와 관계없이 동일합니다. 실행 중인지 로컬에서 아니면 원격으로 배포되는지와 관계없이 지원되는 작업 집합은 프레임워크마다 다르므로 프레임워크별 템플릿의 사용 안내를 제공합니다.
| 프레임워크 | 설명 |
|---|---|
| 에이전트 개발 키트 | AI 애플리케이션을 빌드하는 개발자 또는 강력한 에이전트 기반 솔루션의 프로토타입을 빠르게 제작하고 배포해야 하는 팀을 위해 Google의 내부 권장사항을 기반으로 설계되었습니다. |
| Agent2Agent(프리뷰) | Agent2Agent(A2A) 프로토콜은 AI 에이전트 간의 원활한 통신과 협업을 지원하도록 설계된 개방형 표준입니다. |
| LangChain | 사전 정의된 구성 및 추상화 덕분에 기본 사용 사례에서 더 쉽게 사용할 수 있습니다. |
| LangGraph | 고급 인간 참여형(Human-In-The-Loop) 및 되감기/재생 기능을 사용하여 워크플로를 정의하는 그래프 기반 접근 방식입니다. |
| AG2(이전의 AutoGen) | AG2는 LLM 워크플로를 빌드하기 위한 고급 추상화로 멀티 에이전트 대화 프레임워크를 제공합니다. |
| LlamaIndex(프리뷰) | LlamaIndex의 쿼리 파이프라인은 검색 증강 생성 (RAG) 워크플로를 만들기 위한 고급 인터페이스를 제공합니다. |
| 커스텀 | 프레임워크별 템플릿을 사용하지 않고 개발 및 배포된 에이전트입니다. |
localhost에서 제공되는 에이전트 사용
요청을 수신 대기하는 API 서버를 통해 에이전트를 제공하는 경우
http://localhost:PORT_NUMBER 다음으로 요청을 전송합니다.
http://localhost:PORT_NUMBER/API_PATH
각 항목의 의미는 다음과 같습니다.
기본 API를 통해 배포된 에이전트 사용
에이전트를 배포한 경우 해당 엔드포인트로 요청을 전송합니다 .
https://LOCATION-aiplatform.googleapis.com/reasoningEngines/v1/projects/PROJECT_NUMBER/locations/<var>LOCATION</var>/reasoningEngines/RESOURCE_ID/api/API_PATH
각 항목의 의미는 다음과 같습니다.
PROJECT_ID는 에이전트를 배포한 프로젝트 ID입니다. Google CloudLOCATION은 에이전트가 배포된 리전입니다.RESOURCE_ID는 배포된 에이전트의 ID로,reasoningEngine리소스입니다.API_PATH는 해당 API 엔드포인트의 경로입니다.
이 엔드포인트는 localhost 기준 URL을 배포된 에이전트 기준 URL로 바꾸는 것과 같습니다.
몇 가지 예를 들자면 ADK API 서버 Dockerfile 또는 컨테이너 이미지에서 배포한 경우 다음과 같이 API 엔드포인트를 호출합니다.
에이전트 실행 (단일 응답)
curl \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID/api/run -d '{
"appName": "my_sample_agent",
"userId": "u_123",
"sessionId": "s_abc",
"newMessage": {
"role": "user",
"parts": [{"text": "What is the capital of France?"}]
}
}'에이전트 실행 (스트리밍)
curl \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID/api/run_sse -d '{
"appName": "my_sample_agent",
"userId": "u_123",
"sessionId": "s_abc",
"newMessage": {
"role": "user",
"parts": [{"text": "What is the weather in New York?"}]
},
"streaming": true
}'콘솔에서 배포된 에이전트 사용 Google Cloud
에이전트 개발 키트 (ADK)를 사용하여 개발된 배포된 에이전트의 경우 Google Cloud 콘솔을 사용하여 에이전트와 상호작용할 수 있습니다.
콘솔에서 Agent Platform 배포 페이지로 이동합니다.
Google Cloud선택한 프로젝트의 일부인 런타임이 목록에 표시됩니다. 필터 필드를 사용하여 지정된 열을 기준으로 목록을 필터링할 수 있습니다.
런타임 이름을 클릭합니다.
플레이그라운드 탭을 클릭합니다.
메시지 입력 을 통해 에이전트와 상호작용하고 새 세션 을 클릭하여 에이전트와 새 세션을 시작할 수 있습니다.
OpenTelemetry를 통해 추적을 사용 설정 한 경우 상호작용 중에 에이전트의 동작에 관한 세부정보를 볼 수 있습니다.
추적: 에이전트와의 대화 추적입니다.
이벤트: 에이전트와의 대화 중에 호출된 API 및 이벤트 세부정보의 그래프입니다.
상태: 대화 중에 에이전트의 상태에 관한 정보입니다.
세션: 에이전트와 연결된 세션 목록입니다. 자세한 내용은 콘솔 또는 API 호출을 사용하여 관리하기를 참고하세요. Google Cloud
플레이그라운드 지원
다음 프레임워크를 사용하여 에이전트를 사용해 볼 수 있습니다.
| 프레임워크 | 에이전트와 채팅하기 | 세션 보기 |
|---|---|---|
| 에이전트 개발 키트 (ADK) | 지원됨 | 지원됨 에이전트가 지속성을 위해 Agent Platform 세션 을 구현해야 합니다. |
| Agent2Agent (A2A) | 지원됨 에이전트가 지속성을 위해 Agent Platform 세션 을 구현해야 합니다. | 지원됨 에이전트가 Agent Platform 세션을 사용해야 하며 에이전트는
user_id 값을 컨텍스트 객체의 일부로 전송해야 합니다. 에이전트 실행기의 일부로 user_id 값을 전달하는 방법의 예는 A2A 시작하기 노트북을 참고하세요. |