skillfed

langchain-oracledb

An integration package connecting Oracle Database and LangChain

langchain-oracledb v1.5.0 149.3K downloads/30d#10,997 on PyPI59
License unclear UPL-1.0 Active released

What it is and what it does

langchain-oracledb bridges LangChain and Oracle Database, providing components to store and retrieve vector embeddings, load documents from Oracle tables, split text using Oracle's native capabilities, and generate embeddings. It is designed for building RAG pipelines that leverage Oracle's AI Vector Search feature.

The package exposes OracleVS for vector storage with similarity search, OracleDocLoader for loading documents from Oracle tables or files, OracleTextSplitter for chunking text by characters, words, or sentences, and OracleEmbeddings for generating embeddings. It depends on oracledb for database connectivity, langchain-core for the integration framework, and standard data-science libraries (numpy, pydantic). Connection to an Oracle Database is required; the package supports both Thin mode (no Oracle Client needed) and Thick mode (with Oracle Client libraries).

Use it for:

  • Build a RAG pipeline that stores document embeddings in Oracle and retrieves relevant chunks for LLM context
  • Load large documents from Oracle tables, split them into chunks, and index them for semantic search
  • Generate embeddings for text stored in Oracle Database and perform similarity searches within LangChain workflows
  • Integrate Oracle Autonomous Database as a vector store backend for LangChain applications
  • Process documents with Oracle's native text-splitting logic before ingesting into a vector store

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Integrates Oracle Database with LangChain to enable vector search, document loading, text splitting, and embedding generation for building retrieval-augmented generation (RAG) pipelines.

Yes, if you are building a LangChain RAG application on Oracle Database. The package is actively maintained, has low install friction, and no known vulnerabilities. The UPL-1.0 license is permissive but less standard—verify it aligns with your project before committing. The integration is well-documented with examples and covers the full RAG workflow.

Install

langchain-oracledb on PyPI

pip

pip install langchain-oracledb

uv

uv add langchain-oracledb

poetry

poetry add langchain-oracledb

Installing langchain-oracledb

Before you install

Low install friction with a pure-Python wheel. Actively maintained with recent releases; last commit 2026-08-14. Depends on langchain-core, langchain-text-splitters, numpy, oracledb, and pydantic—all standard ecosystem packages.

License in practice

Licensed under UPL-1.0 (Oracle Public License), which is permissive but less common than MIT or Apache 2.0. License treatment is marked unclear in metadata; verify compatibility with your project's license policy before adopting.

Quickstart

from langchain_oracledb.vectorstores import OracleVS
from langchain_oracledb.document_loaders.oracleai import OracleTextSplitter
import oracledb

conn = oracledb.connect(user=username, password=password, dsn=dsn)
vector_store = OracleVS(conn, embedding_model, "table_name", DistanceStrategy.EUCLIDEAN_DISTANCE)
vector_store.add_texts(["text"], [{"id": "1"}])
results = vector_store.similarity_search("query", 1)

Requires an active Oracle Database connection and valid credentials (username, password, DSN). Oracle Client libraries optional but some features require Thick mode.

Verify before relying

  • Whether UPL-1.0 license is compatible with common commercial or open-source project licenses
  • Performance characteristics and scalability limits for large vector stores
  • Whether Thin mode (default) covers all use cases or if Thick mode with Oracle Client is often required in practice

Package facts

License UPL-1.0 (unclear)
Python support supports the current Python release (<4.0,>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 5 — langchain-core, langchain-text-splitters, numpy, oracledb, pydantic
Maintenance actively maintained — 72 days since the last release
Last repo commit
First released
Downloads 149,307/month — #10,997 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: langchain_oracledb-1.5.0-py3-none-any.whl

Programming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9

Tags

oracle database vector searchlangchain oracle integrationrag with oracle databasedocument embeddings oraclevector store oraclelangchain oracle aioracle text splitting
vector-searchragoracle-integration

More Artificial Intelligence packages