!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}return t}()||function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}(),document.documentElement.setAttribute("data-announcement-bar-initially-dismissed",function(){try{return"true"===localStorage.getItem("docusaurus.announcement.dismiss")}catch(t){}return!1}())

[Skip to main content](#__docusaurus_skipToContent_fallback)

LangChain v0.2 is coming soon! Preview the new docs [here](/v0.2/docs/introduction/).

[

![🦜️🔗 Langchain](/v0.1/img/brand/wordmark.png)![🦜️🔗 Langchain](/v0.1/img/brand/wordmark-dark.png)

](/v0.1/)[Docs](/v0.1/docs/get_started/introduction/)[Use cases](/v0.1/docs/use_cases/)[Integrations](/v0.1/docs/integrations/platforms/)[API Reference](https://api.js.langchain.com)

[More](#)

*   [People](/v0.1/docs/people/)
*   [Community](/v0.1/docs/community/)
*   [Tutorials](/v0.1/docs/additional_resources/tutorials/)
*   [Contributing](/v0.1/docs/contributing/)

[v0.1](#)

*   [v0.2](https://js.langchain.com/v0.2/docs/introduction)
*   [v0.1](/v0.1/docs/get_started/introduction/)

[🦜🔗](#)

*   [LangSmith](https://smith.langchain.com)
*   [LangSmith Docs](https://docs.smith.langchain.com)
*   [LangChain Hub](https://smith.langchain.com/hub)
*   [LangServe](https://github.com/langchain-ai/langserve)
*   [Python Docs](https://python.langchain.com/)

[Chat](https://chatjs.langchain.com)[](https://github.com/langchain-ai/langchainjs)

Search

*   [Get started](/v0.1/docs/get_started/)
    
    *   [Introduction](/v0.1/docs/get_started/introduction/)
    *   [Installation](/v0.1/docs/get_started/installation/)
    *   [Quickstart](/v0.1/docs/get_started/quickstart/)
*   [LangChain Expression Language](/v0.1/docs/expression_language/)
    
    *   [Get started](/v0.1/docs/expression_language/get_started/)
    *   [Why use LCEL?](/v0.1/docs/expression_language/why/)
    *   [Interface](/v0.1/docs/expression_language/interface/)
    *   [Streaming](/v0.1/docs/expression_language/streaming/)
    *   [How to](/v0.1/docs/expression_language/how_to/routing/)
        
    *   [Cookbook](/v0.1/docs/expression_language/cookbook/)
        
    *   [LangChain Expression Language (LCEL)](/v0.1/docs/expression_language/)
*   [Modules](/v0.1/docs/modules/)
    
    *   [Model I/O](/v0.1/docs/modules/model_io/)
        
        *   [Quickstart](/v0.1/docs/modules/model_io/quick_start/)
        *   [Concepts](/v0.1/docs/modules/model_io/concepts/)
        *   [Prompts](/v0.1/docs/modules/model_io/prompts/)
            
        *   [LLMs](/v0.1/docs/modules/model_io/llms/)
            
        *   [Chat Models](/v0.1/docs/modules/model_io/chat/)
            
        *   [Model I/O](/v0.1/docs/modules/model_io/)
        *   [Output Parsers](/v0.1/docs/modules/model_io/output_parsers/)
            
            *   [Quick Start](/v0.1/docs/modules/model_io/output_parsers/quick_start/)
            *   [Custom output parsers](/v0.1/docs/modules/model_io/output_parsers/custom/)
            *   [Output Parser Types](/v0.1/docs/modules/model_io/output_parsers/types/)
                
                *   [String output parser](/v0.1/docs/modules/model_io/output_parsers/types/string/)
                *   [HTTP Response Output Parser](/v0.1/docs/modules/model_io/output_parsers/types/http_response/)
                *   [JSON Output Functions Parser](/v0.1/docs/modules/model_io/output_parsers/types/json_functions/)
                *   [Bytes output parser](/v0.1/docs/modules/model_io/output_parsers/types/bytes/)
                *   [Combining output parsers](/v0.1/docs/modules/model_io/output_parsers/types/combining_output_parser/)
                *   [List parser](/v0.1/docs/modules/model_io/output_parsers/types/csv/)
                *   [Custom list parser](/v0.1/docs/modules/model_io/output_parsers/types/custom_list_parser/)
                *   [Datetime parser](/v0.1/docs/modules/model_io/output_parsers/types/datetime/)
                *   [OpenAI Tools](/v0.1/docs/modules/model_io/output_parsers/types/openai_tools/)
                *   [Auto-fixing parser](/v0.1/docs/modules/model_io/output_parsers/types/output_fixing/)
                *   [Structured output parser](/v0.1/docs/modules/model_io/output_parsers/types/structured/)
                *   [XML output parser](/v0.1/docs/modules/model_io/output_parsers/types/xml/)
    *   [Retrieval](/v0.1/docs/modules/data_connection/)
        
    *   [Chains](/v0.1/docs/modules/chains/)
    *   [Agents](/v0.1/docs/modules/agents/)
        
    *   [More](/v0.1/docs/modules/memory/)
        
*   [Security](/v0.1/docs/security/)
*   [Guides](/v0.1/docs/guides/)
    
*   [Ecosystem](/v0.1/docs/ecosystem/)
    
*   [LangGraph](/v0.1/docs/langgraph/)
*   * * *
    

*   [](/v0.1/)
*   [Modules](/v0.1/docs/modules/)
*   [Model I/O](/v0.1/docs/modules/model_io/)
*   [Output Parsers](/v0.1/docs/modules/model_io/output_parsers/)
*   Output Parser Types

Output Parser Types
===================

This is a list of the most popular output parsers LangChain supports. The table below has various pieces of information:

**Name**: The name of the output parser

**Supports Streaming**: Whether the output parser supports streaming.

**Has Format Instructions**: Whether the output parser has format instructions. This is generally available except when (a) the desired schema is not specified in the prompt but rather in other parameters (like OpenAI function calling), or (b) when the OutputParser wraps another OutputParser.

**Calls LLM**: Whether this output parser itself calls an LLM. This is usually only done by output parsers that attempt to correct misformatted output.

**Input Type**: Expected input type. Most output parsers work on both strings and messages, but some (like OpenAI Functions) need a message with specific kwargs.

**Output Type**: The output type of the object returned by the parser.

**Description**: Our commentary on this output parser and when to use it.

Name

Supports Streaming

Has Format Instructions

Calls LLM

Input Type

Output Type

Description

[String](/v0.1/docs/modules/model_io/output_parsers/types/string/)

✅

`string` or `Message`

`string`

Takes language model output (either an entire response or as a stream) and converts it into a string. This is useful for standardizing chat model and LLM output and makes working with chat model outputs much more convenient.

[HTTPResponse](/v0.1/docs/modules/model_io/output_parsers/types/http_response/)

✅

`string` or `Message`

`binary`

Allows you to stream LLM output properly formatted bytes a web [HTTP response](https://developer.mozilla.org/en-US/docs/Web/API/Response) for a variety of content types.

[OpenAIFunctions](/v0.1/docs/modules/model_io/output_parsers/types/json_functions/)

✅

(Passes `functions` to model)

`Message` (with `function_call`)

JSON object

Allows you to use OpenAI function calling to structure the return output. If you are using a model that supports function calling, this is generally the most reliable method.

[CSV](/v0.1/docs/modules/model_io/output_parsers/types/csv/)

✅

`string` or `Message`

`string[]`

Returns a list of comma separated values.

[OutputFixing](/v0.1/docs/modules/model_io/output_parsers/types/output_fixing/)

✅

`string` or `Message`

Wraps another output parser. If that output parser errors, then this will pass the error message and the bad output to an LLM and ask it to fix the output.

[Structured](/v0.1/docs/modules/model_io/output_parsers/types/structured/)

✅

`string` or `Message`

`Record<string, string>`

An output parser that returns structured information. It is less powerful than other output parsers since it only allows for fields to be strings. This can be useful when you are working with smaller LLMs.

[Datetime](/v0.1/docs/modules/model_io/output_parsers/types/datetime/)

✅

`string` or `Message`

`Date`

Parses response into a JavaScript date.

* * *

#### Help us out by providing feedback on this documentation page:

[

Previous

Custom output parsers

](/v0.1/docs/modules/model_io/output_parsers/custom/)[

Next

String output parser

](/v0.1/docs/modules/model_io/output_parsers/types/string/)

Community

*   [Discord](https://discord.gg/cU2adEyC7w)
*   [Twitter](https://twitter.com/LangChainAI)

GitHub

*   [Python](https://github.com/langchain-ai/langchain)
*   [JS/TS](https://github.com/langchain-ai/langchainjs)

More

*   [Homepage](https://langchain.com)
*   [Blog](https://blog.langchain.dev)

Copyright © 2024 LangChain, Inc.