DBMS_CLOUD_AI 套裝軟體
DBMS_CLOUD_AI 套裝程式 (搭配 Select AI) 可協助及設定自然語言提示的翻譯,以產生、執行及說明 SQL 敘述句。此外,支援檢索增強生成和自然語言互動,包括與 LLM 交談。
先決條件
- 請依照 Oracle Cloud Infrastructure 文件中建立 NAT 閘道的指示,在虛擬雲端網路 (VCN) 中建立您的自治式 AI 資料庫資源所在的 NAT 閘道。
- After creating the NAT gateway, add a route rule and an egress security rule to each subnet (in the VCN) where Autonomous AI Database resources reside so that these resources can use the gateway to obtain a public key from your Azure AD instance:
- 移至子網路的子網路詳細資訊頁面。
- 在子網路資訊頁籤中,按一下子網路的路由表名稱,以顯示其路由表詳細資訊頁面。
- 在現有路由規則的表格中,檢查是否已有具有下列特性的規則:
- 目標:0.0.0.0/0
- 目標類型:NAT 閘道
- 目標:剛在 VCN 中建立的 NAT 閘道名稱
如果沒有這類規則,請按一下新增路由規則,然後新增具有這些特性的路由規則。
- 返回子網路的子網路詳細資訊頁面。
- 在子網路的安全清單表格中,按一下子網路安全清單的名稱,以顯示其安全清單詳細資訊頁面。
- 在側邊功能表的資源下,按一下傳出規則。
- 在現有傳出規則的表格中,檢查是否已有具有下列特性的規則:
- 目標類型: CIDR
- 目的地:0.0.0.0/0
- IP 協定: TCP
- 來源連接埠範圍: 443
- 目的地連接埠範圍:全部
如果該規則不存在,請按一下新增輸出規則,然後新增具有這些特性的輸出規則。
您環境中的 HTTP 代理主機設定值必須允許資料庫存取雲端服務提供者。
附註:
必須等到 Exadata 基礎架構為需要啟用狀態後,才能編輯網路組態 (包括 HTTP 代理主機)。啟用之後,您就無法編輯這些設定值。在 My Oracle Support 中設定已啟動設定之 Exadata 基礎架構的 HTTP 代理主機時,必須要有服務要求 (SR)。請參閱 在 My Oracle Support 中建立服務要求瞭解詳細資訊。
DBMS_CLOUD_AI 子程式摘要
本節涵蓋 Autonomous AI Database 隨附的 DBMS_CLOUD_AI 子程式。
| 子程式 | 描述 |
|---|---|
|
此程序會建立新的 AI 設定檔,以將自然語言提示轉譯為 SQL 陳述式。 |
|
|
此程序會停用目前資料庫中的 AI 設定檔。 |
|
|
此程序會刪除現有的 AI 設定檔。 |
|
|
此程序可讓 AI 設定檔在目前的資料庫中使用。 |
|
| 此函數會使用 AI 產生要轉譯的 SQL 陳述式。 | |
|
此程序會設定 AI 設定檔屬性。 |
|
|
此程序會設定目前資料庫的 AI 設定檔。 |
CREATE_PROFILE 程序
此程序會建立新的 AI 設定檔,以將自然語言提示轉譯為 SQL 敘述句。
語法
DBMS_CLOUD_AI.CREATE_PROFILE
profile_name IN VARCHAR2,
attributes IN CLOB DEFAULT NULL,
status IN VARCHAR2 DEFAULT NULL,
description IN CLOB DEFAULT NULL
);參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
AI 設定檔的名稱。設定檔名稱必須遵循 Oracle SQL ID 的命名規則。設定檔名稱的長度上限為 125 個字元。 這是必要參數。 |
|
|
JSON 格式的設定檔屬性。如需詳細資訊,請參閱 AI 設定檔屬性。 預設值為 NULL。 |
status |
設定檔的狀態。 預設值是啟用。 |
|
|
AI 設定檔的描述。 預設值為 NULL。 |
範例
BEGIN
DBMS_CLOUD_AI.CREATE_PROFILE(
profile_name => 'OpenAI,
attributes => JSON_OBJECT('provider' value 'openai',
'credential_name' value 'openai_cred'),
description => 'AI profile to use OpenAI for SQL translation'
);
END;
/
DROP_PROFILE 程序
此程序會刪除現有的 AI 設定檔。如果設定檔不存在,則程序會發出錯誤。
語法
DBMS_CLOUD_AI.DROP_PROFILE(
profile_name IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE
);參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
AI 設定檔的名稱 |
|
|
如果 此參數的預設值為 |
範例
BEGIN
DBMS_CLOUD_AI.DROP_PROFILE(profile_name => 'OPENAI');
END;
/使用注意事項
如果 AI 設定檔不存在,請使用 force 刪除設定檔並忽略錯誤。
ENABLE_PROFILE 程序
此程序會啟用使用者指定的 AI 設定檔。此程序會將 AI 設定檔的狀態變更為 ENABLED。
語法
DBMS_CLOUD_AI.ENABLE_PROFILE(
profile_name IN VARCHAR2
);參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
要啟用的 AI 設定檔名稱 此為必要參數。 |
啟用 AI 設定檔的範例
BEGIN
DBMS_CLOUD_AI.ENABLE_PROFILE(
profile_name => 'OPENAI'
);
END;
/
DISABLE_PROFILE 程序
此程序會停用目前資料庫中的 AI 設定檔。此程序會將 AI 設定檔的狀態變更為 DISABLED。
語法
DBMS_CLOUD_AI.DISABLE_PROFILE(
profile_name IN VARCHAR2
);
參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
AI 設定檔的名稱。 此為必要參數。 |
範例
BEGIN
DBMS_CLOUD_AI.DISABLE_PROFILE(
profile_name => 'OPENAI'
);
END;
/
SET_ATTRIBUTE 程序
您可以使用此程序來設定 AI 設定檔屬性。
語法
DBMS_CLOUD_AI.SET_ATTRIBUTE(
profile_name IN VARCHAR2,
attribute_name IN VARCHAR2,
attribute_value IN CLOB
);
參數
只有擁有者可以設定或修改 AI 設定檔的屬性。如需支援的屬性清單,請參閱設定檔屬性。
| Parameter - 參數 | 描述 |
|---|---|
|
|
要為其設定屬性的 AI 設定檔名稱。 此為必要參數。 |
|
|
AI 設定檔屬性的名稱 此為必要參數。 |
|
|
設定檔屬性的值。 預設值為 NULL。 |
範例
BEGIN
DBMS_CLOUD_AI.SET_ATTRIBUTE(
profile_name => 'OPENAI',
attribute_name => 'credential_name',
attribute_value => 'OPENAI_CRED_NEW'
);
END;
/
SET_PROFILE 程序
此程序會為目前的階段作業設定 AI 設定檔。
為資料庫階段作業設定 AI 設定檔之後,任何前置碼為 SELECT AI 的 SQL 敘述句都會被視為自然語言提示。視使用 AI 前置碼指定的動作而定,會使用 AI 產生回應。若要使用 AI 前置碼,請參閱使用 AI 關鍵字輸入提示。您可以選擇性地以 JSON 格式指定設定檔屬性或修改屬性。請參閱 SET_ATTRIBUTE 程序,瞭解如何設定屬性。
只有當 AI 設定檔的擁有者是階段作業使用者時,才能為目前的階段作業設定 AI 設定檔。
若要為特定資料庫使用者的所有階段作業或資料庫中的所有使用者階段作業設定 AI 設定檔,請考慮對特定使用者或整個資料庫的 AFTER LOGON 事件使用資料庫事件觸發程式。請參閱 Oracle Database 19c Database PL/SQL Language Reference 中的 CREATE TRIGGER Statement 或 Oracle Database 26ai Database PL/SQL Language Reference ,瞭解詳細資訊。
語法
DBMS_CLOUD_AI.SET_PROFILE(
profile_name IN VARCHAR2,
);
參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
目前階段作業中 AI 設定檔的名稱。 此為必要參數。 |
範例
BEGIN
DBMS_CLOUD_AI.SET_PROFILE(
profile_name => 'OPENAI'
);
END;
/
GENERATE 函數
showsql、narrate 或 chat。預設動作為 showsql。
也可以使用此函數來覆寫部分或所有設定檔屬性。
語法
DBMS_CLOUD_AI.GENERATE(
prompt IN CLOB,
profile_name IN VARCHAR2 DEFAULT NULL,
action IN VARCHAR2 DEFAULT NULL,
attributes IN CLOB DEFAULT NULL
) RETURN CLOB;
參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
使用 AI 翻譯的自然語言提示。 提示可以包含 此為必要參數。 |
|
|
AI 設定檔的名稱。如果已在使用 預設值為 NULL。 適用下列條件:
附註: 對於「資料庫動作」,您可以在DBMS_CLOUD_AI.GENERATE 中指定 profile_name 引數,或者以 PL/SQL 命令檔執行兩個步驟:DBMS_CLOUD_AI.SET_PROFILE 和 DBMS_CLOUD_AI.GENERATE 。
|
action |
使用 AI 翻譯自然提示的動作。支援的動作包括 附註: 此函數不支援runsql 動作。如果您提供 runsql 動作,則會傳回下列錯誤: |
attributes |
以 JSON 格式提供屬性,以覆寫特定 AI 設定檔屬性。請參閱設定檔屬性瞭解詳細資訊。 |
範例
下列範例說明可與 DBMS_CLOUD_AI.GENERATE 函數搭配使用的 showsql、narrate 和 chat 動作。
具有 showsql 動作的範例如下:
SELECT DBMS_CLOUD_AI.GENERATE(prompt => 'how many customers',
profile_name => 'OPENAI',
action => 'showsql')
FROM dual;
具有 narrate 動作的範例如下:
SELECT DBMS_CLOUD_AI.GENERATE(prompt => 'how many customers',
profile_name => 'OPENAI',
action => 'narrate')
FROM dual;
具有 chat 動作的範例如下:
SELECT DBMS_CLOUD_AI.GENERATE(prompt => 'what is oracle autonomous database',
profile_name => 'OPENAI',
action => 'chat')
FROM dual;
GENERATE_SYNTHETIC_DATA 函數
以下為產生單一表格之綜合資料的語法。
語法
DBMS_CLOUD_AI.GENERATE_SYNTHETIC_DATA(
profile_name IN VARCHAR2,
object_name IN DBMS_ID,
owner_name IN DBMS_ID,
record_count IN NUMBER,
user_prompt IN CLOB DEFAULT NULL,
params IN CLOB DEFAULT NULL
);
以下為產生多個表格之合成資料的語法。
DBMS_CLOUD_AI.GENERATE_SYNTHETIC_DATA(
profile_name IN VARCHAR2,
object_list IN CLOB,
params IN CLOB DEFAULT NULL
);
如果您不希望將表格資料或向量搜尋文件傳送至 LLM,具有管理員權限的使用者可以停用指定資料庫之所有使用者的此類存取權。這樣會停用 narrate 動作。
參數
| Parameter - 參數 | 必要 | 描述 |
|---|---|---|
|
|
是 |
包含必要 LLM 服務資訊的 AI 設定檔。這可由 CREATE_PROFILE 程序建立。 |
|
|
是 | 指定表格名稱以填入合成資料。
|
owner_name |
編號 |
指定擁有參照物件的資料庫使用者。如果未提供任何特定擁有者,程序會預設為使用執行該程序之使用者的綱要。 |
record_count |
編號 |
要以合成方式產生的記錄數。 |
|
|
編號 | 使用者可提及以產生綜合資料的其他資訊。例如,若要產生名為 MOVIE 且含有 release_date 資料欄之表格的記錄,user_prompt 可以:
電影的發行日期應為 2019 年 |
|
|
編號 |
以 JSON 物件字串格式提供的選擇性屬性,以修改 API 的行為。請參閱可選參數。 |
|
|
是 | 使用此參數在多個表格上產生合成資料。此參數會取得表格物件資訊及其引數,而且包含單一表格中提供的相同引數。請參閱 object_list 參數。 |
選擇性參數
| Parameter - 參數 | 值資料型態 | 數值 | 描述 |
|---|---|---|---|
|
|
數字 |
|
指定要作為範例的資料列數,以引導產生資料中的 LLM。 值為 0 表示不會使用任何範例資料列。預設值是 |
|
|
布林 |
|
啟用或停用表格統計資料的使用。 預設值為 |
|
|
String |
以下為其有效值:
|
指派優先順序值,定義傳送給 LLM 以產生合成資料的平行要求數目。優先順序較高的作業將耗用更多的資料庫資源,並加快完成速度。 預設值為
用於合成資料產生的並行平行處理數目上限為 64 個。 |
|
|
布林 |
|
啟用或停用傳送註解至 LLM 以產生資料。 預設值為 |
object_list 參數
| Parameter - 參數 | 值資料型態 | 必要 | 描述 |
|---|---|---|---|
|
|
String |
是 |
指定擁有所參照物件的資料庫使用者。如果未提供特定擁有者,則程序將預設為使用執行該程序之使用者的綱要。 |
|
|
String |
編號 |
指定表格名稱以填入合成資料。使用 it.The 表格的使用者需要表格物件的 SELECT 和 INSERT 權限空白或其中有記錄。
|
|
|
數字 |
編號 |
要以合成方式產生的記錄數。請提供大於 0 的數字。 提供 |
|
|
數字 |
編號 |
要以合成方式產生的記錄數百分比。請提供大於 0 的數字。 對於保留包括統計資料的表格描述資料之「描述資料複製」資料庫,支援 提供 使用
record_count_percentage 參數時,表格中的最終記錄筆數計算方式如下:
|
|
|
String | 編號 | 與參數中的 user_prompt 相同。user_prompt 與特定的表格物件相關聯。
|
BEGIN
DBMS_CLOUD_AI.GENERATE_SYNTHETIC_DATA(
profile_name => 'GENAI',
object_name => 'Director',
owner_name => 'ADB_USER',
record_count => 5
);
END;
/
PL/SQL procedure successfully completed.
BEGIN
DBMS_CLOUD_AI.GENERATE_SYNTHETIC_DATA(
profile_name => 'GENAI',
object_list => '[{"owner": "ADB_USER", "name": "Director","record_count":5},
{"owner": "ADB_USER", "name": "Movie_Actor","record_count":5},
{"owner": "ADB_USER", "name": "Actor","record_count":10},
{"owner": "ADB_USER", "name": "Movie","record_count":5,"user_prompt":"all movies are released in 2009"}]'
);
END;
/
PL/SQL procedure successfully completed.
ENABLE_DATA_ACCESS 程序
此程序允許針對適用的 Select AI 功能 (預設行為) 將資料傳送至 LLM。只有管理員可以執行此程序。
此程序控制下列 Select AI 功能的資料存取:
narrate動作- 檢索增強生成 (RAG)
- 合成資料產生
語法
DBMS_CLOUD_AI.ENABLE_DATA_ACCESS();參數
此程序不需要任何參數。
啟用資料存取的範例
BEGIN
DBMS_CLOUD_AI.ENABLE_DATA_ACCESS();
END;
/
DISABLE_DATA_ACCESS 程序
此程序會停用針對適用的 Select AI 功能將資料傳送至 LLM。只有管理員可以執行此程序。
此程序限制了下列 Select AI 功能:
narrate動作- 檢索增強生成 (RAG)
- 合成資料產生
語法
DBMS_CLOUD_AI.DISABLE_DATA_ACCESS();參數
此程序不需要任何參數。
停用資料存取的範例
BEGIN
DBMS_CLOUD_AI.DISABLE_DATA_ACCESS();
END;
/
CREATE_VECTOR_INDEX 程序
此程序會在指定的向量資料庫中建立向量索引,並使用非同步排程器工作從物件存放區填入資料。
語法
PROCEDURE CREATE_VECTOR_INDEX(
index_name IN VARCHAR2,
attributes IN CLOB DEFAULT NULL,
status IN VARCHAR2 DEFAULT NULL,
description IN CLOB DEFAULT NULL
); 參數
範例
下列範例示範如何建立向量索引,並將屬性設定為 JSON 參數。
BEGIN
DBMS_CLOUD_AI.CREATE_VECTOR_INDEX(
index_name => 'MY_INDEX'
attributes => JSON_OBJECT(
'vector_db_provider' value 'oracle',
'vector_table_name' value 'oracle_mycollection',
'profile_name' value 'OCIGENAI',
'location' value
'https://objectstorage.us-phoenix-1.' ||
'oraclecloud.com/n/mynamespace/b/mybucket',
'object_store_credential_name' value 'OS_CRED',
'chunk_size' value 2048,
'chunk_overlap' value 256,
'refresh_rate' value 720)
);
END;
/
DROP_VECTOR_INDEX 程序
此程序會移除向量儲存區索引。它通常會移除向量儲存區索引物件,並刪除向量儲存區。如果設為 FALSE,引數 include_data 會確保程序只會移除向量儲存區索引物件,同時保留向量儲存區。
語法
PROCEDURE DROP_VECTOR_INDEX(
index_name IN VARCHAR2,
include_data IN BOOLEAN DEFAULT TRUE,
force IN BOOLEAN DEFAULT FALSE
);
參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
向量索引的名稱。向量索引名稱必須遵循 Oracle SQL ID 的命名規則。向量儲存名稱的長度上限為 125 個字元。 這是必要參數。 |
|
|
表示是否要同時刪除客戶的向量儲存區與向量索引以及向量索引物件。 可能的值:
預設值為 |
force |
指示是否忽略當向量索引不存在時所發生的錯誤。 可能的值:
如果設為 預設值為 |
範例
BEGIN
DBMS_CLOUD_AI.DROP_VECTOR_INDEX(
index_name => 'MY_INDEX',
include_data => FALSE,
force => TRUE
);
END;
/
DISABLE_VECTOR_INDEX 程序
此程序會停用目前資料庫中的向量索引物件。停用時,AI 設定檔無法使用向量索引,且系統不會將資料載入向量儲存區,因為新資料會新增至物件儲存區,且不會根據索引執行索引編製、搜尋或查詢。
語法
DBMS_CLOUD_AI.DISABLE_VECTOR_INDEX(
index_name IN VARCHAR2
);
參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
向量索引的名稱。向量索引名稱必須遵循 Oracle SQL ID 的命名規則。向量儲存名稱的長度上限為 125 個字元。 這是必要參數。 |
範例
您可以藉由提供向量索引的名稱來停用向量索引。
BEGIN
DBMS_CLOUD_AI.DISABLE_VECTOR_INDEX(index_name => 'MY_INDEX');
END;
/
ENABLE_VECTOR_INDEX 程序
此程序會啟用或啟用先前停用的向量索引物件。一般而言,當您建立向量索引時,預設會啟用此索引,讓 AI 設定檔能夠用來執行索引和搜尋。
啟用時,向量索引可讓 AI 設定檔使用它,以使用者指定的重新整理速率將物件存放區的新資料載入向量存放區。您可以透過 JSON 物件清單指定 refresh_rate 參數。若要設定 JSON 屬性,請參閱 。
語法
DBMS_CLOUD_AI.ENABLE_VECTOR_INDEX(
index_name IN VARCHAR2
);
參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
向量索引的名稱。向量索引名稱必須遵循 Oracle SQL ID 的命名規則。向量儲存名稱的長度上限為 125 個字元。 這是必要參數。 |
範例
您可以指定向量索引名稱來啟用或啟用向量索引,如下所示:
BEGIN
DBMS_CLOUD_AI.ENABLE_VECTOR_INDEX(index_name => 'MY_INDEX');
END;
/
UPDATE_VECTOR_INDEX 程序
- 各種類型的屬性值。
- 作為 JSON 文件的向量索引屬性,並以指定的屬性名稱和值組更新現有向量儲存區索引的一或多個屬性。
語法
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX(
index_name IN VARCHAR2,
attributes IN CLOB
);
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX(
index_name IN VARCHAR2,
attribute_name IN VARCHAR2,
attribute_value IN VARCHAR2
);
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX(
index_name IN VARCHAR2,
attribute_name IN VARCHAR2,
attribute_value IN CLOB DEFAULT NULL
);
參數
| Parameter - 參數 | 描述 |
|---|---|
|
|
向量索引的名稱。向量索引名稱必須遵循 Oracle SQL ID 的命名規則。向量儲存名稱的長度上限為 125 個字元。 這是必要參數。 |
|
|
指定 JSON 格式的向量索引屬性。 這是必要參數。 |
|
|
在 您無法修改下列屬性:
這是必要參數。 |
attribute_value |
使用者為自訂 預設值為 NULL。 |
附註:
使用attributes 參數以 JSON 格式指定 attribute_name 和值組,或同時指定 attribute_name 和 attribute_value 參數。
範例
BEGIN
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX(
index_name => 'MY_INDEX',
attribute_name => 'object_storage_credential_name',
attribute_value => 'NEW_CRED'
);
END;
/
下列範例接受 NUMBER 類型作為 attribute_value。
BEGIN
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX(
index_name => 'MY_INDEX',
attribute_name => 'match_limit',
attribute_value => 10
);
END;
/
下列範例接受 VARCHAR2 類型作為 attribute_value。
BEGIN
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX(
index_name => 'MY_INDEX',
attribute_name => 'profile_name',
attribute_value => 'AI_PROF2'
);
END;
/
下列範例接受 JSON 格式的 attributes。
BEGIN
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX(
index_name => 'MY_VECTOR_INDEX',
attributes => '{"match_limit": 10,
"refresh_rate": 30}'
);
END;
/
設定檔屬性
屬性
| 屬性名稱 | 描述 |
|---|---|
|
|
Azure OpenAI 服務部署模型的名稱。名稱只能包含文數字字元、底線字元 (_) 以及連字號 (-) 字元。名稱的結尾不可為底線 (_) 或連字號 (-)。若要瞭解如何取得 |
|
|
Azure OpenAI 服務資源的名稱。資源名稱只能包含數字或英文字母字元和連字號,而且不能以連字號為開頭或結尾。若要瞭解如何取得 |
|
|
在使用 AI 翻譯自然語言提示時所使用的描述資料中包含資料欄註解。支援 附註: 設定單一屬性時,布林值不適用於DBMS_CLOUD_AI.SET_ATTRIBUTE 程序,因為 attribute_value 參數為 CLOB 資料類型。
|
|
|
指示是否對設定檔啟用對話歷史記錄的 |
|
|
存取 AI 提供者 API 的證明資料名稱。 使用 Bearer 權杖的證明資料可以使用提供者名稱作為使用者名稱和 Bearer 權杖作為密碼來建立。 此為必要的屬性。請參閱 CREATE_CREDENTIAL 程序。 |
|
|
AI 設定檔中定義的內嵌模型。下列是內嵌模型支援的 AI 提供者及其預設值:
附註: embedding_model 參數不適用於 Anthropic 和 Hugging Face。
|
|
|
表示每一層代要預測的單詞數目。預設值為 1024。請參閱記號和記號器以瞭解詳細資訊。 |
|
|
用來產生回應的 AI 模型名稱。 下列項目的支援模型:
附註: 此參數不會用於 Azure,因為模型是在 Azure OpenAI Service 入口網站中建立部署時決定。 |
|
|
指定適用於自然語言轉譯至 SQL 之擁有者和物件名稱的 JSON 物件陣列。若要包括指定使用者的所有物件,請省略 "name",而且只在 JSON 物件中指定 "owner" 索引鍵。 將自然語言轉譯為 SQL 時,會使用 HTTPS 要求,將物件名稱、物件擁有者、物件資料欄及註解傳送給 AI 提供者。請避免在物件清單中指定含有機密物件名稱、資料欄名稱或註解的物件。 AI 提供者可能會限制翻譯要求中允許的中繼資料大小。請考慮限制適合應用程式使用者自然語言提示的物件清單。 格式:
|
|
|
指定呼叫 OCI Generative AI 服務時,允許存取之區間的 OCID。區間 ID 可包含數字或英文字母字元、連字號以及點。 預設值是 Autonomous AI Database 的區間 ID。 |
|
|
此屬性代表 Oracle 專用 AI 代管叢集的端點 OCID。端點 ID 可包含數字或英文字母字元、連字號以及點。若要尋找端點 OCID,請參閱在生成式 AI 中取得端點的詳細資訊。 若要使用 Oracle 專用 AI 叢集,您必須提供代管叢集的端點 OCID。 依照預設,端點 ID 為空白,且模型在共用基礎架構上為隨選。 |
|
|
此屬性指示所提供模型的程式實際執行類型。指定 您可以在 OCI Generative AI runtimeType 中找到所有允許的值。請參閱 LlmInferenceRequest Reference 。 支援的值為:
|
|
|
AI 設定檔的 AI 提供者。 支援的提供者:
此為必要的屬性。 |
|
|
此屬性表示您要使用的 Generative AI 叢集位置。區域可以包含文數字字元和連字號字元。
附註: Oracle Generative AI 叢集可在芝加哥、法蘭克福及倫敦區域使用。請參閱生成式 AI 中的預先訓練基礎模型。us-chicago-1。
|
|
|
產生的文字將在最早停止序列的開頭終止。順序將併入文字中。屬性值必須是 JSON 格式的有效字串值陣列。 |
|
|
「產生文字」模型的抽樣會結合隨機性,因此每次按下「產生」時,相同的提示可能會產生不同的輸出。溫度 (Temperature) 是用於調整隨機程度的非負浮點數。較低的溫度代表較少的隨機世代。請參閱溫度瞭解詳細資訊。此參數適用於所有支援的服務提供者。 |
BEGIN
DBMS_CLOUD_AI.CREATE_PROFILE(
profile_name => 'COHERE',
attributes =>
'{"provider": "cohere",
"credential_name": "COHERE_CRED",
"object_list": [{"owner": "ADB_USER"}],
"max_tokens":512,
"stop_tokens": [";"],
"model": "command-nightly",
"temperature": 0.5,
"comments": true
}');
END;
/
下列範例顯示使用 OCI Generative AI 的自訂設定檔屬性:
BEGIN
DBMS_CLOUD_AI.CREATE_PROFILE(
profile_name => 'GENAI',
attributes => '{"provider": "oci",
"credential_name": "GENAI_CRED",
"object_list": [{"owner": "SH", "name": "customers"},
{"owner": "SH", "name": "countries"},
{"owner": "SH", "name": "supplementary_demographics"},
{"owner": "SH", "name": "profits"},
{"owner": "SH", "name": "promotions"},
{"owner": "SH", "name": "products"}],
"oci_compartment_id": "ocid1.compartment.oc1...",
"oci_endpoint_id": "ocid1.generativeaiendpoint.oc1.us-chicago-1....",
"region": "us-chicago-1",
"model": "cohere.command-light",
"oci_runtimetype": "COHERE"
}');
END;
/