Dialogflow 에이전트 등록 및 관리

이 페이지에서는 Gemini Enterprise에서 Dialogflow 에이전트를 등록하고 사용하는 방법을 설명합니다.

개요

Gemini Enterprise에서 Dialogflow 에이전트를 사용하려면 먼저 에이전트를 배포한 후 등록해야 합니다. Dialogflow 에이전트를 등록하면 배포된 에이전트가 Gemini Enterprise에 연결되어 서로 통신할 수 있습니다.

시작하기 전에

Dialogflow 에이전트를 등록하기 전에 다음 단계를 완료해야 합니다.

Gemini Enterprise에 Dialogflow 에이전트 등록

콘솔 또는 REST API를 사용하여 Dialogflow 에이전트를 Gemini Enterprise에 등록할 수 있습니다. Google Cloud 등록하면 Gemini Enterprise 앱 내에서 사용자가 에이전트를 사용할 수 있습니다.

콘솔

콘솔을 사용하여 Dialogflow 에이전트를 등록하려면 다음 단계를 따르세요. Google Cloud

  1. 콘솔에서 Gemini Enterprise 페이지로 이동합니다. Google Cloud

    Gemini Enterprise로 이동

  2. 프로젝트를 선택합니다.

  3. 에이전트를 등록할 앱의 이름을 클릭합니다.

  4. 에이전트 > 에이전트 추가를 클릭합니다. 에이전트 유형 선택 창이 나타납니다.

  5. Dialogflow를 통한 커스텀 에이전트 카드에서 추가 를 클릭하여 Dialogflow 에이전트를 Gemini Enterprise에 등록합니다. 구성 창이 열립니다.

  6. 에이전트를 구성하려면 다음 단계를 따르세요.

    1. 에이전트 이름 필드에 이름을 입력합니다. 이 값은 Gemini Enterprise에 에이전트의 표시 이름으로 표시됩니다.

    2. 에이전트 설명 필드에 설명을 입력합니다. 이 값은 사용자 쿼리에 대한 응답으로 사용자의 에이전트를 호출할지 여부를 결정하기 위해 LLM에서 사용됩니다.

    3. Dialogflow 에이전트 소스 필드에 Gemini Enterprise에 등록할 Dialogflow 에이전트의 리소스 경로를 입력합니다.

      이 형식을 사용합니다. projects/{project}/locations/{location}/agents/{agent}

      에이전트 사용 가능 여부 옵션은 선택 시 기본적으로 설정됩니다.

    4. 만들기 를 클릭합니다.

curl

이 코드 샘플은 에이전트를 등록하는 방법을 보여줍니다.

  curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents" \
    -d '{
      "displayName": "DISPLAY_NAME",
      "description": "DESCRIPTION",
      "icon": {
        "uri": "ICON_URI"
      },
      "dialogflowAgentDefinition": {
        "dialogflowAgent": "projects/DIALOGFLOW_PROJECT_ID/locations/DIALOGFLOW_LOCATION/agents/DIALOGFLOW_AGENT_ID"
      }
    }'

변수를 다음 값으로 바꿉니다.

  • PROJECT_ID: 프로젝트의 ID입니다. Google Cloud
  • APP_ID: Gemini Enterprise 앱의 ID입니다.
  • DISPLAY_NAME: Gemini Enterprise에 표시되는 에이전트의 사용자 친화적인 이름입니다.
  • DESCRIPTION: Gemini Enterprise의 사용자에게 표시되는 에이전트의 기능을 간략하게 설명합니다. 예를 들어 비즈니스 출장을 위해 업로드된 송장에서 주요 정보 추출
  • ICON_URI: Dialogflow 에이전트 이름 옆에 표시되는 아이콘의 공개 URI입니다. icon.content에서 Base64 인코딩 이미지를 제공할 수도 있습니다.
  • DIALOGFLOW_PROJECT_ID: Dialogflow 에이전트의 위치를 식별하는 프로젝트 ID입니다. Google Cloud
  • DIALOGFLOW_LOCATION: Dialogflow 에이전트가 호스팅되는 특정 지리적 위치입니다 (예: global 또는 us-central1).
  • DIALOGFLOW_AGENT_ID: Dialogflow 에이전트의 고유 식별자입니다.

이 명령어에 대한 성공적인 응답은 이름 필드에 고유한 리소스 이름을 포함하여 새로 생성된 Dialogflow 에이전트 리소스의 모든 필드를 반환합니다. 이 리소스 이름은 향후 업데이트 또는 참조에 사용할 수 있습니다.

앱에 연결된 에이전트 나열

다음 코드 샘플은 앱에 연결된 모든 에이전트의 세부정보를 가져오는 방법을 보여줍니다.

REST

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents"

