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
- Configuring Embedding and Chat Models
- Splitting and Embedding Documentation
- Storing Embedded Documents into the Oracle Database
- Modifying System Prompts (Prompt Engineering)
- Experimenting with LLM Parameters
- Testing Framework on auto-generated or existing Q&A datasets
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.
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:
Create and activate a Python Virtual Environment:
python3.11 -m venv .venv source .venv/bin/activate pip3 install --upgrade pip wheel
Install the Python modules:
pip3 install -r app/requirements.txt
Start Streamlit:
cd app/src streamlit run oaim-sandbox.py --server.port 8501
Navigate to
http://localhost:8501
.Configure the Sandbox.
Container Installation
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:
Build the image.
From the
app/
directory, build Image:podman build -t oaim-sandbox .
Start the Container:
podman run -p 8501:8501 -it --rm oaim-sandbox
Navigate to
http://localhost:8501
.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.