temp save

This commit is contained in:
Jicheng Lu 2025-05-28 08:59:29 -05:00
parent 0a0da61db3
commit 19e16ff4fe
3 changed files with 6 additions and 4 deletions

View file

@ -20,7 +20,7 @@ public static class FileUtility
if (!data.StartsWith("data:"))
{
return (null, BinaryData.FromString(data));
return (null, BinaryData.FromBytes(Convert.FromBase64String(data)));
}
var typeStartIdx = data.IndexOf(':');
@ -30,7 +30,7 @@ public static class FileUtility
var base64startIdx = data.IndexOf(',');
var base64Str = data.Substring(base64startIdx + 1);
return (contentType, BinaryData.FromString(base64Str));
return (contentType, BinaryData.FromBytes(Convert.FromBase64String(base64Str)));
}
public static string BuildFileDataFromFile(string fileName, BinaryData binary)

View file

@ -141,7 +141,8 @@ public class InstructModeController : ControllerBase
}
[HttpPost("/instruct/multi-modal/upload")]
public async Task<MultiModalViewModel> MultiModalCompletion([FromForm] IEnumerable<IFormFile> files, [FromForm] MultiModalRequest request)
public async Task<MultiModalViewModel> MultiModalCompletion([FromForm] IEnumerable<IFormFile> files, [FromForm] MultiModalRequest request,
[FromForm] List<MessageState>? states = null, [FromForm] List<string>? list = null)
{
var state = _services.GetRequiredService<IConversationStateService>();
request?.States?.ForEach(x => state.SetState(x.Key, x.Value, activeRounds: x.ActiveRounds, source: StateSource.External));

View file

@ -1,5 +1,6 @@
using BotSharp.Abstraction.Hooks;
using OpenAI.Chat;
using static System.Runtime.InteropServices.JavaScript.JSType;
namespace BotSharp.Plugin.OpenAI.Providers.Chat;
@ -289,7 +290,7 @@ public class ChatCompletionProvider : IChatCompletion
if (!string.IsNullOrEmpty(file.FileData))
{
var (contentType, binary) = FileUtility.GetFileInfoFromData(file.FileData);
var contentPart = ChatMessageContentPart.CreateImagePart(BinaryData.FromBytes(binary.ToArray()), contentType, ChatImageDetailLevel.Auto);
var contentPart = ChatMessageContentPart.CreateImagePart(binary, contentType, ChatImageDetailLevel.Auto);
contentParts.Add(contentPart);
}
else if (!string.IsNullOrEmpty(file.FileStorageUrl))