@langchain/community
Version:
Third-party integrations for LangChain.js
1 lines • 1.53 kB
Source Map (JSON)
{"version":3,"file":"output_parsers.cjs","names":["text: string","StructuredOutputParser","schema: RunOutput","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,iBAAiB,CAACA,SAAyB;AAC/C,QAAO,KAAK,QAAQ,gCAAgC,GAAG,CAAC,MAAM;AAC/D;AAED,IAAa,kCAAb,cAEUC,uDAAkC;CAC1C,YAAYC,QAAmB;EAC7B,MAAM,OAAO;CACd;CAED,MAAM,MAAMF,MAAyD;EACnE,MAAM,cAAc,eAAe,KAAK;AACxC,SAAO,MAAM,MAAM,YAAY;CAChC;AACF;AAED,IAAa,4BAAb,cAEUG,iDAA4B;CACpC,MAAM,MAAMH,MAAkC;EAC5C,MAAM,cAAc,eAAe,KAAK;AACxC,SAAO,MAAM,MAAM,YAAY;CAChC;AACF"}