Pipelines API reference
=======================

このページでは、AIパイプラインの完全なパブリックAPIについて説明します。API全体で使用される型と列挙型、パイプラインの状態を検査するためのビュー、コアCRUDおよび実行機能、パイプラインステップとベクターインデックスの構成ヘルパー機能。モデル構成ヘルパーについては、
:ref:`Models reference <Models reference>` を参照してください。

タイプ
------

helpb.PipelineAutoProcessingモード
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

パイプラインが新しいデータまたは変更されたデータを自動的に処理する方法を制御します。

.. code:: sql

   CREATE TYPE PipelineAutoProcessingMode AS ENUM (
       Live,
       Background,
       Disabled
   );

.. csv-table::
  :header: Value,Description
  :widths: 10,30
  :align: left
  :class: longtable

  `Live`,Postgresトリガーを使用して、新しいデータが到着するとすぐに処理します。
  `Background`,Postgresワーカーを使用して、バックグラウンドでデータを継続的に処理します。
  `Disabled`,自動処理はありません。 `aidb.run_pipeline()`を使用して手動でトリガーします。

helpb.PipelineDataFormat
^^^^^^^^^^^^^^^^^^^^^^^^

パイプラインが処理するソースデータの形式を指定します。

.. code:: sql

   CREATE TYPE PipelineDataFormat AS ENUM (
       Text,
       Image,
       Pdf
   );

.. csv-table::
  :header: Value,Description
  :widths: 10,30
  :align: left
  :class: longtable

  `Text`,プレーンテキストデータ。
  `Image`,画像データバイト。
  `Pdf`,PDFドキュメント。

promoteb.PipelineSourceType
^^^^^^^^^^^^^^^^^^^^^^^^^^^

パイプラインが読み取るデータソースの種類を示します。

.. code:: sql

   CREATE TYPE PipelineSourceType AS ENUM (
       Table,
       Volume,
       Empty
   );

.. csv-table::
  :header: Value,Description
  :widths: 10,30
  :align: left
  :class: longtable

  `Table`,Postgresテーブルまたはビュー。
  `Volume`,PGFSストレージボリューム。
  `Empty`,ソースなし。パイプラインは独自のデータを生成します。

promoteb.PipelineDestinationType
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

パイプラインの書き込み先の種類を示します。

.. code:: sql

   CREATE TYPE PipelineDestinationType AS ENUM (
       Table,
       Volume,
       Empty
   );

.. csv-table::
  :header: Value,Description
  :widths: 10,30
  :align: left
  :class: longtable

  `Table`,Postgresテーブル。
  `Volume`,PGFSストレージボリューム。
  `Empty`,目的地はありません。出力は破棄されます。

helpb.PipelineStepOperation
^^^^^^^^^^^^^^^^^^^^^^^^^^^

パイプラインステップによって実行されるオペレーションを定義します。

.. code:: sql

   CREATE TYPE PipelineStepOperation AS ENUM (
       ChunkText,
       SummarizeText,
       ParseHtml,
       ParsePdf,
       PerformOcr,
       KnowledgeBase,
       PdfToImage,
       SemanticKB
   );

.. csv-table::
  :header: Value,Description
  :widths: 10,30
  :align: left
  :class: longtable

  `ChunkText`,テキストをより小さなチャンクに分割します。
  `SummarizeText`,言語モデルを使用してテキストを要約します。
  `ParseHtml`,HTMLからテキストコンテンツを抽出します。
  `ParsePdf`,PDFからテキストまたは画像を抽出します。
  `PerformOcr`,画像で光学式文字認識を実行します。
  `KnowledgeBase`,エンベディングを計算してナレッジベースに保存します。
  `PdfToImage`,PDFページを画像に変換します。
  `SemanticKB`,スキーマメタデータをセマンティックナレッジベースにインデックス付けします。

helpb.PipelineStatus
^^^^^^^^^^^^^^^^^^^^

パイプラインの現在の処理状態を表します。

.. code:: sql

   CREATE TYPE PipelineStatus AS ENUM (
   Stale         
   Processing    
   UpToDate      
   NoResults     
   Failed        
   Unknown       
   PartialErrors 
   BlockingErrors
   );

