DBMS_CLOUD_AI 程序包
带有 Select AI 的 DBMS_CLOUD_AI 程序包可促进和配置自然语言提示的转换,以生成、运行和解释 SQL 语句。此外,还支持检索增强生成和基于自然语言的交互,包括与 LLM 聊天。
先决条件
- 按照 Oracle Cloud Infrastructure 文档中的创建 NAT 网关中的说明,在虚拟云网络 (VCN) 中创建 Autonomous AI Database 资源所在的 NAT 网关。
- 创建 NAT 网关后,向每个子网添加路由规则和出站安全规则(在 VCN 中),自治 AI 数据库资源位于该子网中,以便这些资源可以使用网关从 Azure AD 实例获取公钥:
- 转到子网的子网详细信息页。
- 在子网信息选项卡中,单击子网的路由表的名称以显示其路由表详细信息页。
- 在现有路由规则表中,检查是否已存在具有以下特征的规则:
- 目标:0.0.0.0/0
- 目标类型:NAT 网关
- 目标:刚在 VCN 中创建的 NAT 网关的名称
如果不存在此类规则,请单击添加路由规则并添加具有这些特征的路由规则。
- 返回到子网的子网详细信息页。
- 在子网的安全列表表中,单击子网的安全列表的名称以显示其安全列表详细信息页。
- 在侧边菜单的资源下,单击出站规则。
- 在现有出站规则表中,检查是否已存在具有以下特征的规则:
- 目标类型: CIDR
- 目标:0.0.0.0/0
- IP 协议: TCP
- 源端口范围: 443
- 目标端口范围:全部
如果不存在此类规则,请单击添加出站规则并添加具有这些特征的出站规则。
环境中的 HTTP 代理设置必须允许数据库访问云服务提供商。
注意:
只有在 Exadata 基础结构处于 Requires Activation 状态之前,才能编辑包括 HTTP 代理的网络配置。一旦激活,就无法编辑这些设置。为已预配的 Exadata 基础结构设置 HTTP 代理需要在 My Oracle Support 中创建服务请求 (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 标识符的命名规则。配置文件名称的最大长度为 125 个字符。 此项是必需参数。 |
|
|
配置文件属性采用 JSON 格式。有关更多详细信息,请参见 AI Profile Attributes 。 默认值为空值。 |
status |
概要信息的状态。 默认值为启用。 |
|
|
AI 配置文件的说明。 默认值为空值。 |
范例
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;
/使用说明
使用 force 删除配置文件,如果 AI 配置文件不存在,则忽略错误。
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 配置文件的属性。有关受支持属性的列表,请参见 Profile Attributes 。
| Parameter (参数) | 说明 |
|---|---|
|
|
要为其设置属性的 AI 配置文件的名称。 此参数是必需的。 |
|
|
AI 概要信息属性的名称 此参数是必需的。 |
|
|
配置文件属性的值。 默认值为空值。 |
范例
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 前缀,请参见 Use AI Keyword to Enter Prompts 。(可选)可以通过以 JSON 格式指定概要信息属性来覆盖或修改属性。有关设置属性的信息,请参见SET_ATTRIBUTE Procedure 。
仅当 AI 配置文件的所有者是会话用户时,才能为当前会话设置 AI 配置文件。
要为特定数据库用户或数据库中所有用户会话的所有会话设置 AI 配置文件,请考虑对特定用户或整个数据库上的 AFTER LOGON 事件使用数据库事件触发器。有关详细信息,请参阅 Oracle Database 19c Database PL/SQL Language Reference 或 Oracle Database 26ai Database PL/SQL Language Reference 中的 CREATE TRIGGER Statement 。
语法
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 概要文件名。如果已在使用 默认值为空值。 以下情况适用:
注意: 对于 Database Actions,可以在DBMS_CLOUD_AI.GENERATE 中指定 profile_name 参数,也可以将两个步骤作为 PL/SQL 脚本运行:DBMS_CLOUD_AI.SET_PROFILE 和 DBMS_CLOUD_AI.GENERATE 。
|
action |
使用 AI 转换自然提示的操作。支持的操作包括 注意: 此函数不支持runsql 操作。如果提供 runsql 操作,则会返回以下错误: |
attributes |
通过提供 JSON 格式的属性来覆盖特定的 AI 配置文件属性。有关更多详细信息,请参见 Profile Attributes 。 |
示例
以下示例说明了可与 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 Procedure 创建。 |
|
|
是 | 指定表名以填充合成数据。
|
owner_name |
无 |
指定拥有所引用对象的数据库用户。如果未提供特定所有者,则该过程默认为使用运行它的用户的方案。 |
record_count |
无 |
要以合成方式生成的记录数。 |
|
|
无 | 用户可以提及的用于生成合成数据的附加信息。例如,要为具有 release_date 列的名为 MOVIE 的表生成记录,user_prompt 可以是:
电影的发行日期应该在 2019 年 |
|
|
无 |
以 JSON 对象字符串格式提供的可选属性,用于修改 API 的行为。请参阅可选参数。 |
|
|
是 | 使用此参数可在多个表中生成合成数据。此参数接受表对象信息及其参数,并包含单个表中提供的相同参数。请参见 object_list Parameters 。 |
可选参数
| Parameter (参数) | 值数据类型 | 值 | 说明 |
|---|---|---|---|
|
|
数字 |
|
指定表中的行数,以用作在数据生成中指导 LLM 的示例。 值为 0 表示不会使用示例行。默认值为 |
|
|
布尔 |
|
允许或禁止使用表统计信息。 默认值为 |
|
|
字符串 |
有效值包括:
|
分配一个优先级值,该值定义发送到 LLM 以生成合成数据的并行请求数。优先级更高的任务将消耗更多数据库资源并更快地完成任务。 默认值为
用于合成数据生成的最大并行进程数限制为 64 个。 |
|
|
布尔 |
|
启用或禁用向 LLM 发送注释以指导数据生成。 默认值为 |
object_list 参数
| Parameter (参数) | 值数据类型 | 必需 | 说明 |
|---|---|---|---|
|
|
字符串 |
是 |
指定所引用的对象的所有者数据库用户。如果未提供特定所有者,则该过程将默认为使用运行它的用户的方案。 |
|
|
字符串 |
无 |
指定表名以填充合成数据。使用 it.The 表的用户需要对表对象具有 SELECT 和 INSERT 权限,但该权限为空或包含记录。
|
|
|
数字 |
无 |
要以合成方式生成的记录数。请提供大于 0 的数字。 提供 |
|
|
数字 |
无 |
要合成生成的记录数的百分比。请提供大于 0 的数字。 对于元数据克隆数据库,如果保留包括统计信息的表元数据,则支持 提供 使用
record_count_percentage 参数时,表中的最终记录计数按以下方式计算:
|
|
|
字符串 | 无 | 与参数中的 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 标识符的命名规则。向量存储名称的最大长度为 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 标识符的命名规则。向量存储名称的最大长度为 125 个字符。 此项是必需参数。 |
范例
可以通过提供向量索引的名称来禁用向量索引。
BEGIN
DBMS_CLOUD_AI.DISABLE_VECTOR_INDEX(index_name => 'MY_INDEX');
END;
/
ENABLE_VECTOR_INDEX 过程
此过程启用或激活以前禁用的向量索引对象。通常,在创建向量索引时,默认情况下会启用它,以便 AI 配置文件可以使用它来执行索引编制和搜索。
语法
DBMS_CLOUD_AI.ENABLE_VECTOR_INDEX(
index_name IN VARCHAR2
);
参数
| Parameter (参数) | 说明 |
|---|---|
|
|
向量索引的名称。向量索引名称必须遵循 Oracle SQL 标识符的命名规则。向量存储名称的最大长度为 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 标识符的命名规则。向量存储名称的最大长度为 125 个字符。 此项是必需参数。 |
|
|
以 JSON 格式指定向量索引属性。 此项是必需参数。 |
|
|
在 您不能修改以下属性:
此项是必需参数。 |
attribute_value |
自定义 默认值为空值。 |
注意:
使用attributes 参数可以同时指定 attribute_name 和 JSON 格式的值对,也可以使用 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 参数不适用于人类和拥抱面。
|
|
|
表示每代要预测的标记数。默认值为 1024。有关更多详细信息,请参见 Tokens and Tokenizers 。 |
|
|
用于生成响应的 AI 模型的名称。 支持的型号:
注意: 此参数不用于 Azure,因为在 Azure OpenAI 服务门户中创建部署时将确定模型。 |
|
|
JSON 对象的数组,用于指定有资格将自然语言转换为 SQL 的所有者和对象名称。要包括给定用户的所有对象,请省略 "name" 并仅在 JSON 对象中指定 "owner" 键。 对于将自然语言转换为 SQL,将使用 HTTPS 请求将对象名称、对象所有者、对象列和注释发送到 AI 提供程序。避免在对象列表中指定具有敏感对象名称、列名称或注释的对象。 AI 提供程序可能对转换请求中允许的元数据大小有限制。考虑限制应用程序用户适合自然语言提示的对象列表。 格式:
|
|
|
指定在调用 OCI 生成式 AI 服务时允许访问的区间的 OCID。区间 ID 可以包含字母数字字符、连字符和点。 默认值为 Autonomous AI Database 的区间 ID。 |
|
|
此属性指示 Oracle 专用 AI 托管集群的端点 OCID。端点 ID 可以包含字母数字字符、连字符和点。要查找端点 OCID,请参见 Getting an Endpoint's Details in Generative AI 。 如果要使用 Oracle 专用 AI 集群,必须提供托管集群的端点 OCID。 默认情况下,端点 ID 为空,并且模型在共享基础结构上是按需的。 |
|
|
此属性指示提供的模型的运行时类型。如果指定了 所有允许的值都可以在 OCI Generative AI runtimeType 中找到。请参见LlmInferenceRequest Reference 。 支持的值包括:
|
|
|
AI 配置文件的 AI 提供程序。 支持的提供程序:
这是一个必需的属性。 |
|
|
此属性指示要使用的生成式 AI 集群的位置。区域可以包含字母数字字符和连字符。
注意: Oracle Generative AI 集群在芝加哥、法兰克福和伦敦地区提供。请参见 Pretrained Foundational Models in Generative 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;
/