Bugfix: Lingering error in image generation from image gen. models
This commit is contained in:
@@ -160,8 +160,17 @@ class OpenRouterProvider: AIProvider {
|
||||
throw ProviderError.unknown("HTTP \(httpResponse.statusCode)")
|
||||
}
|
||||
|
||||
// Debug: log raw response for image gen models
|
||||
if request.imageGeneration, let rawStr = String(data: data, encoding: .utf8) {
|
||||
Log.api.debug("Image gen raw response (first 3000 chars): \(rawStr.prefix(3000))")
|
||||
}
|
||||
|
||||
let apiResponse = try JSONDecoder().decode(OpenRouterChatResponse.self, from: data)
|
||||
return try convertToChatResponse(apiResponse)
|
||||
let chatResponse = try convertToChatResponse(apiResponse)
|
||||
if request.imageGeneration {
|
||||
Log.api.debug("Image gen decoded: content='\(chatResponse.content)', generatedImages=\(chatResponse.generatedImages?.count ?? 0)")
|
||||
}
|
||||
return chatResponse
|
||||
}
|
||||
|
||||
// MARK: - Chat with raw tool messages
|
||||
@@ -396,7 +405,10 @@ class OpenRouterProvider: AIProvider {
|
||||
ToolCallInfo(id: tc.id, type: tc.type, functionName: tc.function.name, arguments: tc.function.arguments)
|
||||
}
|
||||
|
||||
let images = choice.message.images.flatMap { decodeImageOutputs($0) }
|
||||
let topLevelImages = choice.message.images.flatMap { decodeImageOutputs($0) } ?? []
|
||||
let blockImages = decodeImageOutputs(choice.message.contentBlockImages) ?? []
|
||||
let allImages = topLevelImages + blockImages
|
||||
let images: [Data]? = allImages.isEmpty ? nil : allImages
|
||||
|
||||
return ChatResponse(
|
||||
id: apiResponse.id,
|
||||
|
||||
Reference in New Issue
Block a user