create or replace FUNCTION fnc_26ai_html(p_query VARCHAR2, p_top_k IN NUMBER default 20, p_credential in varchar2 default 'OCI_CRED' ) RETURN CLOB IS /* Criado por: fernando.leal@oracle.com Data: Oct/2025 Objetivo: demonstrar casos de uso do Oracle AI Database 26ai v1 - geracao de codigo HTML a partir de dados obtidos com SelectAI - leal begin dbms_cloud_ai.create_profile( profile_name => 'PROF_26AI_HTML_V1', attributes => '{"provider": "oci", "credential_name": "OCI_CRED", "oci_compartment_id": "ocid1.compartment.oc1..aaaaaaaakvd4bq4b3n7yn3gjjqzfhsl62dec44tjvi2iwa3sugw5frgfpzea", "region": "us-chicago-1", "model": "meta.llama-4-maverick-17b-128e-instruct-fp8", "oci_apiformat": "GENERIC", "object_list": [ {"owner": "AICHAT1", "name":"TB_26AI_HTML"} ], "comments": true, "annotations": true, "temperature": 0.1 }' ); end; */ v_pre_prompt clob; v_prompt clob; params_genai CLOB; output CLOB; v_response clob; v_response_sql clob; v_pre_prompt2 clob; v_select_ai_preprompt varchar2(4000) := ' . Não adicione nenhum filtro de data a menos que seja solicitado.'; v_select_ai_profile varchar2(20) := 'PROF_26AI_HTML_V1'; -- -- Modo debug -- v_select_ai_debug_flag varchar2(1) := 'N'; BEGIN begin SELECT DBMS_CLOUD_AI.GENERATE(prompt => p_query || v_select_ai_preprompt , profile_name => v_select_ai_profile, action => 'runsql') response into v_response; if v_select_ai_debug_flag = 'Y' then SELECT DBMS_CLOUD_AI.GENERATE(prompt => p_query || v_select_ai_preprompt , profile_name => v_select_ai_profile, action => 'showsql') response into v_response_sql; end if; -- fim v_select_ai_debug_flag if v_response like 'Sorry%' or v_response like 'No data found%' then v_response := '--' ; end if; exception when others then v_response := '-' ; end; -- -- pre requisito sao as credenciais definidas com nome OCI_CRED criadas a partir de dbms_vector.create_credential -- -- para montar request body abaixo: https://docs.oracle.com/en-us/iaas/api/#/en/generative-ai-inference/20231130/datatypes/GenerateTextDetails -- params_genai := '{ "provider" : "ocigenai", "credential_name" : "' || p_credential || '", "url" : "https://inference.generativeai.us-chicago-1.oci.oraclecloud.com/20231130/actions/chat", "model": "meta.llama-4-maverick-17b-128e-instruct-fp8"}'; -- -- augmented prompt atraves do vetor criado no banco v_pre_prompt := 'Você é um Desenvolvedor Front-End especialista em HTML5 semântico e acessível (WCAG). Seu objetivo é criar estruturas HTML que sejam bem organizadas, lógicas e otimizadas para motores de busca (SEO). #### REGRA: somente o HTML deve ser retornado. #### EXEMPLO: Data Dashboard

Data Dashboard

Overview of Data

Total Transações

63,459,400

Modalidades

5

Mês/Ano

9

Total Meses

9

ID MES_ANO MODAL TRANSACOES
1 12025 BRT 642,600
2 12025 Ônibus 1,800,000
#### TAREFA 1: GERAÇÃO DE CÓDIGO HTML #### Se a entrada do usuário for uma solicitação para criar um dashboard, sua saída DEVE seguir o seguinte formato: - A saída conterá APENAS o código HTML. - Crie insigths dos dados, exiba de forma com foco na inovação para surpreender o usuário. - Não inclua explicações, texto introdutório, saudações ou blocos de Markdown como ```html. - O código deve ser bem formatado, com indentação clara e usar tags semânticas (como
,
,