-
Notifications
You must be signed in to change notification settings - Fork 728
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
[Feature] Add dimension() in EmbeddingModel #1250
[Feature] Add dimension() in EmbeddingModel #1250
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Martin7-1 thank you!
langchain4j-open-ai/src/main/java/dev/langchain4j/model/openai/OpenAiEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/AbstractEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/AbstractEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/AbstractEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/EmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/EmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-bedrock/src/main/java/dev/langchain4j/model/bedrock/BedrockTitanEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/AbstractEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/EmbeddingModel.java
Outdated
Show resolved
Hide resolved
...rock/src/main/java/dev/langchain4j/model/bedrock/internal/AbstractBedrockEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/AbstractEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-open-ai/src/main/java/dev/langchain4j/model/openai/OpenAiEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-core/src/main/java/dev/langchain4j/model/embedding/AbstractEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-cohere/src/main/java/dev/langchain4j/model/cohere/CohereEmbeddingModel.java
Outdated
Show resolved
Hide resolved
...chain4j-core/src/main/java/dev/langchain4j/model/embedding/DimensionAwareEmbeddingModel.java
Outdated
Show resolved
Hide resolved
...chain4j-core/src/main/java/dev/langchain4j/model/embedding/DimensionAwareEmbeddingModel.java
Outdated
Show resolved
Hide resolved
...chain4j-core/src/main/java/dev/langchain4j/model/embedding/DimensionAwareEmbeddingModel.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Martin7-1 I like this new solution much more, thank you!
Just a few minor things and we can merge!
langchain4j-open-ai/src/main/java/dev/langchain4j/model/openai/OpenAiEmbeddingModelName.java
Outdated
Show resolved
Hide resolved
...-workers-ai/src/main/java/dev/langchain4j/model/workersai/client/AbstractWorkersAIModel.java
Outdated
Show resolved
Hide resolved
...j-azure-open-ai/src/main/java/dev/langchain4j/model/azure/AzureOpenAiEmbeddingModelName.java
Outdated
Show resolved
Hide resolved
...chain4j-core/src/main/java/dev/langchain4j/model/embedding/DimensionAwareEmbeddingModel.java
Outdated
Show resolved
Hide resolved
...chain4j-core/src/main/java/dev/langchain4j/model/embedding/DimensionAwareEmbeddingModel.java
Outdated
Show resolved
Hide resolved
...chain4j-core/src/main/java/dev/langchain4j/model/embedding/DimensionAwareEmbeddingModel.java
Outdated
Show resolved
Hide resolved
langchain4j-vertex-ai/src/main/java/dev/langchain4j/model/vertexai/VertexAiEmbeddingModel.java
Outdated
Show resolved
Hide resolved
The CI failed maybe because the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Martin7-1 good job, thank you!
@Martin7-1 could you please also update embedding models in https://github.com/langchain4j/langchain4j-embeddings ? |
Sure! |
See [langchain4j#1250](langchain4j/langchain4j#1250)
Issue
#1080
Change
Add
dimension()
method inEmbeddingModel
. Using anAbstractEmbeddingModel
to implementEmbeddingModel
and a commondimension()
method like below:Now, existing
{NameOfIntegration}EmbeddingModel
just need to overridedimensionMap()
method to contains known embedding model dimension andmodelName()
method to get embedding model name.General checklist
Checklist for adding new model integration
Checklist for adding new embedding store integration
{NameOfIntegration}EmbeddingStoreIT
that extends from eitherEmbeddingStoreIT
orEmbeddingStoreWithFilteringIT
Checklist for changing existing embedding store integration
{NameOfIntegration}EmbeddingStore
works correctly with the data persisted using the latest released version of LangChain4j