Разработчик под ником автора статьи на Habr поставил перед несколькими ИИ-моделями практическую инженерную задачу: написать консольный бенчмарк на Swift, который измеряет скорость семи XML-парсеров для Apple-платформ на файле из 500 тысяч строк. Задача намеренно усложнялась: два из семи парсеров — Ono и KissXML — написаны на Objective-C, а Ono не поддерживает SwiftPM, стандартный менеджер зависимостей для Swift-проектов.
XML-парсеры — базовый инструмент для работы с данными в iOS и macOS приложениях. Несмотря на распространение JSON, XML по-прежнему используется в корпоративных системах, RSS-лентах и конфигурационных файлах Apple. Выбор парсера напрямую влияет на производительность приложения, поэтому сравнительный бенчмарк — практически полезный артефакт. В тест вошли AEXML, SWXMLHash, SwiftyXMLParser, Kanna, Fuzi, Ono и KissXML.
| Модель | Время | Стоимость | Токены | Место |
|---|---|---|---|---|
| Gemini 3.1 Pro Preview Custom Tools | 5 мин 10 сек | $0,49 | 690 тыс | 1 |
| Gemini 3.1 Pro Preview | 6 мин | $0,86 | 885 тыс | 2 |
| GLM 5.1 | 15 мин | $1,22 | 3 680 тыс | 3 |
Каждая модель получала одинаковый набор данных: файл с описанием задачи на 100 строк и тестовый XML. Модели запускались через OpenCode с единым ключом openrouter.ai, последовательно, в изолированных директориях. Оценка велась по четырём критериям: корректность результата, охват всех семи парсеров, скорость выполнения и стоимость.
Gemini 3.1 Pro Preview занял второе место — 6 минут, $0,86, 885 тысяч токенов; корректно указал версии зависимостей.
Победителем стала Gemini 3.1 Pro Preview Custom Tools — модель, выбранная случайно вместо обычного Gemini 3.1 Pro Preview. Она завершила задачу за 5 минут 10 секунд, потратив $0,49 и 690 тысяч токенов. График, сгенерированный моделью, совпал с эталонным результатом автора. Для решения проблемы с Ono модель создала из него саб-таргет внутри единого Package.swift, подключив его к основному бенчмарк-проекту. Единственный минус — зависимости указаны через branch: "master" вместо конкретных версий, что считается плохой практикой в SwiftPM.
Второе место у Gemini 3.1 Pro Preview: 6 минут, $0,86, 885 тысяч токенов. Эта модель пошла другим путём — создала для Ono отдельный Package.swift и подключила его через локальный путь. Все остальные зависимости указаны с конкретными номерами версий (например, AEXML from: "4.6.1"), что автор отметил как best practice.
Третье место занял GLM 5.1 — китайская модель от Zhipu ИИ. Результат корректный, версионность расставлена правильно, Ono также получил собственный Package.swift. Однако цена оказалась существенно выше: 15 минут работы, $1,22 и 3,68 млн токенов — примерно в три раза медленнее и в два с половиной раза дороже победителя.
Автор оговаривается, что не исключает элемент «читинга» у Gemini: Google мог проиндексировать предыдущую статью по теме и заранее обработать похожий бенчмарк. Промпт с описанием задачи автор решил не публиковать — он планирует использовать его для тестирования каждого нового мажорного релиза ИИ-моделей, чтобы те не могли обучиться на конкретном задании. Тесты проводились на MacBook с macOS 26 и Xcode 26.


