メインコンテンツまでスキップ
バージョン: User Guides (Cloud)

テキストデータ

Zilliz CloudのWeb UIは、パイプラインを作成、実行、管理するためのシンプルで直感的な方法を提供し、RESTful APIはWeb UIに比べてより柔軟性とカスタマイズ性を提供します。

このガイドでは、テキストパイプラインの作成、埋め込みテキストデータの意味検索の実行、パイプラインが不要になった場合の削除に必要な手順を説明します。

📘ノート

Zilliz Cloud Pipelinesは、2025年第2四半期の終わりまでに廃止され、「Data In, Data Out」という新しい機能に置き換えられます。これにより、MilvusとZilliz Cloudの両方で埋め込み生成が効率化されます。2024年12月24日現在、新規ユーザー登録は受け付けられていません。現在のユーザーは、日没日まで月額20ドルの無料手当内でサービスを継続して利用できますが、SLAは提供されていません。モデルプロバイダーまたはオープンソースモデルの埋め込みAPIを使用してベクトル埋め込みを生成することを検討してください。

前提条件と制限

  • Google Cloud Platform(GCP)上のus-west 1にデプロイされたクラスタを作成していることを確認してください。

  • 一つのプロジェクトでは、同じタイプのパイプラインを最大100個まで作成できます。詳細については、Zillizクラウドの制限を参照してください。

テキストデータを取り込む

データを取り込むには、まず取り込みパイプラインを作成してから実行する必要があります。

テキスト取り込みパイプラインの作成

  1. プロジェクトに移動します。

  2. ナビゲーションパネルからパイプラインをクリックします。次に、概要タブに切り替えて、パイプラインをクリックします。パイプラインを作成するには、+パイプラインをクリックしてください。

    create-pipeline

  3. 作成するパイプラインの種類を選択します。[+パイプライン]ボタンをクリックします。Ingestion Pipeline列。

    choose-pipeline

  4. 作成するIngestionパイプラインを構成します。

    パラメータ

    説明する

    ターゲットクラスタ

    このIngestionパイプラインを使用して新しいコレクションが自動的に作成されるクラスタです。現時点では、GCP us-west 1にデプロイされたクラスタのみとなります。

    コレクション名

    自動作成されたコレクションの名前。

    パイプライン名

    新しいIngestionパイプラインの名前です。小文字、数字、アンダースコアのみを含める必要があります。

    説明(オプション)

    新しいIngestionパイプラインの説明。

    configure-ingestion-pipeline

  5. IngestionパイプラインにINDEX関数を追加するには、+Functionをクリックします。各Ingestionパイプラインに対して、正確に1つのINDEX関数を追加できます。

    1. 関数名を入力します。

    2. 関数タイプとしてINDEX_TEXTを選択します。INDEX_TEXT関数は、提供されたすべてのテキスト入力に対してベクトル埋め込みを生成できます。

    3. ベクトル埋め込みを生成するために使用する埋め込みモデルを選択します。異なるテキスト言語には異なる埋め込みモデルがあります。現在、英語には5つの利用可能なモデルがあります:zilliz/bge-base-en-v 1.5voyageai/voyage-2voyageai/voyage-code-2openai/text-embedding-3-small、およびopenai/text-embedding-3-large。中国語には、zilliz/bge-base-zh-v 1.5のみが利用可能です。以下の表は、各埋め込みモデルを簡単に紹介しています。

      埋め込みモデル

      説明する

      zilliz/bge-based-en-v 1.5-ダウンロード

      BAAIによってリリースされたこの最先端のオープンソースモデルは、Zilliz Cloudにホストされ、ベクトルデータベースと共有されており、高品質で最高のネットワークレイテンシを提供しています。

      タイトル: voyageai/voyage-2

      Voyage AIによってホストされています。この汎用モデルは、説明的なテキストとコードを含む技術文書の取得に優れています。軽量版はvoyage-lite-02-instructMTEBリーダーボードでトップにランクされています。このモデルは、言語英語の場合にのみ利用可能です。

      voyageai/航海コード-2

      Voyage AIがホストしています。このモデルはソフトウェアコードに最適化されており、ソフトウェアドキュメントとソースコードを取得するための優れた品質を提供します。このモデルは、言語英語の場合にのみ利用可能です。

      voyageai/ヴォヤージュラージ2

      Voyage AIによってホストされています。これはVoyage AIからの最も強力な汎用埋め込みモデルです。16 kのコンテキスト長(voyage-2の4倍)をサポートし、技術的および長いコンテキスト文書を含むさまざまなタイプのテキストに優れています。このモデルは、言語英語の場合にのみ利用可能です。

      OPENAI/text-embedding-3-small

      Open AIによってホストされています。この非常に効率的な埋め込みモデルは、先行モデルよりも強力なパフォーマンスを持ちtext-embedding-ada-002推論コストと品質をバランスさせています。このモデルは、言語英語の場合にのみ利用可能です。

      OPENAI/text-embedding-3-large

      Open AIがホストしています。これはOpen AIの最高のパフォーマンスモデルです。text-embedding-ada-002と比較して、MTEBスコアは61.0%から64.6%に増加しました。このモデルは、言語英語の場合にのみ利用可能です。

      zilliz/bge-base-zh-v 1.5-ダウンロード

      BAAIによってリリースされたこの最先端のオープンソースモデルは、Zilliz Cloudにホストされ、ベクトルデータベースと共同配置されており、高品質で最高のネットワークレイテンシを提供します。これは、言語中国語の場合のデフォルトの埋め込みモデルです。

      add-index-text-function

    4. [追加]をクリックして関数を保存します。

  6. (オプション)テキストのメタデータを保持する必要がある場合は、別のPRESERVE関数を追加してください。PRESERVE関数は、データ取り込みとともにコレクションにスカラーフィールドを追加します。

    📘ノート

    各Ingestionパイプラインについて、最大50個のPRESERVE関数を追加できます。

    1. [+Function]をクリックします。

    2. 関数名を入力します。

    3. 入力フィールドの名前と種類を設定します。サポートされている入力フィールドの種類は、BoolInt 8Int 16Int 32Int 64FloatDoubleVarCharです。

      📘ノート
      • 現在、出力フィールド名は入力フィールド名と同じでなければなりません。入力フィールド名は、Ingestionパイプラインを実行する際に使用されるフィールド名を定義します。出力フィールド名は、保存された値が保持されるベクトルコレクションスキーマ内のフィールド名を定義します。

      • VarCharフィールド場合、値は最大4,000文字の英数字の文字列である必要があります。

      • スカラーフィールドに日時を格納する場合は、年データにはInt 16データ型、タイムスタンプにはInt 32データ型を使用することをお勧めします。

      add-preserve-function

    4. [追加]をクリックして関数を保存します。

  7. [Ingestion Pipelineを作成]をクリックします。

  8. 作成したばかりのIngestionパイプラインと互換性があるように自動構成された検索パイプラインと削除パイプラインの作成を続けます。

    ingestion-pipeline-created-successfully

    📘ノート

    デフォルトでは、自動設定された検索パイプラインでreranker機能は無効になっています。rerankerを有効にする必要がある場合は、手動で新しい検索パイプラインを作成してください。

