1Z0-184-25 Question 141
Select 2Your team is building a retrieval-augmented generation (RAG) application in Python on Oracle Cloud Infrastructure (OCI). You plan to store your source documents in OCI Object Storage and maintain document embeddings in an Oracle Autonomous Database table that supports vector queries. To ensure the application can securely retrieve relevant documents based on semantic search and pass them to a large language model for generation, which two steps must you include in your design?
- A
Grant appropriate IAM permissions for your Python application to programmatically read documents from OCI Object Storage
- B
Store embeddings temporarily on the ephemeral local disk of an OCI compute instance to speed up vector queries
- C
Configure the Autonomous Database to store embeddings in a dedicated vector column and enable vector-based indexing
- D
Set Object Storage bucket access to public to simplify the retrieval layer
- E
Encrypt the Object Storage bucket objects with customer-managed keys (CMK) and configure Autonomous Database encryption at rest
Show answer and explanation
Correct answers: A, C
Explanation
To build a Python-based RAG application on OCI, you must ensure both secure data access and efficient vector-based retrieval. Granting IAM permissions for Object Storage access prevents unauthorized reads and allows the application to fetch documents. Storing embeddings in an Autonomous Database with vector-based indexing improves query performance and retrieval accuracy. Refer to Oracle's documentation on Autonomous Database vector search and IAM policy configuration (docs.oracle.com/en-us/iaas/Content/Identity/Concepts/policies.htm) for best practices on secure, high-performance design.
- A. Correct.
Correct. To retrieve source documents programmatically from OCI Object Storage, you must configure appropriate IAM policies. This ensures your Python code (running on an OCI Compute instance or OCI Functions) can securely access the bucket. Without these policies, your application will not be able to retrieve documents required for RAG.
- B. Incorrect.
Incorrect. Storing embeddings temporarily on ephemeral local disks might seem faster initially, but it does not provide a durable, scalable, and consistent repository for your vector data. Once the instance is stopped or scaled down, the local disk is wiped. Oracle recommends using a persistent store (like an Autonomous Database) for reliability and performance with vector queries.
- C. Correct.
Correct. Oracle Autonomous Database supports vector queries (for example, storing embeddings in a vector column and using specialized indexing). This configuration is crucial in a Python-based RAG application to perform semantic searches efficiently and retrieve the most relevant documents for the LLM.
- D. Incorrect.
Incorrect. Making the Object Storage bucket publicly accessible bypasses security best practices in OCI. Publicly accessible buckets pose a significant security risk and do not satisfy enterprise requirements for data protection and compliance.
- E. Incorrect.
Incorrect. While encrypting data at rest is a best practice (and often enabled by default in OCI), it is not, by itself, sufficient to address the core requirement of setting up a retrieval-augmented generation pipeline that can efficiently fetch and query documents. Security measures (such as encryption) are important but do not fulfill the vector-based query and restricted data access needs on their own.