AirtableLoader
AirtableLoader 类提供了从 Airtable 表格加载文档的功能。它支持两种主要方法:
load():一次性检索所有记录,适用于小型到中型数据集。loadLazy():逐条记录获取,适用于大型数据集,内存效率更高。
前提条件
请确保你的 Airtable API 密钥已作为环境变量提供:
process.env.AIRTABLE_API_TOKEN = "YOUR_AIRTABLE_API_TOKEN";
使用方法
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:
- AirtableLoader from
@langchain/community/document_loaders/web/airtable - Document from
@langchain/core/documents