microsoft/teams.net
Publicmirrored from https://github.com/microsoft/teams.netAvailable
Libraries/Microsoft.Teams.AI.Models.OpenAI/Extensions/SystemMessage.cs
25lines · modeblame
73e7847aAlex Acebo1 years ago | 1 | using Microsoft.Teams.AI.Messages; |
| 2 | | |
| 3 | using OpenAI.Chat; | |
| 4 | | |
| 5 | namespace Microsoft.Teams.AI.Models.OpenAI; | |
| 6 | | |
| 7 | public static partial class MessageExtensions | |
| 8 | { | |
| 9 | public static DeveloperMessage ToTeams(this SystemChatMessage message) | |
| 10 | { | |
| 11 | var content = message.Content.Select(c => | |
| 12 | { | |
| 13 | if (c.Kind == ChatMessageContentPartKind.Text) return c.Text; | |
| 14 | if (c.Kind == ChatMessageContentPartKind.Image) return c.ImageUri.ToString(); | |
| 15 | return c.Refusal; | |
| 16 | }); | |
| 17 | | |
| 18 | return new DeveloperMessage(string.Join("\n", content)); | |
| 19 | } | |
| 20 | | |
| 21 | public static SystemChatMessage ToOpenAI(this DeveloperMessage message) | |
| 22 | { | |
| 23 | return ChatMessage.CreateSystemMessage(message.Content); | |
| 24 | } | |
| 25 | } |