テキスト取り込みパイプラインを実行する

  1. Ingestionパイプラインの横にある「▶︎」ボタンをクリックしてください。

    run-pipeline

  2. text_listフィールドに取り込む必要のあるテキストまたはテキストリストを入力します。PRESERVE関数を追加した場合は、定義済みの保存フィールドにも値を入力します。[実行]をクリックします。

  3. 結果を確認してください。

  4. 再度実行する他のテキストを入力します。

テキストデータを検索する

任意のデータを検索するには、まず検索パイプラインを作成してから実行する必要があります。IngestionおよびDeletionパイプラインとは異なり、検索パイプラインを作成する場合、クラスタとコレクションはパイプラインレベルではなく関数レベルで定義されます。これは、Zilliz Cloudが複数のコレクションから同時に検索できるためです。

テキスト検索パイプラインの作成

  1. プロジェクトに移動します。

  2. ナビゲーションパネルからパイプラインをクリックします。次に、概要タブに切り替えて、パイプラインをクリックします。パイプラインを作成するには、+パイプラインをクリックしてください。

  3. 作成するパイプラインの種類を選択してください。「+パイプライン」ボタンを検索パイプライン欄でクリックしてください。

    create-search-pipeline

  4. 作成したい検索パイプラインを構成します。

    パラメータ

    説明する

    パイプライン名

    新しい検索パイプラインの名前です。小文字、数字、アンダースコアのみを含める必要があります。

    説明(オプション)

    新しい検索パイプラインの説明。

    configure-search-pipeline

  5. +Function」をクリックして、検索パイプラインに関数を追加します。正確に1つの関数を追加できます。

    1. 関数名を入力します。

    2. Target Cluster」と「Target collection」を選択します。Target Clusterは、**us-west 1 on Google Cloud Platform(GCP)**にデプロイされたクラスタである必要があります。また、Target CollectionはIngestionパイプラインによって作成されている必要があります。そうでない場合、Searchパイプラインは互換性がありません。

    3. [SEARCH_TEXT]を関数タイプとして選択します。SEARCH_TEXT関数は、クエリテキストをベクトル埋め込みに変換し、最も関連性の高いテキストエンティティを取得できます。

    4. (オプション)rerankerを有効にすると、クエリとの関連性に基づいて検索結果をランク付けして検索品質を向上させることができます。ただし、rerankerを有効にすると、コストと検索レイテンシが高くなることに注意してください。デフォルトでは、この機能は無効になっています。有効にすると、再ランキングに使用するモデルサービスを選択できます。現在、zilliz/bge-reranker-baseのみが利用可能です。

      リランカーモデルサービス

      説明する

      zilliz/bge-reranker-base-ダウンロード

      オープンソースのクロスエンコーダアーキテクチャの再ランクモデルはBAAIによって公開されています。このモデルはZilliz Cloudにホストされています。

      add-search-text-function

    5. [追加]をクリックして関数を保存します。

  6. [検索パイプラインを作成]をクリックします。

