// Copyright (c) Microsoft. All rights reserved. using System; using System.Collections.Generic; using System.Text.Json.Serialization; using Microsoft.Extensions.VectorData; namespace SemanticKernel.Connectors.CosmosNoSql.UnitTests; public class CosmosNoSqlHotel(string hotelId) { /// The key of the record. [VectorStoreKey] public string HotelId { get; init; } = hotelId; /// A string metadata field. [VectorStoreData] public string? HotelName { get; set; } /// An int metadata field. [VectorStoreData] public int HotelCode { get; set; } /// A float metadata field. [VectorStoreData] public float? HotelRating { get; set; } /// A bool metadata field. [VectorStoreData(StorageName = "parking_is_included")] public bool ParkingIncluded { get; set; } /// An array metadata field. [VectorStoreData] public List Tags { get; set; } = []; /// A data field. [VectorStoreData] public string? Description { get; set; } /// A vector field. [JsonPropertyName("description_embedding")] [VectorStoreVector(Dimensions: 4, DistanceFunction = DistanceFunction.CosineSimilarity, IndexKind = IndexKind.Flat)] public ReadOnlyMemory? DescriptionEmbedding { get; set; } }