refine tool call and response
This commit is contained in:
parent
a4d4f28bc0
commit
d91a55232b
|
|
@ -305,10 +305,10 @@ public class ChatCompletionProvider : IChatCompletion
|
|||
{
|
||||
messages.Add(new AssistantChatMessage(new List<ChatToolCall>
|
||||
{
|
||||
ChatToolCall.CreateFunctionToolCall(message.FunctionName, message.FunctionName, BinaryData.FromString(message.FunctionArgs ?? string.Empty))
|
||||
ChatToolCall.CreateFunctionToolCall(message.ToolCallId ?? message.FunctionName, message.FunctionName, BinaryData.FromString(message.FunctionArgs ?? "{}"))
|
||||
}));
|
||||
|
||||
messages.Add(new ToolChatMessage(message.FunctionName, message.Content));
|
||||
messages.Add(new ToolChatMessage(message.ToolCallId ?? message.FunctionName, message.Content));
|
||||
}
|
||||
else if (message.Role == AgentRole.User)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -271,6 +271,7 @@ public class GeminiChatCompletionProvider : IChatCompletion
|
|||
{
|
||||
FunctionCall = new FunctionCall
|
||||
{
|
||||
Id = message.ToolCallId,
|
||||
Name = message.FunctionName,
|
||||
Args = JsonNode.Parse(message.FunctionArgs ?? "{}")
|
||||
}
|
||||
|
|
@ -282,6 +283,7 @@ public class GeminiChatCompletionProvider : IChatCompletion
|
|||
{
|
||||
FunctionResponse = new FunctionResponse
|
||||
{
|
||||
Id = message.ToolCallId,
|
||||
Name = message.FunctionName,
|
||||
Response = new JsonObject()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -512,6 +512,7 @@ public class GoogleRealTimeProvider : IRealTimeCompletion
|
|||
{
|
||||
FunctionCall = new FunctionCall
|
||||
{
|
||||
Id = message.ToolCallId,
|
||||
Name = message.FunctionName,
|
||||
Args = JsonNode.Parse(message.FunctionArgs ?? "{}")
|
||||
}
|
||||
|
|
@ -523,6 +524,7 @@ public class GoogleRealTimeProvider : IRealTimeCompletion
|
|||
{
|
||||
FunctionResponse = new FunctionResponse
|
||||
{
|
||||
Id = message.ToolCallId,
|
||||
Name = message.FunctionName ?? string.Empty,
|
||||
Response = new JsonObject()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
using BotSharp.Abstraction.Agents.Models;
|
||||
using BotSharp.Abstraction.Hooks;
|
||||
using OpenAI.Chat;
|
||||
|
||||
|
|
@ -273,10 +272,10 @@ public class ChatCompletionProvider : IChatCompletion
|
|||
{
|
||||
messages.Add(new AssistantChatMessage(new List<ChatToolCall>
|
||||
{
|
||||
ChatToolCall.CreateFunctionToolCall(message.FunctionName, message.FunctionName, BinaryData.FromString(message.FunctionArgs ?? string.Empty))
|
||||
ChatToolCall.CreateFunctionToolCall(message.ToolCallId ?? message.FunctionName, message.FunctionName, BinaryData.FromString(message.FunctionArgs ?? "{}"))
|
||||
}));
|
||||
|
||||
messages.Add(new ToolChatMessage(message.FunctionName, message.Content));
|
||||
messages.Add(new ToolChatMessage(message.ToolCallId ?? message.FunctionName, message.Content));
|
||||
}
|
||||
else if (message.Role == AgentRole.User)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue