@langchain/core
Version:
Core LangChain.js abstractions and schemas
1 lines • 2.48 kB
Source Map (JSON)
{"version":3,"file":"standard_schema.cjs","names":["BaseOutputParser","parseJsonMarkdown","OutputParserException"],"sources":["../../src/output_parsers/standard_schema.ts"],"sourcesContent":["import { StandardSchemaV1 } from \"@standard-schema/spec\";\nimport { BaseOutputParser, OutputParserException } from \"./base.js\";\nimport { parseJsonMarkdown } from \"./json.js\";\nimport { BaseMessage } from \"../messages/index.js\";\n\nexport class StandardSchemaOutputParser<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n> extends BaseOutputParser<RunOutput> {\n static lc_name() {\n return \"StandardSchemaOutputParser\";\n }\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"standard_schema\"];\n\n private readonly schema: StandardSchemaV1<RunOutput>;\n\n constructor(schema: StandardSchemaV1<RunOutput>) {\n super();\n this.schema = schema;\n }\n\n static fromSerializableSchema<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n >(schema: StandardSchemaV1<RunOutput>) {\n return new this(schema);\n }\n\n async parse(text: string): Promise<RunOutput> {\n try {\n const json = parseJsonMarkdown(text, JSON.parse);\n const result = await this.schema[\"~standard\"].validate(json);\n if (result.issues) {\n throw new Error(`Validation failed: ${JSON.stringify(result.issues)}`);\n }\n return result.value as RunOutput;\n } catch (e) {\n throw new OutputParserException(\n `Failed to parse. Text: \"${text}\". Error: ${e}`,\n text\n );\n }\n }\n\n protected override _baseMessageToString(message: BaseMessage): string {\n return message.text;\n }\n\n getFormatInstructions(): string {\n return \"\";\n }\n}\n"],"mappings":";;;;AAKA,IAAa,6BAAb,cAGUA,aAAAA,iBAA4B;CACpC,OAAO,UAAU;EACf,OAAO;CACT;CAEA,eAAe;EAAC;EAAa;EAAkB;CAAiB;CAEhE;CAEA,YAAY,QAAqC;EAC/C,MAAM;EACN,KAAK,SAAS;CAChB;CAEA,OAAO,uBAGL,QAAqC;EACrC,OAAO,IAAI,KAAK,MAAM;CACxB;CAEA,MAAM,MAAM,MAAkC;EAC5C,IAAI;GACF,MAAM,OAAOC,aAAAA,kBAAkB,MAAM,KAAK,KAAK;GAC/C,MAAM,SAAS,MAAM,KAAK,OAAO,YAAY,CAAC,SAAS,IAAI;GAC3D,IAAI,OAAO,QACT,MAAM,IAAI,MAAM,sBAAsB,KAAK,UAAU,OAAO,MAAM,GAAG;GAEvE,OAAO,OAAO;EAChB,SAAS,GAAG;GACV,MAAM,IAAIC,aAAAA,sBACR,2BAA2B,KAAK,YAAY,KAC5C,IACF;EACF;CACF;CAEA,qBAAwC,SAA8B;EACpE,OAAO,QAAQ;CACjB;CAEA,wBAAgC;EAC9B,OAAO;CACT;AACF"}