@langchain/community
Version:
Third-party integrations for LangChain.js
1 lines • 1.47 kB
Source Map (JSON)
{"version":3,"file":"output_parsers.cjs","names":["StructuredOutputParser","JsonOutputParser"],"sources":["../../src/utils/output_parsers.ts"],"sourcesContent":["import {\n JsonOutputParser,\n StructuredOutputParser,\n} from \"@langchain/core/output_parsers\";\nimport {\n InferInteropZodOutput,\n InteropZodType,\n} from \"@langchain/core/utils/types\";\n\nconst stripThinkTags = (text: string): string => {\n return text.replace(/<think>[\\s\\S]*?<\\/think>\\s*/g, \"\").trim();\n};\n\nexport class ReasoningStructuredOutputParser<\n RunOutput extends InteropZodType,\n> extends StructuredOutputParser<RunOutput> {\n constructor(schema: RunOutput) {\n super(schema);\n }\n\n async parse(text: string): Promise<InferInteropZodOutput<RunOutput>> {\n const cleanedText = stripThinkTags(text);\n return super.parse(cleanedText);\n }\n}\n\nexport class ReasoningJsonOutputParser<\n RunOutput extends Record<string, unknown>,\n> extends JsonOutputParser<RunOutput> {\n async parse(text: string): Promise<RunOutput> {\n const cleanedText = stripThinkTags(text);\n return super.parse(cleanedText);\n }\n}\n"],"mappings":";;;AASA,MAAM,kBAAkB,SAAyB;AAC/C,QAAO,KAAK,QAAQ,gCAAgC,GAAG,CAAC,MAAM;;AAGhE,IAAa,kCAAb,cAEUA,+BAAAA,uBAAkC;CAC1C,YAAY,QAAmB;AAC7B,QAAM,OAAO;;CAGf,MAAM,MAAM,MAAyD;EACnE,MAAM,cAAc,eAAe,KAAK;AACxC,SAAO,MAAM,MAAM,YAAY;;;AAInC,IAAa,4BAAb,cAEUC,+BAAAA,iBAA4B;CACpC,MAAM,MAAM,MAAkC;EAC5C,MAAM,cAAc,eAAe,KAAK;AACxC,SAAO,MAAM,MAAM,YAAY"}