.. csv-table::
  :header: Value,Description
  :widths: 10,30
  :align: left
  :class: longtable

  `Stale`,ソースデータが変更されたため、パイプラインを実行する必要があります。
  `Processing`,パイプラインは現在実行中です。
  `UpToDate`,すべてのソースデータは正常に処理されました。
  `NoResults`,処理は完了しましたが、出力は生成されません。
  `Failed`,最後の実行は失敗しました。
  `PartialErrors`,一部のレコードの処理に失敗しました。他の人は成功しました。
  `BlockingErrors`,パイプラインの実行に失敗します。
  `Unknown`,ステータスを判断できません。

helpb.DistanceOperator
^^^^^^^^^^^^^^^^^^^^^^

ベクトル類似性検索に使用される距離メトリックを指定します。

.. code:: sql

   CREATE TYPE DistanceOperator AS ENUM (
       L2,
       InnerProduct,
       Cosine,
       L1,
       Hamming,
       Jaccard
   );

.. csv-table::
  :header: Value,Description
  :widths: 10,30
  :align: left
  :class: longtable

  `L2`,ユークリッド距離。
  `InnerProduct`,内積。
  `Cosine`,コサイン類似度。
  `L1`,L1マンハッタンの距離。
  `Hamming`,ハミング距離。
  `Jaccard`,ジャッカード距離。

--------------

ドメイン
--------

promoteb.pipeline_name_50
^^^^^^^^^^^^^^^^^^^^^^^^^

パイプライン名が50文字以下であることを適用する\ ``TEXT`` ドメイン。

promoteb.background_sync_interval
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

バックグラウンド同期間隔が\ ``1 second`` と\ ``2 days``
の間であることを強制する\ ``INTERVAL`` ドメイン。

--------------

ビュー
------

helpb.pipelines
^^^^^^^^^^^^^^^

``aidb.pipes``
としてもアクセスできます。登録されたすべてのパイプラインとその構成、ソース、宛先、処理モード、ステップ定義をリストします。

.. csv-table::
  :header: Column,Type,Description
  :widths: 12,15,25
  :align: left
  :class: longtable

  `id`,integer,内部パイプライン識別子。
  `name`,text,パイプラインの名前。
  `source_type`,:ref:`promoteb.PipelineSourceType<promoteb.PipelineSourceType>` ,ソースがテーブルかボリュームかどうか。
  `source_schema`,text,ソーステーブルのスキーマ。
  `source`,text,ソーステーブルまたはボリュームの名前。
  `source_key_column`,text,ソース内の一意キーとして使用される列。
  `source_data_column`,text,処理するデータを含む列。
  `destination_type`,:ref:`promoteb.PipelineDestinationType<promoteb.PipelineDestinationType>` ,デスティネーションがテーブルかボリュームかどうか。
  `destination_schema`,text,宛先テーブルのスキーマ。
  `destination`,text,宛先テーブルまたはボリュームの名前。
  `destination_key_column`,text,宛先テーブルのキー列。
  `destination_data_column`,text,処理されたデータが書き込まれる宛先の列。
  `steps`,jsonb,パイプラインステップ定義の順序付けられた配列。
  `auto_processing`,:ref:`helpb.PipelineAutoProcessingモード<helpb.PipelineAutoProcessingモード>` ,自動処理モード。
  `batch_size`,integer,バッチごとに処理されたレコードの数。
  `background_sync_interval`,interval,バックグラウンドモードでの実行間の間隔。
  `owner_role`,text,このパイプラインを所有するPostgresロール。

例
^^

.. code:: sql

   SELECT name, source, destination, auto_processing FROM aidb.pipelines;

promoteb.pipeline_metrics
^^^^^^^^^^^^^^^^^^^^^^^^^

``aidb.pipem``
としてもアクセスできます。各パイプラインの現在の処理統計を表示します。

.. csv-table::
  :header: Column,Type,Description
  :widths: 12,15,25
  :align: left
  :class: longtable

  `pipeline`,text,パイプラインの名前。
  `auto processing`,text,現在の自動処理モード。
  `table: unprocessed rows`,bigint,テーブルソースの場合 まだ処理されていない行数。
  `volume: scans completed`,bigint,ボリュームソースの場合 完了したフルスキャンの数。
  `count(source records)`,bigint,ソース内のレコードの合計数。
  `count(destination records)`,bigint,宛先のレコードの合計数。
  `Status`,text,現在の :ref:`パイプラインステータスの統合<パイプラインステータスの統合>` 。
  `count(record errors)`,bigint,処理に失敗したレコードの合計数。
  `count(blocking errors)`,bigint,パイプラインの実行を妨げたエラーの合計数。

