10-Sept-2024: Documentation In-Progress…

Thank you for your patience as we work on updating the documentation. Please check back soon for the latest updates.

The Oracle AI Microservices Sandbox (the Sandbox) provides a streamlined environment where developers and data scientists can explore the potential of Generative Artificial Intelligence (GenAI) combined with Retrieval-Augmented Generation (RAG) capabilities. By integrating the Oracle Database AI Vector Search, the Sandbox enables users to enhance existing Large Language Models (LLMs) through RAG. This method significantly improves the performance and accuracy of AI models, helping to avoid common issues such as knowledge cutoff and hallucinations.

  • GenAI: Powers the generation of text, images, or other data based on prompts using pre-trained LLMs.
  • RAG: Enhances LLMs by retrieving relevant, real-time information from vector storage allowing models to provide up-to-date and accurate responses.
  • Vector Database: A database, including Oracle Database 23ai, that can natively store and manage vector embeddings and handle the unstructured data they describe, such as documents, images, video, or audio.

Sandbox Features

The Sandbox streamlines the entire workflow from prototyping to production, making it easier to create and deploy RAG-powered GenAI solutions using the Oracle Database.

Getting Started

The Sandbox is available to install in your own environment, which may be a developer’s desktop, on-premises data center environment, or a cloud provider. It can be run either on a bare-metal, within a container, or in a Kubernetes Cluster.

Prefer a Step-by-Step?

The Walkthrough is a great way to familiarize yourself with the Sandbox and its features.

Prerequisites

  • Oracle Database 23ai incl. Oracle Database 23ai Free
  • Python 3.11 (for running Bare-Metal)
  • Container Runtime e.g. docker/podman (for running in a Container)
  • Access to an Embedding and Chat Model:
    • API Keys for Third-Party Models
    • On-Premises Models*

*Oracle recommends running On-Premises Models on hardware with GPUs. For more information, please review the Infrastructure documentation.

Bare-Metal Installation

To run the application on bare-metal; download the source and from the top-level directory:

  1. Create and activate a Python Virtual Environment:

    python3.11 -m venv .venv
    source .venv/bin/activate
    pip3 install --upgrade pip wheel
  2. Install the Python modules:

    pip3 install -r app/requirements.txt
  3. Start Streamlit:

    cd app/src
    streamlit run oaim-sandbox.py --server.port 8501
  4. Navigate to http://localhost:8501.

  5. Configure the Sandbox.

Container Installation

Same… but Different

Reference to podman commands, if applicable to your environment, can be substituted with docker.

To run the application in a container; download the source and from the top-level directory:

  1. Build the image.

    From the app/ directory, build Image:

    podman build -t oaim-sandbox .
  2. Start the Container:

    podman run -p 8501:8501 -it --rm oaim-sandbox
  3. Navigate to http://localhost:8501.

  4. Configure the Sandbox.

Need help?

We’d love to hear from you! You can contact us in the #oracle-db-microservices channel in the Oracle Developers slack workspace, or open an issue in GitHub.