Как определить подмену модели в API-реле
Проверяйте model field, самоидентификацию, tokenizer, protocol behavior и повторные выборки, чтобы выявить подмену, понижение или динамическую маршрутизацию модели.
Краткий ответ
Нельзя определять подмену модели одним вопросом «кто ты?». Надежная проверка сопоставляет model field, usage schema, token counts, нативное поведение протокола, cache evidence и повторяемость результатов. Риск повышается только когда несколько независимых сигналов остаются несовместимыми.
Основные выводы
- Самоидентификация модели — слабый сигнал и не является доказательством.
- Сначала проверяйте model, usage, cache fields и ошибки сервера.
- Фиксируйте модель, prompt, регион и время, затем повторяйте тест.
- Используйте уровни нормы, сомнения и высокого риска вместо бинарного вердикта.
Почему удаленная проверка не дает абсолютного доказательства
Клиент видит только HTTP-ответ реле и не может проверить его upstream account, routing rules или веса модели. Легальные aliases, account pools, региональная маршрутизация, failover и quantized variants тоже меняют наблюдаемое поведение одного model id.
Поэтому проверка чистоты модели — это аудит совокупности доказательств. Один сбой требует повторного теста; несколько независимых и повторяемых расхождений повышают уровень риска.
Какие доказательства собирать
Начинайте с машиночитаемых данных, а не с текста ответа модели. Response body и headers стабильнее и удобнее для последующей проверки.
| Сигнал | Что проверять | Надежность |
|---|---|---|
| model field | Запрошенная и возвращенная модель, неизвестные aliases | Средняя |
| usage/tokens | Соответствуют ли token counts ожидаемому tokenizer | Средняя |
| Protocol fields | Tools, streaming, errors и usage schema | Средняя–высокая |
| Prompt cache | Есть ли нативные поля cache read/write | Средняя–высокая |
| Самоидентификация | Заявленное семейство и возможности | Низкая |
| Повторные выборки | Стабильность по времени, запросам и аккаунтам | Высокая |
Воспроизводимый процесс проверки
До теста зафиксируйте base URL, model id, prompt, temperature, max tokens и регион. Используйте временный API key, который можно отозвать.
- Отправьте минимальный запрос и проверьте auth и доступность модели.
- Сохраните model, usage, request id, rate-limit и upstream headers.
- Запустите identity probes, не считая самоописание доказательством.
- Сравните token counts фиксированного текста с базовой линией.
- Для cache-capable моделей сравните создание и чтение кеша в паре запросов.
- Повторите тест в разные периоды, чтобы увидеть динамическую маршрутизацию.
Как оценивать уровень риска
Норма означает согласованность protocol fields, model identity, token counts и повторных выборок. Сомнение — один аномальный сигнал, требующий контролируемого ретеста. Высокий риск — несколько независимых сигналов стабильно расходятся.
Градация честнее ярлыка «настоящая/поддельная» и полезнее для закупки.
Частые причины ложных срабатываний
System prompt влияет на самоидентификацию, rollout меняет response fields, gateway переписывает model name, а версии tokenizer дают небольшие расхождения. Один 429, 5xx или cache miss не доказывает подмену.
Сначала исключите permissions, aliases, регион, context length и protocol conversion, затем повторите тест с другим prompt и временем.
Как применять результат при закупке
Быстрый тест подходит для отбора. Для закупки добавьте бизнес-prompts, concurrency, long context и recovery, а также запросите upstream sources, downgrade policy, logging и SLA.
Оценивайте вместе чистоту модели, P95, success rate, cache hit и фактическую token cost, а не только минимальную цену.
Частые вопросы
Можно ли выявить подмену вопросом «какая ты модель»?
Нет. Ответ зависит от system prompt, fine-tuning и gateway. Сопоставляйте его с model fields, protocol behavior, token counts и повторными выборками.
Правильный model field гарантирует настоящую модель?
Нет. Реле может переписать поле. Дополнительно проверяйте usage schema, cache fields, tokenizer и повторяемость.
Достаточно ли одного теста?
Нет. Реле может маршрутизировать по времени, нагрузке или account pool. Зафиксируйте переменные и повторите тест.
Читайте также
Запустите проверку реального API
Используйте временный key для проверки связности, задержки, кеша, лимитов, чистоты модели и token cost.