Skip to content

Contribute Oracle Coherence vector store implementation #1627

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

aseovic
Copy link
Contributor

@aseovic aseovic commented Oct 30, 2024

We added support for vector storage and search in Oracle Coherence CE 24.09, and would like to contribute Spring AI vector store implementation (and Spring Boot Starter) for it.

@aseovic
Copy link
Contributor Author

aseovic commented Oct 31, 2024

@markpollack Just a friendly nudge to review this PR... ;-)


import static org.assertj.core.api.Assertions.assertThat;

public class CoherenceVectorStoreIT {
Copy link
Contributor

Choose a reason for hiding this comment

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

Hi, I see Oracle Coherence CE has some docker images available here.

I wonder if we can switch and use it along with Testcontainers. Later, when autoconfiguration is added then adding Service Connections support for Testcontainers and Docker Compose would be great.

Copy link
Contributor Author

@aseovic aseovic Oct 31, 2024

Choose a reason for hiding this comment

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

We do have Docker images, but no OOB support for Testcontainers that I'm aware of, so someone would need to write that.

The thing is, we had a way to start a multi-process cluster long before Testcontainers existed, in the form of Oracle Bedrock, so that's what we used to test this integration as well.

I'm not saying it's better than Testcontainers, but it's lighter-weight and faster to run, as it doesn't require or has to download Docker image on every build -- it simply starts several Coherence cluster members, and runs the tests.

Anyway, I'd like to get this in as-is, so we have the integration people can use, but am open to refactoring tests to use Testcontainers long-term, if there are benefits to doing that.

@markpollack
Copy link
Member

@aseovic having some build issues with removing boot deps and installing checkstyle... will merge once done.

A couple things wrt to testing. Having the automated tests is important as there will always be drift. I'm not married to test containers, but getting something in place would be useful.

Also, we do have https://github.com/spring-projects/spring-ai-integration-tests where most tests are failing due to lack of API keys, but are in the process of sorting that out. There is also a contribution for OCI Embedding model, but I can't get oracle cloud to cooperate with me. See this comment. Is there something you can do to help me out there?

@markpollack markpollack self-assigned this Nov 1, 2024
@markpollack markpollack added this to the 1.0.0-M4 milestone Nov 1, 2024
@aseovic
Copy link
Contributor Author

aseovic commented Nov 1, 2024

A couple things wrt to testing. Having the automated tests is important as there will always be drift. I'm not married to test containers, but getting something in place would be useful.

Of course, and we do have tests in the PR. They are just not using TC, but our own distributed testing framework instead.

There is also a contribution for OCI Embedding model, but I can't get oracle cloud to cooperate with me. See this comment. Is there something you can do to help me out there?

I'm not sure. I only have access to resources in Phoenix and Ashburn regions, and that's through my team/org, so not publicly shareable. I'm a bit confused though -- it says you merged it on Sep 26?

@aseovic
Copy link
Contributor Author

aseovic commented Nov 6, 2024

@markpollack Any chance we can get this merged soon? Keeping it in sync with the changes in main is pita...

@markpollack
Copy link
Member

on it

@markpollack
Copy link
Member

Thanks to the man who brought you the Spring Expression Language!

Merged in f6a648e

can you add docs in another PR @aseovic ?

@aseovic
Copy link
Contributor Author

aseovic commented Nov 7, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants