Example Store 인스턴스 만들기 또는 재사용하기

이 페이지에서는 새 Example Store 인스턴스를 만들거나 기존 Example Store 인스턴스를 재사용하는 방법을 보여줍니다. LLM 애플리케이션을 개발할 때 Example Store에 예시를 저장하고 LLM 프롬프트에서 사용할 수 있도록 동적으로 검색할 수 있습니다.

퓨샷 예시를 사용하여 LLM 또는 에이전트를 학습시키려면 먼저 프로젝트 및 위치에 대한 Example Store 인스턴스를 만들거나 재사용한 다음 예시를 업로드해야 합니다.

프로젝트 및 위치별로 Example Store 인스턴스를 최대 50개까지 만들 수 있습니다. Example Store 인스턴스를 만든 후 여러 LLM 애플리케이션과 에이전트 간에 공유할 수 있습니다.

Example Store 인스턴스를 프로비저닝하는 방법에는 두 가지가 있습니다.

  • 새로운 Example Store 인스턴스 만들기: 새 Example Store 인스턴스를 만들 때는 Example Store에서 사용자의 쿼리와 관련된 예시를 결정하는 데 사용하는 임베딩 모델을 지정해야 합니다. Example Store는 다음과 같은 임베딩 모델을 지원합니다.

    • text-embedding-005

    • text-multilingual-embedding-002

    Example Store 인스턴스를 만든 후에는 임베딩 모델을 변경할 수 없습니다. 다른 임베딩 모델을 사용하려면 다른 예시 스토어를 만들어야 합니다. 텍스트 임베딩에 대한 자세한 내용은 텍스트 임베딩 가져오기를 참고하세요.

  • 기존 Example Store 인스턴스 재사용: Example Store 인스턴스는 여러 에이전트에서 사용할 수 있도록 설계되어 있으므로 LLM 애플리케이션 전반에서 저장된 예시에 액세스할 수 있습니다. 기존 Example Store 인스턴스를 재사용할 때는 임베딩 모델을 변경할 수 없습니다.

기본 요건

이 페이지의 Python 샘플을 사용하기 전에 로컬 Python 환경에 Agent Platform SDK를 설치하고 초기화해야 합니다.

  1. 다음 명령어를 실행하여 Example Store용 Agent Platform SDK를 설치합니다.

    pip install --upgrade google-cloud-aiplatform>=1.87.0
  2. 다음 코드 샘플을 사용하여 Example Store용 SDK를 가져오고 초기화합니다.

    import vertexai
    from vertexai.preview import example_stores
    
    vertexai.init(
      project="PROJECT_ID",
      location="LOCATION"
    )
    

    다음을 바꿉니다.

    • PROJECT_ID: 프로젝트 ID입니다.

    • LOCATION: 리전 us-central1만 지원됩니다.

Example Store 인스턴스 만들기

다음 샘플을 사용하여 지정된 프로젝트 및 위치의 Example Store 인스턴스를 만듭니다. Example Store 인스턴스를 만드는 데 몇 분 정도 걸립니다.

Python

이 샘플을 사용해 보기 전에 Agent Platform 빠른 시작: 클라이언트 라이브러리 사용Python 설정 안내를 따르세요.

에이전트 플랫폼에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

import vertexai
from vertexai.preview import example_stores

vertexai.init(
    project="PROJECT_ID",
    location="LOCATION"
)

my_example_store = example_stores.ExampleStore.create(
    example_store_config=example_stores.ExampleStoreConfig(
        vertex_embedding_model="EMBEDDING_MODEL"
    )
)

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID입니다.
  • LOCATION: 예시 스토어를 만들 리전입니다. 지원되는 리전은 us-central1뿐입니다.
  • EMBEDDING_MODEL: Example Store 인스턴스가 사용자의 쿼리와 관련된 예시를 결정하는 데 사용하는 임베딩 모델입니다. Example Store는 다음과 같은 임베딩 모델을 지원합니다.
    • text-embedding-005
    • text-multilingual-embedding-002

REST

ExampleStore 리소스를 만들려면 exampleStores.create 메서드를 사용하여 POST 요청을 전송합니다.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID입니다.
  • LOCATION: Example Store 인스턴스를 만들 리전입니다. 지원되는 리전은 us-central1뿐입니다.
  • DISPLAY_NAME: Example Store 인스턴스의 이름입니다.
  • EMBEDDING_MODEL: Example Store 인스턴스가 사용자의 쿼리와 관련된 예시를 결정하는 데 사용하는 임베딩 모델입니다. Example Store는 다음과 같은 임베딩 모델을 지원합니다.
    • textembedding-gecko@003
    • text-embedding-004
    • text-multilingual-embedding-002

HTTP 메서드 및 URL:

POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores

JSON 요청 본문:

{
  "display_name": "DISPLAY_NAME",
  "example_store_config": {"vertex_embedding_model": EMBEDDING_MODEL}
}

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

curl

요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores"

PowerShell

요청 본문을 request.json 파일에 저장하고 다음 명령어를 실행합니다.

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores" | Select-Object -Expand Content

다음과 유사한 JSON 응답이 표시됩니다. 여기서 EXAMPLE_STORE_ID는 Example Store 인스턴스의 ID를 나타냅니다.

기존 Example Store 인스턴스 재사용

다음 샘플을 사용하여 지정된 프로젝트 및 위치에 기존 Example Store 인스턴스를 재사용합니다.

Python

이 샘플을 사용해 보기 전에 Agent Platform 빠른 시작: 클라이언트 라이브러리 사용Python 설정 안내를 따르세요.

에이전트 플랫폼에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

import vertexai
from vertexai.preview import example_stores

vertexai.init(
    project="PROJECT_ID",
    location="LOCATION"
)

example_store = example_stores.ExampleStore(
    "EXAMPLE_STORE_NAME")

다음을 바꿉니다.

  • PROJECT_ID: 프로젝트 ID입니다.
  • LOCATION: 예시 스토어를 만들 리전입니다. 지원되는 리전은 us-central1뿐입니다.
  • EXAMPLE_STORE_NAME: 재사용하려는 Example Store 인스턴스의 이름입니다.

다음 단계