Pacchetto DBMS_CLOUD_AI
Il pacchetto DBMS_CLOUD_AI
, con Select AI, facilita e configura la traduzione dei prompt in linguaggio naturale per generare, eseguire e spiegare le istruzioni SQL. Inoltre, consente la retrieval augmented generation e le interazioni basate sul linguaggio naturale, inclusa la chat con i LLM.
- DBMS_CLOUD_AI Panoramica
Verrà descritto l'uso del pacchettoDBMS_CLOUD_AI
. - Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
In questa sezione vengono descritti i sottoprogrammiDBMS_CLOUD_AI
forniti con Autonomous Database.
Argomento padre: Riferimento del package fornito per Autonomous Database
Panoramica di DBMS_CLOUD_AI
Descrive l'uso del pacchetto DBMS_CLOUD_AI
.
Utilizzare il pacchetto DBMS_CLOUD_AI
per creare profili AI e configurarli per l'accesso a un LLM (Large Language Model). Impostare il profilo AI nella sessione utente del database corrente per eseguire task quali la generazione, l'esecuzione e la spiegazione di SQL. Inoltre, abilita la retrieval augmented generation e le interazioni basate sul linguaggio naturale, inclusa la chat con i LLM.
Per ulteriori informazioni sulle piattaforme e gli LLM supportati, vedere Informazioni su Select AI.
Argomento padre: Pacchetto DBMS_CLOUD_AI
Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
In questa sezione vengono descritti i programmi secondari DBMS_CLOUD_AI
forniti con Autonomous Database.
Sottoprogramma | Descrizione |
---|---|
Questa procedura crea un nuovo profilo AI per la traduzione dei prompt in linguaggio naturale in istruzioni SQL. |
|
Fornisce gli attributi del profilo AI che è possibile configurare. |
|
Questa procedura cancella un profilo AI attivo nella sessione corrente. |
|
Questa procedura disabilita un profilo AI nel database corrente. |
|
Questa procedura elimina un profilo AI esistente. |
|
Questa procedura consente di utilizzare un profilo AI nel database corrente. |
|
Questa funzione consente di utilizzare Select AI in modo senza conservazione dello stato con il profilo esistente. | |
Questa funzione genera dati sintetici. |
|
Questa funzione restituisce il nome del profilo utilizzato nella sessione corrente. |
|
Questa procedura imposta gli attributi del profilo AI. |
|
Questa procedura imposta il profilo AI per il database corrente. |
|
Utilizzare questa procedura per abilitare l'invio dei dati al LLM in uso. |
|
Utilizzare questa procedura per disabilitare l'invio di dati al LLM. |
|
Utilizzare questa procedura per migliorare potenzialmente l'accuratezza della generazione delle query fornendo un feedback a Select AI. |
|
Questo è un indice vettoriale predefinito creato quando si utilizza per la prima volta |
|
Questa procedura consente di creare una conversazione. |
|
Questa funzione consente di creare una conversazione e di utilizzare l'ID conversazione in altre procedure. |
|
Utilizzare gli attributi della conversazione per personalizzare le conversazioni. |
|
Questa procedura aggiorna una procedura esistente con parametri specificati dall'utente. |
|
Questa procedura imposta il supporto della conversazione nella sessione corrente. |
|
Questa procedura consente di ottenere il parametro |
|
Questa procedura consente di cancellare qualsiasi |
|
Questa procedura elimina un prompt particolare. |
|
Questa procedura elimina un'intera conversazione e i relativi metadati. |
|
Questa funzione riepiloga il contenuto in base ai parametri. |
|
Utilizzare gli attributi di riepilogo per personalizzare la generazione del sintetico. |
|
Questa procedura crea un indice vettoriale nel database vettoriale specificato e lo popola con i dati di un'area di memorizzazione degli oggetti utilizzando un job scheduler asincrono. |
|
Questa procedura rimuove un indice della memoria di vettore. In genere rimuove l'oggetto indice della memoria di vettore ed elimina il database vettoriale. |
|
Questa procedura disabilita un oggetto indice vettoriale nel database corrente. Quando è disabilitato, un profilo AI non può utilizzare l'indice vettoriale e il sistema non carica i dati nella memoria di vettore. |
|
Questa procedura abilita o attiva un oggetto indice vettoriale disabilitato in precedenza. |
|
Questa procedura aggiorna un indice di memoria di vettore esistente con un valore specificato dell'attributo indice di vettore. |
|
Fornisce gli attributi del profilo di indice vettoriale che è possibile configurare. |
- CREATE_PROFILE Procedura
La procedura crea un nuovo profilo AI per la conversione dei prompt in linguaggio naturale in istruzione SQL. - Attributi profilo
Gli attributi di un profilo AI consentono di gestire e configurare il funzionamento del profilo AI. Alcuni attributi sono facoltativi e hanno un valore predefinito. - CLEAR_PROFILE Procedura
Questa procedura cancella qualsiasi profilo AI attivo impostato nella sessione corrente. Dopo aver cancellato un profilo attivo, non sarà più possibile utilizzareSELECT AI
nella riga di comando SQL o impostare il profilo AI quando si chiamaDBMS_CLOUD_AI.GENERATE
. Questa procedura non elimina il profilo. - DROP_PROFILE Procedura
La procedura elimina un profilo AI esistente. Se il profilo non esiste, la procedura genera un errore. - ENABLE_PROFILE Procedura
Questa procedura abilita il profilo AI specificato dall'utente. La procedura modifica lo stato del profilo AI inENABLED
. - DISABLE_PROFILE Procedura
Questa procedura disabilita il profilo AI nel database corrente. Lo stato del profilo AI viene modificato inDISABLED
mediante questa procedura. - Procedura FEEDBACK
Questa procedura consente di fornire un FEEDBACK a Select AI per migliorare l'accuratezza della generazione delle query. È possibile fornire un feedback positivo o negativo, nonché commenti testuali o query SQL riviste. - Indice vettoriale per FEEDBACK
Selezionare AI per creare un indice vettoriale predefinito denominato<profile_name>_FEEDBACK_VECINDEX
con attributi predefiniti quando si utilizza la funzione di FEEDBACK per la prima volta. - GET_PROFILE Funzione
Questa funzione restituisce il nome del profilo AI impostato nella sessione corrente. - SET_ATTRIBUTE Procedura
Questa procedura consente di impostare gli attributi del profilo AI. È sovraccaricato per accettare valori di attributi di vari tipi. - Funzione GENERATE
Questa funzione fornisce la traduzione AI in modo senza conservazione dello stato. Con il profilo AI esistente, è possibile utilizzare questa funzione per eseguire le azioni supportate qualishowsql
,runsql
,explainsql
,narrate
,summarize
echat
. L'azione predefinita èshowsql
. - SET_PROFILE Procedura
Questa procedura imposta il profilo AI per la sessione corrente. - CREATE_CONVERSATION Procedura
Questa procedura consente di creare una conversazione e di impostare automaticamenteconversation_id
all'interno della procedura. - CREATE_CONVERSATION Funzione
Questa funzione crea una conversazione e restituisce il proprioconversation_id
che può essere utilizzato in altre procedure o funzioni comeDBMS_CLOUD_AI.SET_CONVERSATION_ID
eDBMS_CLOUD_AI.GENERATE
. - CREATE_CONVERSATION Attributi
Questi attributi gestiscono il contesto della conversazione, incluso il tempo di conservazione, il numero di prompt con risposte da memorizzare o visualizzare e metadati come titolo e descrizione per riferimento. Alcuni attributi sono facoltativi e hanno un valore predefinito. - UPDATE_CONVERSATION Procedura
Questa procedura aggiorna una conversazione esistente con un valore specificato degli attributi della conversazione. - SET_CONVERSATION_ID Procedura
Questa procedura imposta la conversazione corrente sull'ID specificato. I prompt successivi includono prompt conversazione esistenti basati sugli attributi configurati della conversazione. - GET_CONVERSATION_ID Funzione
Questa funzione restituisce l'ID conversazione attualmente impostato nella sessione utilizzando la proceduraDBMS_CLOUD_AI.SET_CONVERSATION_ID
oDBMS_CLOUS_AI.CREATE_CONVERSATION
. Se non è stata impostata una conversazione, la funzione restituisce NULL. Se interrompi la conversazione, il sistema la cancella anche nella sessione. - CLEAR_CONVERSATION_ID Procedura
Questa procedura cancella un ID conversazione impostato nella sessione per disabilitare la funzione di conversazione perSELECT AI <ACTION> <PROMPT>
. Se non hai impostato una conversazione, il sistema non genera alcun errore. - DELETE_CONVERSATION_PROMPT Procedura
La procedura rimuove un determinato prompt dalla conversazione. - DROP_CONVERSATION Procedura
La procedura rimuove la conversazione e tutti i prompt associati e le risposte associate. Una volta eliminato, il valoreconversation_id
diventa non valido. Se una conversazione viene eliminata mentre è impostata nella sessione, viene cancellata automaticamente. - Funzione SUMMARIZE
Questa funzione riepiloga il contenuto in base alle opzioni di personalizzazione fornite come parametri. - Parametri SUMMARIZE
Questi attributi gestiscono la generazione del sintetico con parametri personalizzati. Alcuni attributi sono facoltativi e hanno un valore predefinito. - GENERATE_SYNTHETIC_DATA Funzione
Utilizzare questa procedura per generare dati sintetici per una singola tabella, più tabelle o uno schema completo. - ENABLE_DATA_ACCESS Procedura
Questa procedura consente di inviare dati a LLM per le funzioni Select AI applicabili, ovvero il funzionamento predefinito. Solo un amministratore può eseguire questa procedura. - DISABLE_DATA_ACCESS Procedura
Questa procedura disabilita l'invio di dati a LLM per le funzioni Select AI applicabili. Solo un amministratore può eseguire questa procedura. - CREATE_VECTOR_INDEX Procedura
Questa procedura crea un indice vettoriale nel database vettoriale specificato e lo popola con i dati di un'area di memorizzazione degli oggetti utilizzando un job scheduler asincrono. - DROP_VECTOR_INDEX Procedura
Questa procedura rimuove un indice della memoria di vettore. In genere rimuove l'oggetto indice della memoria di vettore ed elimina la memoria di vettore. Se impostato suFALSE
, l'argomentoinclude_data
garantisce che la procedura rimuova solo l'oggetto indice della memoria di vettore conservando la memoria di vettore. - DISABLE_VECTOR_INDEX Procedura
Questa procedura disabilita un oggetto indice vettoriale nel database corrente. Quando è disabilitato, un profilo AI non può utilizzare l'indice vettoriale e il sistema non carica i dati nella memoria di vettore poiché vengono aggiunti nuovi dati all'area di memorizzazione degli oggetti e non esegue l'indicizzazione, la ricerca o l'esecuzione di query in base all'indice. - ENABLE_VECTOR_INDEX Procedura
Questa procedura abilita o attiva un oggetto indice vettoriale disabilitato in precedenza. In genere, quando si crea un indice vettoriale, per impostazione predefinita è abilitato in modo che il profilo AI possa utilizzarlo per eseguire l'indicizzazione e la ricerca. - UPDATE_VECTOR_INDEX Procedura
Questa procedura aggiorna un indice di memoria di vettore esistente con un valore specificato dell'attributo indice di vettore. È sovraccaricato per accettare valori di attributi di vari tipi. - Attributi dell'indice vettoriale
Gli attributi di un indice vettoriale consentono di gestire e configurare il funzionamento dell'indice vettoriale. Se necessario, è possibile aggiungere attributi di indice personalizzati. Alcuni attributi sono facoltativi e hanno un valore predefinito.
Argomento padre: Pacchetto DBMS_CLOUD_AI
Procedura CREATE_PROFILE
La procedura crea un nuovo profilo AI per la traduzione dei prompt in linguaggio naturale in istruzioni SQL.
Sintassi
DBMS_CLOUD_AI.CREATE_PROFILE
profile_name IN VARCHAR2,
attributes IN CLOB DEFAULT NULL,
status IN VARCHAR2 DEFAULT NULL,
description IN CLOB DEFAULT NULL
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome del profilo AI. Il nome del profilo deve seguire le regole di denominazione dell'identificativo Oracle SQL. La lunghezza massima del nome del profilo è di 125 caratteri. Questo è un parametro obbligatorio. |
|
Attributi di profilo in formato JSON. Per ulteriori dettagli, vedere Attributi profilo AI. Il valore predefinito è NULL. |
status |
Stato del profilo. Il valore predefinito è abilitato. |
|
Descrizione del profilo AI. Il valore predefinito è NULL. |
Esempio
BEGIN
DBMS_CLOUD_AI.CREATE_PROFILE
(
profile_name => 'OpenAI',
attributes => JSON_OBJECT('provider' value 'openai',
'credential_name' value 'openai_cred'),
status => 'enabled',
description => 'AI profile to use OpenAI for SQL translation'
);
END;
/
Attributi di profilo
Attributi
Nome attributo | Descrizione |
---|---|
|
Fornisce metadati aggiuntivi sulle tabelle e le colonne del database utilizzando la funzione Annotazioni 23ai. I valori corretti sono
|
|
Nome del modello distribuito del servizio OpenAI di Azure. Il nome può includere solo caratteri alfanumerici, caratteri di sottolineatura (_) e un trattino (-). Il nome non può terminare con un carattere di sottolineatura (_) o un trattino (-). Per informazioni su come ottenere |
|
Nome del modello di incorporamento distribuito di Azure OpenAI. Il nome può includere solo caratteri alfanumerici, caratteri di sottolineatura e trattini. Il nome non può iniziare o terminare con un trattino o un carattere di sottolineatura. |
|
Nome della risorsa del servizio OpenAI di Azure. Il nome della risorsa può includere solo caratteri alfanumerici e trattini e non può iniziare o terminare con un trattino. Per informazioni su come ottenere |
|
Specifica se selezionare AI deve indicare all'LLM di generare istruzioni SQL senza distinzione tra maiuscole e minuscole per le colonne contenenti valori stringa o testo. I valori supportati sono:
Il valore predefinito è |
|
Include i commenti di tabella e colonna nei metadati utilizzati per la traduzione dei prompt in linguaggio naturale mediante AI. Il tipo di dati
|
|
Gestisce se includere vincoli di integrità referenziale come chiavi primarie ed esterne nei metadati inviati all'LLM. I valori corretti sono
|
|
Attributo |
|
Nome della credenziale per accedere alle API del provider AI. La credenziale che utilizza i token bearer può essere creata utilizzando il nome del provider come nome utente e il token bearer come password. Sono supportate anche le credenziali del segreto vault. È supportata anche l'autenticazione principale, ad esempio il principal del servizio Azure. Per ulteriori informazioni su come configurarlo, vedere Utilizzare il principal del servizio Azure per accedere alle risorse di Azure. Si tratta di un attributo obbligatorio. Vedere CREATE_CREDENTIAL Procedura. |
|
Modello di incorporamento definito nel profilo AI. Di seguito sono riportati i provider AI supportati per l'incorporamento dei modelli con i relativi valori predefiniti.
Nota
|
|
Specifica se limitare l'LLM alla generazione di istruzioni SQL che utilizzano solo tabelle coperte dalla lista di oggetti. I valori supportati sono:
I valori non distinguono tra maiuscole e minuscole. Il valore predefinito è |
|
Indica il numero di token da prevedere per generazione. L'impostazione predefinita è 1024. Per ulteriori dettagli, vedere Tokens and Tokenizers. |
|
Nome del modello AI utilizzato per generare le risposte. Vedere Selezionare il provider AI e gli LLM e specificare il nome del modello. Nota
|
|
Array di oggetti JSON che specificano i nomi del proprietario e degli oggetti idonei per la traduzione del linguaggio naturale in SQL. Per includere tutti gli oggetti di un determinato utente, omettere il "nome" e specificare solo la chiave "proprietario" nell'oggetto JSON. È possibile utilizzare i seguenti tipi di oggetti:
Per la traduzione del linguaggio naturale in SQL, il nome dell'oggetto, il proprietario dell'oggetto, le colonne dell'oggetto e i commenti vengono inviati al provider AI utilizzando le richieste HTTPS. Evitare di specificare oggetti con nome oggetto riservato, nomi di colonna o commenti nell'elenco oggetti. I provider AI potrebbero avere un limite alla dimensione dei metadati consentiti nelle richieste di traduzione. Valutare la possibilità di limitare l'elenco di oggetti adatti ai prompt in linguaggio naturale da parte degli utenti dell'applicazione. Formato:
Anche le tabelle esterne create utilizzando la sincronizzazione di OCI Data Catalog o AWS Glue possono essere utilizzate nell'elenco degli oggetti. Ciò consente di gestire i metadati nei Data Catalog centrali e di utilizzare i metadati direttamente per tradurre i prompt in linguaggio naturale utilizzando l'intelligenza artificiale. |
|
Specifica se inviare i metadati per le tabelle più pertinenti o tutte le tabelle all'LLM. I valori supportate sono:
Quando |
|
Specifica il formato in cui l'API prevede l'invio e la ricezione di dati. Utilizzare questo attributo per generare risposte di testo. Questo attributo si applica AI modelli di chat AI generativa OCI in un cluster AI dedicato. Specificare questo attributo quando si specifica un OCID modello nell'attributo I valori supportate sono:
|
|
Specifica l'OCID del compartimento a cui è consentito accedere quando si chiama il servizio AI generativa OCI. L'ID compartimento può contenere caratteri alfanumerici, trattini e punti. L'impostazione predefinita è l'ID compartimento del PDB. |
|
Questo attributo indica l'OCID endpoint del cluster di hosting AI dedicato Oracle. L'ID endpoint può contenere caratteri alfanumerici, trattini e punti. Per trovare l'OCID endpoint, vedere Ottenere i dettagli di un endpoint nell'intelligenza artificiale generativa. Quando si desidera utilizzare il cluster AI dedicato Oracle, è necessario fornire l'OCID endpoint del cluster di hosting. Per impostazione predefinita, l'ID endpoint è vuoto e il modello è su richiesta in un'infrastruttura condivisa. |
|
Questo attributo indica il tipo di runtime del modello fornito. Questo attributo è applicabile AI modelli Genera testo OCI in un cluster AI dedicato. Specificare questo attributo quando si specifica un OCID modello nell'attributo Tutti i valori consentiti sono disponibili in OCI Generative AI runtimeType. Vedere LlmInferenceRequest Riferimento. I valori supportati sono:
Nota
Questo attributo non è più valido. Usare oci_apiformat .
|
|
Provider AI per il profilo AI. Provider supportati:
Si tratta di un attributo obbligatorio. |
|
Specifica l'endpoint API per i provider compatibili con OpenAI. Questo attributo è specifico solo per i provider compatibili con OpenAI. Specificare Esempio: |
|
Questo attributo indica la posizione del cluster AI generativa che si desidera utilizzare. L'area può contenere caratteri alfanumerici e trattini.
Nota
Il cluster Oracle Generative AI è disponibile a Chicago, Francoforte, Londra e in altre aree selezionate. Per ulteriori informazioni, consulta Aree con intelligenza artificiale generativa. L'area predefinita per AWS è L'area predefinita è |
|
Il testo generato verrà terminato all'inizio della prima sequenza di arresto. La sequenza verrà incorporata nel testo. Il valore dell'attributo deve essere un array valido di valori stringa in formato JSON. |
|
Il campionamento dai modelli Genera testo incorpora la casualità, in modo che lo stesso prompt possa produrre output diversi ogni volta che premi "generare". La temperatura è un numero float non negativo utilizzato per regolare il grado di casualità. Le temperature più basse significano meno generazioni casuali. Per ulteriori informazioni, vedere Temperatura. Questo parametro è applicabile a tutti i provider di servizi supportati. |
|
Nome dell'indice vettoriale. Il nome dell'indice vettoriale deve seguire le regole di denominazione dell'identificativo Oracle SQL. La lunghezza massima del nome della memoria di vettore è di 125 caratteri. |
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;
/
L'esempio riportato di seguito mostra gli attributi del profilo personalizzato che utilizzano 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_apiformat": "COHERE"
}');
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura CLEAR_PROFILE
Questa procedura cancella qualsiasi profilo AI attivo impostato nella sessione corrente. Dopo aver cancellato un profilo attivo, non sarà più possibile utilizzare SELECT AI
nella riga di comando SQL o impostare il profilo AI quando si chiama DBMS_CLOUD_AI.GENERATE
. Questa procedura non elimina il profilo.
Sintassi
DBMS_CLOUD_AI.CLEAR_PROFILE
;
Esempio
BEGIN
DBMS_CLOUD_AI.CLEAR_PROFILE
;
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura DROP_PROFILE
La procedura elimina un profilo AI esistente. Se il profilo non esiste, la procedura genera un errore.
Sintassi
DBMS_CLOUD_AI.DROP_PROFILE
(
profile_name IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome del profilo AI |
|
Se Il valore predefinito di questo parametro è |
Esempio
BEGIN
DBMS_CLOUD_AI.DROP_PROFILE
(profile_name => 'OPENAI');
END;
/
Note sull'uso
Utilizzare force
per eliminare un profilo e ignorare gli errori se il profilo AI non esiste.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura ENABLE_PROFILE
Questa procedura abilita il profilo AI specificato dall'utente. La procedura modifica lo stato del profilo AI in ENABLED
.
Sintassi
DBMS_CLOUD_AI.ENABLE_PROFILE
(
profile_name IN VARCHAR2
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome del profilo AI da abilitare Questo parametro è obbligatorio. |
Esempio per abilitare il profilo AI
BEGIN
DBMS_CLOUD_AI.ENABLE_PROFILE
(
profile_name => 'OPENAI'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura DISABLE_PROFILE
Questa procedura disabilita il profilo AI nel database corrente. Lo stato del profilo AI viene modificato in DISABLED
mediante questa procedura.
Sintassi
DBMS_CLOUD_AI.DISABLE_PROFILE
(
profile_name IN VARCHAR2
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome del profilo AI. Questo parametro è obbligatorio. |
Esempio
BEGIN
DBMS_CLOUD_AI.DISABLE_PROFILE
(
profile_name => 'OPENAI'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura FEEDBACK
Sintassi
DBMS_CLOUD_AI.FEEDBACK(
profile_name IN VARCHAR2,
sql_id IN DBMS_ID,
feedback_type IN VARCHAR2 DEFAULT NULL,
response IN CLOB DEFAULT NULL,
feedback_content IN CLOB DEFAULT NULL,
operation IN VARCHAR2 DEFAULT 'ADD'
);
DBMS_CLOUD_AI.FEEDBACK(
profile_name IN VARCHAR2,
sql_text IN CLOB,
feedback_type IN VARCHAR2 DEFAULT NULL,
response IN CLOB DEFAULT NULL,
feedback_content IN CLOB DEFAULT NULL,
operation IN VARCHAR2 DEFAULT 'ADD'
);
Parametri
Parametro | Descrizione |
---|---|
|
Specifica il profilo AI da utilizzare. Se non si specifica un valore Questo è un parametro obbligatorio. |
|
Identifica la query SQL. Un Questo è un parametro obbligatorio. |
|
Contiene il testo completo della query SQL. Questo è un parametro obbligatorio. |
|
Specifica il tipo di feedback. I valori disponibili sono:
Nota
La procedura DBMS_CLOUD_AI.FEEDBACK consente di specificare sql_id o sql_text , pertanto feedback_type è necessario, mentre se si utilizza l'azione feedback , l'LLM determina o interpreta dinamicamente il tipo di feedback.
Questo parametro è obbligatorio quando |
|
Rappresenta il risultato della query SQL corretto previsto dall'utente. Questo parametro è obbligatorio quando |
|
Acquisisce il feedback del linguaggio naturale dell'utente. È possibile utilizzare questo parametro insieme a |
|
Specifica l'operazione da eseguire. I valori accettati sono:
|
Esempio
L'esempio seguente illustra l'utilizzo della procedura DBMS_CLOUD_AI.FEEDBACK
per accettare o migliorare l'istruzione SQL generata specificando i parametri della procedura.
EXEC DBMS_CLOUD_AI.FEEDBACK
(profile_name=>'OCI_FEEDBACK1',
sql_id=> '852w8u83gktc1',
feedback_type=>'positive',
operation=>'add');
EXEC DBMS_CLOUD_AI.FEEDBACK
(profile_name=>'OCI_FEEDBACK1',
sql_text=> 'select ai showsql how many movies',
feedback_type=> 'negative',
response=>'SELECT SUM(1) FROM "ADB_USER"."MOVIES"',
feedback_content=>'Use SUM instead of COUNT');
EXEC DBMS_CLOUD_AI.FEEDBACK
(profile_name=>'OCI_FEEDBACK1',
sql_id=> '852w8u83gktc1',
operation=>'delete');
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Indice vettoriale per FEEDBACK
<profile_name>_FEEDBACK_VECINDEX
con attributi predefiniti quando si utilizza la funzione di feedback per la prima volta.
È possibile modificare gli attributi, ad esempio similarity_threshold
e match_limit
, utilizzando la procedura DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX
. Questo indice consente di perfezionare le istruzioni SQL generate in futuro in base al feedback fornito. Questa tabella viene eliminata quando viene eliminato il profilo AI associato. È inoltre possibile eliminare <profile_name>_FEEDBACK_VECINDEX
. Quando si esegue questa operazione, Select AI non utilizza più feedback come suggerimenti per le azioni runsql
, showsql
e explainsql
. Tuttavia, se si sottomette un nuovo feedback utilizzando la funzione Seleziona feedback AI, Select AI crea automaticamente un nuovo indice vettoriale di feedback
Il valore predefinito
match_limit
per feedback
è 3.
Nome tabella vettoriale
La tabella <profile_name>_FEEDBACK_VECINDEX$VECTAB
contiene rappresentazioni vettoriali (embedings) del feedback utente insieme ad altri parametri, utilizzati da Select AI per migliorare la generazione SQL nel tempo.
Parametri
Colonna | Descrizione |
---|---|
|
Include gli attributi dell'oggetto JSON secondo la procedura FEEDBACK. |
|
Contiene il prompt utente. |
|
Contiene rappresentazioni vettoriali (embeddings) del prompt utente. |
Esempio
L'esempio seguente illustra l'uso della tabella di indice vettoriale generata automaticamente per eseguire query e fornire feedback.
SQL> select content, attributes from OCI_FEEDBACK1_FEEDBACK_VECINDEX$VECTAB where JSON_VALUE(attributes, '$.sql_text') = 'select ai showsql how many movies';
CONTENT
----------------------------------------------------------------------------------------------------
how many movies
ATTRIBUTES
----------------------------------------------------------------------------------------------------
{"response":"SELECT SUM(1) FROM \"ADB_USER\".\"MOVIES\"","feedback_type":"negative","sql_id":null,"sql_text":"select ai showsql how many movies","feedback_content":null}
DBMS_CLOUD_AI.feedback Procedure(Positive Feedback)
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Funzione GET_PROFILE
Questa funzione restituisce il nome del profilo AI impostato nella sessione corrente.
Sintassi
DBMS_CLOUD_AI.GET_PROFILE
;
Esempio
In questo esempio viene illustrato come visualizzare il nome del profilo nella sessione corrente.
SELECT DBMS_CLOUD_AI.GET_PROFILE
from DUAL;
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura SET_ATTRIBUTE
Questa procedura consente di impostare gli attributi del profilo AI. È sovraccaricato per accettare valori di attributi di vari tipi.
Sintassi
DBMS_CLOUD_AI.SET_ATTRIBUTE
(
profile_name IN VARCHAR2,
attribute_name IN VARCHAR2,
attribute_value IN {BOOLEAN|VARCHAR2}
);
DBMS_CLOUD_AI.SET_ATTRIBUTE
(
profile_name IN VARCHAR2,
attribute_name IN VARCHAR2,
attribute_value IN CLOB DEFAULT NULL
);
Parametri
Solo il proprietario può impostare o modificare gli attributi del profilo AI. Per un elenco degli attributi supportati, vedere Attributi profilo.
Parametro | Descrizione |
---|---|
|
Nome del profilo AI per il quale si desidera impostare gli attributi. Questo parametro è obbligatorio. |
|
Nome dell'attributo profilo AI Questo parametro è obbligatorio. |
|
Valore dell'attributo di profilo. Il valore può essere di tipo Il valore predefinito è NULL. |
Esempi
BEGIN
DBMS_CLOUD_AI.SET_ATTRIBUTE
(
profile_name => 'OPENAI',
attribute_name => 'credential_name',
attribute_value => 'OPENAI_CRED_NEW'
);
END;
/
L'esempio seguente accetta il tipo NUMBER
come attribute_value
.
BEGIN
DBMS_CLOUD_AI.SET_ATTRIBUTE(
profile_name => 'OCI_PROFILE',
attribute_name => 'temperature',
attribute_value => 0.5
);
END;
/
L'esempio seguente accetta il tipo BOOLEAN
come attribute_value
.
BEGIN
DBMS_CLOUD_AI.SET_ATTRIBUTE
(
profile_name => 'OCI_PROFILE',
attribute_name => 'comments',
attribute_value => 'true'
);
END;
/
L'esempio seguente accetta il tipo VARCHAR2
come attribute_value
.
BEGIN
DBMS_CLOUD_AI.SET_ATTRIBUTE
(
profile_name => 'OCI_PROFILE',
attribute_name => 'model',
attribute_value => 'meta.llama-3.3-70b-instruct'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Funzione GENERATE
showsql
, runsql
, explainsql
, narrate
, summarize
e chat
. L'azione predefinita è showsql
.
La sostituzione di alcuni o di tutti gli attributi del profilo è possibile anche mediante questa funzione.
Sintassi
DBMS_CLOUD_AI.GENERATE
(
prompt IN CLOB,
profile_name IN VARCHAR2 DEFAULT NULL,
action IN VARCHAR2 DEFAULT NULL,
attributes IN CLOB DEFAULT NULL,
params IN CLOB
) RETURN CLOB;
Parametri
Parametro | Descrizione |
---|---|
|
Prompt del linguaggio naturale per tradurre utilizzando l'intelligenza artificiale. Il prompt può includere Questo parametro è obbligatorio. |
|
Nome del profilo AI. Questo parametro è facoltativo se un profilo AI è già impostato nella sessione utilizzando Il valore predefinito è NULL. Vengono applicate le condizioni riportate di seguito.
Nota
Per le azioni del database è possibile specificare l'argomento profile_name in DBMS_CLOUD_AI.GENERATE oppure eseguire due passi come script PL/SQL: DBMS_CLOUD_AI.SET_PROFILE e DBMS_CLOUD_AI.GENERATE .
|
action |
Azione per tradurre prompt naturali utilizzando l'intelligenza artificiale. Le azioni supportate includono |
attributes |
Esegue l'override di attributi di profilo AI specifici fornendo attributi in formato JSON. Per ulteriori dettagli, vedere Attributi profilo. |
params |
Specificare i parametri di conversazione. Vedere CREATE_CONVERSATION Attributi. È possibile specificare solo i seguenti parametri:
|
Esempi
Esempio: utilizzo della funzione GENERATE per selezionare le azioni AI
Gli esempi seguenti illustrano le azioni runsql
, showsql
, explainsql
, narrate
, summarize
e chat
che possono essere utilizzate con la funzione DBMS_CLOUD_AI.GENERATE
. Per ulteriori dettagli, vedere anche Usa parola chiave AI per immettere i prompt.
Di seguito è riportato un esempio di azione runsql
.
SELECT DBMS_CLOUD_AI.GENERATE
(prompt => 'how many customers',
profile_name => 'OPENAI',
action => 'runsql)
FROM dual;
Di seguito è riportato un esempio di azione showsql
.
SELECT DBMS_CLOUD_AI.GENERATE
(prompt => 'how many customers',
profile_name => 'OPENAI',
action => 'showsql')
FROM dual;
Di seguito è riportato un esempio di azione explainsql
.
SELECT DBMS_CLOUD_AI.GENERATE
(prompt => 'how many customers',
profile_name => 'OPENAI',
action => 'explainsql)
FROM dual;
Di seguito è riportato un esempio di azione narrate
.
SELECT DBMS_CLOUD_AI.GENERATE
(prompt => 'how many customers',
profile_name => 'OPENAI',
action => 'narrate')
FROM dual;
Di seguito è riportato un esempio di azione chat
.
SELECT DBMS_CLOUD_AI.GENERATE
(prompt => 'what is oracle autonomous database',
profile_name => 'OPENAI',
action => 'chat')
FROM dual;
summarize
.SELECT DBMS_CLOUD_AI.GENERATE
(
prompt => TO_CLOB(
DBMS_CLOUD.GET_OBJECT(
credential_name => 'STORE_CRED',
object_uri => 'https://objectstorage.ca-toronto-1.oraclecloud.com' ||
'/n/namespace-string/b/bucketname/o/data_folder/' ||
'summary/test_4000_words.txt')),
profile_name => 'GENAI_LLAMA',
action => 'SUMMARIZE')
from DUAL;
Risultato:
The music streaming industry, led by Spotify, has revolutionized the way
people consume music, with streaming accounting for 80% of the American
recording industry's revenue. However, this shift has also complicated the
lives of artists trying to survive in an on-demand, hyper-abundant present.
Spotify's business model, which pays royalties based on an artist's
popularity, has led to concerns about the fairness of the system, with some
artists earning little to no royalties. The company's dominance has also
changed the way people listen to music, with a focus on convenience and
personalized playlists. Liz Pelly's book, "Mood Machine: The Rise of Spotify
and the Costs of the Perfect Playlist," explores the impact of Spotify's rise
on the music industry and listeners, arguing that the platform's emphasis on
affect and mood has led to a homogenization of music and a loss of autonomy
for listeners. As the music industry continues to evolve, questions remain
about the future of music creation and consumption, and whether artists will
be able to thrive in a system that prioritizes convenience and profit over
artistic expression.
È possibile utilizzare DBMS_CLOUD_AI.GENERATE
in una procedura ed eseguire la funzione. L'esempio seguente utilizza i parametri di input ai_prompt
, profile_name
e action
e chiama DBMS_CLOUD_AI.GENERATE
create or replace FUNCTION call_select_ai (ai_prompt IN VARCHAR2,
ai_profile IN VARCHAR2,
ai_action IN VARCHAR2) -- valid for 'chat', 'narrate', 'showsql'
RETURN CLOB AS sai_resp clob;
BEGIN
sai_resp := DBMS_CLOUD_AI.GENERATE(prompt => ai_prompt,
profile_name => ai_profile,
action => ai_action);
return(sai_resp);
END call_select_ai;
L'esempio seguente mostra come utilizzare la funzione DBMS_CLOUD_AI.GENERATE
in un'impostazione di conversazione. In questo esempio si presuppone che sia già stata creata una conversazione.
SELECT DBMS_CLOUD_AI.GENERATE
(
prompt => 'What is the difference in weather between Seattle and San Francisco?',
profile_name => 'GENAI',
action => 'CHAT',
params => '{"conversation_id":"30C9DB6E-EA4D-AFBA-E063-9C6D46644B92"}') AS RESPONSE;
Risultato:
RESPONSE
--------------------------------------------------------------------------------
Seattle and San Francisco, both located in the Pacific Northwest and Northern
California respectively, experience a mild oceanic climate. However, there are
some notable differences in their weather patterns:
1. **Temperature**: San Francisco tends to be slightly warmer than Seattle,
especially during the summer months. San Francisco's average temperature ranges
from 45?F (7?C) in winter to 67?F (19?C) in summer, while Seattle's average
temperature ranges from 38?F (3?C) in winter to 64?F (18?C) in summer.
2. **Rainfall**: Seattle is known for its rainy reputation, with an average
annual rainfall of around 37 inches (94 cm). San Francisco receives less rainfall,
with an average of around 20 inches (51 cm) per year. However, San Francisco's
rainfall is more concentrated during the winter months, while Seattle's rainfall
is more evenly distributed throughout the year.
......
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura SET_PROFILE
Questa procedura imposta il profilo AI per la sessione corrente.
Dopo aver impostato un profilo AI per la sessione del database, qualsiasi istruzione SQL con il prefisso SELECT AI
viene considerata un prompt in linguaggio naturale. A seconda dell'azione specificata con il prefisso AI
, una risposta viene generata utilizzando AI. Per utilizzare il prefisso AI
, vedere Esempi di utilizzo di Select AI e Usa parola chiave AI per immettere i prompt. Facoltativamente, è possibile sostituire gli attributi del profilo o modificare gli attributi specificandoli in formato JSON. Per informazioni sull'impostazione degli attributi, vedere SET_ATTRIBUTE Procedure.
Il profilo AI può essere impostato per la sessione corrente solo se il proprietario del profilo AI è l'utente della sessione.
Per impostare un profilo AI per tutte le sessioni di un utente di database specifico o per tutte le sessioni utente nel database, prendere in considerazione l'utilizzo di un trigger evento di database per l'evento AFTER LOGON
nell'utente specifico o nell'intero database. Per ulteriori informazioni, vedere Dichiarazione CREATE TRIGGER.
Sintassi
DBMS_CLOUD_AI.SET_PROFILE
(
profile_name IN VARCHAR2,
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome del profilo AI nella sessione corrente. Questo parametro è obbligatorio. |
Esempio
BEGIN
DBMS_CLOUD_AI.SET_PROFILE
(
profile_name => 'OPENAI'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura CREATE_CONVERSATION
Questa procedura consente di creare una conversazione e di impostare automaticamente conversation_id
all'interno della procedura.
Se si utilizza la procedura
DBMS_CLOUD_AI.CREATE_COVERSATION
, è possibile saltare l'impostazione di conversation_id
poiché la procedura la imposta automaticamente.
Sintassi
DBMS_CLOUD_AI.CREATE_COVERSATION
(
attributes IN CLOB DEFAULT NULL
);
Parametri
Parametro | Descrizione |
---|---|
|
Attributi per la conversazione in formato JSON. Per ulteriori dettagli, vedere CREATE_CONVERSATION Attributi. Il valore predefinito è NULL. |
Esempio
L'esempio seguente mostra la creazione di una conversazione senza alcuna personalizzazione.
EXEC DBMS_CLOUD_AI.CREATE_COVERSATION
;
Risultato:
PL/SQL procedure successfully completed.
L'esempio seguente mostra la creazione di una conversazione con parametri personalizzati quali title
, description
, retention_days
e conversation_length
.
-- Create conversation with custom attributes
SELECT DBMS_CLOUD_AI.CREATE_COVERSATION
(
attributes => '{"title":"Conversation 1",
"description":"this is a description",
"retention_days":5,
"conversation_length":5}')
AS conversation_id FROM dual;
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Funzione CREATE_CONVERSATION
Questa funzione crea una conversazione e restituisce il relativo conversation_id
che può essere utilizzato in altre procedure o funzioni come DBMS_CLOUD_AI.SET_CONVERSATION_ID
e DBMS_CLOUD_AI.GENERATE
.
Oracle consiglia di impostare conversation_id
per abilitare la conversazione. In alternativa, è possibile impostare conversation_id
nella funzione DBMS_CLOUD_AI.GENERATE
.
Se si utilizza la procedura
DBMS_CLOUD_AI.CREATE_COVERSATION
, è possibile saltare l'impostazione di conversation_id
poiché la procedura la imposta automaticamente.
Sintassi
DBMS_CLOUD_AI.CREATE_COVERSATION
(
attributes IN CLOB DEFAULT NULL
) RETURN VARCHAR2;
Parametri
Parametro | Descrizione |
---|---|
|
Attributi per la conversazione in formato JSON. Per ulteriori dettagli, vedere CREATE_CONVERSATION Attributi. Il valore predefinito è NULL. |
Esempio
L'esempio seguente mostra l'utilizzo della funzione DBMS_CLOUD_AI.CREATE_COVERSATION
per creare una conversazione senza alcuna personalizzazione.
SELECT DBMS_CLOUD_AI.CREATE_COVERSATION
FROM DUAL;
Risultato:
CREATE_CONVERSATION
------------------------------------
30C9DB6E-EA4D-AFBA-E063-9C6D46644B92
L'esempio seguente mostra l'utilizzo della funzione DBMS_CLOUD_AI.CREATE_COVERSATION
per specificare attributi quali title
, retention_days
e conversation_length
.
SELECT DBMS_CLOUD_AI.CREATE_COVERSATION
(
attributes => '{"title":"This is a test conversation",
"retention_days":7,
"conversation_length":20}')
FROM DUAL;
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Attributi CREATE_CONVERSATION
Attributi
Nome attributo | Valore predefinito | Descrizione |
---|---|---|
|
Nuova conversazione |
Il nome assegnato dall'utente per la conversazione. Se non viene fornito, l'opzione Seleziona intelligenza artificiale genererà un LLM quando la conversazione viene utilizzata per la prima volta con un prompt. |
|
NULL |
Fornisce una descrizione definita dall'utente che riepiloga lo scopo o il contesto della conversazione. Se non viene fornito, l'LLM ne genera uno quando la conversazione viene utilizzata per la prima volta con un prompt e lo aggiorna nuovamente al 5° utilizzo per includere informazioni più accurate e pertinenti. |
|
7 |
Specificare il numero di giorni per il mantenimento della cronologia delle conversazioni. Questo viene memorizzato nel database dalla data di creazione. Se questo valore viene omesso, il sistema lo imposta come valore predefinito 7. Se si imposta su 0, la conversazione viene mantenuta finché non viene eliminata manualmente utilizzando la procedura |
|
NULL |
Specificare il numero di prompt e risposte recenti da includere con il prompt corrente. Il valore massimo consentito è 999. È possibile eseguire l'override di questo valore specificando il parametro
conversation_length nella funzione DBMS_CLOUD_AI.GENERATE oppure impostandolo nel profilo AI utilizzando SELECT AI <ACTION> <PROMPT> . Applicare le seguenti regole di precedenza per conversation_length :
Se nessuno di essi specifica |
DBMS_CLOUD_AI.CREATE_CONVERSATION
.-- Create conversation with custom attributes
SELECT DBMS_CLOUD_AI.CREATE_CONVERSATION(
attributes => '{"title":"Conversation 1",
"description":"this is a description",
"retention_days":5,
"conversation_length":5}')
AS conversation_id FROM dual;
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura UPDATE_CONVERSATION
Questa procedura aggiorna una conversazione esistente con un valore specificato degli attributi della conversazione.
Sintassi
DBMS_CLOUD_AI.UPDATE_CONVERSATION(
conversation_id IN VARCHAR2,
attributes IN CLOB
);
Parametri
Parametro | Descrizione |
---|---|
|
Numero univoco assegnato a una conversazione. Questo è un parametro obbligatorio. |
|
Attributi per la conversazione in formato JSON. Per ulteriori dettagli, vedere CREATE_CONVERSATION Attributi. |
Esempio
EXEC DBMS_CLOUD_AI.UPDATE_CONVERSATION(
conversation_id => '30C9DB6E-EA4E-AFBA-E063-9C6D46644B92',
attributes => '{"retention_days":20,
"description":"This a sample description",
"title":"Sample title",
"conversation_length":20}');
Risultato:
PL/SQL procedure successfully completed.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura SET_CONVERSATION_ID
Questa procedura imposta la conversazione corrente sull'ID specificato. I prompt successivi includono prompt conversazione esistenti basati sugli attributi configurati della conversazione.
Sintassi
DBMS_CLOUD_AI.SET_CONVERSATION_ID(
conversation_id IN VARCHAR2
);
Parametri
Parametro | Descrizione |
---|---|
|
Numero univoco assegnato a una conversazione nella sessione corrente. Questo parametro è obbligatorio. |
Esempio
EXEC DBMS_CLOUD_AI.SET_CONVERSATION_ID('30C9DB6E-EA4D-AFBA-E063-9C6D46644B92');
Risultato:
PL/SQL procedure successfully completed.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Funzione GET_CONVERSATION_ID
DBMS_CLOUD_AI.SET_CONVERSATION_ID
o DBMS_CLOUS_AI.CREATE_CONVERSATION
. Se non è stata impostata una conversazione, la funzione restituisce NULL. Se si elimina la conversazione, il sistema la cancella nella sessione come procedura well.See CLEAR_CONVERSATION_ID.
Sintassi
DBMS_CLOUD_AI.GET_CONVERSATION_ID
RETURN VARCHAR2;
Esempio
In questo esempio viene visualizzato l'ID conversazione impostato nella sessione corrente.
SELECT DBMS_CLOUD_AI.GET_CONVERSATION_ID;
Risultato:
--------------------------------------------------------------------------------
30C9DB6E-EA4F-AFBA-E063-9C6D46644B92
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura CLEAR_CONVERSATION_ID
Questa procedura cancella un ID conversazione impostato nella sessione per disabilitare la funzione di conversazione per SELECT AI <ACTION> <PROMPT>
. Se non hai impostato una conversazione, il sistema non genera alcun errore.
Sintassi
DBMS_CLOUD_AI.CLEAR_CONVERSATION_ID;
Esempio
In questo esempio viene illustrata la visualizzazione dell'ID conversazione corrente nella sessione, la cancellazione dell'ID e la verifica della modifica.
-- A conversation id is set in the session
SELECT DBMS_CLOUD_AI.GET_CONVERSATION_ID FROM dual;
GET_CONVERSATION_ID
--------------------------------------------------------------------------------
3A88BFF0-1D7E-B3B8-E063-9C6D46640ECD
-- Clear the conversation id
EXEC DBMS_CLOUD_AI.CLEAR_CONVERSATION_ID;
PL/SQL procedure successfully completed.
-- The conversation id is removed from the session
SELECT DBMS_CLOUD_AI.GET_CONVERSATION_ID FROM dual;
GET_CONVERSATION_ID
--------------------------------------------------------------------------------
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura DELETE_CONVERSATION_PROMPT
La procedura rimuove un determinato prompt dalla conversazione.
Sintassi
DBMS_CLOUD_AI.DELETE_CONVERSATION_PROMPT(
conversation_prompt_id IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE
);
Parametri
Parametro | Descrizione |
---|---|
|
Numero univoco assegnato a un prompt in una conversazione. È possibile trovare l'ID prompt eseguendo una query sulla vista Questo è un parametro obbligatorio. |
|
Se Il valore predefinito di questo parametro è |
Esempio
EXEC DBMS_CLOUD_AI.DELETE_CONVERSATION_PROMPT('30C9DB6E-EA61-AFBA-E063-9C6D46644B92');
Risultato:
PL/SQL procedure successfully completed.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura DROP_CONVERSATION
La procedura rimuove la conversazione e tutti i prompt associati e le risposte associate. Una volta eliminato, il valore conversation_id
diventa non valido. Se una conversazione viene eliminata mentre è impostata nella sessione, viene cancellata automaticamente.
Sintassi
DBMS_CLOUD_AI.DROP_CONVERSATION(
conversation_id IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE
);
Parametri
Parametro | Descrizione |
---|---|
|
Numero univoco assegnato a una conversazione. Questo è un parametro obbligatorio. |
|
Se Il valore predefinito di questo parametro è |
Esempio
EXEC DBMS_CLOUD_AI.DROP_CONVERSATION('30C9DB6E-EA4D-AFBA-E063-9C6D46644B92');
Risultato:
PL/SQL procedure successfully completed.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Funzione SUMMARIZE
Sintassi
DBMS_CLOUD_AI.SUMMARIZE(
content IN CLOB DEFAULT NULL,
credential_name IN VARCHAR2 DEFAULT NULL,
location_uri IN VARCHAR2 DEFAULT NULL,
profile_name IN VARCHAR2 DEFAULT NULL,
user_prompt IN CLOB DEFAULT NULL,
params IN CLOB DEFAULT NULL
) RETURN CLOB;
Parametri
Parametro | Descrizione |
---|---|
|
Specifica il testo che si desidera riepilogare. Specificare Parametro non obbligatorio. |
|
Identifica l'oggetto credenziale utilizzato per l'autenticazione con l'area di memorizzazione degli oggetti. È necessario creare questa credenziale utilizzando
DBMS_CLOUD.CREATE_CREDENTIAL .
Nota
Utilizzare questo parametro solo quando si fornisce location_uri .
|
|
Fornisce l'URI in cui è memorizzato il testo o il percorso di un file locale. Specificare Ad esempio: Storage degli oggetti: File locale: |
|
Specifica il profilo AI da utilizzare. Se non si specifica un valore Il valore predefinito è NULL. |
|
Fornisce un prompt in linguaggio naturale per guidare o personalizzare il riepilogo. È possibile includere istruzioni aggiuntive oltre ai parametri di riepilogo. Ad esempio, Il riepilogo deve iniziare con ''Il riepilogo dell'articolo è: ''' Questo parametro non è obbligatorio. |
params |
Definisce i parametri di riepilogo. Vedere Parametri SUMMARIZE. |
Esempio
Vedere Esempio: selezione del sintetico AI da esplorare.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Parametri SUMMARIZE
Attributi
Nome attributo | Valore predefinito | Descrizione |
---|---|---|
|
0 |
Specifica il numero minimo approssimativo di parole che il riepilogo generato dovrebbe contenere. Nota
Questo parametro funge da linea guida anziché da limite rigoroso: la lunghezza effettiva del riepilogo può variare a seconda del contenuto fornito e dell'interpretazione del modello. |
|
200 |
Specifica il numero massimo approssimativo di parole che il riepilogo generato dovrebbe contenere.
Nota
Questo parametro funge da linea guida anziché da limite rigoroso, la lunghezza effettiva del riepilogo può variare a seconda del contenuto fornito e dell'interpretazione del modello. |
|
Paragrafo |
Specifica lo stile di formato per il riepilogo. Di seguito sono riportate le opzioni disponibili per il formato di riepilogo.
|
|
map_reduce |
Quando il testo supera il limite di token che l'LLM può elaborare, deve essere suddiviso in blocchi gestibili. Questo parametro consente di scegliere il metodo di elaborazione di questi chunk. Sono disponibili le opzioni riportate di seguito.
|
|
low |
Determina la frequenza con cui il riepilogo segue la formulazione originale dell'input. Controlla il grado in cui il modello estrae rispetto alla riformulazione. Le opzioni disponibili sono le seguenti:
Nota
Questa impostazione funge da guida per il funzionamento del sintetico del modello e non applica una regola rigorosa. Lo stile e la formulazione effettivi del sommario possono variare in base al contenuto di input e alle decisioni del modello. |
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Funzione GENERATE_SYNTHETIC_DATA
Di seguito è riportata la sintassi per generare dati sintetici per una singola tabella.
Sintassi
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
);
Di seguito è riportata la sintassi per generare dati sintetici per più tabelle.
DBMS_CLOUD_AI.GENERATE_SYNTHETIC_DATA(
profile_name IN VARCHAR2,
object_list IN CLOB,
params IN CLOB DEFAULT NULL
);
Se non si desidera che i dati di tabella o i documenti di ricerca vettoriale vengano inviati a un LLM, un utente con privilegi di amministratore può disabilitare tale accesso per tutti gli utenti del database specificato. Questa operazione disabilita l'azione narrate
.
Parametri
Parametro | Obbligatorio | Descrizione |
---|---|---|
|
Sì |
Profilo AI contenente le informazioni necessarie sul servizio LLM. Questa operazione può essere creata dalla CREATE_PROFILEprocedura. |
|
Sì | Specificare un nome di tabella per popolare i dati sintetici.
|
owner_name |
N |
Specificare l'utente del database proprietario dell'oggetto di riferimento. Se non viene fornito alcun proprietario specifico, per impostazione predefinita la procedura utilizza lo schema dell'utente che lo esegue. |
record_count |
N |
Il numero di record da generare sinteticamente. |
|
N | Informazioni aggiuntive che un utente può menzionare per generare dati sintetici. Ad esempio, per generare un record per una tabella denominata MOVIE con una colonna release_date , user_prompt può essere:
La data di uscita dei film dovrebbe essere nel 2019 |
|
N |
Attributi facoltativi forniti nel formato stringa dell'oggetto JSON per modificare il funzionamento di un'API. Vedere Parametri facoltativi. |
|
Sì | Utilizzare questo parametro per generare dati sintetici su più tabelle. Questo parametro contiene le informazioni sull'oggetto tabella insieme ai relativi argomenti e contiene gli stessi argomenti forniti nella singola tabella. Vedere object_list Parametri. |
Parametri facoltativi
Parametro | Tipo di dati valore | Value | Descrizione |
---|---|---|---|
|
Numero |
|
Specificare il numero di righe della tabella da utilizzare come esempio per guidare l'LLM nella generazione dei dati. Il valore 0 indica che non verrà utilizzata alcuna riga di esempio. Il valore predefinito è |
|
Boolean |
|
Abilita o disabilita l'uso delle informazioni sulle statistiche delle tabelle. Il valore predefinito è |
|
Stringa |
Valori validi:
|
Assegnare un valore di priorità che definisce il numero di richieste parallele inviate all'LLM per la generazione di dati sintetici. Le attività con una priorità più alta consumeranno più risorse del database e completeranno più velocemente. Il valore predefinito è
Il numero massimo di processi paralleli concorrenti utilizzati per la generazione di dati sintetici è limitato a 64. |
|
Boolean |
|
Abilita o disabilita l'invio di commenti all'LLM per guidare la generazione dei dati. Il valore predefinito è |
Parametri object_list
Parametro | Tipo di dati valore | Obbligatorio | Descrizione |
---|---|---|---|
|
Stringa |
Sì |
Specifica l'utente del database proprietario dell'oggetto a cui si fa riferimento. Se non viene fornito alcun proprietario specifico, per impostazione predefinita la procedura utilizzerà lo schema dell'utente che lo esegue. |
|
Stringa |
N |
Specificare un nome di tabella per popolare i dati sintetici. I privilegi SELECT e INSERT negli oggetti tabella sono necessari per l'utente che utilizza la tabella it.The e sono vuoti o contengono record.
|
|
Numero |
N |
Il numero di record da generare sinteticamente. Specificare un numero maggiore di 0. Fornire |
|
Numero |
N |
Percentuale del numero di record da generare sinteticamente. Specificare un numero maggiore di 0. Per un database di duplicazione dei metadati, in cui vengono conservati i metadati della tabella, incluse le statistiche, il parametro Fornire Quando si utilizza il parametro
record_count_percentage , il conteggio finale dei record nella tabella viene calcolato come segue.
|
|
Stringa | N | Uguale a user_prompt in Parametri. user_prompt è associato a un oggetto tabella specifico.
|
Esempi
Gli esempi riportati di seguito mostrano la funzione DBMS_CLOUD_AI.GENERATE_SYNTHETIC_DATA
per la generazione di dati sintetici per una singola tabella e più tabelle. Per un esempio completo e per visualizzare altri esempi, vedere Esempio: generazione di dati sintetici.
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.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura ENABLE_DATA_ACCESS
Questa procedura consente di inviare dati a LLM per le funzioni Select AI applicabili, ovvero il comportamento predefinito. Solo un amministratore può eseguire questa procedura.
Questa procedura controlla l'accesso AI dati per le funzionalità Select AI riportate di seguito.
- azione
narrate
- Retrieval-augmented generation (RAG)
- Generazione dati sintetici
Sintassi
DBMS_CLOUD_AI.ENABLE_DATA_ACCESS
();
Parametri
Per questa procedura non sono necessari parametri.
Esempio per abilitare l'accesso ai dati
BEGIN
DBMS_CLOUD_AI.ENABLE_DATA_ACCESS
();
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura DISABLE_DATA_ACCESS
Questa procedura disabilita l'invio di dati a LLM per le funzioni Select AI applicabili. Solo un amministratore può eseguire questa procedura.
Questa procedura limita le funzionalità Select AI riportate di seguito.
- azione
narrate
- Retrieval-augmented generation (RAG)
- Generazione dati sintetici
Sintassi
DBMS_CLOUD_AI.DISABLE_DATA_ACCESS
();
Parametri
Per questa procedura non sono necessari parametri.
Esempio di disabilitazione dell'accesso ai dati
BEGIN
DBMS_CLOUD_AI.DISABLE_DATA_ACCESS
();
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura CREATE_VECTOR_INDEX
Questa procedura crea un indice vettoriale nel database vettoriale specificato e lo popola con i dati di un'area di memorizzazione degli oggetti utilizzando un job scheduler asincrono.
Sintassi
PROCEDURE CREATE_VECTOR_INDEX(
index_name IN VARCHAR2,
attributes IN CLOB DEFAULT NULL,
status IN VARCHAR2 DEFAULT NULL,
description IN CLOB DEFAULT NULL
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome dell'indice vettoriale. Il nome dell'indice vettoriale deve seguire le regole di denominazione dell'identificativo Oracle SQL. La lunghezza massima del nome della memoria di vettore è di 125 caratteri. Questo è un parametro obbligatorio. |
|
Attributi personalizzati per l'indice vettoriale in JSON. Per visualizzare un elenco di parametri configurabili, vedere Attributi indice vettoriale. Il valore predefinito è NULL. |
status |
Stato dell'indice vettoriale. I possibili valori sono riportati di seguito.
Il valore predefinito è Disabilitato. |
|
Descrizione dell'indice vettoriale. Il valore predefinito è NULL. |
Esempio
L'esempio seguente mostra come creare un indice vettoriale e configurare gli attributi come parametri 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;
/
Procedura DROP_VECTOR_INDEX
Questa procedura rimuove un indice della memoria di vettore. In genere rimuove l'oggetto indice della memoria di vettore ed elimina la memoria di vettore. Se impostato su FALSE
, l'argomento include_data
garantisce che la procedura rimuova solo l'oggetto indice della memoria di vettore conservando la memoria di vettore.
Sintassi
PROCEDURE DROP_VECTOR_INDEX(
index_name IN VARCHAR2,
include_data IN BOOLEAN DEFAULT TRUE,
force IN BOOLEAN DEFAULT FALSE
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome dell'indice vettoriale. Il nome dell'indice vettoriale deve seguire le regole di denominazione dell'identificativo Oracle SQL. La lunghezza massima del nome della memoria di vettore è di 125 caratteri. Questo è un parametro obbligatorio. |
|
Indica se eliminare sia la memoria di vettore del cliente che l'indice vettoriale insieme all'oggetto indice vettoriale. Valori possibili:
Il valore predefinito è |
force |
Indica se ignorare gli errori che si verificano se l'indice vettoriale non esiste. Valori possibili:
Se impostato su Il valore predefinito è |
Esempio
BEGIN
DBMS_CLOUD_AI.DROP_VECTOR_INDEX(
index_name => 'MY_INDEX',
include_data => FALSE,
force => TRUE
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura DISABLE_VECTOR_INDEX
Questa procedura disabilita un oggetto indice vettoriale nel database corrente. Quando è disabilitato, un profilo AI non può utilizzare l'indice vettoriale e il sistema non carica i dati nella memoria di vettore poiché vengono aggiunti nuovi dati all'area di memorizzazione degli oggetti e non esegue l'indicizzazione, la ricerca o l'esecuzione di query in base all'indice.
Sintassi
DBMS_CLOUD_AI.DISABLE_VECTOR_INDEX
(
index_name IN VARCHAR2
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome dell'indice vettoriale. Il nome dell'indice vettoriale deve seguire le regole di denominazione dell'identificativo Oracle SQL. La lunghezza massima del nome della memoria di vettore è di 125 caratteri. Questo è un parametro obbligatorio. |
Esempio
È possibile disabilitare un indice vettoriale fornendo il nome dell'indice vettoriale.
BEGIN
DBMS_CLOUD_AI.DISABLE_VECTOR_INDEX
(index_name => 'MY_INDEX');
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura ENABLE_VECTOR_INDEX
Questa procedura abilita o attiva un oggetto indice vettoriale disabilitato in precedenza. In genere, quando si crea un indice vettoriale, per impostazione predefinita è abilitato in modo che il profilo AI possa utilizzarlo per eseguire l'indicizzazione e la ricerca.
Se abilitato, un indice vettoriale consente a un profilo AI di utilizzarlo per caricare nuovi dati da un'area di memorizzazione degli oggetti in una memoria di vettore a una frequenza di aggiornamento specificata dall'utente. È possibile specificare il parametro refresh_rate
mediante la lista di oggetti JSON. Per configurare gli attributi JSON, vedere Attributi indice vettoriale.
Sintassi
DBMS_CLOUD_AI.ENABLE_VECTOR_INDEX
(
index_name IN VARCHAR2
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome dell'indice vettoriale. Il nome dell'indice vettoriale deve seguire le regole di denominazione dell'identificativo Oracle SQL. La lunghezza massima del nome della memoria di vettore è di 125 caratteri. Questo è un parametro obbligatorio. |
Esempio
È possibile abilitare o attivare un indice vettoriale specificando il nome dell'indice vettoriale come indicato di seguito.
BEGIN
DBMS_CLOUD_AI.ENABLE_VECTOR_INDEX
(index_name => 'MY_INDEX');
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Procedura UPDATE_VECTOR_INDEX
Questa procedura aggiorna un indice di memoria di vettore esistente con un valore specificato dell'attributo indice di vettore. È sovraccaricato per accettare valori di attributi di vari tipi.
Sintassi
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
);
Parametri
Parametro | Descrizione |
---|---|
|
Nome dell'indice vettoriale. Il nome dell'indice vettoriale deve seguire le regole di denominazione dell'identificativo Oracle SQL. La lunghezza massima del nome della memoria di vettore è di 125 caratteri. Questo è un parametro obbligatorio. |
|
Nome degli attributi personalizzati specificati come parametri JSON nella procedura Impossibile modificare gli attributi seguenti:
Questo è un parametro obbligatorio. |
attribute_value |
Valore specificato dall'utente per Il valore predefinito è NULL. |
Esempio
BEGIN
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX
(
index_name => 'MY_INDEX',
attribute_name => 'object_storage_credential_name',
attribute_value => 'NEW_CRED'
);
END;
/
L'esempio seguente accetta il tipo NUMBER
come attribute_value
.
BEGIN
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX
(
index_name => 'MY_INDEX',
attribute_name => 'match_limit',
attribute_value => 10
);
END;
/
L'esempio seguente accetta il tipo VARCHAR2
come attribute_value
.
BEGIN
DBMS_CLOUD_AI.UPDATE_VECTOR_INDEX
(
index_name => 'MY_INDEX',
attribute_name => 'profile_name',
attribute_value => 'AI_PROF2'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI
Attributi indice vettore
Attributi
Nome attributo | Value | Obbligatorio | Descrizione |
---|---|---|---|
chunk_size |
1024 (predefinito)
|
N |
Dimensione del testo di chunk dei dati di input. Per i dati di testo, si intende il numero di caratteri. |
chunk_overlap |
128 (predefinito)
|
N |
Specifica la quantità di caratteri sovrapposti tra chunk di testo adiacenti. Questo attributo è utile per garantire la continuità e la precisione contestuali nell'elaborazione del testo consentendo sovrapposizioni tra segmenti, il che aiuta a prevenire la perdita di informazioni contestuali ai limiti del chunk. |
|
N/D | Sì |
Questo parametro specifica l'URI o le directory del file di origine e i file di origine. I pattern con caratteri jolly sono supportati sia per gli URI dei file di origine che per le directory. URI file di origine cloud: È possibile specificare un URI del file di origine per il bucket o la sottocartella. È possibile utilizzare i caratteri jolly per specificare le sottocartelle o i nomi file. Il carattere " Esempio con caratteri jolly: location_uri => 'https://objectstorage.my$region.oraclecloud.com/n/namespace-string/b/bucketname/o/year=????/month=??/*.csv Il formato degli URI dipende dal servizio di storage degli oggetti cloud in uso. Per i dettagli, vedere Formati URI DBMS_CLOUD. Directory: È possibile specificare una directory e un nome file. Il formato per specificare una directory è: È possibile utilizzare solo caratteri jolly per specificare i nomi dei file in una directory. Il carattere Usare le virgolette doppie per specificare un nome di directory con distinzione tra maiuscole e minuscole. Ad esempio: Per includere una virgoletta, utilizzare due virgolette. Ad esempio: I file in questa posizione possono essere documenti in formati quali PDF, DOC, JSON, XML o HTML. Vedere Formati di documento supportati. |
|
5 (predefinito)
|
N |
Specifica il numero massimo di risultati da restituire in una query di ricerca vettoriale, controllando la dimensione dell'output e migliorando l'efficienza delle operazioni di recupero dei dati. |
|
N/D | Sì |
Specifica il nome delle credenziali per l'accesso a uno storage degli oggetti. |
|
<vector_index_name>$VECPIPELINE |
N |
Specifica il nome della pipeline di caricamento dei dati dell'indice vettore. Questo attributo viene impostato automaticamente per l'indice vettoriale. Impossibile specificare o modificare. Il nome della pipeline può essere utilizzato per monitorare il caricamento dei dati dell'indice vettoriale utilizzando Monitoraggio e risoluzione dei problemi delle pipeline. |
|
N/D | Sì |
Nome del profilo AI utilizzato per incorporare i dati di origine e i prompt utente. |
|
1440 minuti (impostazione predefinita)
|
N |
Intervallo di aggiornamento dei dati nella memoria di vettore. L'unità è minuti. |
|
0 (predefinito)
|
N |
Definisce il livello minimo di somiglianza richiesto per due elementi da considerare una corrispondenza, utile per filtrare i risultati negli algoritmi di corrispondenza per garantire la pertinenza. |
|
Stringa corrispondente a uno dei valori specificati nella descrizione. |
N |
Specifica il tipo di calcolo della distanza utilizzato per confrontare i vettori in un database, determinando la modalità di quantificazione della somiglianza tra gli elementi. Valori validi per Oracle 23ai:
|
|
|
Sì |
Specifica il nome del provider che gestisce e funge da memoria di vettore. |
|
N/D | N |
Specifica il numero di elementi in ciascun vettore all'interno della memoria di vettore, definendo le dimensioni e la struttura della rappresentazione dei dati. |
|
|
N |
Specifica il nome della tabella o della raccolta in cui memorizzare le integrazioni vettoriali e i dati chunked. |
BEGIN
DBMS_CLOUD_AI.CREATE_VECTOR_INDEX
(
index_name => 'MY_INDEX',
attributes => '{"vector_db_provider": "oracle",
"location": "https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/my_namespace/my_bucket/my_data_folder",
"object_storage_credential_name": "OCI_CRED",
"profile_name": "OPENAI_ORACLE",
"vector_dimension": 1024,
"vector_distance_metric": "cosine",
"chunk_overlap":128,
"chunk_size":1024
}');
END;
/
/
In questo esempio viene specificato un pattern di caratteri jolly (*) nell'URI dello storage degli oggetti come parametro location
. Carica tutti i file CSV dall'URI dello storage degli oggetti.
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.myregion.oraclecloud.com/n/my$namespace/b/bucketname/o/year=????/month=??/file*.csv)',
'object_storage_credential_name' value 'OS_CRED',
'chunk_size' value 2048,
'chunk_overlap' value 256,
'refresh_rate' value 720)
);
END;
/
In questo esempio vengono specificati gli oggetti directory nel parametro location
utilizzando un pattern con caratteri jolly. Carica tutti i file CSV nella directory MY_DIR
.
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 'MY_DIR:*.csv',
'object_storage_credential_name' value 'OS_CRED',
'chunk_size' value 2048,
'chunk_overlap' value 256,
'refresh_rate' value 720)
);
END;
/
In questo esempio viene specificato un oggetto directory con distinzione tra maiuscole e minuscole nel parametro location
utilizzando un pattern con caratteri jolly. Carica tutti i file CSV nella directory My_Dir
.
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 '"My_Dir":*.csv',
'object_storage_credential_name' value 'OS_CRED',
'chunk_size' value 2048,
'chunk_overlap' value 256,
'refresh_rate' value 720)
);
END;
/
In questo esempio viene specificato un oggetto directory con distinzione tra maiuscole e minuscole nel parametro location
utilizzando un pattern con caratteri jolly (*). Carica tutti i file presenti nella directory My_Dir
.
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 '"My_Dir":*',
'object_storage_credential_name' value 'OS_CRED',
'chunk_size' value 2048,
'chunk_overlap' value 256,
'refresh_rate' value 720)
);
END;
/
In questo esempio viene specificato un oggetto directory e viene utilizzato un prefisso nome file, ad esempio test, nel parametro location
. Carica tutti i file nella directory MY_DIR
i cui nomi iniziano con test.
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 'MY_DIR:test*',
'object_storage_credential_name' value 'OS_CRED',
'chunk_size' value 2048,
'chunk_overlap' value 256,
'refresh_rate' value 720)
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_AI