Knowledge bases reference#

ナレッジベースKB機能とビューのリファレンス。ガイドスタイルのドキュメントについては、 Knowledge bases reference を参照してください。

カタログビュー#

helpb.Knowledge_bases#

aidb.kbs としてもアクセスできます。データベース内のすべてのナレッジベースとその完全な構成をリストします。

Column

Type

Description

id

integer

内部識別子

name

text

ナレッジベース名

vector_schema

text

エンベディングテーブルのスキーマ

vector_table

text

エンベディングストレージテーブル

model_name

text

使用される埋め込みモデル

distance_operator

helpb.DistanceOperator

検索に使用されるベクトル距離ファンクション

distance_operator_sql

text

SQL演算子構文の距離演算子たとえば <->、<=>

vector_data_column

text

エンベディング列

vector_key_column

text

エンベディングテーブルのキー列

vector_index

jsonb

ベクトルインデックス構成

pipeline_ids

integer[]

このナレッジベースに接続されているすべてのパイプラインのID

pipeline_names

text[]

このナレッジベースに接続されているすべてのパイプラインの名前


helpb.Knowledge_base_metrics#

aidb.kbm としてもアクセスできます。各ナレッジベースの集計統計—パイプライン数、埋め込み行数、および最悪のパイプラインステータス。パイプラインごとの進行状況バックログ、エラー、ソース/宛先数については、 promoteb.pipeline_metrics を参照してください。

Column

Type

Description

name

text

ナレッジベース名 schema.vector_table 。

pipelines

integer

このKBに接続されているパイプラインの数。

embeddings

bigint

ベクタテーブルの行数。

status

text

アタッチされているすべてのパイプラインで最悪のステータス AI pipelines を参照してください。

例#

SELECT * FROM aidb.kbm;

__OUTPUT__
             name             | pipelines | embeddings |  status
- -----------------------------+-----------+------------+----------
 public.product_catalog_kb    |         1 |       1842 | UpToDate
 public.customer_feedback_kb  |         2 |        915 | UpToDate
(2 rows)

古いビュー名 aidb.knowledge_base_stats およびaidb.kbstat は、下位互換性を保つためにaidb.knowledge_base_metrics のエイリアスとして保持されます。


タイプ#

helpb.DistanceOperator#

取得中に使用されるベクトル距離ファンクション。

Value

Description

L2

ユークリッド距離

InnerProduct

内積

Cosine

コサイン類似度

L1

L1距離

Hamming

ハミング距離

Jaccard

Jaccard距離


helpb.PipelineDataFormat#

パイプラインソースまたはボリュームのデータのフォーマット。

Value

Description

Text

プレーンテキスト

Image

バイナリ画像データ

Pdf

PDFドキュメント


helpb.PipelineAutoProcessingモード#

ナレッジベースパイプラインの自動処理モード。

Value

Description

Live

データが変更されるたびにPostgresトリガーを介した即時処理

Background

Postgresバックグラウンドワーカーを介した定期処理

Disabled

自動処理なし。 `aidb.run_pipeline()`で手動実行


ナレッジベース機能#

パイプラインの自動処理モードを変更するには、 promoteb.update_pipeline を使用します。

promoteb.retrieve_key#

ソースデータを取得せずに、上位一致するエンベディングのソースレコードキーと距離を結果ます。 part_ids では、マルチステップパイプラインの各ステップに一致するパーツのIDも結果ます。たとえば、単一のソースレコードがChunkText ステップによって10の部分に分割されている場合、 part_ids は、どのチャンクが一致したかを示します。

パラメーター#

Parameter

Type

Default

Description

knowledge_base_name

TEXT

Required

ナレッジベースの名前 schema.vector_table 。

query

TEXT or BYTEA

Required

テキストまたは画像のバイトを照会します。エンベディングモデルのデータ形式と一致する必要があります。

topk

INTEGER

1

返される結果の数。正の整数である必要があります。`0`または負の値はエラーを発生します。

deduplicate

BOOLEAN

true

複数の「部分」チャンク/ページなどが一致する場合でも、各ソースの結果を1回だけ返します。 重複排除と中間結果 を参照してください。

返品#

Column

Type

Description

key

text

ソースレコードキー

distance

double precision

クエリーからのベクトル距離

part_ids

bigint[]

ソースレコードのどの部分たとえばチャンクまたはページが一致するベクトルを生成した

pipeline_name

text

この行を提供したパイプラインの名前。 KBに複数のパイプラインが接続されている場合に役立ちます。

例#

SELECT * FROM aidb.retrieve_key(public.customer_feedback_kb, late delivery, topk=>3);

__OUTPUT__
 key  |      distance      | part_ids |   pipeline_name
- -----+--------------------+----------+------------------
 1042 | 1.1931772046185758 | {0,0}    | feedback_eu_pipe
 318  | 1.1980633963685476 | {2,0}    | feedback_na_pipe
 1057 | 1.2150919866080878 | {2,0}    | feedback_eu_pipe
