Skip to content

Add Oracle AI Vector Search integration page#443

Merged
kacperlukawski merged 3 commits into
deepset-ai:mainfrom
fede-kamel:feat/oracle-integration
May 6, 2026
Merged

Add Oracle AI Vector Search integration page#443
kacperlukawski merged 3 commits into
deepset-ai:mainfrom
fede-kamel:feat/oracle-integration

Conversation

@fede-kamel
Copy link
Copy Markdown
Contributor

Summary

  • Add integration documentation page for oracle-haystack — Oracle AI Vector Search Document Store for Haystack
  • Follows the same structure as existing document store integrations (Elasticsearch, pgvector, Pinecone, Qdrant)
  • Includes: overview, installation, indexing pipeline example, RAG pipeline example, local and Autonomous Database connection examples

The underlying code integration is being reviewed in deepset-ai/haystack-core-integrations#3096.

cc @davidsbatista — who is reviewing the code integration PR.

Checklist

  • Follows draft-integration.md template
  • Frontmatter includes all required fields
  • Code examples use Haystack 2.x API

@fede-kamel fede-kamel requested a review from a team as a code owner April 13, 2026 13:47
@kacperlukawski kacperlukawski self-requested a review April 13, 2026 16:05
@kacperlukawski
Copy link
Copy Markdown
Member

Thank you, @fede-kamel! I'll have a look once the integration itself is merged

@fede-kamel
Copy link
Copy Markdown
Contributor Author

Hi @kacperlukawski — the integration PR has been merged: deepset-ai/haystack-core-integrations#3096

Full e2e validation passed locally against Oracle 23ai (Docker):

  • 94 passed, 1 skipped (intentional — Oracle NULL semantics)
  • mypy: 0 issues across all source files

This documentation PR is ready for review whenever you get a chance. Thanks!

@fede-kamel
Copy link
Copy Markdown
Contributor Author

Hi @kacperlukawski — gentle nudge on this one. The code integration (deepset-ai/haystack-core-integrations#3096) has been merged for 3 weeks and we'd like to announce the Oracle AI Vector Search integration publicly, but we'd prefer the listing page be live first so users have somewhere to land.

Is there anything blocking the review, or changes you'd like me to make? Happy to iterate.

cc @davidsbatista — since you merged the code PR, wanted to loop you in so you're aware of the announcement dependency.

Comment thread integrations/oracle.md
repo: https://github.com/deepset-ai/haystack-core-integrations/tree/main/integrations/oracle
type: Document Store
report_issue: https://github.com/deepset-ai/haystack-core-integrations/issues
logo: /logos/oracle.png
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The logo is missing. Could you please add it in this PR?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done — added the Oracle wordmark at /logos/oracle.png in the same commit. Thanks for the review!

Comment thread integrations/oracle.md Outdated
Comment on lines +36 to +40
```bash
pip install oracle-haystack
```

The only runtime dependency beyond Haystack itself is [python-oracledb](https://python-oracledb.readthedocs.io/) (thin mode — no Oracle Client libraries required).
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It sounds a bit like installing python-oracledb is still required, even though we installed oracle-haystack. Isn't it going to be installed as a sub-dependency of the oracle-haystack package? If it's installed automatically, I would suggest removing the reference to python-oracledb.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch — python-oracledb is pulled in transitively by oracle-haystack, so users do not need to install it separately. Reworded that line to focus on the genuinely useful part for Oracle users (no separate Oracle Client / Instant Client install needed, since the driver defaults to thin mode).

Comment thread integrations/oracle.md Outdated
Comment on lines +102 to +106
For faster approximate nearest-neighbor search on large collections, create an HNSW index after writing documents:

```python
document_store.create_hnsw_index()
```
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to call it once, or after each document ingestion?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once. Oracle maintains the HNSW index incrementally as new documents are written, so there is no need to rebuild it after each ingestion. The call is idempotent too (CREATE VECTOR INDEX IF NOT EXISTS). I clarified this in the doc and also pointed out the create_index=True constructor shortcut for users who want the index created automatically on initialization.

@kacperlukawski
Copy link
Copy Markdown
Member

I'm sorry, @fede-kamel I missed the notification, but finally did the first review

@fede-kamel
Copy link
Copy Markdown
Contributor Author

Thanks for the review @kacperlukawski! Pushed a362199 addressing all three comments:

  • Logo — added logos/oracle.png
  • Installation — reworded so python-oracledb no longer reads as a separate install step; kept the "no Oracle Client required" note since that's still useful for Oracle DB users
  • HNSW — clarified it's a one-time call (Oracle maintains the index incrementally), called out idempotency, and added the create_index=True shortcut

Ready for another look.

@fede-kamel
Copy link
Copy Markdown
Contributor Author

@kacperlukawski one more — I also added a white-on-transparent variant at logos/oracle-white.png (12d1083) in case the listing has a dark theme; the live front-matter still points at the standard red oracle.png, so feel free to use either (or both) however the site theme prefers. Otherwise everything from the review is addressed — let me know if you need anything else!

@fede-kamel
Copy link
Copy Markdown
Contributor Author

Hi @kacperlukawski — just a quick check-in. The review feedback was addressed in a362199 (logo, install wording, HNSW clarification) and the white-on-transparent logo variant was added in 12d1083. Let me know if anything else is needed — happy to iterate. Thanks!

@fede-kamel
Copy link
Copy Markdown
Contributor Author

@kacperlukawski — friendly bump on this. All three review comments from Apr 29 have been addressed in the latest push:

  1. Logo — added the Oracle wordmark at /logos/oracle.png in the same commit.
  2. python-oracledb install instructions — reworded to remove the misleading "install python-oracledb separately" hint, since it's pulled in transitively by oracle-haystack. The doc now focuses on the actually-useful Oracle-specific note: no separate Oracle Client / Instant Client install needed (driver defaults to thin mode).
  3. create_index() cadence — clarified that the call is once (Oracle maintains the HNSW index incrementally as new documents are written) and is idempotent (CREATE VECTOR INDEX IF NOT EXISTS). Also surfaced the create_index=True constructor shortcut for the common case.

Ready for re-review whenever you have a moment. Thanks!

cc @davidsbatista (who reviewed and merged the code-integration PR haystack-core-integrations#3096) — feel free to weigh in on the doc page if useful.

fede-kamel added 3 commits May 6, 2026 01:09
Add documentation for the oracle-haystack integration providing
OracleDocumentStore and OracleEmbeddingRetriever backed by Oracle
Database 23ai/26ai native VECTOR type.

Related: deepset-ai/haystack-core-integrations#3096
- Add Oracle wordmark logo at /logos/oracle.png (referenced in front-matter)
- Reword install note so it no longer reads as a separate dependency
- Clarify that create_hnsw_index() is a one-time call (Oracle maintains
  the index incrementally) and document the create_index=True shortcut
For dark-themed listings if the site supports a logo variant per theme.
@fede-kamel fede-kamel force-pushed the feat/oracle-integration branch from 12d1083 to 4131fbc Compare May 6, 2026 05:10
@kacperlukawski kacperlukawski self-requested a review May 6, 2026 05:16
Copy link
Copy Markdown
Member

@kacperlukawski kacperlukawski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fede-kamel thanks for contributing!

@kacperlukawski kacperlukawski merged commit 794da71 into deepset-ai:main May 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants