upgrade framework

This commit is contained in:
Jicheng Lu 2024-06-25 23:45:52 -05:00
parent ba7a5340fb
commit 1aa021b7fa
4 changed files with 15 additions and 26 deletions

View file

@ -1,10 +1,7 @@
using BotSharp.Abstraction.MLTasks;
using BotSharp.Abstraction.Plugins;
using BotSharp.Abstraction.Settings;
using BotSharp.Plugin.AzureOpenAI.Providers;
using BotSharp.Plugin.AzureOpenAI.Settings;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
namespace BotSharp.Platform.AzureAi;

View file

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.1</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<LangVersion>$(LangVersion)</LangVersion>
<VersionPrefix>$(BotSharpVersion)</VersionPrefix>

View file

@ -253,7 +253,8 @@ public class ChatCompletionProvider : IChatCompletion
else if (message.Role == AgentRole.User)
{
var text = !string.IsNullOrWhiteSpace(message.Payload) ? message.Payload : message.Content;
var chat = new UserChatMessage(text)
var textPart = ChatMessageContentPart.CreateTextMessageContentPart(text);
var chat = new UserChatMessage(textPart)
{
ParticipantName = message.FunctionName
};
@ -268,20 +269,20 @@ public class ChatCompletionProvider : IChatCompletion
{
var uri = new Uri(file.FileUrl);
var contentPart = ChatMessageContentPart.CreateImageMessageContentPart(uri, ImageChatMessageContentPartDetail.Low);
chat = new UserChatMessage(contentPart, text);
chat = new UserChatMessage(textPart, contentPart);
}
else if (!string.IsNullOrEmpty(file.FileData))
{
var (contentType, bytes) = fileService.GetFileInfoFromData(file.FileData);
var contentPart = ChatMessageContentPart.CreateImageMessageContentPart(BinaryData.FromBytes(bytes), contentType, ImageChatMessageContentPartDetail.Low);
chat = new UserChatMessage(contentPart, text);
chat = new UserChatMessage(textPart, contentPart);
}
else if (!string.IsNullOrEmpty(file.FileStorageUrl))
{
var contentType = fileService.GetFileContentType(file.FileStorageUrl);
using var stream = File.OpenRead(file.FileStorageUrl);
var contentPart = ChatMessageContentPart.CreateImageMessageContentPart(BinaryData.FromStream(stream), contentType, ImageChatMessageContentPartDetail.Low);
chat = new UserChatMessage(contentPart, text);
chat = new UserChatMessage(textPart, contentPart);
}
}
}

View file

@ -37,29 +37,20 @@ public class ImageGenerationProvider : IImageGeneration
var (prompt, options) = PrepareOptions(conversations);
var imageClient = client.GetImageClient(_model);
ImageGenerationOptions myoptions = new()
{
Quality = GeneratedImageQuality.High,
Size = GeneratedImageSize.W1792xH1024,
Style = GeneratedImageStyle.Vivid,
ResponseFormat = GeneratedImageFormat.Bytes
};
var response = imageClient.GenerateImage(prompt, myoptions);
var imageUri = response.Value.ImageUri;
var revisedPrompt = response.Value.RevisedPrompt;
var response = imageClient.GenerateImage(prompt, options);
var value = response.Value;
var content = string.Empty;
if (!string.IsNullOrEmpty(revisedPrompt))
if (!string.IsNullOrEmpty(value.RevisedPrompt))
{
content = revisedPrompt;
content = value.RevisedPrompt;
}
var responseMessage = new RoleDialogModel(AgentRole.Assistant, content)
{
CurrentAgentId = agent.Id,
MessageId = conversations.LastOrDefault()?.MessageId ?? string.Empty,
Data = imageUri.AbsoluteUri
Data = options.ResponseFormat == GeneratedImageFormat.Uri ? value.ImageUri?.AbsoluteUri : value.ImageBytes
};
// After
@ -89,10 +80,10 @@ public class ImageGenerationProvider : IImageGeneration
var options = new ImageGenerationOptions
{
//Size = GetImageSize(size),
//Quality = GetImageQuality(quality),
//Style = GetImageStyle(style),
//ResponseFormat = GeneratedImageFormat.Uri
Size = GetImageSize(size),
Quality = GetImageQuality(quality),
Style = GetImageStyle(style),
ResponseFormat = GeneratedImageFormat.Uri
};
return (prompt, options);
}