RequestError: RequestError(400, 'search_phase_execution_exception...) with ElasticSearch as Vector store when querying
Labels: name: area: vector store, name: auto:bug

### System Info

Langchain version: `0.0.254`
Python version: `3.10.2`
Elasticsearch version: `7.17.0`
System Version: macOS 13.4 (22F66)
Model Name: MacBook Pro
Model Identifier: Mac14,10
Chip: Apple M2 Pro
Total Number of Cores: 12 (8 performance and 4 efficiency)
Memory: 32 GB

### Who can help?

@agola11 @hwchase17 

### Information

- [ ] The official example notebooks/scripts
- [X] My own modified scripts

### Related Components

- [X] LLMs/Chat Models
- [ ] Embedding Models
- [ ] Prompts / Prompt Templates / Prompt Selectors
- [ ] Output Parsers
- [X] Document Loaders
- [X] Vector Stores / Retrievers
- [ ] Memory
- [ ] Agents / Agent Executors
- [ ] Tools / Toolkits
- [X] Chains
- [ ] Callbacks/Tracing
- [ ] Async

### Reproduction

run this using `python3 script.py`

`script.py`:
```python
import os

from langchain.chains import RetrievalQA
from langchain.chat_models import ChatOpenAI
from langchain.document_loaders import TextLoader
from langchain.embeddings.openai import OpenAIEmbeddings
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.vectorstores import ElasticVectorSearch


def main():
    text_path = "some-test.txt"
    loader = TextLoader(text_path)
    data = loader.load()

    text_splitter = RecursiveCharacterTextSplitter.from_tiktoken_encoder(
        chunk_size=1000, chunk_overlap=0
    ) # I have also tried various chunk sizes, but still have the same error

    documents = text_splitter.split_documents(data)

    api_key = "..."
    embeddings = OpenAIEmbeddings(openai_api_key=api_key)

    os.environ["ELASTICSEARCH_URL"] = "..."
    db = ElasticVectorSearch.from_documents(
        documents,
        embeddings,
        index_name="laurad-test",
    )
    print(db.client.info())

    db = ElasticVectorSearch(
        index_name="laurad-test",
        embedding=embeddings,
        elasticsearch_url="..."
    )

    qa = RetrievalQA.from_chain_type(
        llm=ChatOpenAI(temperature=0, openai_api_key=api_key),
        chain_type="stuff",
        retriever=db.as_retriever(),
    )

    query = "Hi
    qa.run(query) # Error here

if __name__ == "__main__":
    main()
```

Error traceback:
```
RequestError                              Traceback (most recent call last)
Cell In[8], line 2
      1 query = "What is ARB in NVBugs?"
----> 2 qa.run(query)

File [/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/langchain/chains/base.py:451](https://file+.vscode-resource.vscode-cdn.net/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/langchain/chains/base.py:451), in Chain.run(self, callbacks, tags, metadata, *args, **kwargs)
    449     if len(args) != 1:
    450         raise ValueError("`run` supports only one positional argument.")
--> 451     return self(args[0], callbacks=callbacks, tags=tags, metadata=metadata)[
    452         _output_key
    453     ]
    455 if kwargs and not args:
    456     return self(kwargs, callbacks=callbacks, tags=tags, metadata=metadata)[
    457         _output_key
    458     ]

File [/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/langchain/chains/base.py:258](https://file+.vscode-resource.vscode-cdn.net/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/langchain/chains/base.py:258), in Chain.__call__(self, inputs, return_only_outputs, callbacks, tags, metadata, include_run_info)
    256 except (KeyboardInterrupt, Exception) as e:
    257     run_manager.on_chain_error(e)
--> 258     raise e
    259 run_manager.on_chain_end(outputs)
    260 final_outputs: Dict[str, Any] = self.prep_outputs(
    261     inputs, outputs, return_only_outputs
    262 )
...
--> 315 raise HTTP_EXCEPTIONS.get(status_code, TransportError)(
    316     status_code, error_message, additional_info
    317 )

RequestError: RequestError(400, 'search_phase_execution_exception', "class_cast_exception: class org.elasticsearch.index.fielddata.ScriptDocValues$Doubles cannot be cast to class org.elasticsearch.xpack.vectors.query.VectorScriptDocValues$DenseVectorScriptDocValues (org.elasticsearch.index.fielddata.ScriptDocValues$Doubles is in unnamed module of loader 'app'; org.elasticsearch.xpack.vectors.query.VectorScriptDocValues$DenseVectorScriptDocValues is in unnamed module of loader java.net.FactoryURLClassLoader @7808fb9)")
```

### Expected behavior

I expect to ask questions and have answers provided back using the `langchain.chains.retrieval_qa.base.RetrievalQA` class. However, I am getting an error 400 when trying to query the LLM.

**Note**: I do not get the same error when using ChromaDB or OpenSearch as the retriever.