43 ベクトル・タイプ

任意のベクトル型をサポートするために、Coherenceは、3つの組込み実装を備えたcom.oracle.coherence.ai.Vector<T>インタフェースを提供します。

  1. BitVectorは、java.util.Bitsetを内部的に使用し、単一ビットを使用して各ベクトル要素を表します。
  2. Int8Vectorは、byte[]を内部的に使用します。
  3. Float32Vectorは、float[]を内部的に使用します。

これらのタイプを使用すると、フィールドおよびそのアクセッサを単純に作成することにより、他のプロパティを追加するのと同じ方法で、ベクトル・プロパティを独自のクラスに追加できます。

Book.java
@PortableType(id = 2001)
public class Book
    {
    @Portable private String isbn;
    @Portable private String title;
    @Portable private String author;
    @Portable private String summary;
    @Portable private Vector<float[]> summaryEmbedding;

    // constructors, getters and setters omitted
    }

前述の例では、summaryEmbeddingフィールドを使用してサマリー・フィールドのベクトル表現を格納するため、ベクトルの類似性を使用してブック・サマリーを検索できます。

後続の章では、summaryEmbeddingプロパティを使用して標準とベクトル索引の両方を定義する方法、およびそれらに対する類似検索の実行方法を説明します。