Nuget パッケージの名前変更
わかりやすくするために、次の nuget パッケージの名前が変更されました。
古いパッケージ名 | 新しいパッケージ名 |
---|---|
Microsoft.SemanticKernel.Connectors.AzureCosmosDBMongoDB | Microsoft.SemanticKernel.Connectors.CosmosMongoDB |
Microsoft.SemanticKernel.Connectors.AzureCosmosDBNoSQL | Microsoft.SemanticKernel.Connectors.CosmosNoSql |
Microsoft.SemanticKernel.Connectors.Postgres | Microsoft.SemanticKernel.Connectors.PgVector |
Microsoft.SemanticKernel.Connectors.Sqlite | Microsoft.SemanticKernel.Connectors.SqliteVec |
タイプ名の変更
GA の前の正式な API レビューの一環として、さまざまな名前付けの変更が提案および採用され、その結果、次の名前が変更されました。 これらは、明確さ、一貫性を向上させ、型名の長さを減らすのに役立ちます。
古い名前空間 | 古い TypeName | 新しい名前空間 | 新しい TypeName |
---|---|---|---|
Microsoft.Extensions.VectorData | VectorStoreRecordDefinition | Microsoft.Extensions.VectorData | VectorStoreCollectionDefinition |
Microsoft.Extensions.VectorData | ベクトルストアレコードキー属性 | Microsoft.Extensions.VectorData | VectorStoreKeyAttribute |
Microsoft.Extensions.VectorData | ベクトルストアレコードデータアトリビュート | Microsoft.Extensions.VectorData | VectorStoreDataAttribute |
Microsoft.Extensions.VectorData | VectorStoreRecordVectorAttribute | Microsoft.Extensions.VectorData | VectorStoreVectorAttribute |
Microsoft.Extensions.VectorData | ベクターストアレコードプロパティ | Microsoft.Extensions.VectorData | VectorStoreProperty |
Microsoft.Extensions.VectorData | ベクトルストア記録キー属性 | Microsoft.Extensions.VectorData | VectorStoreKeyProperty |
Microsoft.Extensions.VectorData | ベクター記録ストアデータプロパティ | Microsoft.Extensions.VectorData | VectorStoreDataProperty |
Microsoft.Extensions.VectorData | VectorStoreRecordVectorProperty | Microsoft.Extensions.VectorData | VectorStoreVectorProperty |
Microsoft.Extensions.VectorData | レコードオプション取得 | Microsoft.Extensions.VectorData | RecordRetrievalOptions |
Microsoft.Extensions.VectorData | GetFilteredRecordOptions<TRecord> | Microsoft.Extensions.VectorData | FilteredRecordRetrievalOptions<TRecord> |
Microsoft.Extensions.VectorData | IVectorSearch<TRecord> | Microsoft.Extensions.VectorData | IVectorSearchable<TRecord> |
Microsoft.Extensions.VectorData | IKeywordHybridSearch<TRecord> | Microsoft.Extensions.VectorData | IKeywordHybridSearchable<TRecord> |
Microsoft.SemanticKernel.Connectors.AzureCosmosDBMongoDB | AzureCosmosDBMongoDBVectorStore | Microsoft.SemanticKernel.Connectors.CosmosMongoDB | CosmosMongoVectorStore |
Microsoft.SemanticKernel.Connectors.AzureCosmosDBMongoDB | AzureCosmosDBMongoDBVectorStoreRecordCollection | Microsoft.SemanticKernel.Connectors.CosmosMongoDB | CosmosMongoCollection |
Microsoft.SemanticKernel.Connectors.AzureCosmosDBNoSQL | AzureCosmosDBNoSQLVectorStore | Microsoft.SemanticKernel.Connectors.CosmosNoSql | CosmosNoSqlVectorStore |
Microsoft.SemanticKernel.Connectors.AzureCosmosDBNoSQL | AzureCosmosDBNoSQLベクターストアレコードコレクション | Microsoft.SemanticKernel.Connectors.CosmosNoSql | CosmosNoSqlCollection |
Microsoft.SemanticKernel.Connectors.MongoDB | MongoDBVectorStore | Microsoft.SemanticKernel.Connectors.MongoDB | MongoVectorStore |
Microsoft.SemanticKernel.Connectors.MongoDB | MongoDBVectorStoreRecordCollection | Microsoft.SemanticKernel.Connectors.MongoDB | MongoCollection |
VectorStoreCollection
のさまざまなセマンティック カーネルでサポートされている実装のすべての名前は、一貫性のあるパターンを使用して短い名前に変更されました。
*VectorStoreRecordCollection
は *Collection
になりました。 例: PostgresVectorStoreRecordCollection
->PostgresCollection
。
同様に、関連するすべてのオプションクラスも変更されています。
*VectorStoreRecordCollectionOptions
は *CollectionOptions
になりました。 例: PostgresVectorStoreRecordCollectionOptions
->PostgresCollectionOptions
。
プロパティ名の変更
Namespace | クラス | 古いプロパティ名 | 新しいプロパティ名 |
---|---|---|---|
Microsoft.Extensions.VectorData | VectorStoreKeyAttribute | ストレージプロパティ名 | StorageName |
Microsoft.Extensions.VectorData | ベクトルストアデータ属性 | ストレージプロパティ名 | StorageName |
Microsoft.Extensions.VectorData | VectorStoreVectorAttribute | ストレージプロパティ名 | StorageName |
Microsoft.Extensions.VectorData | VectorStoreKeyProperty | データモデルプロパティ名 | 名前 |
Microsoft.Extensions.VectorData | VectorStoreKeyProperty | ストレージプロパティ名 | StorageName |
Microsoft.Extensions.VectorData | VectorStoreKeyProperty | プロパティタイプ | タイプ |
Microsoft.Extensions.VectorData | VectorStoreDataProperty | DataModelPropertyName | 名前 |
Microsoft.Extensions.VectorData | VectorStoreDataProperty | ストレージプロパティ名 | StorageName |
Microsoft.Extensions.VectorData | VectorStoreDataProperty | プロパティタイプ | タイプ |
Microsoft.Extensions.VectorData | VectorStoreVectorProperty | データモデルプロパティ名 | 名前 |
Microsoft.Extensions.VectorData | VectorStoreVectorProperty | ストレージプロパティ名 | StorageName |
Microsoft.Extensions.VectorData | VectorStoreVectorProperty | プロパティタイプ | タイプ |
Microsoft.Extensions.VectorData | 距離関数 | ハミング | HammingDistance |
コレクション オプション クラスの VectorStoreRecordDefinition
プロパティの名前が Definition
に変更されました。
メソッド名の変更
Collection
の CreateCollectionIfNotExistsAsync
メソッドの名前が EnsureCollectionExistsAsync
に変更されました。
*Collection
とVectorStore
のDeleteAsync
メソッドの名前が EnsureCollectionDeletedAsync
に変更されました。
これはメソッドの動作とより密接に一致し、コレクションが存在する場合はコレクションが削除されます。 コレクションが存在しない場合、何も行われませんが、それでも成功します。
基本抽象クラスへのインターフェイス
次のインターフェイスが基本抽象クラスに変更されました。
Namespace | 古いインターフェイス名 | 新しい型名 |
---|---|---|
Microsoft.Extensions.VectorData | IVectorStore | VectorStore |
Microsoft.Extensions.VectorData | IVectorStoreRecordCollection | VectorStoreCollection |
以前は IVectorStore または IVectorStoreRecordCollection を使用していた場所で、代わりに VectorStore と VectorStoreCollection を使用できるようになりました。
SearchAsync
とSearchEmbeddingAsync
のマージ
コレクションの SearchAsync
メソッドと SearchEmbeddingAsync
メソッドは、1 つのメソッド ( SearchAsync
) にマージされています。
以前、SearchAsync
はコレクション内またはサービス内でベクター化されるソースデータを使用してベクター検索を許可していましたが、一方でSearchEmbeddingAsync
はベクターを指定することでベクター検索を実行することを許可していました。
現在、両方のシナリオが単一の SearchAsync
メソッドを使用してサポートされています。これは、ソース データとベクターの両方の入力として使用できます。
何を行うかを決定するメカニズムは次のとおりです。
- 指定された値がコネクタでサポートされているベクター型の 1 つである場合、検索ではその型が使用されます。
- 指定された値がサポートされているベクター型の 1 つでない場合、コネクタは、指定された値からデータベースでサポートされているベクター型への変換をサポートする
IEmbeddingGenerator
がベクター ストアに登録されているかどうかを確認します。 - 最後に、互換性のある
IEmbeddingGenerator
が使用できない場合、メソッドはInvalidOperationException
をスローします。
辞書<string、object?> モデルのサポート*DynamicCollection
VectorStore.GetDynamicCollection
可能な限り、動的データ モデルを使用する場合に NativeOAT とトリミングのサポートを許可するために、動的データ モデルのサポート方法が変更されました。 具体的には、コレクションを要求または構築する方法が変更されました。
以前は、データモデルとして Dictionary<string、object?> を使用していた場合、VectorStore.GetCollection
でこれを要求することができましたが、現在は VectorStore.GetDynamicCollection
を使用する必要があります。
// Before
PostgresVectorStore vectorStore = new PostgresVectorStore(myNpgsqlDataSource)
vectorStore.GetCollection<string, Dictionary<string, object?>>("collectionName", definition);
// After
PostgresVectorStore vectorStore = new PostgresVectorStore(myNpgsqlDataSource, ownsDataSource: true)
vectorStore.GetDynamicCollection<string, Dictionary<string, object?>>("collectionName", definition);
VectorStore と VectorStoreRecordCollection が破棄可能になりました
VectorStore
とVectorStoreRecordCollection
の両方が破棄可能になり、これらによって所有されているデータベース クライアントが適切に破棄されるようになりました。
ベクター ストアまたはコレクションにデータベース クライアントを渡す場合は、ベクター ストアまたはコレクションがクライアントを所有する必要があるかどうかを指定するオプションがあるため、ベクター ストアまたはコレクションが破棄されるときにも破棄できます。
たとえば、PostgresVectorStore
にデータソースを渡す際にtrue
をownsDataSource
に渡すと、データソースが破棄されるときにPostgresVectorStore
も破棄されます。
new PostgresVectorStore(dataSource, ownsDataSource: true, options);
CreateCollection
はサポートされなくなりました。 EnsureCollectionExistsAsync
Collection
のCreateCollection
メソッドが削除され、EnsureCollectionExistsAsync
のみがサポートされるようになりました。
EnsureCollectionExistsAsync
は冪等であり、存在しない場合はコレクションを作成し、既に存在する場合は何も行いません。
VectorStoreOperationException
VectorStoreRecordMappingException
はサポートされなくなりました。VectorStoreException
VectorStoreOperationException
と VectorStoreRecordMappingException
が削除され、 VectorStoreException
のみがサポートされるようになりました。
データベース固有の例外が発生するすべてのデータベース要求エラーがラップされ、 VectorStoreException
としてスローされます。これにより、コードを使用して、実装ごとに異なる例外の種類ではなく、1 つの例外の種類をキャッチできます。
該当なし
これらの変更は現在、C でのみ適用されます#
もうすぐです
これらの変更は現在、C でのみ適用されます#