.. _例-1:

例
^^

.. code:: sql

   SELECT * FROM aidb.pipeline_metrics;

   __OUTPUT__
          pipeline       | auto processing | table: unprocessed rows | volume: scans completed | count(source records) | count(destination records) |  Status  | count(record errors) | count(blocking errors)
   - ---------------------+-----------------+-------------------------+-------------------------+-----------------------+----------------------------+----------+----------------------+------------------------
    pipeline__7471a      | Background      |                       0 |                         |                     5 |                          5 | UpToDate |                    0 |                      0
    pipeline__7471b      | Background      |                       0 |                         |                     5 |                          5 | UpToDate |                    0 |                      0
    animal_facts_kb      | Disabled        |                       0 |                         |                    99 |                        372 | UpToDate |                    0 |                      0
    animal_facts_kb_bert | Disabled        |                       0 |                         |                    99 |                        372 | UpToDate |                    0 |                      0
    mpkb_pipe_int        | Disabled        |                       0 |                         |                     2 |                          4 | UpToDate |                    0 |                      0
    mpkb_pipe_text       | Disabled        |                       0 |                         |                     2 |                          4 | UpToDate |                    0 |                      0
   (6 rows)

--------------

ファンクション
--------------

promoteb.create_pipeline
^^^^^^^^^^^^^^^^^^^^^^^^

ソース、最大10の連続した処理ステップ、およびオプションの宛先を使用して新しいパイプラインを作成します。

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `name`,TEXT,Required,パイプラインの名前。最大50文字。
  `source`,TEXT,Required,ソーステーブルまたはボリュームの名前。
  `step_1`,:ref:`helpb.PipelineStepOperation<helpb.PipelineStepOperation>` ,Required,最初のパイプラインステップのオペレーション。
  `source_key_column`,TEXT,NULL,ソーステーブルの一意のキー列。
  `source_data_column`,TEXT,NULL,処理するデータを含む列。
  `destination`,TEXT,NULL,宛先テーブルまたはボリュームの名前。
  `auto_processing`,:ref:`helpb.PipelineAutoProcessingモード<helpb.PipelineAutoProcessingモード>` ,NULL,自動処理モード。
  `batch_size`,INT,NULL,バッチごとに処理するレコードの数。
  `background_sync_interval`,INTERVAL,NULL,バックグラウンドでの実行間の間隔。 1秒から2日の間である必要があります。
  `owner_role`,TEXT,NULL,このパイプラインを所有および実行するロール。
  `step_1_options`,JSONB,NULL,ステップ1の構成適切な :ref:`パイプラインステップ構成ヘルパー<パイプラインステップ構成ヘルパー>` を使用します。
  `step_2` … `step_10`,:ref:`helpb.PipelineStepOperation<helpb.PipelineStepOperation>` ,NULL,ステップ2〜10のオペレーション。
  `step_2_options` … `step_10_options`,JSONB,NULL,手順2〜10の構成。

返品
^^^^

.. csv-table::
  :header: Column,Type,Description
  :widths: 12,15,25
  :align: left
  :class: longtable

  `name`,text,作成されたパイプラインの名前。
  `destination_type`,text,パイプラインの宛先のタイプ。
  `destination_schema`,text,宛先のスキーマ。
  `destination`,text,宛先の名前。
  `destination_key_column`,text,宛先のキー列。
  `destination_data_column`,text,宛先のデータ列。

.. _例-2:

例
^^

.. code:: sql

   - - Single-step pipeline: chunk text from a table into a destination table
   SELECT aidb.create_pipeline(
       name                => my_chunker,
       source              => source_docs,
       source_key_column   => id,
       source_data_column  => body,
       destination         => chunked_docs,
       step_1              => ChunkText,
       step_1_options      => aidb.chunk_text_config(200, 250, 25),
       auto_processing     => Live
   );

   - - Multi-step pipeline: parse PDF, then embed into a knowledge base
   SELECT aidb.create_pipeline(
       name                => pdf_to_kb,
       source              => pdf_volume,
       destination         => my_kb,
       step_1              => ParsePdf,
       step_1_options      => aidb.pdf_parse_config(),
       step_2              => KnowledgeBase,
       step_2_options      => aidb.knowledge_base_config(my_model, Text),
       auto_processing     => Background,
       background_sync_interval => 60 seconds
   );

