Skip to content

Commit f730dfe

Browse files
committed
add SQL file back
1 parent 0179353 commit f730dfe

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
-- PL/SQL code block to Generate AI Text from Oracle Generative AI service
2+
-- Author: Madhusudhan Rao
3+
4+
DECLARE
5+
6+
l_genai_rest_url VARCHAR2(4000) := 'https://inference.generativeai.us-chicago-1.oci.oraclecloud.com/20231130/actions/generateText';
7+
l_web_cred CONSTANT VARCHAR2(50) := '<Your Web Credentials>';
8+
l_input varchar2(4000) := :P91_AI_INPUT; -- Change Input page number as per your page number in APEX page.
9+
l_response_json CLOB;
10+
l_text varchar2(4000);
11+
12+
l_ocigabody varchar2(1000) := '{
13+
"inferenceRequest": {
14+
"runtimeType": "COHERE",
15+
"prompt": "'||l_input||'",
16+
"maxTokens": 500,
17+
"numGenerations": 1,
18+
"returnLikelihoods": "GENERATION",
19+
"isStream": false
20+
},
21+
"servingMode": {
22+
"servingType": "ON_DEMAND",
23+
"modelId": "cohere.command-light"
24+
},
25+
"compartmentId": "<Your compartment OCID>"
26+
}';
27+
28+
CURSOR C1 IS
29+
SELECT jt.*
30+
FROM JSON_TABLE(l_response_json, '$'
31+
COLUMNS (text VARCHAR2(4000) PATH '$.inferenceResponse[0].generatedTexts[0].text' )) jt;
32+
33+
BEGIN
34+
35+
if l_input is not null then
36+
37+
apex_web_service.g_request_headers.DELETE;
38+
apex_web_service.g_request_headers(1).name := 'Content-Type';
39+
apex_web_service.g_request_headers(1).value := 'application/json';
40+
41+
l_response_json := apex_web_service.make_rest_request
42+
(p_url => l_genai_rest_url,
43+
p_http_method => 'POST',
44+
p_body => l_ocigabody,
45+
p_credential_static_id => l_web_cred);
46+
47+
For row_1 In C1 Loop
48+
l_text := row_1.text;
49+
:P91_AI_OUTPUT := l_text;
50+
End Loop;
51+
52+
end if;
53+
54+
END;

0 commit comments

Comments
 (0)