Posts

Showing posts from February, 2010

Visualising AI Embeddings in APEX

Image
" To deal with hyper-planes in a 14-dimensional space, visualize a 3-D space and say 'fourteen' to yourself very loudly. Everyone does it."     - Geoffrey Hinton , 2018 Turing Award winner. Within the wonderful world of  Generative AI , one concept that is all the rage is RAG, or  Retrieval Augmented Generation , which is an  AI framework that combines the strengths of traditional information retrieval systems (such as databases) with the capabilities of generative large language models (LLM s) . RAG's goal is to improve the accuracy, relevance, and timeliness of information  generation  - such as  documents, text and images -  by optimizing LLM output.  When creating a RAG system, it’s essential to store information in a format that a LLM can retrieve. This is where  data is converted into embeddings through a pro...

APEX EA2 update

To see the new style Plugins use this link to the Plugins Application provided by Patrick Wolf: Plugins Application I've managed to copy the syntax used in some of these plugins to update those on my Online Store demo. I've still need to upload some images and it looks like there are a few issue with my schema, but generally the app appears to be working.  So, in general it looks like EA1 apps can be imported into EA2 with little need to change anything.

APEX EA2 is now available

The good news is that it appears that applications exported from Early Adopter Phase 1 import ok in the new EA2. The bad news is that plugins have had a bit of an overhaul. It looks like the PL/SQL code used to construct a plugin now uses functions rather than procedures. So back to the drawing board for some of my online store demo plugins! Can anyone from the team shed some light on what I do with 'apex_plugin.t_page_item_render_result' or 'apex_plugin.t_page_item_validation_result', please?

Static Region Id's and Ajax Fun

More Online Store demo shenanigans for you. A bit dry this one I'm afraid. A couple of days back I decided to export/import my Online Store demo, and whilst viewing the new imported version of the application found it to be completely kaput.  It didn't take long to realise that I had made the mistake of hard coding region id's in some of the Javascript.  Well, I thought this will be easy to fix as I can just utilise Static id's instead in my regions and in place of #REGION_ID# in templates.  So far, so good, but then I realised that the Ajax refreshing of the Products and Shopping Basket regions is done using calls to html_PPR_Report_Page and $a_report, and both these require the internal numeric region id as a parameter.  As far as I know neither recognises the Static id (please correct me if I am wrong).  Doh! I get around this by creating hidden items (i.e. P1_PRODUCT_REGION_ID) based on a SQL query that uses the Static id to get the 'real' internal num...

jQuery Zooming

Many online stores offer potential buyers the choice to view large version of images of products, but increasingly there is a tendancy to allow 'zooming' in on products to see more detail.  Amazon allows this with many of its products, for instance. There is a plugin for jQuery which does something similar (ish) which I've add to my store demo .  Click on the product name for one of the products, I suggest the iPad or iPod Nano, to view this in action.  In the overlay window, hover over the image and you will see how this works.  Well this nifty little plugin is called jqZoom , but I also found a non-open source alternative that doesn't use jQuery called Magiczoom, which is used on a number of commercial sites. You will notice that a few of the images are missing from the demo.  With jqZoom, you need to store small and large versions of each product image, although the large image only gets loaded when you hover over the small image.  Each image is s...

Well Fancy that!

I came across a jQuery plugin called FancyBox for creating nice "floating" overlay windows, which I have incorporated into my online store demo .  Just click on the product name and it will display the details in a modal window.  It doesn't currently work in IE 6, although I'm not sure about later versions, so you're best viewing it in FF.

Range Slider Plugin

I've spent a little time updating my online shop demo recently. I've still a long way to go but initially I am trying to get as much core functionality built into the search page, such as trying not to submit the page at all and do as much with Ajax as I can.  From hereonin I think I shall refer to this as 'Ajaxifying' my application.  Ok maybe not. You can go to the demo here.... Online Store Demo Something to note.  You can drag and drop the product images into the shopping basket and the basket inventory will update, but this doesn't work with pagination.  If you use the range slider this will reset pagination and it will work again.  Also note, that this page only works properly with Firefox, which I think maybe down to APEX 4 EA not yet being supported in IE (it doesn't work with Chrome either). You will notice that I have created a new plugin which I have based on Patrick Wolf's slider plugin, but this uses 2 markers on the slider to represent ...