Skip to content
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

Java: Integrate EmbeddingVector into Embedding #2328

Merged
merged 3 commits into from
Aug 9, 2023
Merged

Java: Integrate EmbeddingVector into Embedding #2328

merged 3 commits into from
Aug 9, 2023

Conversation

dsgrieve
Copy link
Member

@dsgrieve dsgrieve commented Aug 4, 2023

Motivation and Context

EmbeddingVector and the vectoroperations package are down in semantickernel-core, which makes it impossible to use the cosine similarity function needed to calculate the similarity between embeddings.

Description

EmbeddingVector was integrated into Embedding and the vectoroperations package was refactored into a VectorOperations class which is in the same package as Embedding. Now, one can do:
embedding.cosineSimilarity(otherEmbedding) instead of having to new up an EmbeddingVector from embedding.getVector().

Contribution Checklist

@dsgrieve dsgrieve added the java Issue or PR regarding Java code label Aug 4, 2023
@dsgrieve dsgrieve requested a review from a team as a code owner August 4, 2023 18:58
brunoborges
brunoborges previously approved these changes Aug 4, 2023
Copy link
Member

@brunoborges brunoborges left a comment

Choose a reason for hiding this comment

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

LGTM

johnoliver
johnoliver previously approved these changes Aug 8, 2023
@dsgrieve dsgrieve enabled auto-merge (squash) August 8, 2023 13:43
@dsgrieve dsgrieve merged commit f8f1c34 into microsoft:experimental-java Aug 9, 2023
6 checks passed
@dsgrieve dsgrieve deleted the dsgrieve/move-embeddingvector branch August 16, 2023 20:12
johnoliver pushed a commit to johnoliver/semantic-kernel that referenced this pull request Jun 5, 2024
### Motivation and Context

<!-- Thank you for your contribution to the semantic-kernel repo!
Please help reviewers and future users, providing the following
information:
  1. Why is this change required?
  2. What problem does it solve?
  3. What scenario does it contribute to?
  4. If it fixes an open issue, please link to the issue here.
-->
EmbeddingVector and the vectoroperations package are down in
semantickernel-core, which makes it impossible to use the cosine
similarity function needed to calculate the similarity between
embeddings.
### Description

<!-- Describe your changes, the overall approach, the underlying design.
These notes will help understanding how your code works. Thanks! -->
EmbeddingVector was integrated into Embedding and the vectoroperations
package was refactored into a VectorOperations class which is in the
same package as Embedding. Now, one can do:
`embedding.cosineSimilarity(otherEmbedding)` instead of having to new up
an EmbeddingVector from embedding.getVector().

### Contribution Checklist

<!-- Before submitting this PR, please make sure: -->

- [X] The code builds clean without any errors or warnings
- [X] The PR follows the [SK Contribution
Guidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)
and the [pre-submission formatting
script](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)
raises no violations
- [X] All unit tests pass, and I have added new tests where possible
- [X] I didn't break anyone 😄
johnoliver pushed a commit to johnoliver/semantic-kernel that referenced this pull request Jun 5, 2024
### Motivation and Context

<!-- Thank you for your contribution to the semantic-kernel repo!
Please help reviewers and future users, providing the following
information:
  1. Why is this change required?
  2. What problem does it solve?
  3. What scenario does it contribute to?
  4. If it fixes an open issue, please link to the issue here.
-->
EmbeddingVector and the vectoroperations package are down in
semantickernel-core, which makes it impossible to use the cosine
similarity function needed to calculate the similarity between
embeddings.
### Description

<!-- Describe your changes, the overall approach, the underlying design.
These notes will help understanding how your code works. Thanks! -->
EmbeddingVector was integrated into Embedding and the vectoroperations
package was refactored into a VectorOperations class which is in the
same package as Embedding. Now, one can do:
`embedding.cosineSimilarity(otherEmbedding)` instead of having to new up
an EmbeddingVector from embedding.getVector().

### Contribution Checklist

<!-- Before submitting this PR, please make sure: -->

- [X] The code builds clean without any errors or warnings
- [X] The PR follows the [SK Contribution
Guidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)
and the [pre-submission formatting
script](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)
raises no violations
- [X] All unit tests pass, and I have added new tests where possible
- [X] I didn't break anyone 😄
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
java Issue or PR regarding Java code
Projects
No open projects
Status: Sprint: Done
Development

Successfully merging this pull request may close these issues.

None yet

3 participants