dspy icon indicating copy to clipboard operation
dspy copied to clipboard

feat(compatibility): Add compatibility with Weaviate client v4.

Open Fiwex opened this issue 10 months ago • 7 comments

Maintain backward compatibility with v3 client. Fix #787

Fiwex avatar Apr 15 '24 10:04 Fiwex

Thank you so much, I can take a look this evening!

CShorten avatar Apr 15 '24 13:04 CShorten

Hey sorry for the delay, maybe @hsm207 would have a second as well. I will hopefully be able to look at this tomorrow morning EST.

CShorten avatar Apr 16 '24 22:04 CShorten

Why do we want to maintain compatibility with v3 client API?

hsm207 avatar Apr 17 '24 09:04 hsm207

Thanks for the replies!

I decided to maintain backward compatibility with the v3 client API in this PR for smooth transition for users upgrading to the latest version.

Alternatively, I could keep v3 support for now but add deprecation warnings to encourage users to upgrade to v4. Or if you prefer, only keep the v4 compatibility.

Let me know your thoughts. I'm happy to modify the PR based on DSPy priorities.

Fiwex avatar Apr 17 '24 12:04 Fiwex

I'm not a member of the DSPy team (I work at Weaviate). My thoughts are:

We recommend users use the v4 API whenever possible. Given that this integration is pretty recent and minor, I don't think it will cause users significant disruption to upgrade.

hsm207 avatar Apr 17 '24 13:04 hsm207

@CShorten Just tel me what you prefer and I'll change the PR accordingly.

Fiwex avatar Apr 25 '24 10:04 Fiwex

Thanks @Fiwex I think this is solely a positive change. Thank you for the thoughts @hsm207, I agree with the sentiment, but we are indeed seeing some issues arising and I can't see any drawbacks of this approach.

CShorten avatar Apr 25 '24 16:04 CShorten

Hi @Fiwex @CShorten , just catching up on old PRs - is this ready to merge with the current approach?

arnavsinghvi11 avatar May 31 '24 04:05 arnavsinghvi11

Hey @arnavsinghvi11! No I don't believe so, it looks like the PR is removing default arguments from the hybrid search -- which I'm not 100% sure the utility of, cc @hsm207 @tsmith023.

I will try to take a look further as soon I can!

CShorten avatar Jun 01 '24 01:06 CShorten

It would be awesome if this PR is merged ASAP. I'm having a ton of issues on my solutions, especially when I have to integrate other libs, that are specialized on specific tasks and they are depended on current version of package. It's conflicting with 3.* version hugely. Ex. I'm using DSPy and LlamaIndex import data functionality, while latest use updated dep package, because of former one I have to downgrade and have a ton of errors.

betimd avatar Jun 12 '24 12:06 betimd

Hey @betimd! Thank you so much for telling us more about this problem, really happy to hear about use cases with DSPy, LlamaIndex, and Weaviate! I have reviewed the PR and will merge it to add support for using DSPy with Weaviate's v3 and v4 Python clients.

P.S. @hsm207, arguments like hybrid_alpha and hybrid_fusion_type are supported with **kwargs. I really like this approach because of how we can add reranking, filters, and things like this.

CShorten avatar Jun 15 '24 02:06 CShorten