テキスト検索パイプラインの実行

  1. 検索パイプラインの横にある「▶︎」ボタンをクリックしてください。または、プレイグラウンドタブをクリックすることもできます。

    run-pipeline

  2. クエリテキストを入力します。[実行]をクリックします。

  3. 結果を確認してください。

  4. パイプラインを再実行する新しいクエリテキストを入力します。

テキストデータを削除

データを削除するには、まず削除パイプラインを作成してから実行する必要があります。

テキスト削除パイプラインの作成

  1. プロジェクトに移動します。

  2. ナビゲーションパネルからパイプラインをクリックします。次に、概要タブに切り替えて、パイプラインをクリックします。パイプラインを作成するには、+パイプラインをクリックしてください。

  3. 作成するパイプラインの種類を選択してください。「+パイプライン」ボタンを削除パイプライン欄でクリックしてください。

    create-deletion-pipeline

  4. 作成する削除パイプラインを構成します。

    パラメータ

    説明する

    パイプライン名

    新しい削除パイプラインの名前です。小文字、数字、アンダースコアのみを含める必要があります。

    説明(オプション)

    新しいDeletionパイプラインの説明。

    configure-deletion-pipeline

  5. +Function」をクリックして、削除パイプラインに関数を追加します。1つの関数だけを追加できます。

    1. 関数名を入力します。

    2. PURGE_TEXT_INDEX」または「PURGE_BY_EXPRESSION」を関数タイプとして選択します。PURGE_TEXT_INDEX関数は、指定されたidを持つすべてのテキストエンティティを削除できます。PURGE_BY_EXPRESSION関数は、指定されたフィルタ式に一致するすべてのテキストエンティティを削除できます。

    3. [追加]をクリックして関数を保存します。

  6. [削除パイプラインを作成]をクリックします。

テキスト削除パイプラインを実行

  1. 削除パイプラインの横にある「▶︎」ボタンをクリックしてください。または、プレイグラウンドタブをクリックすることもできます。

    run-pipeline

  2. フィルタ式を入力します。[実行]をクリックします。

  3. 結果を確認してください。

パイプラインの管理

以下は、前述の手順で作成されたパイプラインを管理する関連する操作です。

ビューパイプライン

左ナビゲーションのパイプラインをクリックします。パイプラインタブを選択します。利用可能なすべてのパイプラインが表示されます。

view-pipelines-on-web-ui

特定のパイプラインをクリックすると、基本情報、合計使用量、機能、関連コネクタなどの詳細情報が表示されます。

view-pipeline-details

📘ノート

技術的な制限により、総使用データが数時間遅れる可能性があります。

Web UIでパイプラインのアクティビティを確認することもできます。

view-pipelines-activities-on-web-ui

パイプラインを削除

パイプラインが不要になった場合は、削除できます。パイプラインを削除しても、データを取り込んだ自動作成コレクションは削除されません。

🚧警告
  • ドロップしたパイプラインは回復できません。行動には注意してください。

  • データ取り込みパイプラインを削除しても、パイプラインと一緒に作成されたコレクションには影響しません。データは安全です。

Web UIにパイプラインをドロップするには、をクリックします**。。。**「アクション」列の下にあるボタンをクリックします。次に、「ドロップ」をクリックします。

delete-pipeline