(3 rows)

helpb.retrieve_text#

エンベディングテーブルをソーステーブルに結合することにより、上位に一致するエンベディングのソーステキストと距離を結果ます。 part_ids では、マルチステップパイプラインの各ステップに一致するパーツのIDも結果ます。たとえば、単一のソースレコードがChunkText ステップによって10の部分に分割されている場合、 part_ids は、どのチャンクが一致したかを示します。戻り列intermediate_steps には、実際の中間ステップ出力が含まれます。

パラメーター#

Parameter

Type

Default

Description

knowledge_base_name

TEXT

Required

ナレッジベースの名前 schema.vector_table 。

query

TEXT or BYTEA

Required

テキストまたは画像のバイトを照会します。エンベディングモデルのデータ形式と一致する必要があります。

topk

INTEGER

1

返される結果の数。正の整数である必要があります。`0`または負の値はエラーを発生します。

deduplicate

BOOLEAN

true

複数の「部分」チャンク/ページなどが一致する場合でも、各ソースの結果を1回だけ返します。 重複排除と中間結果 を参照してください。

返品#

Column

Type

Description

key

text

ソースレコードキー

value

text

ソーステキストのコンテンツ。 NULL 元のソースコンテンツが非テキストPDFまたは画像などの場合。他の列はまだ表面一致するメタデータです。

distance

double precision

クエリーからのベクトル距離

part_ids

bigint[]

ソースレコードのどの部分が一致したのかチャンクまたはページなど

pipeline_name

text

このソースレコードを処理するパイプラインの名前

intermediate_steps

jsonb

マッチングは、intermediate_destination`で構成されたステップからの結果です。つまり、`part_ids`に属する値。パイプライン内のステップがない場合、中間ストレージが有効になっている場合、空 ` [] 。 エンドツーエンドの例 中間ストレージを使用したマルチステップパイプライン を参照してください。

intermediate_steps は、ステップごとに1つのエントリを含むJSON配列であり、中間ストレージが有効になっており、それぞれの形状は次のとおりです。

{"value": "...", "operation": "ChunkText", "step_order": 1, "destination_table": "public.pipeline_my_pipeline_step_1"}

例#

SELECT * FROM aidb.retrieve_text(my_kb, waterproof jacket, 3);

__OUTPUT__
  key  |                       value                        |      distance
- ------+----------------------------------------------------+--------------------
 19337 | Men Stripes Waterproof Shell Jacket                | 0.2994317672742334
 55018 | Women All-Weather Hiking Anorak                    | 0.3804609668507203
(2 rows)

promoteb.delete_knowledge_base#

カスケード ナレッジベースに接続されているすべてのパイプラインを削除し、ベクターテーブルを削除し、レジストリエントリを削除します。基になるソーステーブルは削除しません。

KBと他のパイプラインのベクトルをそのまま維持しながら、マルチパイプラインKBから単一のパイプラインを削除するには、代わりに promoteb.delete_pipeline を使用します。最後に接続されたパイプラインを削除すると、KBがドロップされます。

パラメーター#

Parameter

Type

Description

knowledge_base_name

TEXT

ナレッジベース識別子 schema.vector_table 。

例#

SELECT aidb.delete_knowledge_base(public.customer_feedback_kb);

ボリューム管理機能#

promoteb.create_volume#

PGFSストレージ場所からAIDBボリュームを作成します。ボリュームは、格納場所のコンテンツを行として公開する外部テーブルであり、ナレッジベースデータソースとして使用したり、 SQLで直接照会したりできます。最初にPGFSストレージの場所を設定するには、 Configuring external storage を参照してください。

パラメーター#

Parameter

Type

Description

name

TEXT

ボリュームの名前。有効な引用符のないPostgreSQL識別子である必要があります。

server_name

TEXT

PGFS格納場所の名前。

path

TEXT

保存場所内のオプションのサブパス。単一の末尾のスラッシュに正規化されましたたとえば、 foo、/foo、foo/、/foo/`はすべて`foo/`として保存されます。`NULL`または/は/`として保存されます。

data_format

TEXT

データ形式 Text、Image、または`Pdf`

例#

SELECT aidb.create_volume(pdf_volume, my_s3_location, /, Pdf);

helpb.volumes#

データベース内のすべてのAIDBボリュームをリストするビュー。 schema 、volume 、storage_location 、およびpath を返します。

例#

SELECT * FROM aidb.volumes;

promoteb.delete_volume#

AIDBボリュームを削除します。

!!!note 基になるPGFSストレージの場所を削除すると、その上に構築されたすべてのボリュームも削除されます。

パラメーター#

Parameter

Type

Description

volume_name

TEXT

削除するボリュームの名前。

例#

SELECT aidb.delete_volume(pdf_volume);