このトピックでは、Python 環境の準備、SDK のインストール、環境変数の構成、クライアントの構築など、ベクトルデータベースを作成する前に開発環境を準備する手順について説明します。
ステップ 1:Python 環境を確認する
この例では、Python 3 用の SDK を使用します。次のコマンドを実行して、Python 3.9 以降がインストールされているかどうかを確認し、pip ツールをインストールします。
Python がインストールされていない場合、またはバージョンが要件を満たしていない場合は、「Python をインストールする」をご参照ください。
python -V
pip --version
ステップ 2:SDK をインストールする
身元認証とクライアント構築のために alibabacloud_gpdb20160503
および alibabacloud_tea_openapi
SDK をインストールする必要があります。この例では、次の SDK バージョンを使用します。
pip install alibabacloud_gpdb20160503==3.5.0
pip install alibabacloud_tea_openapi==0.3.8
ステップ 3:環境変数を構成する
ハードコーディングによる情報漏洩を防ぐために、身元認証の詳細やインスタンス ID などの機密情報を環境変数に構成します。
Linux&macOS
vim ~/.bashrc
コマンドを実行して、~/.bashrc
ファイルを開きます。macOS の場合は、
vim ~/.bash_profile
コマンドを実行します。構成ファイルに次の情報を追加します。
[RAM ユーザー] ページで、管理するユーザーのログオン名をクリックして、Resource Access Management (RAM) ユーザーの AccessKey ID と AccessKey シークレットを取得します。
[AnalyticDB for PostgreSQL] コンソールで、インスタンス ID とリージョン ID を確認します。
# access_key_id パラメーターを RAM ユーザーの AccessKey ID に置き換えます。 export ALIBABA_CLOUD_ACCESS_KEY_ID="access_key_id" # access_key_secret パラメーターを RAM ユーザーの AccessKey シークレットに置き換えます。 export ALIBABA_CLOUD_ACCESS_KEY_SECRET="access_key_secret" # instance_id パラメーターを AnalyticDB for PostgreSQL インスタンス ID に置き換えます。例: gp-bp166cyrtr4p *****。 export ADBPG_INSTANCE_ID="instance_id" # instance_region パラメーターを AnalyticDB for PostgreSQL インスタンスが存在するリージョンの ID に置き換えます。例: cn-hangzhou。 export ADBPG_INSTANCE_REGION="instance_region"
vim エディターで、Esc キーを押し、
:wq
と入力して保存し、エディターを終了します。source ~/.bashrc
コマンドを実行して、構成ファイルを有効にします。macOS の場合は、
source ~/.bash_profile
コマンドを実行します。
Windows
次のコマンドを実行して、現在のセッションで一時的に環境変数を設定します。
# access_key_id パラメーターを RAM ユーザーの AccessKey ID に置き換えます。
set ALIBABA_CLOUD_ACCESS_KEY_ID=access_key_id
# access_key_secret パラメーターを RAM ユーザーの AccessKey シークレットに置き換えます。
set ALIBABA_CLOUD_ACCESS_KEY_SECRET=access_key_secret
# instance_id パラメーターを AnalyticDB for PostgreSQL インスタンス ID に置き換えます。例: gp-bp166cyrtr4p *****。
set ADBPG_INSTANCE_ID=instance_id
# instance_region パラメーターを AnalyticDB for PostgreSQL インスタンスが存在するリージョンの ID に置き換えます。例: cn-hangzhou。
set ADBPG_INSTANCE_REGION=instance_region"
ステップ 4:AnalyticDB for PostgreSQL クライアントを構築する
次の例は、AnalyticDB for PostgreSQL インスタンスのクライアントを構築する方法を示しています。クライアントが構築されると、ベクトルデータベースの作成など、後続の操作を実行できます。
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_gpdb20160503.client import Client
import os
# 環境変数から認証情報とインスタンス情報を取得
ALIBABA_CLOUD_ACCESS_KEY_ID = os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
ALIBABA_CLOUD_ACCESS_KEY_SECRET = os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
ADBPG_INSTANCE_ID = os.environ['ADBPG_INSTANCE_ID']
ADBPG_INSTANCE_REGION = os.environ['ADBPG_INSTANCE_REGION']
def get_client():
config = open_api_models.Config(
access_key_id=ALIBABA_CLOUD_ACCESS_KEY_ID,
access_key_secret=ALIBABA_CLOUD_ACCESS_KEY_SECRET
)
config.region_id = ADBPG_INSTANCE_REGION
# https://api.aliyun.com/product/gpdb
if ADBPG_INSTANCE_REGION in ("cn-beijing", "cn-hangzhou", "cn-shanghai", "cn-shenzhen", "cn-hongkong",
"ap-southeast-1"):
config.endpoint = "gpdb.aliyuncs.com"
else:
config.endpoint = f'gpdb.{ADBPG_INSTANCE_REGION}.aliyuncs.com'
return Client(config)