AzureSearch semantic_hybrid_search fails due to hardcoding of metadata fields
Labels: name: area: vector store, name: auto:bug

### System Info

azure-search-documents==11.4.0b8
langchain==0.0.352

### Who can help?

_No response_

### 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
I have my own search index with no `metadata` field.

#### Code
```python
from langchain.vectorstores.azuresearch import AzureSearch
vector_store: AzureSearch = AzureSearch(
    azure_search_endpoint=vector_store_address,
    azure_search_key=vector_store_password,
    index_name=index_name,
    embedding_function=embeddings.embed_query,
    semantic_configuration_name="default"
)

query = "How many employees does Contoso Electronics have?"  
docs = vector_store.semantic_hybrid_search(
    query=query,
    search_type="semantic_hybrid",
)
print(docs[0])
```

#### Stack trace
```
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
File \lib\site-packages\langchain_community\vectorstores\azuresearch.py:656, in <listcomp>(.0)
    622     semantic_answers_dict[semantic_answer.key] = {
    623         "text": semantic_answer.text,
    624         "highlights": semantic_answer.highlights,
    625     }
    626 # Convert results to Document objects
    627 docs = [
    628     (
    629         Document(
    630             page_content=result.pop(FIELDS_CONTENT),
    631             metadata={
    632                 **(
    633                     {FIELDS_ID: result.pop(FIELDS_ID)}
    634                     if FIELDS_ID in result
    635                     else {}
    636                 ),
    637                 **(
    638                     json.loads(result[FIELDS_METADATA])
    639                     if FIELDS_METADATA in result
    640                     else {
    641                         k: v
    642                         for k, v in result.items()
    643                         if k != FIELDS_CONTENT_VECTOR
    644                     }
    645                 ),
    646                 **{
    647                     "captions": {
    648                         "text": result.get("@search.captions", [{}])[0].text,
    649                         "highlights": result.get("@search.captions", [{}])[
    650                             0
    651                         ].highlights,
    652                     }
    653                     if result.get("@search.captions")
    654                     else {},
    655                     "answers": semantic_answers_dict.get(
--> 656                         json.loads(result["metadata"]).get("key"), ""
    657                     ),
    658                 },
    659             },
    660         ),
    661         float(result["@search.score"]),
    662         float(result["@search.reranker_score"]),
    663     )
    664     for result in results
    665 ]
    666 return docs

KeyError: 'metadata'
```

### Expected behavior

I get search results from Azure AI Search.

This error is caused by the hardcoding of `metadata` field name, such as `result["metadata"]` in line 656 of `langchain\libs\community\langchain_community\vectorstores\azuresearch.py`. Therefore, performing a search on an Azure AI Search index that does not have this field will fail.