promoteb.update_pipeline
^^^^^^^^^^^^^^^^^^^^^^^^

既存のパイプラインの自動処理設定を更新します。

.. _パラメーター-1:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `name`,TEXT,Required,更新するパイプラインの名前。
  `auto_processing`,:ref:`helpb.PipelineAutoProcessingモード<helpb.PipelineAutoProcessingモード>` ,NULL,新しい自動処理モード。
  `batch_size`,INT,NULL,新しいバッチサイズ。
  `background_sync_interval`,INTERVAL,NULL,新しいバックグラウンド同期間隔。

.. _例-3:

例
^^

.. code:: sql

   SELECT aidb.update_pipeline(my_chunker, auto_processing => Background, background_sync_interval => 5 minutes);

promoteb.delete_pipeline
^^^^^^^^^^^^^^^^^^^^^^^^

パイプラインとその構成を削除します。ソースまたは宛先テーブルは削除しません。

.. _パラメーター-2:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `name`,TEXT,Required,削除するパイプラインの名前。

.. _例-4:

例
^^

.. code:: sql

   SELECT aidb.delete_pipeline(my_chunker);

promoteb.run_pipeline
^^^^^^^^^^^^^^^^^^^^^

``auto_processing``
モードに関係なく、パイプラインをすぐに実行するように手動でトリガーします。

.. _パラメーター-3:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `pipeline_name`,TEXT,Required,実行するパイプラインの名前。

.. _例-5:

例
^^

.. code:: sql

   SELECT aidb.run_pipeline(my_chunker);

--------------

パイプラインステップ構成ヘルパー
--------------------------------

これらのファンクションは、 ``aidb.create_pipeline``
の\ ``step_N_options`` パラメーターで使用する\ ``JSONB``
構成オブジェクトを結果ます。

promoteb.chunk_text_config
^^^^^^^^^^^^^^^^^^^^^^^^^^

テキストをより小さなセグメントに分割するように\ ``ChunkText``
ステップを構成します。

.. _パラメーター-4:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `desired_length`,INTEGER,Required,ターゲットチャンクサイズ。
  `max_length`,INTEGER,NULL,最大許可チャンクサイズ。
  `overlap_length`,INTEGER,NULL,連続するチャンク間でオーバーラップするユニットの数。
  `strategy`,TEXT,NULL,チャンク単位 `'chars'`デフォルトまたは`'words'`。

.. _例-6:

例
^^

.. code:: sql

   - - Chunk into ~200 character segments, max 250, with 25-character overlap
   SELECT aidb.chunk_text_config(200, 250, 25, chars);

helpb.summarize_text_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^

言語モデルを使用してテキストを要約するように\ ``SummarizeText``
ステップを構成します。

.. _パラメーター-5:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `model`,TEXT,Required,要約に使用するモデルの名前。
  `chunk_config`,JSONB,NULL,要約する前に適用されるオプションのチャンク構成`aidb.chunk_text_config`から 。
  `prompt`,TEXT,NULL,概要をガイドするカスタムプロンプト。
  `strategy`,TEXT,NULL,`'append'`デフォルトまたは`'reduce'`。
  `reduction_factor`,INTEGER,NULL,`'reduce'`ストラテジーの場合 各リダクションパスの積極性デフォルト3。
  `inference_config`,JSONB,NULL,オプションの推論設定`aidb.inference_config`から。

.. _例-7:

例
^^

.. code:: sql

   SELECT aidb.summarize_text_config(
       my_llm,
       chunk_config => aidb.chunk_text_config(100, 100, 10, words),
       prompt       => Summarize concisely,
       strategy     => reduce,
       reduction_factor => 4
   );

promoteb.ocr_config
^^^^^^^^^^^^^^^^^^^

モデルを使用して画像からテキストを抽出するように\ ``PerformOcr``
ステップを構成します。

