Elasticsearch : ElasticKnnSearch.from_texts throws AttributeError

### System Info

Langchain version : 0.0.199
Python Version: Python 3.9.16
MacOS

@CodeDevNinja @dev2049 

PR https://github.com/hwchase17/langchain/pull/5058 introduced a change to ElasticVectorSearch from_texts which broke, kind of coincidentally, ElasticKnnSearch from_texts

I discovered this issue when running docs/modules/indexes/vectorstores/examples/elasticsearch.ipynb . I got to the following cell:

```python
# Test `add_texts` method
texts = ["Hello, world!", "Machine learning is fun.", "I love Python."]
knn_search.add_texts(texts)

# Test `from_texts` method
new_texts = ["This is a new text.", "Elasticsearch is powerful.", "Python is great for data analysis."]
knn_search.from_texts(new_texts, embeddings, elasticsearch_url=elasticsearch_url)
```

and it said:
```python
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
Cell In[10], line 7
      5 # Test `from_texts` method
      6 new_texts = ["This is a new text.", "Elasticsearch is powerful.", "Python is great for data analysis."]
----> 7 knn_search.from_texts(new_texts, embeddings, elasticsearch_url=elasticsearch_url)

File ~/dev/github/langchain/langchain/vectorstores/elastic_vector_search.py:296, in ElasticVectorSearch.from_texts(cls, texts, embedding, metadatas, elasticsearch_url, index_name, refresh_indices, **kwargs)
    293 index_name = index_name or uuid.uuid4().hex
    294 vectorsearch = cls(
    295     elasticsearch_url, index_name, embedding, **kwargs)
--> 296 vectorsearch.add_texts(
    297     texts, metadatas=metadatas, refresh_indices=refresh_indices
    298 )
    299 return vectorsearch

File ~/dev/github/langchain/langchain/vectorstores/elastic_vector_search.py:183, in ElasticVectorSearch.add_texts(self, texts, metadatas, refresh_indices, **kwargs)
    181 requests = []
    182 ids = []
--> 183 embeddings = self.embedding.embed_documents(list(texts))
    184 dim = len(embeddings[0])
    185 mapping = _default_text_mapping(dim)

AttributeError: 'str' object has no attribute 'embed_documents'
```

which is a pretty weird error. 

This is because https://github.com/cdiddy77/langchain/blob/e74733ab9e5e307fd828ea600ea929a1cb24320f/langchain/vectorstores/elastic_vector_search.py#L294 invokes the __init__ of the calling class, in this case `ElasticKnnSearch` which takes parameters in a very different order. 

This calling of the wrong __init__ was always present, but the PR above added a subsequent called to add_texts, which is where the bogus embedding is referenced, causing the exception.

### Who can help?

_No response_

### Information

- [X] The official example notebooks/scripts
- [ ] 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

Steps to repro:

1. Open docs/modules/indexes/vectorstores/examples/elasticsearch.ipynb
2. Modify as appropriate with elasticsearch_url, and further down, model_id, dims, cloud_id, username,password of elastic cloud deployment
3. Run until cell below "Test adding vectors"



### Expected behavior

Not throw exception