ValueError: Missing some input keys: {'input'}
Labels: name: question, name: area: embeddings, name: auto:bug, name: area: models

### System Info

langchain deplopment on sagemaker

### Who can help?

_No response_

### Information

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

### Related Components

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

### Reproduction

from langchain import SagemakerEndpoint
from langchain.llms.sagemaker_endpoint import LLMContentHandler
from typing import Dict
import json

class HFContentHandler(LLMContentHandler):
    content_type = "application/json"
    accepts = "application/json"

    def transform_input(self, prompt: str, model_kwargs: Dict) -> bytes:
        input_dict = {
            "input": {
                "question": prompt,
                "context": model_kwargs
            }
        }
        input_str = json.dumps(input_dict)
        return input_str.encode('utf-8')

    def transform_output(self, output: bytes) -> str:
        response_json = output.read().decode('utf-8')
        res = json.loads(response_json)

        # Stripping away the input prompt from the returned response
        ans = res[0]['generated_text'][self.len_prompt:]
        ans = ans[:ans.rfind("Human")].strip()
        return ans

# Example parameters
parameters = {
    'do_sample': True,
    'top_p': 0.3,
    'max_new_tokens': 1024,
    'temperature': 0.6,
    'watermark': True       
}

llm = SagemakerEndpoint(
    endpoint_name="huggingface-pytorch-inference-**********",
    region_name="us-east-1",
    model_kwargs=parameters,
    content_handler=HFContentHandler(), 
)



from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain

memory = ConversationBufferMemory()
# Creating a chain with buffer memory to keep track of conversations
chain = ConversationChain(llm=llm, memory=memory)

chain.predict({"input": {"question": "this is test", "context": "this is answer"}})


### Expected behavior

there is error in content handler please help to correct it. 
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In[87], line 8
      5 # Creating a chain with buffer memory to keep track of conversations
      6 chain = ConversationChain(llm=llm, memory=memory)
----> 8 chain.predict({"input": {"question": "this is test", "context": "this is answer"}})

File ~/anaconda3/envs/python3/lib/python3.10/site-packages/langchain/chains/llm.py:255, in LLMChain.predict(self, callbacks, **kwargs)
    240 def predict(self, callbacks: Callbacks = None, **kwargs: Any) -> str:
    241     """Format prompt with kwargs and pass to LLM.
    242 
    243     Args:
   (...)
    253             completion = llm.predict(adjective="funny")
    254     """
--> 255     return self(kwargs, callbacks=callbacks)[self.output_key]

File ~/anaconda3/envs/python3/lib/python3.10/site-packages/langchain/chains/base.py:268, in Chain.__call__(self, inputs, return_only_outputs, callbacks, tags, metadata, run_name, include_run_info)
    232 def __call__(
    233     self,
    234     inputs: Union[Dict[str, Any], Any],
   (...)
    241     include_run_info: bool = False,
    242 ) -> Dict[str, Any]:
    243     """Execute the chain.
    244 
    245     Args:
   (...)
    266             `Chain.output_keys`.
    267     """
--> 268     inputs = self.prep_inputs(inputs)
    269     callback_manager = CallbackManager.configure(
    270         callbacks,
    271         self.callbacks,
   (...)
    276         self.metadata,
    277     )
    278     new_arg_supported = inspect.signature(self._call).parameters.get("run_manager")

File ~/anaconda3/envs/python3/lib/python3.10/site-packages/langchain/chains/base.py:425, in Chain.prep_inputs(self, inputs)
    423     external_context = self.memory.load_memory_variables(inputs)
    424     inputs = dict(inputs, **external_context)
--> 425 self._validate_inputs(inputs)
    426 return inputs

File ~/anaconda3/envs/python3/lib/python3.10/site-packages/langchain/chains/base.py:179, in Chain._validate_inputs(self, inputs)
    177 missing_keys = set(self.input_keys).difference(inputs)
    178 if missing_keys:
--> 179     raise ValueError(f"Missing some input keys: {missing_keys}")

ValueError: Missing some input keys: {'input'}