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

Adding proposal on Generative AI Feature Pack #580

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

ehsavoie
Copy link
Contributor

@ehsavoie ehsavoie commented Jun 7, 2024

No description provided.

@github-actions github-actions bot added the invalid-categories The categories field in the proposal metadata is not valid label Jun 7, 2024
Signed-off-by: Emmanuel Hugonnet <ehugonne@redhat.com>
@github-actions github-actions bot removed the invalid-categories The categories field in the proposal metadata is not valid label Jun 7, 2024
* model-name: the name of the embedding model served by Ollama.

----
subsystem=ai/ollama-embedding-model=myembedding:add(base-url="http://192.168.1.11:11434", model-name="llama3:8b")
Copy link

@mchoma mchoma Jun 11, 2024

Choose a reason for hiding this comment

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

I will pick ollama-embedding-model, but this is general objection. I am asking myself how good idea is to map LangChain4J model API to Wildfly model 1:1. LangChain4j API is very broad and will change. Wildfly model will always be lagging. Aren't we misusing wildfly model as Inversion of Control system here?

This is different to Hibernate (jpa) subsystem or datasource (jdbc) subsystem which are small. If this approach will be taken ai subsystem can be over time very big (hard to maintain) subsystem.

But I am not sure what could be a good alternative approach :) Hiding implementation details? Expose in Wildfly model just what is common to any implementation; url modelname in this case?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Well, I wondered myself. langchain4j is already an abstraction over the llms and other elements of the rag chain so adding one more is maybe too much. Also you don't have to match 1-1, you only need to expose those attributes you think make sense. Would having a map of attributes to a generic type that would somehow do the matching be more to your liking ?

----

It should also support vector database backed embedding store like for Weaviate.
It should expose a simple `weaviate-embedding-store` resource with the following attributes:
Copy link

Choose a reason for hiding this comment

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

Followup on my concern expressed above. For example there is a lot of relevant vector dbs out there (chroma, qdrant, milvus, pinecone, elasticsearch, ...) https://lakefs.io/blog/12-vector-databases-2023/ I am questioning if providing resources for all of them does scale?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We don't have to support everyone of them, all the more so as each bring their own dependency tree

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.

None yet

2 participants