> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ionworks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# パイプライン概要

> ionworks-schema でパラメータ化パイプラインを構築し、ionworks-api で送信します

パイプラインは、**要素**(`DirectEntry`、`Calculation`、`DataFit`、`Validation`)を順に並べてパラメータ化されたセルモデルを生成するものです。[`ionworks-schema`](https://schema.docs.ionworks.com/) でパイプラインを組み立て、[`ionworks-api`](https://github.com/ionworks/ionworks-api) で送信します。

各要素の概念と役割については、[パイプラインガイド (英語)](/guide/pipelines/overview) を参照してください。

<Note>
  ガイド(理論ページ)は現時点では英語のみで提供されています。本ページ群からのクロスリンクが `/guide/...` を指している箇所はそのため意図的なものです。
</Note>

## 最小構成のパイプライン

```python theme={null}
import ionworks_schema as iws
from ionworks import Ionworks

# データシートや文献からの既知パラメータ
known = iws.direct_entries.DirectEntry(
    parameters={"Ambient temperature [K]": 298.15},
    source="datasheet",
)

# 単純な容量計算
capacity_pos = iws.calculations.ElectrodeCapacity(electrode="positive")
capacity_neg = iws.calculations.ElectrodeCapacity(electrode="negative")

# 組み立てと送信
pipeline = iws.Pipeline(
    {"known": known, "Q_pos": capacity_pos, "Q_neg": capacity_neg},
    name="Capacity pipeline",
)

client = Ionworks()
submission = client.pipeline.create(pipeline)
print(submission.id)
```

`client.pipeline.create()` は `iws.Pipeline` インスタンスでも `pipeline.to_config()` が返す dict でも受け取れます(送信前にペイロードを確認したい場合は後者が便利です)。

## 要素の種類

| スキーマ                                                 | element\_type | 用途                                                                     |
| ---------------------------------------------------- | ------------- | ---------------------------------------------------------------------- |
| `iws.direct_entries.DirectEntry`                     | `entry`       | 既知のパラメータ値(文献、データシート、手動入力)を投入                                           |
| `iws.direct_entries.DirectEntryFunctionSchema` サブクラス | `entry`       | 既製のパラメータセット(電解液、OCP、デフォルト等)— [直接エントリ](/ja/pipelines/direct-entries)    |
| `iws.calculations.*`                                 | `calculation` | 他のパラメータから派生量を計算 — [計算](/ja/pipelines/calculations/geometry-capacity)   |
| `iws.DataFit` / `iws.ArrayDataFit`                   | `data_fit`    | 未知パラメータを測定データにフィット — [データフィッティング](/ja/pipelines/data-fitting/overview) |
| `iws.Validation`                                     | `validation`  | フィット済みパラメータを保留データで検証                                                   |

要素名(dict のキー)はパイプラインレポートに表示されます。**並び順は重要です**。各要素は前段の要素が生成したパラメータを受け取ります。

## 送信と結果取得

完全なリファレンスは [Python API](/ja/pipelines/api) を参照。一般的なフロー:

```python theme={null}
submission = client.pipeline.create(pipeline)
client.pipeline.wait_for_completion(submission.id)
result = client.pipeline.result(submission.id)
print(result.element_results)
```

<CardGroup cols={2}>
  <Card title="パイプライン (理論)" icon="diagram-project" href="/guide/pipelines/overview">
    パイプライン要素の概念モデルと構成方法 (英語ガイド)。
  </Card>

  <Card title="Python API" icon="code" href="/ja/pipelines/api">
    `client.pipeline.create / get / list / result / wait_for_completion`
  </Card>
</CardGroup>