변수를 다음 값으로 바꿉니다.

  • ENDPOINT_LOCATION: API 요청의 멀티 리전입니다. 다음 값 중 하나를 지정합니다.
    • 미국 멀티 리전의 경우 us
    • EU 멀티 리전의 경우 eu
    • 전역 위치의 경우 global
    자세한 내용은 데이터 스토어의 멀티 리전 지정을 참조하세요.
  • PROJECT_ID: Google Cloud 프로젝트의 ID입니다.
  • LOCATION: 앱의 멀티 리전입니다(global, us 또는 eu).
  • APP_ID: Gemini Enterprise 앱의 ID입니다.

에이전트가 Google에서 사전 빌드되지 않은 경우 응답의 처음 몇 줄에 name 필드가 포함됩니다. 이 필드의 값에는 경로 끝에 있는 에이전트 ID가 포함됩니다. 예를 들어 다음 응답에서 에이전트 ID는 12345678901234567890입니다.

{
"name": "projects/123456/locations/global/collections/default_collection/engines/my-app/assistants/default_assistant/agents/12345678901234567890",
...
}

Dialogflow 에이전트 세부정보 보기

다음 코드 샘플은 Gemini Enterprise에 등록된 에이전트의 세부정보를 가져오는 방법을 보여줍니다.

REST

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents/AGENT_ID"

변수를 다음 값으로 바꿉니다.

  • ENDPOINT_LOCATION: API 요청의 멀티 리전입니다. 다음 값 중 하나를 지정합니다.
    • 미국 멀티 리전의 경우 us
    • EU 멀티 리전의 경우 eu
    • 전역 위치의 경우 global
    자세한 내용은 데이터 스토어의 멀티 리전 지정을 참조하세요.
  • PROJECT_ID: Google Cloud 프로젝트의 ID입니다.
  • LOCATION: 앱의 멀티 리전입니다(global, us 또는 eu).
  • APP_ID: Gemini Enterprise 앱의 ID입니다.
  • AGENT_ID: 에이전트의 ID입니다. 앱에 연결된 에이전트를 나열하여 에이전트 ID 를 확인할 수 있습니다.

Dialogflow 에이전트 업데이트

에이전트 등록 중에 제공된 모든 필드를 업데이트할 수 있습니다. 업데이트 프로세스 중에 다음 필드는 필수입니다.

  • displayName
  • description
  • reasoning_engine

필드를 업데이트할 때 특정 필드가 변경되지 않은 경우에도 업데이트 요청에서 모든 필드와 해당 값을 재정의해야 합니다.

이 코드 샘플은 Dialogflow 에이전트의 등록을 업데이트하는 방법을 보여줍니다.

curl

  curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
  "https://discoveryengine.googleapis.com/v1alpha/AGENT_RESOURCE_NAME" \
    -d '{
      "displayName": "DISPLAY_NAME",
      "description": "DESCRIPTION",
      "icon": {
        "uri": "ICON_URI"
      },
      "dialogflowAgentDefinition": {
        "dialogflowAgent": "projects/PROJECT_ID/locations/REASONING_ENGINE_LOCATION/agents/DIALOGFLOW_AGENT_ID"
      }
    }'

변수를 다음 값으로 바꿉니다.

  • PROJECT_ID: 프로젝트의 ID입니다. Google Cloud
  • AGENT_RESOURCE_NAME: 업데이트할 에이전트 등록의 리소스 이름입니다.
  • DISPLAY_NAME:에이전트의 표시 이름입니다.
  • DESCRIPTION: Gemini Enterprise에 표시되는 에이전트의 설명입니다. 설명은 사용자에게만 제공됩니다.
  • ICON_URI: Dialogflow 에이전트 이름 옆에 표시되는 아이콘의 공개 URI입니다. icon.content에서 Base64 인코딩 이미지를 제공할 수도 있습니다.
  • REASONING_ENGINE_LOCATION: 에이전트를 만들 추론 엔진의 클라우드 위치입니다.
  • DIALOGFLOW_AGENT_ID: Dialogflow 에이전트의 고유 식별자입니다.

Dialogflow 에이전트 삭제

다음 코드 샘플은 앱에 연결된 에이전트를 삭제하는 방법을 보여줍니다.

REST

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents/AGENT_ID"

변수를 다음 값으로 바꿉니다.

  • ENDPOINT_LOCATION: API 요청의 멀티 리전입니다. 다음 값 중 하나를 지정합니다.
    • 미국 멀티 리전의 경우 us
    • EU 멀티 리전의 경우 eu
    • 전역 위치의 경우 global
    자세한 내용은 데이터 스토어의 멀티 리전 지정을 참조하세요.
  • PROJECT_ID: Google Cloud 프로젝트의 ID입니다.
  • LOCATION: 앱의 멀티 리전입니다(global, us 또는 eu).
  • APP_ID: Gemini Enterprise 앱의 ID입니다.
  • AGENT_ID: 에이전트의 ID입니다. 앱에 연결된 에이전트를 나열하여 에이전트 ID를 확인할 수 있습니다.