跳到主要内容
JSON 加载器使用 JSON 指针 来定位 JSON 文件中您想要定位的键。

无 JSON 指针示例

最简单的使用方法是不指定 JSON 指针。加载器将加载它在 JSON 对象中找到的所有字符串。 示例 JSON 文件:
{
  "texts": ["This is a sentence.", "This is another sentence."],
  "nestedTexts": {
    "one": "This is a sentence nested in an object.",
    "two": "This is another sentence nested in an object."
  }
}
示例代码
import { JSONLoader } from "@langchain/classic/document_loaders/fs/json";

const loader = new JSONLoader("src/document_loaders/example_data/example.json");

const docs = await loader.load();
/*
[
  Document {
    pageContent: 'This is a sentence.',
    metadata: { source: 'example.json', line: 1 }
  },
  Document {
    pageContent: 'This is another sentence.',
    metadata: { source: 'example.json', line: 2 }
  },
  Document {
    pageContent: 'This is a sentence nested in an object.',
    metadata: { source: 'example.json', line: 3 }
  },
  Document {
    pageContent: 'This is another sentence nested in an object.',
    metadata: { source: 'example.json', line: 4 }
  }
]
*/

使用 JSON 指针示例

您可以选择要从 JSON 对象中提取字符串的键。 在此示例中,我们只想从“from”和“surname”条目中提取信息。
{
  "1": {
    "body": "BD 2023 SUMMER",
    "from": "LinkedIn Job",
    "labels": ["IMPORTANT", "CATEGORY_UPDATES", "INBOX"]
  },
  "2": {
    "body": "Intern, Treasury and other roles are available",
    "from": "LinkedIn Job2",
    "labels": ["IMPORTANT"],
    "other": {
      "name": "plop",
      "surname": "bob"
    }
  }
}
示例代码
import { JSONLoader } from "@langchain/classic/document_loaders/fs/json";

const loader = new JSONLoader(
  "src/document_loaders/example_data/example.json",
  ["/from", "/surname"]
);

const docs = await loader.load();
/*
[
  Document {
    pageContent: 'LinkedIn Job',
    metadata: { source: 'example.json', line: 1 }
  },
  Document {
    pageContent: 'LinkedIn Job2',
    metadata: { source: 'example.json', line: 2 }
  },
  Document {
    pageContent: 'bob',
    metadata: { source: 'example.json', line: 3 }
  }
]

以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。
© . This site is unofficial and not affiliated with LangChain, Inc.