.. _パラメーター-6:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `model`,TEXT,Required,使用するOCRモデルの名前。

.. _例-8:

例
^^

.. code:: sql

   SELECT aidb.ocr_config(my_ocr_model);

promoteb.html_parse_config
^^^^^^^^^^^^^^^^^^^^^^^^^^

HTMLコンテンツからテキストを抽出するように\ ``ParseHtml``
ステップを構成します。

.. _パラメーター-7:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `method`,TEXT,NULL,使用する解析方法。 `NULL`の場合、デフォルトの方法を使用します。

.. _例-9:

例
^^

.. code:: sql

   SELECT aidb.html_parse_config();

promoteb.pdf_parse_config
^^^^^^^^^^^^^^^^^^^^^^^^^

PDFドキュメントからコンテンツを抽出するように\ ``ParsePdf``
ステップを構成します。

.. _パラメーター-8:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `method`,TEXT,NULL,使用する解析方法。 `NULL`の場合、デフォルトの方法を使用します。
  `allow_partial_parsing`,BOOLEAN,NULL,`true`の場合、一部のページを解析できない場合に部分的な結果を返します。

.. _例-10:

例
^^

.. code:: sql

   SELECT aidb.pdf_parse_config(allow_partial_parsing => true);

helpb.knowledge_base_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^

エンベディングを計算および保存するように\ ``KnowledgeBase``
ステップを構成します。

.. _パラメーター-9:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `model`,TEXT,Required,使用する埋め込みモデルの名前。
  `data_format`,:ref:`helpb.PipelineDataFormat<helpb.PipelineDataFormat>` ,Required,埋め込まれるデータのフォーマット。
  `distance_operator`,:ref:`helpb.DistanceOperator<helpb.DistanceOperator>` ,NULL,類似検索のための距離機能。デフォルト`L2`
  `vector_index`,JSONB,NULL,ベクトルインデックス構成 :ref:`Vectorインデックス構成ヘルパー<Vectorインデックス構成ヘルパー>` から。

.. _例-11:

例
^^

.. code:: sql

   SELECT aidb.knowledge_base_config(
       my_embedding_model,
       Text,
       distance_operator => Cosine,
       vector_index      => aidb.vector_index_hnsw_config(m => 16, ef_construction => 64)
   );

fence.knowledge_base_config_from_kb
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

新しいものを作成するのではなく、既存のナレッジベースにパイプラインを接続するように\ ``KnowledgeBase``
ステップを構成します。

.. _パラメーター-10:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `data_format`,:ref:`helpb.PipelineDataFormat<helpb.PipelineDataFormat>` ,Required,埋め込まれるデータのフォーマット。

.. _例-12:

例
^^

.. code:: sql

   SELECT aidb.knowledge_base_config_from_kb(Text);

helpb.inference_config
^^^^^^^^^^^^^^^^^^^^^^

``SummarizeText``
などの言語モデルステップで使用する推論構成オブジェクトをビルドします。すべてのパラメーターはオプショナル。

.. _パラメーター-11:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `system_prompt`,TEXT,NULL,各要求の先頭に追加されるシステムプロンプト。
  `temperature`,DOUBLE PRECISION,NULL,サンプリング温度より高い=よりランダム。
  `max_tokens`,INTEGER,NULL,生成するトークンの最大数。
  `top_p`,DOUBLE PRECISION,NULL,nucleusサンプリングしきい値。
  `seed`,BIGINT,NULL,再現可能な出力のランダムシード。
  `repeat_penalty`,REAL,NULL,繰り返されたトークンのペナルティ。
  `repeat_last_n`,INTEGER,NULL,リピートペナルティを適用する最近のトークンの数。
  `thinking`,BOOLEAN,NULL,拡張推論を有効にしますサポートされているモデルのみ。
  `extra_args`,JSONB,NULL,追加のプロバイダー固有の推論引数。

.. _例-13:

例
^^

.. code:: sql

   SELECT aidb.inference_config(
       system_prompt => You are a technical summarizer.,
       temperature   => 0.3,
       max_tokens    => 512
   );

--------------

Vectorインデックス構成ヘルパー
------------------------------

これらのファンクションは、 ``aidb.knowledge_base_config``
の\ ``vector_index`` パラメーターの\ ``JSONB`` 構成を結果ます。

