Skip to main content

AirtableLoader

AirtableLoader 类提供从 Airtable 表加载文档的功能。它支持两种主要方法:

¥The AirtableLoader class provides functionality to load documents from Airtable tables. It supports two main methods:

  1. load():一次性检索所有记录,适用于小型到中等规模的数据集。

    ¥load(): Retrieves all records at once, ideal for small to moderate datasets.

  2. loadLazy():逐条获取记录,这对于大型数据集来说更节省内存。

    ¥loadLazy(): Fetches records one by one, which is more memory-efficient for large datasets.

先决条件

¥Prerequisites

确保你的 Airtable API 令牌可作为环境变量使用:

¥Ensure that your Airtable API token is available as an environment variable:

process.env.AIRTABLE_API_TOKEN = "YOUR_AIRTABLE_API_TOKEN";

用法

¥Usage

import { AirtableLoader } from "@langchain/community/document_loaders/web/airtable";
import { Document } from "@langchain/core/documents";

// Default airtable loader
const loader = new AirtableLoader({
tableId: "YOUR_TABLE_ID",
baseId: "YOUR_BASE_ID",
});

try {
const documents: Document[] = await loader.load();
console.log("Loaded documents:", documents);
} catch (error) {
console.error("Error loading documents:", error);
}

// Lazy airtable loader
const loaderLazy = new AirtableLoader({
tableId: "YOUR_TABLE_ID",
baseId: "YOUR_BASE_ID",
});

try {
console.log("Lazily loading documents:");
for await (const document of loader.loadLazy()) {
console.log("Loaded document:", document);
}
} catch (error) {
console.error("Error loading documents lazily:", error);
}

// Airtable loader with specific view
const loaderView = new AirtableLoader({
tableId: "YOUR_TABLE_ID",
baseId: "YOUR_BASE_ID",
kwargs: { view: "YOUR_VIEW_NAME" },
});

try {
const documents: Document[] = await loader.load();
console.log("Loaded documents with view:", documents);
} catch (error) {
console.error("Error loading documents with view:", error);
}

API Reference: