@modular-prompt/driver 0.8.1 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/anthropic/anthropic-driver.d.ts +4 -0
- package/dist/anthropic/anthropic-driver.d.ts.map +1 -1
- package/dist/anthropic/anthropic-driver.js +12 -6
- package/dist/anthropic/anthropic-driver.js.map +1 -1
- package/dist/content-utils.d.ts +12 -0
- package/dist/content-utils.d.ts.map +1 -0
- package/dist/content-utils.js +24 -0
- package/dist/content-utils.js.map +1 -0
- package/dist/formatter/converter.d.ts.map +1 -1
- package/dist/formatter/converter.js +13 -15
- package/dist/formatter/converter.js.map +1 -1
- package/dist/google-genai/google-genai-driver.d.ts +0 -4
- package/dist/google-genai/google-genai-driver.d.ts.map +1 -1
- package/dist/google-genai/google-genai-driver.js +14 -27
- package/dist/google-genai/google-genai-driver.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mlx-ml/mlx-driver.d.ts +10 -1
- package/dist/mlx-ml/mlx-driver.d.ts.map +1 -1
- package/dist/mlx-ml/mlx-driver.js +73 -8
- package/dist/mlx-ml/mlx-driver.js.map +1 -1
- package/dist/mlx-ml/process/index.d.ts +1 -1
- package/dist/mlx-ml/process/index.d.ts.map +1 -1
- package/dist/mlx-ml/process/index.js +2 -2
- package/dist/mlx-ml/process/index.js.map +1 -1
- package/dist/mlx-ml/process/model-handlers.d.ts.map +1 -1
- package/dist/mlx-ml/process/model-handlers.js +11 -5
- package/dist/mlx-ml/process/model-handlers.js.map +1 -1
- package/dist/mlx-ml/process/model-specific.d.ts +22 -1
- package/dist/mlx-ml/process/model-specific.d.ts.map +1 -1
- package/dist/mlx-ml/process/model-specific.js +28 -2
- package/dist/mlx-ml/process/model-specific.js.map +1 -1
- package/dist/mlx-ml/process/queue.d.ts +1 -1
- package/dist/mlx-ml/process/queue.d.ts.map +1 -1
- package/dist/mlx-ml/process/queue.js +3 -2
- package/dist/mlx-ml/process/queue.js.map +1 -1
- package/dist/mlx-ml/process/types.d.ts +13 -1
- package/dist/mlx-ml/process/types.d.ts.map +1 -1
- package/dist/mlx-ml/tool-call-parser.d.ts +1 -0
- package/dist/mlx-ml/tool-call-parser.d.ts.map +1 -1
- package/dist/mlx-ml/tool-call-parser.js +262 -17
- package/dist/mlx-ml/tool-call-parser.js.map +1 -1
- package/dist/mlx-ml/types.d.ts +10 -1
- package/dist/mlx-ml/types.d.ts.map +1 -1
- package/dist/openai/openai-driver.d.ts +2 -0
- package/dist/openai/openai-driver.d.ts.map +1 -1
- package/dist/openai/openai-driver.js +9 -4
- package/dist/openai/openai-driver.js.map +1 -1
- package/dist/types.d.ts +13 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/vertexai/vertexai-driver.d.ts.map +1 -1
- package/dist/vertexai/vertexai-driver.js +5 -4
- package/dist/vertexai/vertexai-driver.js.map +1 -1
- package/package.json +1 -1
- package/src/mlx-ml/python/__main__.py +66 -6
- package/src/mlx-ml/python/pyproject.toml +5 -0
- package/src/mlx-ml/python/token_utils.py +92 -27
- package/src/mlx-ml/python/uv.lock +1332 -48
- package/src/mlx-ml/python/vlm_utils.py +69 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vertexai-driver.js","sourceRoot":"","sources":["../../src/vertexai/vertexai-driver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vertexai-driver.js","sourceRoot":"","sources":["../../src/vertexai/vertexai-driver.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,15 +1,25 @@
|
|
|
1
1
|
import sys
|
|
2
2
|
import json
|
|
3
|
-
from
|
|
4
|
-
from mlx_lm.sample_utils import make_sampler
|
|
3
|
+
from vlm_utils import detect_model_kind, load_and_resize_images
|
|
5
4
|
from token_utils import get_capabilities, is_eod_token
|
|
6
5
|
|
|
7
6
|
model_name = sys.argv[1] if len(sys.argv) > 1 else "mlx-community/gemma-3-270m-it-qat-4bit"
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
# モデル種別の判定とロード
|
|
9
|
+
model_kind = detect_model_kind(model_name)
|
|
10
|
+
|
|
11
|
+
if model_kind == "vlm":
|
|
12
|
+
from mlx_vlm import load as vlm_load, stream_generate as vlm_stream_generate
|
|
13
|
+
model, processor = vlm_load(model_name)
|
|
14
|
+
tokenizer = processor # capabilities取得用(VLMのprocessorもtokenizer互換)
|
|
15
|
+
else:
|
|
16
|
+
from mlx_lm import load, stream_generate
|
|
17
|
+
from mlx_lm.sample_utils import make_sampler
|
|
18
|
+
model, tokenizer = load(model_name)
|
|
10
19
|
|
|
11
20
|
# Capabilities情報の取得
|
|
12
21
|
capabilities = get_capabilities(tokenizer)
|
|
22
|
+
capabilities["model_kind"] = model_kind
|
|
13
23
|
|
|
14
24
|
def read():
|
|
15
25
|
lines = []
|
|
@@ -220,12 +230,56 @@ def handle_completion(prompt, options=None):
|
|
|
220
230
|
"""completion API の処理"""
|
|
221
231
|
if options is None:
|
|
222
232
|
options = {}
|
|
223
|
-
|
|
233
|
+
|
|
224
234
|
# promptはTypeScript側で既にモデル固有処理済み
|
|
225
|
-
|
|
235
|
+
|
|
226
236
|
generate_text(prompt, options)
|
|
227
237
|
|
|
228
238
|
|
|
239
|
+
def handle_chat_vlm(messages, images, options=None, max_image_size=768):
|
|
240
|
+
"""VLMモデル用のチャット処理
|
|
241
|
+
|
|
242
|
+
messages: TypeScript側で画像プレースホルダー({type: "image"})が挿入済み
|
|
243
|
+
images: 画像ファイルパスの配列(プレースホルダーと位置が対応)
|
|
244
|
+
"""
|
|
245
|
+
if options is None:
|
|
246
|
+
options = {}
|
|
247
|
+
|
|
248
|
+
# processorのapply_chat_templateを直接使用
|
|
249
|
+
# systemメッセージのマージはTypeScript側でchat_restrictionsに基づき処理済み
|
|
250
|
+
formatted_prompt = processor.apply_chat_template(
|
|
251
|
+
messages,
|
|
252
|
+
add_generation_prompt=True,
|
|
253
|
+
tokenize=False,
|
|
254
|
+
)
|
|
255
|
+
|
|
256
|
+
# 画像ファイルを読み込み・リサイズ
|
|
257
|
+
pil_images = load_and_resize_images(images, max_image_size)
|
|
258
|
+
|
|
259
|
+
# image_padトークンを省略して表示(大量のパディングで読みづらいため)
|
|
260
|
+
import re
|
|
261
|
+
display_prompt = re.sub(r'(<\|image_pad\|>)+', '<|image_pad|>...', formatted_prompt)
|
|
262
|
+
sys.stderr.write(f"--- vlm prompt (images: {len(pil_images)}, max_size: {max_image_size})\n{display_prompt}\n")
|
|
263
|
+
|
|
264
|
+
generate_text_vlm(formatted_prompt, pil_images, options)
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
def generate_text_vlm(prompt, images, options):
|
|
268
|
+
"""VLMストリーミング生成"""
|
|
269
|
+
temperature = options.pop('temperature', 1.0) if 'temperature' in options else 1.0
|
|
270
|
+
max_tokens = options.pop('max_tokens', 1000) if 'max_tokens' in options else 1000
|
|
271
|
+
|
|
272
|
+
for response in vlm_stream_generate(
|
|
273
|
+
model, processor, prompt,
|
|
274
|
+
image=images,
|
|
275
|
+
max_tokens=max_tokens,
|
|
276
|
+
temperature=temperature,
|
|
277
|
+
):
|
|
278
|
+
print(response.text.replace('\0', ''), end='', flush=True)
|
|
279
|
+
|
|
280
|
+
print('\n', end='\0', flush=True)
|
|
281
|
+
|
|
282
|
+
|
|
229
283
|
def generate_text(prompt, options):
|
|
230
284
|
"""テキスト生成の共通処理
|
|
231
285
|
|
|
@@ -302,7 +356,13 @@ def main():
|
|
|
302
356
|
primer = req.get('primer')
|
|
303
357
|
options = req.get('options', {})
|
|
304
358
|
tools = req.get('tools')
|
|
305
|
-
|
|
359
|
+
images = req.get('images', [])
|
|
360
|
+
|
|
361
|
+
if model_kind == "vlm" and images:
|
|
362
|
+
max_image_size = req.get('maxImageSize', 768)
|
|
363
|
+
handle_chat_vlm(messages, images, options, max_image_size)
|
|
364
|
+
else:
|
|
365
|
+
handle_chat(messages, primer, options, tools)
|
|
306
366
|
|
|
307
367
|
elif method == 'completion':
|
|
308
368
|
prompt = req.get('prompt')
|
|
@@ -7,8 +7,13 @@ dependencies = [
|
|
|
7
7
|
"flex>=6.14.1",
|
|
8
8
|
"hf-xet>=1.1.8",
|
|
9
9
|
"jinja2>=3.1.6",
|
|
10
|
+
"mlx==0.31.0",
|
|
10
11
|
"mlx-lm>=0.30.7",
|
|
12
|
+
"mlx-vlm>=0.3.12",
|
|
13
|
+
"tokenizers==0.22.2",
|
|
11
14
|
"torch>=2.9.0",
|
|
15
|
+
"torchvision>=0.24.1",
|
|
16
|
+
"transformers>=5.2",
|
|
12
17
|
]
|
|
13
18
|
|
|
14
19
|
[build-system]
|
|
@@ -74,11 +74,12 @@ def get_special_tokens(tokenizer):
|
|
|
74
74
|
special_tokens = {}
|
|
75
75
|
|
|
76
76
|
# 標準的なspecial tokens(tokenizerに定義されているもの)
|
|
77
|
+
# VLM processorではこれらの属性がない場合があるためgetattr使用
|
|
77
78
|
standard_tokens = {
|
|
78
|
-
"eod": tokenizer
|
|
79
|
-
"bos": tokenizer
|
|
80
|
-
"unk": tokenizer
|
|
81
|
-
"pad": tokenizer
|
|
79
|
+
"eod": getattr(tokenizer, "eos_token", None), # End of Document/Sequence
|
|
80
|
+
"bos": getattr(tokenizer, "bos_token", None), # Beginning of Sequence
|
|
81
|
+
"unk": getattr(tokenizer, "unk_token", None), # Unknown token
|
|
82
|
+
"pad": getattr(tokenizer, "pad_token", None), # Padding token
|
|
82
83
|
}
|
|
83
84
|
|
|
84
85
|
for name, token in standard_tokens.items():
|
|
@@ -124,7 +125,15 @@ def get_special_tokens(tokenizer):
|
|
|
124
125
|
"scratchpad": ("<|scratchpad|>", "<|/scratchpad|>"),
|
|
125
126
|
"analysis": ("<|analysis|>", "<|/analysis|>"),
|
|
126
127
|
"summary": ("<|summary|>", "<|/summary|>"),
|
|
127
|
-
"explanation": ("<|explanation|>", "<|/explanation|>")
|
|
128
|
+
"explanation": ("<|explanation|>", "<|/explanation|>"),
|
|
129
|
+
|
|
130
|
+
# tool_call バリエーション(追加)
|
|
131
|
+
"tool_call_explicit": ("<|tool_call_start|>", "<|tool_call_end|>"),
|
|
132
|
+
"tool_call_xml": ("<tool_call>", "</tool_call>"),
|
|
133
|
+
"tool_calls_section": ("<|tool_calls_section_begin|>", "<|tool_calls_section_end|>"),
|
|
134
|
+
"function_call_tags": ("<start_function_call>", "<end_function_call>"),
|
|
135
|
+
"longcat_tool_call": ("<longcat_tool_call>", "</longcat_tool_call>"),
|
|
136
|
+
"minimax_tool_call": ("<minimax:tool_call>", "</minimax:tool_call>"),
|
|
128
137
|
}
|
|
129
138
|
|
|
130
139
|
# 単体トークン(存在する場合のみ)
|
|
@@ -143,27 +152,36 @@ def get_special_tokens(tokenizer):
|
|
|
143
152
|
# 一般的なマークダウン風
|
|
144
153
|
"code_inline": "`",
|
|
145
154
|
"code_block_start": "```",
|
|
146
|
-
"code_block_end": "```"
|
|
155
|
+
"code_block_end": "```",
|
|
156
|
+
|
|
157
|
+
# ツール関連の単体トークン(追加)
|
|
158
|
+
"tool_calls_marker": "[TOOL_CALLS]",
|
|
147
159
|
}
|
|
148
160
|
|
|
161
|
+
# VLM processorではconvert_tokens_to_idsがない場合がある
|
|
162
|
+
if not hasattr(tokenizer, 'convert_tokens_to_ids'):
|
|
163
|
+
return special_tokens
|
|
164
|
+
|
|
165
|
+
unk_token_id = getattr(tokenizer, "unk_token_id", None)
|
|
166
|
+
|
|
149
167
|
# ペアトークンの処理
|
|
150
168
|
for name, (start_token, end_token) in pair_tokens.items():
|
|
151
169
|
start_id = tokenizer.convert_tokens_to_ids(start_token)
|
|
152
170
|
end_id = tokenizer.convert_tokens_to_ids(end_token)
|
|
153
|
-
|
|
171
|
+
|
|
154
172
|
# unk_tokenでない場合のみ追加
|
|
155
|
-
if start_id !=
|
|
173
|
+
if start_id != unk_token_id and end_id != unk_token_id:
|
|
156
174
|
special_tokens[name] = {
|
|
157
175
|
"start": {"text": start_token, "id": start_id},
|
|
158
176
|
"end": {"text": end_token, "id": end_id}
|
|
159
177
|
}
|
|
160
|
-
|
|
178
|
+
|
|
161
179
|
# 単体トークンの処理
|
|
162
180
|
for name, token_text in single_tokens.items():
|
|
163
181
|
token_id = tokenizer.convert_tokens_to_ids(token_text)
|
|
164
|
-
|
|
182
|
+
|
|
165
183
|
# unk_tokenでない場合のみ追加
|
|
166
|
-
if token_id !=
|
|
184
|
+
if token_id != unk_token_id:
|
|
167
185
|
special_tokens[name] = {"text": token_text, "id": token_id}
|
|
168
186
|
|
|
169
187
|
return special_tokens
|
|
@@ -192,6 +210,24 @@ def detect_tool_call_format(tokenizer):
|
|
|
192
210
|
if hasattr(tokenizer, 'init_kwargs'):
|
|
193
211
|
tool_parser_type = tokenizer.init_kwargs.get('tool_parser_type')
|
|
194
212
|
|
|
213
|
+
# 既知パーサーからの逆引き(最優先)
|
|
214
|
+
KNOWN_TOOL_PARSERS = {
|
|
215
|
+
"json_tools": {"call_start": "<tool_call>", "call_end": "</tool_call>"},
|
|
216
|
+
"pythonic": {"call_start": "<|tool_call_start|>", "call_end": "<|tool_call_end|>"},
|
|
217
|
+
"function_gemma": {"call_start": "<start_function_call>", "call_end": "<end_function_call>"},
|
|
218
|
+
"mistral": {"call_start": "[TOOL_CALLS]", "call_end": ""},
|
|
219
|
+
"kimi_k2": {"call_start": "<|tool_calls_section_begin|>", "call_end": "<|tool_calls_section_end|>"},
|
|
220
|
+
"longcat": {"call_start": "<longcat_tool_call>", "call_end": "</longcat_tool_call>"},
|
|
221
|
+
"glm47": {"call_start": "<tool_call>", "call_end": "</tool_call>"},
|
|
222
|
+
"qwen3_coder": {"call_start": "<tool_call>", "call_end": "</tool_call>"},
|
|
223
|
+
"minimax_m2": {"call_start": "<minimax:tool_call>", "call_end": "</minimax:tool_call>"},
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
if tool_parser_type and tool_parser_type in KNOWN_TOOL_PARSERS:
|
|
227
|
+
result = {"tool_parser_type": tool_parser_type}
|
|
228
|
+
result.update(KNOWN_TOOL_PARSERS[tool_parser_type])
|
|
229
|
+
return result
|
|
230
|
+
|
|
195
231
|
# chat_template テキストを取得
|
|
196
232
|
template = getattr(tokenizer, 'chat_template', None)
|
|
197
233
|
if not template and hasattr(tokenizer, 'init_kwargs'):
|
|
@@ -207,21 +243,36 @@ def detect_tool_call_format(tokenizer):
|
|
|
207
243
|
|
|
208
244
|
# テンプレートテキストからデリミタを抽出
|
|
209
245
|
if template:
|
|
210
|
-
# tool_call
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
#
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
246
|
+
# 複数のtool_call関連パターンを順に試行
|
|
247
|
+
tool_call_patterns = [
|
|
248
|
+
# <tool_call>...</tool_call>, <|tool_call|>...<|/tool_call|>
|
|
249
|
+
(r'<\|?tool_call\|?>', r'</?\|?tool_call\|?>|<\|?/tool_call\|?>'),
|
|
250
|
+
# <|tool_call_start|>...<|tool_call_end|>
|
|
251
|
+
(r'<\|tool_call_start\|>', r'<\|tool_call_end\|>'),
|
|
252
|
+
# <start_function_call>...<end_function_call>
|
|
253
|
+
(r'<start_function_call>', r'<end_function_call>'),
|
|
254
|
+
# <|tool_calls_section_begin|>...<|tool_calls_section_end|>
|
|
255
|
+
(r'<\|tool_calls_section_begin\|>', r'<\|tool_calls_section_end\|>'),
|
|
256
|
+
# <longcat_tool_call>...</longcat_tool_call>
|
|
257
|
+
(r'<longcat_tool_call>', r'</longcat_tool_call>'),
|
|
258
|
+
# <minimax:tool_call>...</minimax:tool_call>
|
|
259
|
+
(r'<minimax:tool_call>', r'</minimax:tool_call>'),
|
|
260
|
+
]
|
|
261
|
+
|
|
262
|
+
for start_pattern, end_pattern in tool_call_patterns:
|
|
263
|
+
start_match = re.search(start_pattern, template)
|
|
264
|
+
end_match = re.search(end_pattern, template)
|
|
265
|
+
if start_match and end_match:
|
|
266
|
+
result["call_start"] = start_match.group(0)
|
|
267
|
+
result["call_end"] = end_match.group(0)
|
|
268
|
+
break
|
|
269
|
+
|
|
270
|
+
# Mistral特殊ケース
|
|
271
|
+
if "call_start" not in result:
|
|
272
|
+
mistral_match = re.search(r'\[TOOL_CALLS\]', template)
|
|
273
|
+
if mistral_match:
|
|
274
|
+
result["call_start"] = "[TOOL_CALLS]"
|
|
275
|
+
result["call_end"] = ""
|
|
225
276
|
|
|
226
277
|
# tool_response タグの検出
|
|
227
278
|
resp_tags = re.findall(r'<[|/]?tool_response[|]?>', template)
|
|
@@ -293,7 +344,7 @@ def get_tokenizer_features(tokenizer):
|
|
|
293
344
|
"""
|
|
294
345
|
features = {
|
|
295
346
|
"apply_chat_template": hasattr(tokenizer, 'apply_chat_template'),
|
|
296
|
-
"vocab_size": tokenizer
|
|
347
|
+
"vocab_size": getattr(tokenizer, 'vocab_size', None),
|
|
297
348
|
"model_max_length": getattr(tokenizer, 'model_max_length', None)
|
|
298
349
|
}
|
|
299
350
|
|
|
@@ -325,6 +376,20 @@ def get_capabilities(tokenizer):
|
|
|
325
376
|
"features": get_tokenizer_features(tokenizer)
|
|
326
377
|
}
|
|
327
378
|
|
|
379
|
+
# tool_call_formatの情報をspecial_tokensに反映(補完)
|
|
380
|
+
features = capabilities.get("features", {})
|
|
381
|
+
chat_template = features.get("chat_template")
|
|
382
|
+
if chat_template:
|
|
383
|
+
tcf = chat_template.get("tool_call_format")
|
|
384
|
+
if tcf and tcf.get("call_start") and "tool_call" not in capabilities["special_tokens"]:
|
|
385
|
+
call_start = tcf["call_start"]
|
|
386
|
+
call_end = tcf.get("call_end", "")
|
|
387
|
+
if call_end: # ペアがある場合のみ
|
|
388
|
+
capabilities["special_tokens"]["tool_call"] = {
|
|
389
|
+
"start": {"text": call_start, "id": -1},
|
|
390
|
+
"end": {"text": call_end, "id": -1}
|
|
391
|
+
}
|
|
392
|
+
|
|
328
393
|
# チャット制約を検出して追加
|
|
329
394
|
chat_restrictions = detect_chat_restrictions(tokenizer)
|
|
330
395
|
if chat_restrictions:
|