Error happened in PromptTemplate + PydanticOutputParser
Labels: name: auto:bug, name: area: models

### System Info

langchain v0.0.324
python 3.10
window10 amd64

### Who can help?

@hwchase17 @agola11 

### Information

- [ ] The official example notebooks/scripts
- [X] My own modified scripts

### Related Components

- [ ] LLMs/Chat Models
- [ ] Embedding Models
- [X] Prompts / Prompt Templates / Prompt Selectors
- [X] Output Parsers
- [ ] Document Loaders
- [ ] Vector Stores / Retrievers
- [ ] Memory
- [ ] Agents / Agent Executors
- [ ] Tools / Toolkits
- [ ] Chains
- [ ] Callbacks/Tracing
- [ ] Async

### Reproduction

Run the following code, then you will see the error.

```python
import os
import openai
from typing import Dict, Any

from dotenv import load_dotenv
from langchain.output_parsers import PydanticOutputParser
from langchain.prompts import PromptTemplate
from langchain.pydantic_v1 import BaseModel, Field

load_dotenv()
openai.api_key = os.getenv("OPENAI_API_KEY")


class Task(BaseModel):
    id: int = Field(description="Autoincrement task id")
    name: str = Field(description="task name")
    parameters: Dict[str, Any] = Field(description="task parameters")
    reason: str = Field(description="Reason for task execution")


class CommandResponse(BaseModel):
    task: Task = Field(description="control task")


def main():
    output_parser = PydanticOutputParser(pydantic_object=CommandResponse)
    instruction = output_parser.get_format_instructions()

    _prompt = """
    ## User Demand
    {user_input}

    ## Pending Control Task Queue
    {task_queue}
    """

    prompt = PromptTemplate(
        template=f"{_prompt}\n{instruction}",
        input_variables=["user_input", "task_queue"],
    )

    _input = prompt.format_prompt(user_input="hello", task_queue="aaa")
    print(_input)

if __name__ == "__main__":
    main()

```

error log: 

```
Traceback (most recent call last):
  File "D:\Programming\Python\Project\promptulate\private\demo3.py", line 67, in <module>
    main()
  File "D:\Programming\Python\Project\promptulate\private\demo3.py", line 48, in main
    _input = prompt.format_prompt(user_input="hello", task_queue="aaa")
  File "E:\Programming\anaconda\envs\prompt-me\lib\site-packages\langchain\prompts\base.py", line 159, in format_prompt
    return StringPromptValue(text=self.format(**kwargs))
  File "E:\Programming\anaconda\envs\prompt-me\lib\site-packages\langchain\prompts\prompt.py", line 119, in format
    return DEFAULT_FORMATTER_MAPPING[self.template_format](self.template, **kwargs)
  File "E:\Programming\anaconda\envs\prompt-me\lib\string.py", line 161, in format
    return self.vformat(format_string, args, kwargs)
  File "E:\Programming\anaconda\envs\prompt-me\lib\site-packages\langchain\utils\formatting.py", line 29, in vformat
    return super().vformat(format_string, args, kwargs)
  File "E:\Programming\anaconda\envs\prompt-me\lib\string.py", line 165, in vformat
    result, _ = self._vformat(format_string, args, kwargs, used_args, 2)
  File "E:\Programming\anaconda\envs\prompt-me\lib\string.py", line 205, in _vformat
    obj, arg_used = self.get_field(field_name, args, kwargs)
  File "E:\Programming\anaconda\envs\prompt-me\lib\string.py", line 270, in get_field
    obj = self.get_value(first, args, kwargs)
  File "E:\Programming\anaconda\envs\prompt-me\lib\string.py", line 227, in get_value
    return kwargs[key]
KeyError: '"properties"'
```

This error occurs when there are multiple {} in the prompt, and the excess {} is introduced by PydanticOutputParser.

The instruction of PydanticOutputParser is as follows:

```python
    """
    The output should be formatted as a JSON instance that conforms to the JSON schema below.

    As an example, for the schema {"properties": {"foo": {"description": "a list of strings", "type": "array", "items": {"type": "string"}}}, "required": ["foo"]}
    the object {"foo": ["bar", "baz"]} is a well-formatted instance of the schema. The object {"properties": {"foo": ["bar", "baz"]}} is not well-formatted.

    Here is the output schema:
    ```
    {"properties": {"task": {"description": "control task", "allOf": [{"$ref": "#/definitions/Task"}]}}, "required": ["task"], "definitions": {"Task": {"title": "Task", "type": "object", "properties": {"id": {"title": "Id", "description": "Autoincrement task id", "type": "integer"}, "name": {"title": "Name", "description": "task name", "type": "string"}, "parameters": {"title": "Parameters", "description": "task parameters", "type": "object"}, "reason": {"title": "Reason", "description": "Reason for task execution", "type": "string"}}, "required": ["id", "name", "parameters", "reason"]}}}
    ```
    """
```

### Expected behavior

No error is expected.