Skip to content

Commit d2c9ce3

Browse files
committed
refactor(anthropic-client): wrap message content in TextContent
Refactor message content handling to use `Content.TextContent` for user, assistant, and system messages in the `toAnthropicRequest` conversion.
1 parent 7ad5576 commit d2c9ce3

File tree

1 file changed

+5
-4
lines changed
  • openai-gateway/openai-gateway-core/src/commonMain/kotlin/com/tddworks/anthropic/api/messages/api

1 file changed

+5
-4
lines changed

openai-gateway/openai-gateway-core/src/commonMain/kotlin/com/tddworks/anthropic/api/messages/api/Extensions.kt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,16 +91,17 @@ fun ChatCompletionRequest.toAnthropicStreamRequest(): CreateMessageRequest {
9191

9292
@OptIn(ExperimentalSerializationApi::class)
9393
fun ChatCompletionRequest.toAnthropicRequest(stream: Boolean? = null): CreateMessageRequest {
94-
val systemPrompt = messages.firstOrNull { it.role == OpenAIRole.System }?.content as? String
94+
val systemPrompt =
95+
messages.firstOrNull { it.role == OpenAIRole.System }?.content as? String
9596

9697
val formattedMessages = messages
9798
.filterNot { it.role == OpenAIRole.System }
9899
.map { message ->
99100
Message(
100101
content = when (message) {
101-
is OpenAIUserMessage -> message.content
102-
is OpenAIAssistantMessage -> message.content
103-
is OpenAISystemMessage -> message.content
102+
is OpenAIUserMessage -> Content.TextContent(message.content)
103+
is OpenAIAssistantMessage -> Content.TextContent(message.content)
104+
is OpenAISystemMessage -> Content.TextContent(message.content)
104105
else -> throw IllegalArgumentException("Unknown message type: $message")
105106
},
106107
role = when (message.role) {

0 commit comments

Comments
 (0)