pythonintermediate
LangChain Output Parser for Code
Parse AI-generated code blocks with LangChain's custom output parsers to extract clean code.
pythonPress ⌘/Ctrl + Shift + C to copy
from langchain_core.output_parsers import BaseOutputParser
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
import re
class CodeBlockParser(BaseOutputParser[str]):
def parse(self, text: str) -> str:
match = re.search(r'```(?:python)?\n?(.*?)```', text, re.DOTALL)
if match:
return match.group(1).strip()
return text.strip()
@property
def _type(self) -> str:
return 'code_block_parser'
llm = ChatOpenAI(model='gpt-4o-mini')
prompt = ChatPromptTemplate.from_template('Write a Python function to {task}. Return only the code in a markdown code block.')
chain = prompt | llm | CodeBlockParser()
code = chain.invoke({'task': 'calculate fibonacci numbers'})
print(code)Use Cases
- code extraction
- AI code generation
- structured outputs
Tags
Related Snippets
Similar patterns you can reuse in the same workflow.
pythonbeginner
LangChain Prompt Chain (Python)
Build a simple LLMChain with a prompt template and ChatOpenAI in LangChain.
Best for: prompt chaining
#langchain#openai
pythonintermediate
LangChain Tool-Using Agent
Build a LangChain agent with custom tools for web search, calculator, and Python REPL.
Best for: AI agents
#langchain#agent
pythonintermediate
LangChain Pydantic Output Parser
Use LangChain's PydanticOutputParser to reliably parse structured data from LLM text responses.
Best for: information extraction
#langchain#pydantic
typescriptadvanced
LangChain RAG Chain Pipeline
Build a retrieval-augmented generation chain with LangChain using vector store retrieval and prompt templates.
Best for: Document Q&A
#langchain#rag