in src/Custom/Chat/ChatFunctionChoice.Serialization.cs [30:62]
internal static ChatFunctionChoice DeserializeChatFunctionChoice(JsonElement element, ModelReaderWriterOptions options = null)
{
options ??= ModelSerializationExtensions.WireOptions;
if (element.ValueKind == JsonValueKind.Null)
{
return null;
}
else if (element.ValueKind == JsonValueKind.String)
{
return new ChatFunctionChoice(element.ToString());
}
else
{
string name = default;
IDictionary<string, BinaryData> serializedAdditionalRawData = default;
Dictionary<string, BinaryData> rawDataDictionary = new Dictionary<string, BinaryData>();
foreach (var property in element.EnumerateObject())
{
if (property.NameEquals("name"u8))
{
name = property.Value.GetString();
continue;
}
if (true)
{
rawDataDictionary.Add(property.Name, BinaryData.FromString(property.Value.GetRawText()));
}
}
serializedAdditionalRawData = rawDataDictionary;
return new ChatFunctionChoice(name, serializedAdditionalRawData);
}
}