> ## Documentation Index
> Fetch the complete documentation index at: https://langchain-zh.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# LangSmithLoader 集成

> 使用 LangChain JavaScript 集成 LangSmithLoader 文档加载器。

本笔记本提供了快速入门 `LangSmithLoader` [文档加载器](/oss/javascript/integrations/document_loaders/) 的简要概述。有关 `LangSmithLoader` 所有功能和配置的详细文档，请参阅 [API 参考](https://reference.langchain.com/javascript/langchain-core/document_loaders/langsmith/LangSmithLoader)。

## 概述

### 集成详情

| 类                                                                                                                         | 包                                                                  |  本地 | 可序列化 | [Python 支持](https://python.langchain.com/docs/integrations/document_loaders/langsmith) |
| :------------------------------------------------------------------------------------------------------------------------ | :----------------------------------------------------------------- | :-: | :--: | :------------------------------------------------------------------------------------: |
| [`LangSmithLoader`](https://reference.langchain.com/javascript/langchain-core/document_loaders/langsmith/LangSmithLoader) | [`@langchain/core`](https://www.npmjs.com/package/@langchain/core) |  ✅  | beta |                                            ✅                                           |

### 加载器特性

|         来源        | 网页加载器 | 仅限 Node 环境 |
| :---------------: | :---: | :--------: |
| `LangSmithLoader` |   ✅   |      ❌     |

## 设置

要访问 LangSmith 文档加载器，您需要安装 `@langchain/core`，创建一个 [LangSmith](https://langsmith.com/) 账户并获取 API 密钥。

### 凭证

在 [langsmith.com](https://langsmith.com) 注册并生成 API 密钥。完成后，设置 `LANGSMITH_API_KEY` 环境变量：

```bash theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
export LANGSMITH_API_KEY="your-api-key"
```

### 安装

`LangSmithLoader` 集成位于 `@langchain/core` 包中：

<CodeGroup>
  ```bash npm theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  npm install @langchain/core
  ```

  ```bash yarn theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  yarn add @langchain/core
  ```

  ```bash pnpm theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  pnpm add @langchain/core
  ```
</CodeGroup>

## 创建示例数据集

在此示例中，我们将创建一个新的数据集，用于文档加载器。

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
import { Client as LangSmithClient } from 'langsmith';
import { faker } from "@faker-js/faker";

const lsClient = new LangSmithClient();

const datasetName = "LangSmith Few Shot Datasets Notebook";

const exampleInputs = Array.from({ length: 10 }, (_, i) => ({
  input: faker.lorem.paragraph(),
}));
const exampleOutputs = Array.from({ length: 10 }, (_, i) => ({
  output: faker.lorem.sentence(),
}));
const exampleMetadata = Array.from({ length: 10 }, (_, i) => ({
  companyCatchPhrase: faker.company.catchPhrase(),
}));

await lsClient.deleteDataset({
  datasetName,
})

const dataset = await lsClient.createDataset(datasetName);

const examples = await lsClient.createExamples({
  inputs: exampleInputs,
  outputs: exampleOutputs,
  metadata: exampleMetadata,
  datasetId: dataset.id,
});
```

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
import { LangSmithLoader } from "@langchain/core/document_loaders/langsmith"

const loader = new LangSmithLoader({
  datasetName: "LangSmith Few Shot Datasets Notebook",
  // 除了 datasetName，您也可以提供 datasetId
  // datasetId: dataset.id,
  contentKey: "input",
  limit: 5,
  // formatContent: (content) => content,
  // ... 其他选项
})
```

## 加载

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
const docs = await loader.load()
docs[0]
```

```javascript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
{
  pageContent: 'Conventus supellex aegrotatio termes. Vapulus abscido ubi vita coadunatio modi crapula comparo caecus. Acervus voluptate tergeo pariatur conor argumentum inventore vomito stella.',
  metadata: {
    id: 'f1a04800-6f7a-4232-9743-fb5d9029bf1f',
    created_at: '2024-08-20T17:01:38.984045+00:00',
    modified_at: '2024-08-20T17:01:38.984045+00:00',
    name: '#f1a0 @ LangSmith Few Shot Datasets Notebook',
    dataset_id: '9ccd66e6-e506-478c-9095-3d9e27575a89',
    source_run_id: null,
    metadata: {
      dataset_split: [Array],
      companyCatchPhrase: 'Integrated solution-oriented secured line'
    },
    inputs: {
      input: 'Conventus supellex aegrotatio termes. Vapulus abscido ubi vita coadunatio modi crapula comparo caecus. Acervus voluptate tergeo pariatur conor argumentum inventore vomito stella.'
    },
    outputs: {
      output: 'Excepturi adeptio spectaculum bis volaticus accusamus.'
    }
  }
}
```

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
console.log(docs[0].metadata)
```

```javascript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
{
  id: 'f1a04800-6f7a-4232-9743-fb5d9029bf1f',
  created_at: '2024-08-20T17:01:38.984045+00:00',
  modified_at: '2024-08-20T17:01:38.984045+00:00',
  name: '#f1a0 @ LangSmith Few Shot Datasets Notebook',
  dataset_id: '9ccd66e6-e506-478c-9095-3d9e27575a89',
  source_run_id: null,
  metadata: {
    dataset_split: [ 'base' ],
    companyCatchPhrase: 'Integrated solution-oriented secured line'
  },
  inputs: {
    input: 'Conventus supellex aegrotatio termes. Vapulus abscido ubi vita coadunatio modi crapula comparo caecus. Acervus voluptate tergeo pariatur conor argumentum inventore vomito stella.'
  },
  outputs: { output: 'Excepturi adeptio spectaculum bis volaticus accusamus.' }
}
```

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
console.log(docs[0].metadata.inputs)
```

```javascript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
{
  input: 'Conventus supellex aegrotatio termes. Vapulus abscido ubi vita coadunatio modi crapula comparo caecus. Acervus voluptate tergeo pariatur conor argumentum inventore vomito stella.'
}
```

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
console.log(docs[0].metadata.outputs)
```

```javascript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
{ output: 'Excepturi adeptio spectaculum bis volaticus accusamus.' }
```

```typescript theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
console.log(Object.keys(docs[0].metadata))
```

```python theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
[
  'id',
  'created_at',
  'modified_at',
  'name',
  'dataset_id',
  'source_run_id',
  'metadata',
  'inputs',
  'outputs'
]
```

***

## API 参考

有关 `LangSmithLoader` 所有功能和配置的详细文档，请参阅 [API 参考](https://reference.langchain.com/javascript/langchain-core/document_loaders/langsmith/LangSmithLoader)

***

<div className="source-links">
  <Callout icon="edit">
    [Edit this page on GitHub](https://github.com/langchain-ai/docs/edit/main/src/i18n\zh-CN\oss\javascript\integrations\document_loaders\web_loaders\langsmith.mdx) or [file an issue](https://github.com/langchain-ai/docs/issues/new/choose).
  </Callout>

  <Callout icon="terminal-2">
    [Connect these docs](/use-these-docs) to Claude, VSCode, and more via MCP for real-time answers.
  </Callout>
</div>
