Skip to content

Commit 11fb312

Browse files
committed
Move Qwen2VLMessageGenerator
1 parent 560d4f4 commit 11fb312

File tree

2 files changed

+21
-20
lines changed

2 files changed

+21
-20
lines changed

Libraries/MLXLMCommon/Chat.swift

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -69,23 +69,3 @@ public struct DefaultMessageGenerator: MessageGenerator {
6969
]
7070
}
7171
}
72-
73-
public struct Qwen2VLMessageGenerator: MessageGenerator {
74-
public init() {}
75-
76-
public func generate(message: Chat.Message) -> Message {
77-
[
78-
"role": message.role.rawValue,
79-
"content": [
80-
["type": "text", "text": message.content]
81-
]
82-
// Messages format for Qwen 2 VL, Qwen 2.5 VL. May need to be adapted for other models.
83-
+ message.images.map { _ in
84-
["type": "image"]
85-
}
86-
+ message.videos.map { _ in
87-
["type": "video"]
88-
},
89-
]
90-
}
91-
}

Libraries/MLXVLM/Models/Qwen2VL.swift

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1100,3 +1100,24 @@ public struct Qwen2VLProcessorConfiguration: Codable, Sendable {
11001100
case _size = "size"
11011101
}
11021102
}
1103+
1104+
/// Message Generator for Qwen2VL
1105+
public struct Qwen2VLMessageGenerator: MessageGenerator {
1106+
public init() {}
1107+
1108+
public func generate(message: Chat.Message) -> Message {
1109+
[
1110+
"role": message.role.rawValue,
1111+
"content": [
1112+
["type": "text", "text": message.content]
1113+
]
1114+
// Messages format for Qwen 2 VL, Qwen 2.5 VL. May need to be adapted for other models.
1115+
+ message.images.map { _ in
1116+
["type": "image"]
1117+
}
1118+
+ message.videos.map { _ in
1119+
["type": "video"]
1120+
},
1121+
]
1122+
}
1123+
}

0 commit comments

Comments
 (0)