ElasticKnnSearch: ValueError: Either `query_vector` or `model_id` must be provided, but not both.
Labels: name: area: vector store, name: auto:bug

### System Info

LangChain 0.0.260, Mac M2, Miniforge3, Python 3.9

### Who can help?

@ves

### Information

- [ ] The official example notebooks/scripts
- [X] My own modified scripts

### Related Components

- [ ] LLMs/Chat Models
- [ ] Embedding Models
- [ ] Prompts / Prompt Templates / Prompt Selectors
- [ ] Output Parsers
- [ ] Document Loaders
- [X] Vector Stores / Retrievers
- [ ] Memory
- [ ] Agents / Agent Executors
- [ ] Tools / Toolkits
- [ ] Chains
- [ ] Callbacks/Tracing
- [ ] Async

### Reproduction

```python
from langchain.vectorstores.elastic_vector_search import ElasticKnnSearch
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.embeddings import HuggingFaceEmbeddings
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationalRetrievalChain
from langchain.chat_models import ChatOpenAI
from langchain import ElasticVectorSearch
from elasticsearch import Elasticsearch

model_name = "sentence-transformers/all-mpnet-base-v2"
embedding =  HuggingFaceEmbeddings(model_name=model_name)

es_url = "http://localhost:9221"
es = Elasticsearch(es_url)

# prepare db
texts = ["This is a test document", "This is another test document"]
metadatas = [{}, {}]
text_splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
documents = text_splitter.create_documents(texts, metadatas=metadatas)
ElasticVectorSearch.from_documents(documents, embedding, index_name="bug_demo", elasticsearch_url=es_url)

# chat with db
memory = ConversationBufferMemory(memory_key="chat_history", output_key="answer", return_messages=True)
db = ElasticKnnSearch(embedding=embedding, es_connection=es, index_name="bug_demo")

llm_model="gpt-3.5-turbo"
llm = ChatOpenAI(model_name=llm_model, temperature=0)
        
chain = ConversationalRetrievalChain.from_llm(
    llm,
    db.as_retriever(),
    memory=memory,
    return_source_documents=True
)
user_input = "What is love?"
output = chain({"question": user_input})
```

### Expected behavior

The previous code used to work correctly with langchain  0.0.245.

After merge https://github.com/langchain-ai/langchain/pull/8180, it produces this error:

```
>>> output = chain({"question": user_input})
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/chains/base.py", line 258, in __call__
    raise e
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/chains/base.py", line 252, in __call__
    self._call(inputs, run_manager=run_manager)
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/chains/conversational_retrieval/base.py", line 135, in _call
    docs = self._get_docs(new_question, inputs, run_manager=_run_manager)
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/chains/conversational_retrieval/base.py", line 287, in _get_docs
    docs = self.retriever.get_relevant_documents(
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/schema/retriever.py", line 193, in get_relevant_documents
    raise e
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/schema/retriever.py", line 186, in get_relevant_documents
    result = self._get_relevant_documents(
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/vectorstores/base.py", line 504, in _get_relevant_documents
    docs = self.vectorstore.similarity_search(query, **self.search_kwargs)
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/vectorstores/elastic_vector_search.py", line 472, in similarity_search
    results = self.knn_search(query=query, k=k, **kwargs)
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/vectorstores/elastic_vector_search.py", line 520, in knn_search
    knn_query_body = self._default_knn_query(
  File "/Users/miguel/miniforge3/envs/fenonto_qa3/lib/python3.9/site-packages/langchain/vectorstores/elastic_vector_search.py", line 460, in _default_knn_query
    raise ValueError(
ValueError: Either `query_vector` or `model_id` must be provided, but not both.
```

My guess is, after refactoring, knn_search no longer takes into account the embedding parameter. If so it would use it to create the query_vector. @jeffvestal any clue?

BTW, I have also tried preparing the db using the new ElasticKnnSearch#from_texts method.
```python
from langchain.vectorstores.elastic_vector_search import ElasticKnnSearch
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.embeddings import HuggingFaceEmbeddings
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationalRetrievalChain
from langchain.chat_models import ChatOpenAI
from langchain import ElasticVectorSearch
from elasticsearch import Elasticsearch

model_name = "sentence-transformers/all-mpnet-base-v2"
embedding =  HuggingFaceEmbeddings(model_name=model_name)

es_url = "http://localhost:9221"
es = Elasticsearch(es_url)
index_name = "test_bug3"

# prepare db
texts = ["This is a test document", "This is another test document"]
metadatas = [{}, {}]
text_splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
documents = text_splitter.create_documents(texts, metadatas=metadatas)


knnvectorsearch = ElasticKnnSearch.from_texts(
    texts=texts,
    embedding=embedding,
    index_name= index_name,
    vector_query_field='vector',
    query_field='text',
    dims=768,
	es_connection=es
)

# Test `add_texts` method
texts2 = ["Hello, world!", "Machine learning is fun.", "I love Python."]
knnvectorsearch.add_texts(texts2)


# chat with db
memory = ConversationBufferMemory(memory_key="chat_history", output_key="answer", return_messages=True)
db = ElasticKnnSearch(embedding=embedding, es_connection=es, index_name="index_name")

llm_model="gpt-3.5-turbo"
llm = ChatOpenAI(model_name=llm_model, temperature=0)
        
chain = ConversationalRetrievalChain.from_llm(
    llm,
    db.as_retriever(),
    memory=memory,
    return_source_documents=True
)
user_input = "Who is Janine?"
output = chain({"question": user_input})
```
But I get the same error.