promoteb.vector_index_hnsw_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

`HNSW <https://github.com/pgvector/pgvector?tab=readme-ov-file#hnsw>`_ インデックスpgvectorを構成します。

.. _パラメーター-12:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `vector_data_type`,TEXT,NULL,ベクターストレージタイプ。
  `m`,INTEGER,NULL,ノードごとの最大接続数デフォルト16。
  `ef_construction`,INTEGER,NULL,ビルド時の検索の深さデフォルト64。
  `ef_search`,INTEGER,NULL,クエリ時の検索の深さ。

..  note::
   HNSWは、最大2000ディメンションをサポートします。高次元ベクトルの場合、`aidb.vector_index_disabled_config()` を使用します。 !!!

次の表は、各\ ``distance_operator`` 値がpgvector
opsクラスにどのようにマッピングされるかを示しています。

.. csv-table::
  :header: `distance_operator`,Index ops class
  :widths: 10,30
  :align: left
  :class: longtable

  `L2`,`vector_l2_ops`
  `InnerProduct`,`vector_ip_ops`
  `Cosine`,`vector_cosine_ops`
  `L1`,`vector_l1_ops`

.. _例-14:

例
^^

.. code:: sql

   SELECT aidb.vector_index_hnsw_config(m => 16, ef_construction => 64);

promoteb.vector_index_ivflat_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

pgvector `IVFFlat <https://github.com/pgvector/pgvector?tab=readme-ov-file#ivfflat>`_ インデックスを構成します。

.. _パラメーター-13:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `vector_data_type`,TEXT,NULL,ベクターストレージタイプ。
  `lists`,INTEGER,NULL,クラスター逆引きリストの数。
  `probes`,INTEGER,NULL,クエリー時に検索するクラスターの数。

.. _例-15:

例
^^

.. code:: sql

   SELECT aidb.vector_index_ivfflat_config(lists => 100);

promoteb.vector_index_chord_hnsw_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

VectorChord HNSWインデックスを構成します。

.. _パラメーター-14:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `vector_data_type`,TEXT,NULL,ベクターストレージタイプ。
  `m`,INTEGER,NULL,ノードごとの最大接続数。
  `ef_construction`,INTEGER,NULL,ビルド時の検索の深さ。
  `max_connections`,INTEGER,NULL,グラフ内の最大接続数。
  `ml`,DOUBLE PRECISION,NULL,グラフレイヤー構造を制御するレベル乗数。

.. _例-16:

例
^^

.. code:: sql

   SELECT aidb.vector_index_chord_hnsw_config(m => 16, ef_construction => 64);

promoteb.vector_index_chord_vchordq_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

VectorChord Vchordqインデックスを構成します。

.. _パラメーター-15:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `vector_data_type`,TEXT,NULL,ベクターストレージタイプ。
  `lists`,TEXT,NULL,クラスターの数。
  `spherical_centroids`,BOOLEAN,NULL,クラスタリングするときは、球形の正規化された重心を使用します。

.. _例-17:

例
^^

.. code:: sql

   SELECT aidb.vector_index_chord_vchordq_config(lists => 100, spherical_centroids => true);

promoteb.vector_index_hsphere_optimized_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

HSphere最適化インデックスを構成します。

.. _パラメーター-16:

パラメーター
^^^^^^^^^^^^

.. csv-table::
  :header: Parameter,Type,Default,Description
  :widths: 15,12,12,20
  :align: left
  :class: longtable

  `clusters`,INTEGER,Required,クラスターの数。
  `precision_val`,DOUBLE PRECISION,Required,インデックス精度の値。
  `vector_data_type`,TEXT,NULL,ベクターストレージタイプ。

.. _例-18:

例
^^

.. code:: sql

   SELECT aidb.vector_index_hsphere_optimized_config(clusters => 256, precision_val => 0.95);

promoteb.vector_index_disabled_config
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

ベクターインデックスの自動作成を無効にします。埋め込みディメンションが2000を超える場合、またはインデックスを手動で管理する場合にこれを使用します。

.. _例-19:

例
^^

.. code:: sql

   SELECT aidb.vector_index_disabled_config();

--------------

モデル構成ヘルパー
------------------

モデル構成ヘルパーは :ref:`Models reference <Models reference>` ページに移動しました。
