Oracle AI Vector Search is designed for Artificial Intelligence (AI) workloads. It allows you to query data based on semantics and image similarity rather than with keywords.

This diagram shows the possible steps you must take to manage vector embeddings with Oracle AI Vector Search.

  1. You must generate vector embeddings from your unstructured data. You can perform this step either outside or within Oracle Database. To perform this step inside Oracle Database, you must first import a vector embedding model using the ONNX standard. Your unstructured data can reside within or outside Oracle Database.
    See Generate Vector Embeddings.
  2. After you have generated the vector embeddings, you can store them along with the corresponding unstructured and business relational data. If vector embeddings are stored outside Oracle Database, then you can use SQL*Loader or Data Pump to load the vector embedding inside a relational table within Oracle Database. You can also access vector embeddings that are stored outside the database through external tables.
    See Store Vector Embeddings.
  3. Similar to how you create indexes on regular table columns, you can create vector indexes on vector embeddings, and you can create hybrid vector indexes (a combination of Oracle Text index and vector index) on your unstructured data. This is beneficial for running similarity searches over huge vector spaces.
    See Create Vector Indexes and Hybrid Vector Indexes.
  4. You can then use Oracle AI Vector Search native SQL operations to combine similarity with traditional relational key searches. In addition, you can run hybrid searches, an advanced information retrieval technique that combines both the similarity and keyword searches to achieve highly relevant search results. SQL and PL/SQL provide powerful utilities to transform unstructured data, such as documents, into chunks before generating vector embeddings on each chunk.
    See Query Data with Similarity Searches and Hybrid Searches and Supported Clients and Languages.

  5. You can use vector utility PL/SQL APIs for prompting large language models (LLMs) with textual prompts and images using LLM-powered interfaces. In addition, LLMs inherently lack the ability to access or incorporate new information after their training cut-off. By providing your LLM with up-to-date facts from your company, you can minimize the probability that an LLM will make up answers (hallucinate). Retrieval-augmented generation (RAG) is an approach developed to address the limitations of LLMs. RAG combines the strengths of pre-trained language models, including reranking ones, with the ability to retrieve information from a dataset or database in real time during the generation of responses. Oracle AI Vector Search enables RAG and LLM integration using popular frameworks like LangChain, Ollama, and LlamaIndex.
    See
    Work with LLM-Powered APIs and Retrieval Augmentation Generation.