
{"id":6752,"date":"2024-08-07T07:00:00","date_gmt":"2024-08-07T06:00:00","guid":{"rendered":"https:\/\/dasini.net\/blog\/?p=6752"},"modified":"2024-08-13T09:10:34","modified_gmt":"2024-08-13T08:10:34","slug":"heatwave-genai-your-ai-powered-content-creation-partner","status":"publish","type":"post","link":"https:\/\/dasini.net\/blog\/2024\/08\/07\/heatwave-genai-your-ai-powered-content-creation-partner\/","title":{"rendered":"HeatWave GenAI: Your AI-Powered Content Creation Partner"},"content":{"rendered":"\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Generative_artificial_intelligence\" target=\"_blank\" rel=\"noopener\" title=\"Generative AI\"><strong>Generative artificial intelligence<\/strong><\/a> (GenAI) is reshaping the content creation landscape. By training on vast datasets, these \u00ab\u00a0<em>intelligent<\/em>\u00a0\u00bb systems can produce new, human-quality content across a multitude of domains. <\/p>\n\n\n\n<p><strong>Oracle&rsquo;s <a href=\"https:\/\/www.oracle.com\/heatwave\/genai\/\" target=\"_blank\" rel=\"noopener\" title=\"HeatWave GenAI\">HeatWave GenAI<\/a><\/strong> (starting with version 9.0.1) is at the forefront of this revolution, offering an integrated platform that combines in-database <a href=\"https:\/\/en.wikipedia.org\/wiki\/Large_language_model\" target=\"_blank\" rel=\"noopener\" title=\"large language models\">large language models<\/a> (LLMs), <a href=\"https:\/\/en.wikipedia.org\/wiki\/Vector_database\" target=\"_blank\" rel=\"noopener\" title=\"vector stores\">vector stores<\/a>, and scale-out vector processing to streamline content generation. <\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69e8eb38200c0&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69e8eb38200c0\" class=\"wp-block-image size-large wp-lightbox-container\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"415\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=800%2C415&#038;ssl=1\" alt=\"Data processing with HeatWave\" class=\"wp-image-6723\" srcset=\"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=800%2C415&amp;ssl=1 800w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=300%2C156&amp;ssl=1 300w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=768%2C399&amp;ssl=1 768w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=1536%2C797&amp;ssl=1 1536w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=2048%2C1063&amp;ssl=1 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Agrandir\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<p>This article explores how HeatWave GenAI is empowering businesses to produce high-quality content rapidly and effectively, making it an indispensable tool for industries demanding speed, accuracy, and security.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>HeatWave GenAI brings LLMs directly into your database, enabling powerful AI capabilities and natural language processing.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69e8eb3820614&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69e8eb3820614\" class=\"aligncenter size-large wp-lightbox-container\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"129\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_generation-1.png?resize=800%2C129&#038;ssl=1\" alt=\"\" class=\"wp-image-6797\" srcset=\"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_generation-1.png?resize=800%2C129&amp;ssl=1 800w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_generation-1.png?resize=300%2C48&amp;ssl=1 300w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_generation-1.png?resize=768%2C124&amp;ssl=1 768w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_generation-1.png?resize=1536%2C248&amp;ssl=1 1536w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_generation-1.png?w=1661&amp;ssl=1 1661w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Agrandir\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\"><em>HeatWave GenAI Content Generation<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>The key benefits of such architecture are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Effortless LLM Integration<\/strong>: Simple SQL queries unlock AI power.<\/li>\n\n\n\n<li><strong>Seamless Database Integration<\/strong>: No complex external connections.<\/li>\n\n\n\n<li><strong>Simplified Architecture<\/strong>: Easy management and scalability.<\/li>\n\n\n\n<li><strong>Scalable Performance<\/strong>: Handles large datasets and high traffic.<\/li>\n\n\n\n<li><strong>Always Up-to-Date Data<\/strong>: In-database LLMs ensure data freshness.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Generate text-based content using HeatWave GenAI is a very simple 4 steps process:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Load the LLM in HeatWave memory<\/li>\n\n\n\n<li>Define your prompt in natural language<\/li>\n\n\n\n<li>Inference setting<\/li>\n\n\n\n<li>Generate text-based content using HeatWave GenAI<\/li>\n<\/ol>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Load the LLM in HeatWave memory<\/h3>\n\n\n\n<p>Use the <a href=\"https:\/\/dev.mysql.com\/doc\/heatwave\/en\/mys-hwaml-ml-model-load.html\" target=\"_blank\" rel=\"noopener\" title=\"ML_MODEL_LOAD\"><strong>ML_MODEL_LOAD<\/strong><\/a> stored procedure: <em>CALL sys.ML_MODEL_LOAD(&lsquo;&lt;LLM&gt;&rsquo;, NULL);<\/em><br>The model needs to be loaded only once before generating text. It remains accessible within HeatWave as long as the service is running. This means you don&rsquo;t have to reload the model for each text generation.<\/p>\n\n\n\n<p>At the time of writing (August 2024) the available models are <strong><a href=\"https:\/\/mistral.ai\/news\/announcing-mistral-7b\/\" target=\"_blank\" rel=\"noopener\" title=\"Mistral 7B\">Mistral 7B<\/a><\/strong> (<strong><em>mistral-7b-instruct-v1<\/em><\/strong>) and <strong><a href=\"https:\/\/llama.meta.com\/llama2\/\" target=\"_blank\" rel=\"noopener\" title=\"Llama 2\">Llama 2<\/a><\/strong> (<strong><em>llama2-7b-v1<\/em><\/strong>).<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"SQL\" class=\"language-SQL\">-- Load Mistral 7B model\nmysql&gt;\nCALL sys.ML_MODEL_LOAD('mistral-7b-instruct-v1', NULL);<\/code><\/pre>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Define your prompt in natural language<\/h3>\n\n\n\n<p>Like with you prefered programming language, it is more convenient to use a session variable: SET @userPrompt=\u00a0\u00bbMy prompt\u00a0\u00bb;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"SQL\" class=\"language-SQL\">mysql&gt;\nSET @userPrompt=\"Explain what is Generative Artificial intelligence in one sentence\";<\/code><\/pre>\n\n\n\n<p>or whatever your needs:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"SQL\" class=\"language-SQL\">SET @userPrompt=\"How to connect to MySQL using Python 3?\";\nSET @userPrompt=\"Write a short email to schedule a meeting.\";\n...<\/code><\/pre>\n\n\n\n<p>As you likely know, the quality of the prompt significantly impacts the generated text.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Inference setting<\/h3>\n\n\n\n<p>Here, you select the desired task, choose the appropriate model, and fine-tune parameters to influence the output.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"SQL\" class=\"language-SQL\">mysql&gt; \n-- Inference setting\nSET @inferenceSetup  = '{\"task\": \"generation\", \"model_id\": \"mistral-7b-instruct-v1\"}';<\/code><\/pre>\n\n\n\n<p>For simplicity, this example uses default parameters. A more complex example is provided below.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Generate text-based content using HeatWave GenAI<\/h3>\n\n\n\n<p>Last step is to pass the user prompt to the LLM using the <strong>ML_GENERATE<\/strong> function. The second parameter of this function is a JSON object that allows you to specify the task, the LLM, and some tuning options like the temperature.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"SQL\" class=\"language-SQL\">mysql&gt;\nSELECT sys.ML_GENERATE(@userPrompt, @inferenceSetup)\\G<\/code><\/pre>\n\n\n\n<p>The output in a JSON that is not really nice to read. <br>But SQL is very powerful and you can easily improve the output using  <a href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.4\/en\/json-table-functions.html\" target=\"_blank\" rel=\"noopener\" title=\"JSON_TABLE\">JSON_TABLE<\/a> function.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"SQL\" class=\"language-SQL\">mysql&gt;\nSELECT GenContent AS GenContent FROM ( SELECT sys.ML_GENERATE(@userPrompt, @inferenceSetup) AS textGen ) AS dt INNER JOIN JSON_TABLE ( dt.textGen, \"$\" COLUMNS( GenContent text PATH \"$.text\") ) AS jt \\G<\/code><\/pre>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69e8eb3820df6&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69e8eb3820df6\" class=\"aligncenter size-large wp-lightbox-container\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"418\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_02.gif?resize=800%2C418&#038;ssl=1\" alt=\"\" class=\"wp-image-6754\" srcset=\"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_02.gif?resize=800%2C418&amp;ssl=1 800w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_02.gif?resize=300%2C157&amp;ssl=1 300w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_02.gif?resize=768%2C402&amp;ssl=1 768w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_02.gif?resize=1536%2C803&amp;ssl=1 1536w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_02.gif?resize=2048%2C1071&amp;ssl=1 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Agrandir\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\"><em>HeatWave GenAI Content Generation<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>You can influence LLM outputs by adjusting parameters like temperature, number of tokens, stop sequences, top_k, top_p, etc&#8230; <\/p>\n\n\n\n<p>Text generation options include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>task<\/li>\n\n\n\n<li>model_id<\/li>\n\n\n\n<li>temperature<\/li>\n\n\n\n<li>max_tokens<\/li>\n\n\n\n<li>top_k<\/li>\n\n\n\n<li>top_p<\/li>\n\n\n\n<li>repeat_penalty<\/li>\n\n\n\n<li>stop_sequences<\/li>\n\n\n\n<li>token_likelihoods<\/li>\n\n\n\n<li>echo<\/li>\n\n\n\n<li>logprobs<\/li>\n\n\n\n<li>stream<\/li>\n\n\n\n<li>context<\/li>\n<\/ul>\n\n\n\n<p><br>Below is a quick example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"SQL\" class=\"language-SQL\">mysql&gt;\n-- Define your prompt in natural language\nSET @userPrompt=\"Explain what is Generative Artificial intelligence in one sentence\";\n\n\n-- Inference setting\nSET @inferenceSetup  = '{\"task\": \"generation\", \"temperature\": 3, \"repeat_penalty\": 1, \"top_k\": 1, \"max_tokens\": 500, \"model_id\": \"mistral-7b-instruct-v1\"}';\n\n\n-- Generate text-based content\nSELECT GenContent AS GenContent FROM ( SELECT sys.ML_GENERATE(@userPrompt, @inferenceSetup) AS textGen ) AS dt INNER JOIN JSON_TABLE ( dt.textGen, \"$\" COLUMNS( GenContent text PATH \"$.text\") ) AS jt \\G\n*************************** 1. row ***************************\nGenContent:  Generative Artificial Intelligence (AI) refers to a subset of AI that involves the creation of new, original content, such as images, music, or text, through the use of algorithms and machine learning models that can learn from and generate data.<\/code><\/pre>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;69e8eb382139f&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"69e8eb382139f\" class=\"wp-block-image size-large wp-lightbox-container\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"432\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_03.gif?resize=800%2C432&#038;ssl=1\" alt=\"HeatWave GenAI Content Generation with fine tuning\" class=\"wp-image-6814\" srcset=\"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_03.gif?resize=800%2C432&amp;ssl=1 800w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_03.gif?resize=300%2C162&amp;ssl=1 300w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_03.gif?resize=768%2C415&amp;ssl=1 768w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_03.gif?resize=1536%2C829&amp;ssl=1 1536w, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/08\/HeatWave_GenAI_Content_Generation_03.gif?resize=2048%2C1106&amp;ssl=1 2048w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Agrandir\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\"><em>HeatWave GenAI Content Generation with fine tuning<\/em><\/figcaption><\/figure>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>And that&rsquo;s all!<br>As you can see, it&rsquo;s very <strong>simple and easy with HeatWave GenAI<\/strong> to create some exciting GenAI based applications like:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Enhancing Customer Experience<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Intelligent Chatbots:<\/strong> Provide real-time, personalized customer support, answering queries, and resolving issues efficiently.<\/li>\n\n\n\n<li><strong>Sentiment Analysis:<\/strong> Understand customer feedback, identify trends, and tailor responses accordingly.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Boosting Content Creation<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Content Generation:<\/strong> Create engaging blog articles, product descriptions, and social media posts at scale.<\/li>\n\n\n\n<li><strong>Personalized Recommendations:<\/strong> Offer tailored product suggestions based on customer preferences and behavior.<\/li>\n\n\n\n<li><strong>Social Media Management:<\/strong> Generate engaging content, schedule posts, and monitor performance.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Driving Business Insights<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Text Classification:<\/strong> Categorize vast amounts of text data for efficient analysis and decision-making.<\/li>\n\n\n\n<li><strong>Market Research:<\/strong> Analyze customer sentiment, identify trends, and gain competitive insights.<\/li>\n<\/ul>\n\n\n\n<p>Generative AI is a game-changer, offering endless possibilities to improve efficiency, enhance customer experiences, and drive business growth.<\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-embed aligncenter is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"HeatWave GenAI: Your AI-Powered Content Creation Partner\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/NC9RpOcrt5I?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\"><em>HeatWave GenAI: Your AI-Powered Content Creation Partner demo<\/em><\/figcaption><\/figure>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Moving forward<\/h3>\n\n\n\n<p>While the examples provided offer a glimpse of generative AI&rsquo;s potential, it&rsquo;s important to note that significant improvements can be achieved through advanced <span style=\"text-decoration: underline;\">prompt engineering<\/span> techniques. Exploring these techniques in depth is beyond the scope of this article.<\/p>\n\n\n\n<p>In upcoming articles, we&rsquo;ll delve deeper into HeatWave GenAI&rsquo;s capabilities, showcasing <a href=\"https:\/\/dasini.net\/blog\/2024\/08\/13\/in-database-llms-for-efficient-text-translation-with-heatwave-genai\/\" target=\"_blank\" rel=\"noopener\" title=\"In-Database LLMs for Efficient Text Translation with HeatWave GenAI\">its application in text translation<\/a> and Retrieval Augmented Generation (RAG).<\/p>\n\n\n\n<p>Stay tuned for more insights!<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><a href=\"https:\/\/www.linkedin.com\/groups\/12524512\/\" target=\"_blank\" rel=\"noopener\" title=\"Olivier DASINI on Linkedin\">Follow me on Linkedin<\/a><\/p>\n\n\n\n<p>Watch my videos on my <a href=\"https:\/\/www.youtube.com\/channel\/UC12TulyJsJZHoCmby3Nm3WQ\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Olivier's MySQL Channel\">YouTube channel<\/a> and <a href=\"https:\/\/www.youtube.com\/channel\/UC12TulyJsJZHoCmby3Nm3WQ\/?sub_confirmation=1\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Subscribe\">subscribe<\/a>.<\/p>\n\n\n\n<p>My <a href=\"https:\/\/www.slideshare.net\/freshdaz\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Olivier DASINI on Slideshare\">Slideshare account<\/a>.<\/p>\n\n\n\n<p>My <a href=\"https:\/\/speakerdeck.com\/freshdaz\/\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Olivier DASINI on Speaker Deck\">Speaker Deck account<\/a>.<\/p>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"has-vivid-red-color has-text-color\"><strong>Thanks for using HeatWave &amp; MySQL!<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Generative artificial intelligence (GenAI) is reshaping the content creation landscape. By training on vast datasets, these \u00ab\u00a0intelligent\u00a0\u00bb systems can produce new, human-quality content across a multitude of domains.<\/p>\n<p>Oracle&rsquo;s HeatWave GenAI (starting with version 9.0.1) is at the forefront of this revolution, offering an integrated platform that combines in-database large language models (LLMs), vector stores, and scale-out vector processing to streamline content generation.<br \/>\nThis article explores how HeatWave GenAI is empowering businesses to produce high-quality content rapidly and effectively, making it an indispensable tool for industries demanding speed, accuracy, and security.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"footnotes":""},"categories":[1702,1694,203],"tags":[1697],"class_list":["post-6752","post","type-post","status-publish","format-standard","hentry","category-ai","category-heatwave-en","category-mysql-en","tag-heatwave-fr-en"],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9LfWW-1KU","jetpack-related-posts":[{"id":7363,"url":"https:\/\/dasini.net\/blog\/2025\/03\/13\/build-an-ai-powered-search-engine-with-heatwave-genai-part-1\/","url_meta":{"origin":6752,"position":0},"title":"Build an AI-Powered Search Engine with HeatWave GenAI (part 1)","author":"Olivier DASINI","date":"13 mars 2025","format":false,"excerpt":"Discover how to build an AI-powered search engine for your applications using HeatWave GenAI. This approach leverages large language models (LLMs) for semantic search, offering a smarter alternative to traditional SQL and full-text search methods. By using embeddings\u2014vector representations of words\u2014the search engine understands context and intent, delivering more relevant\u2026","rel":"","context":"Dans &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/dasini.net\/blog\/category\/ai\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/03\/HW_GenaI_search_engine.gif?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/03\/HW_GenaI_search_engine.gif?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/03\/HW_GenaI_search_engine.gif?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/03\/HW_GenaI_search_engine.gif?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/03\/HW_GenaI_search_engine.gif?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/03\/HW_GenaI_search_engine.gif?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":7566,"url":"https:\/\/dasini.net\/blog\/2025\/04\/08\/build-an-ai-powered-search-engine-with-heatwave-genai-part-2\/","url_meta":{"origin":6752,"position":1},"title":"Build an AI-Powered Search Engine with HeatWave GenAI (part 2)","author":"Olivier DASINI","date":"8 avril 2025","format":false,"excerpt":"In this part 2 we focused on enhancing search relevance. We introduced reranking techniques using weighted distances of titles and excerpts to refine initial search results. Then we delved into leveraging article summaries for more effective semantic search, utilizing HeatWave's capability to execute JavaScript stored procedures for sanitizing HTML content\u2026","rel":"","context":"Dans &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/dasini.net\/blog\/category\/ai\/"},"img":{"alt_text":"Similarity search across title, excerpt and summary","src":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/04\/HWGenAIsearchEngine2.gif?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/04\/HWGenAIsearchEngine2.gif?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/04\/HWGenAIsearchEngine2.gif?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/04\/HWGenAIsearchEngine2.gif?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/04\/HWGenAIsearchEngine2.gif?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/04\/HWGenAIsearchEngine2.gif?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":7711,"url":"https:\/\/dasini.net\/blog\/2025\/04\/15\/build-an-ai-powered-search-engine-with-heatwave-genai-part-3\/","url_meta":{"origin":6752,"position":2},"title":"Build an AI-Powered Search Engine with HeatWave GenAI (part 3)","author":"Olivier DASINI","date":"15 avril 2025","format":false,"excerpt":"In this latest post, the final part of my series on building an AI-powered search engine with HeatWave GenAI, I dive into enhancing AI-powered search by embedding full article content into HeatWave. By cleaning HTML, chunking content, generating embeddings, and running semantic similarity searches directly within HeatWave, we unlock highly\u2026","rel":"","context":"Dans &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/dasini.net\/blog\/category\/ai\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":7058,"url":"https:\/\/dasini.net\/blog\/2024\/12\/10\/simplifying-ai-development-a-practical-guide-to-heatwave-genais-rag-vector-store-features\/","url_meta":{"origin":6752,"position":3},"title":"Simplifying AI Development: A Practical Guide to HeatWave GenAI\u2019s RAG &amp; Vector Store Features","author":"Olivier DASINI","date":"10 d\u00e9cembre 2024","format":false,"excerpt":"This tutorial explores HeatWave GenAI, a cloud service that simplifies interacting with unstructured data using natural language. It combines large language models, vector stores, and SQL queries to enable tasks like content generation, chatbot, and retrieval-augmented generation (RAG). The focus is on RAG and how HeatWave GenAI\u2019s architecture helps users\u2026","rel":"","context":"Dans &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/dasini.net\/blog\/category\/ai\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/12\/HeatWave_chatbot3.gif?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/12\/HeatWave_chatbot3.gif?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/12\/HeatWave_chatbot3.gif?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/12\/HeatWave_chatbot3.gif?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/12\/HeatWave_chatbot3.gif?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/12\/HeatWave_chatbot3.gif?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":7252,"url":"https:\/\/dasini.net\/blog\/2025\/02\/11\/building-an-interactive-llm-chatbot-with-heatwave-using-python\/","url_meta":{"origin":6752,"position":4},"title":"Building an Interactive LLM Chatbot with  HeatWave Using Python","author":"Olivier DASINI","date":"11 f\u00e9vrier 2025","format":false,"excerpt":"AI-powered applications require robust and scalable database solutions to manage and process large amounts of data efficiently. HeatWave is an excellent choice for such applications, providing high-performance OLTP, analytics, machine learning and generative artificial intelligence capabilities. In this article, we will explore a Python 3 script that connects to an\u2026","rel":"","context":"Dans &quot;HeatWave&quot;","block_context":{"text":"HeatWave","link":"https:\/\/dasini.net\/blog\/category\/heatwave-en\/"},"img":{"alt_text":"simple but robust chatbot system leveraging HeatWave GenAI and its in-database Mistral LLM","src":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/02\/HW-Chat-mistral-7b.gif?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/02\/HW-Chat-mistral-7b.gif?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/02\/HW-Chat-mistral-7b.gif?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/02\/HW-Chat-mistral-7b.gif?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2025\/02\/HW-Chat-mistral-7b.gif?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":6825,"url":"https:\/\/dasini.net\/blog\/2024\/08\/13\/in-database-llms-for-efficient-text-translation-with-heatwave-genai\/","url_meta":{"origin":6752,"position":5},"title":"In-Database LLMs for Efficient Text Translation with HeatWave GenAI","author":"Olivier DASINI","date":"13 ao\u00fbt 2024","format":false,"excerpt":"While HeatWave GenAI excels at generating English text, its capabilities extend to translation as well. Let's explore how we can effectively translate English content into French using this powerful tool.","rel":"","context":"Dans &quot;AI&quot;","block_context":{"text":"AI","link":"https:\/\/dasini.net\/blog\/category\/ai\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/dasini.net\/blog\/wp-content\/uploads\/2024\/07\/hw_product_image.png?resize=1400%2C800&ssl=1 4x"},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/posts\/6752","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/comments?post=6752"}],"version-history":[{"count":70,"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/posts\/6752\/revisions"}],"predecessor-version":[{"id":6950,"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/posts\/6752\/revisions\/6950"}],"wp:attachment":[{"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/media?parent=6752"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/categories?post=6752"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dasini.net\/blog\/wp-json\/wp\/v2\/tags?post=6752"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}