DBMS_CLOUD_AIパッケージの構成
DBMS_CLOUD_AI
を使用するステップについて説明します。
DBMS_CLOUD_AI
を使用するには、次が必要です。
- Oracle Cloud Infrastructureクラウド・アカウントおよびAutonomous Databaseインスタンスへのアクセス。
- サポートされているAIプロバイダの有料APIアカウント。次のいずれかです。
- OpenAI: APIキーを取得するには、OpenAIの使用を参照してください。
- Cohere秘密APIキーを取得するには、Cohereの使用を参照してください。
- Azure OpenAI Service。Azure OpenAI Serviceの構成方法の詳細は、Azure OpenAI Serviceの使用を参照してください。
- OCI生成AI。OCI生成AIの使用を参照してください。
- 外部AIプロバイダにアクセスするためのネットワークACL権限。
ノート
OCI生成AIにはネットワークACL権限は必要ありません。 - AIプロバイダへのアクセスを提供する資格証明。
DBMS_CLOUD_AI
の有効化
DBMS_CLOUD_AI
を構成するには:
-
DBMS_CLOUD_AI
パッケージに対するEXECUTE
権限を、Select AIを使用するユーザーに付与します。デフォルトでは、ADMINユーザーのみが
EXECUTE
権限を付与されます。ADMINユーザーは、他のユーザーにEXECUTE
権限を付与できます。 -
Select AIを使用するユーザーおよびAIプロバイダ・エンドポイントにネットワークACLアクセス権を付与します。
ADMINユーザーは、ネットワークACLアクセス権を付与できます。詳細は、APPEND_HOST_ACEプロシージャを参照してください。
- AIプロバイダへのアクセスを有効にする資格証明を作成します。
詳細は、CREATE_CREDENTIALプロシージャを参照してください。
ADB_USER
にEXECUTE
権限を付与します。grant execute on DBMS_CLOUD_AI to ADB_USER;
次の例では、api.openai.comエンドポイントを使用する権限をADB_USER
に付与します。
BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
host => 'api.openai.com',
ace => xs$ace_type(privilege_list => xs$name_list('http'),
principal_name => 'ADB_USER',
principal_type => xs_acl.ptype_db)
);
END;
/
パラメータは次のとおりです:
-
host
: ホスト。ホストには、ホストの名前またはIPアドレスを指定できます。ワイルドカードを使用すると、ドメインやIPサブネットを指定できます。ホストまたはドメイン名の大文字と小文字は区別されません。OpenAIには、api.openai.comを使用します。
Cohereの場合は、api.cohere.aiを使用します。
Azure OpenAI Serviceの場合は、<azure_resource_name>.openai.azure.comを使用します。
azure_resource_name
の詳細は、「プロファイル属性」を参照してください。 -
ace
: アクセス制御エントリ(ACE)。ACLの各ACEエントリを作成するために、XS$ACE_TYPE
タイプが提供されています。詳細は、Creating ACLs and ACEsを参照してください。
次に、OpenAIへのアクセスを有効にする資格証明の作成方法の例を示します。
EXEC DBMS_CLOUD.CREATE_CREDENTIAL
('OPENAI_CRED', 'OPENAI', 'your_api_token');
パラメータは次のとおりです:
-
credential_name
: 格納する資格証明の名前。credential_name
パラメータは、スペースやハイフンを使用できないOracleオブジェクトの命名規則に準拠している必要があります。 -
username
:username
引数とpassword
引数の両方で、AIプロバイダの資格証明を指定します。username
は、ユーザー指定のユーザー名です。 -
password
:username
引数とpassword
引数の両方で、AIプロバイダの資格証明を指定します。password
はAIプロバイダのシークレットAPIキーで、プロバイダによって異なります:- OpenAI: APIキーを取得するには、OpenAIの使用を参照してください。
- Cohere: APIキーを取得するには、Cohereの使用を参照してください。
- Azure OpenAIサービス: APIキーを取得してサービスを構成するには、Azure OpenAIサービスの使用を参照してください。
ノート
Azure OpenAI Serviceの原則を使用して認証する場合は、DBMS_CLOUD.CREATE_CREDENTIAL
プロシージャをスキップできます。Azure OpenAI Serviceの原則を使用した認証の例については、Select AIの使用例を参照してください。 -
OCI生成AI: API署名キーを生成するには、OCI生成AIの使用を参照してください。
トピック
- OpenAIの使用
OpenAIを有効にして、自然言語プロンプトに対するSQLおよびテキスト・レスポンスを生成するには、OpenAI有料アカウントからAPIキーを取得します。 - Cohereの使用
Cohereで自然言語プロンプトに対するSQLおよびテキスト・レスポンスを生成できるようにするには、Cohere有料アカウントからAPIキーを取得します。 - Azure OpenAIサービスの使用
Azure OpenAIサービスで自然言語プロンプトに対するSQLおよびテキスト・レスポンスを生成できるようにするには、AIプロバイダを構成してアクセスを提供します。 - OCI生成AIの使用
OCI生成AIが自然言語プロンプトに対してSQLおよびテキスト・レスポンスを生成できるようにするには、API署名キーを生成します。
親トピック: Select AIを使用したデータベースとの自然言語対話
OpenAIの使用
OpenAIで自然言語プロンプトに対するSQLおよびテキスト・レスポンスを生成できるようにするには、OpenAI有料アカウントからAPIキーを取得します。
秘密APIキーはユーザー設定にあります。
親トピック: DBMS_CLOUD_AIパッケージの構成
Cohereの使用
Cohereが自然言語プロンプトに対してSQLおよびテキスト・レスポンスを生成できるようにするには、Cohere有料アカウントからAPIキーを取得します。
-
資格情報でCohereのWebサイトにログインします。Cohere Dashboardがデフォルトで表示されます。
-
または、「ダッシュボード」をクリックします。
-
左側のナビゲーションで「API Keys」をクリックします。デフォルトのAPIキーをコピーするか、別のキーを作成します。詳細は、API-Keysを参照してください。
親トピック: DBMS_CLOUD_AIパッケージの構成
Azure OpenAIサービスの使用
Azure OpenAI Serviceで自然言語プロンプトに対するSQLおよびテキスト・レスポンスを生成できるようにするには、AIプロバイダを構成してアクセスを提供します。
親トピック: DBMS_CLOUD_AIパッケージの構成
OCI生成AIの使用
OCI生成AIが自然言語プロンプトに対してSQLおよびテキスト・レスポンスを生成できるようにするには、API署名キーを生成します。
親トピック: DBMS_CLOUD_AIパッケージの構成