# カスタム列：値の直接抽出・計算・推論

> カスタム列の値は、文書から直接抽出するか、文書に表示されている内容から計算するか、文脈から推論することができます。このページでは、それぞれの方法の仕組み、指示の書き方、現在の制限について説明します。

[**カスタム列**](/docs/reference/glossary#custom-column)とは、AIが値を生成する[列](/docs/reference/glossary#column)のことです。その値は、文書から直接読み取るか、文書に表示されている内容から計算するか、何も印刷されていない場合に文脈から推論するかの3つの方法のいずれかで得られます。3つの方法はすべて同じ方法で設定します。列名と任意の[形式要件](/docs/reference/glossary#format-requirement)を指定するだけで、切り替えるための特別なモードはありません。

## 列が値を取得する3つの方法

すべての列は値を生成します。どの種類の列になるかは、設定ではなく、何を要求するかによって決まります。

| 種類 | AIが行う処理 | 例 |
| --- | --- | --- |
| 直接抽出 | 文書に印刷されている値を読み取り、そのまま返します。 | 仕入先名 |
| 計算列 | 値をコピーする代わりに計算します。たとえば、文書に印刷されていない金額や、印刷されている数値に対するチェックなどです。 | 行合計（数量 × 単価） |
| 推論列 | どこにも書かれていない値を、文書全体を考慮して判断します。 | カテゴリ（選択肢：食事、交通、オフィス、その他） |

直接抽出がデフォルトです。指示で値の名前だけを指定した場合、AIはそれを読み取ります。計算や推論は、指示で要求された場合にのみ行われます。3つの種類はすべて同じ2つのフィールドに記述するため、切り替えるものはありません。

### 直接抽出

AIが文書上の値を特定し、その値を返します。形式要件が別の指定をしない限り、計算・整形・書き換えは行わないため、印刷されている内容がそのまま取得されます。値が見つからない場合は、推測せずにセルを空のままにします。

### 計算列

指示文で計算を依頼すると、AIはそのファイルを読み取る際に、抽出と同じパス内で計算を実行します。後から別途計算ステップを実行するわけではありません。結果はテーブルの通常のセルとして返されるため、後から数式列を追加する必要はありません。

依頼できる計算の例：

- 印刷されていない行合計：`Line Total (Qty × Unit Price)`
- 印刷された数値との比較：`Verification (OK if Calculated Total = Billed Total, else the difference)`
- 記載された料金の差し引き、指示文で指定した率の適用、2つの日付の差の算出など。

計算はAIが処理中のファイルで確認できる内容に基づくため、そのファイルのスナップショットであり、後から再計算されるものではありません。

### 推論列

推論列は、文書に記載されていない事項を、文書全体を根拠にAIが判断するよう依頼するものです。列に名前を付け、判断方法を記述します。結果を制限したい場合は、許可される回答も指定します。例えば、領収書に`Category (options: Meals, Transport, Office, Other)`と指定すると、カテゴリ行が印刷されていなくても適切なカテゴリが入力されます。推論は抽出と同じパス内で行われるため、1つのファイルだけでなく、[バッチ](/docs/reference/glossary#batch)全体にわたって機能します。

## 指示文の記述場所

列の作成と編集は**データ列**パネルで行います。列の編集アクションを開くと、**ルール編集**ダイアログが表示され、2つの入力欄があります：

| フィールド | 制御内容 |
| --- | --- |
| データフィールド名（抽出指示） | 列のラベルと、 何を 見つけるか・生成するかの指示。詳細が形式要件にある場合は、簡潔に保ちます。 |
| 形式要件（任意） | 値の返し方、または生成方法（計算や判断ルール）。この列にのみ適用されます。 |

“計算”や“推論”を示す専用フィールドはありません。列の種類は指示文の内容によって完全に表現されるため、3種類すべてが同じ2つの入力欄を共有します。例：列名`Line Total`、形式要件`Quantity multiplied by Unit Price`。

計算を列名自体に含めることもできます（例：`Line Total (Qty × Unit Price)`）。この場合、形式要件は空のままにします。これは、**抽出する列**ボックスが1つだけで形式要件フィールドがないログイン不要のデモで一般的な方法です。ダッシュボードでは、計算を形式要件に、列名を簡潔に保つ方が再利用しやすくなります。

列の作成、編集、並べ替え、[テンプレート](/docs/reference/glossary#template)への保存については、[テンプレートと列](/docs/concepts/templates-and-columns)を参照してください。

## 現在の制限事項

- **複数の値を組み合わせると誤りが生じることがある。**最も難しい計算は、複数の値を組み合わせる必要があるもの（セクション合計、複数週の合計、1つの式内の複数のオペランドなど）です。これらはまれに誤った数値を返すことがあります。
- **計算はファイルやページをまたいで行うことはできない。**計算は処理中の1つのファイルに対して行われ、そのファイル上の値のみを参照します。必要な数値が2つのページや2つのファイルに分かれている場合、列だけではそれらを組み合わせることはできません。各入力をそれぞれ独自の列として抽出し、エクスポート後に組み合わせてください。
- **計算を明示的に依頼する必要がある。**それを要求する指示がない場合、AIは列を直接読み取りとして扱い、独自に計算や値のクレンジングを行いません。

**計算量の多いドキュメント：**ツールバーの**Precision+**トグルは、モデルが回答する前により多くの時間をかけて推論するよう要求します（ツールチップには「最高品質、低速」と表示されます）。列で複数の値を組み合わせる必要がある場合（たとえば、明細金額の列を合計する場合）はオンにし、処理速度が遅くなることを許容してください。

## よくある質問

### 計算列や推論列は追加の[クレジット](/docs/reference/glossary#credits)を消費しますか？

いいえ。実行は処理されたファイルごとに、アカウントの[モデル階層](/docs/concepts/model-tier)（Standard、Advanced、Premium）のレートで課金されます。要求する列の数によって変わることはありません。計算列や推論列を追加しても、追加コストは発生しません。

### ソース値を独自の列として抽出する必要もありますか？

いいえ。計算では、個別の列を作成していなくても、ドキュメント上で表示可能な値を使用できます。入力値を独自の列として抽出することは、計算結果をそれらと照合したい場合に役立ちます。

### AIが値を判断できない場合はどうなりますか？

推測で埋めるのではなくセルを空のままにするため、空白が実際のデータと誤認されることはありません。推論列が頻繁に空で返ってくる場合は、指示に詳細や許可されたオプションを追加してください。

---

Source: https://imagetotable.ai/ja/docs/concepts/custom-columns
