Back home

После того, как модель с открытым исходным кодом будет обнародована, что действительно хрупко, так это маршрут по умолчанию.

Тот факт, что модель все еще можно загрузить, не означает, что вход по умолчанию всегда будет доступен.

Put the question as “Can the United States be sealed?” и ответ обычно менее драматичен. Файлы веса не обязательно исчезнут из мира, но маршруты по умолчанию можно легко переопределить. Пока адрес концентратора, значение SDK по умолчанию и вход онлайн-вывода используются как нечто само собой разумеющееся, последующая автоматизация будет нестабильной.

Начать с адреса

Модель с открытым исходным кодом начиналась как просто адрес. Вытащить, оценить, развернуть, вернуть — все действия указывают на один и тот же вход. Когда восходящий поток не менялся, этот путь казался «гладким» и даже естественным; когда восходящий поток изменился, я понял, что полагался не на возможности модели, а на путь по умолчанию.

Самая распространенная точка останова в проекте — не «вообще не могу получить модель», а «все еще могу получить ее, но не исходную». Синхронизация зеркала медленная, алиасы переключаются, региональный доступ ограничен, дефолтная версия перенесена, но скрипт по-прежнему выполняется по старому адресу. Онтология модели все еще существует, но процесс начал отклоняться.

Сначала сбой происходит в автоматизации

Переключать изображения вручную несложно, но сложность в том, что автоматика сама этого не понимает. CI, запланированная оценка, создание контейнера, записи экспериментов, примеры документов и локальные сценарии коллег могут копировать одно и то же значение по умолчанию. Пока ничего не изменится, старый вход будет продолжать появляться.

Именно здесь термин «печать» больше всего вводит в заблуждение. Реальное изменение часто заключается не в том, что веса стираются, а в том, что значения по умолчанию перезаписываются. Снаружи он по-прежнему выглядит как то же самое имя, но внутри были изменены вход, версия и зависимости. Для людей это всего лишь переключатель; для автоматизации это широкий поведенческий дрейф.

Вес можно переместить, но значение по умолчанию переместить нельзя.

An important advantage of the open source model is that weights can be copied, mirrored, forked, and saved offline. Проблема в том, что копируется файл, а не путь по умолчанию. Пока потребительская сторона по-прежнему считает определенный внешний вход единственной истиной, независимо от того, насколько открыт вес, на метод работы все равно будут влиять внешние правила.

Еще более неприятно то, что это изменение не обязательно сразу же приведет к ошибке. Много раз кажется, что он еще может работать, но результаты разные: один набор оценок был передан на зеркало А, а другой набор - на зеркало Б; одна версия доступна локально, но становится другим набором исправлений, когда достигает конвейера; под одним и тем же названием модели фактическое поведение начало расходиться.

Здесь необходимо различать две вещи. Проблема цепочки поставок больше похожа на управление файлами и управление версиями, а проблема маршрутизации по умолчанию больше похожа на принятие решений во время выполнения. The former cares about whether there is a backup, and the latter cares about which path the request should take first. Пока значение по умолчанию записывается извне, внешние действия могут напрямую переопределять рабочий процесс.

Что необходимо дополнить, так это пин, зеркало и запасной маршрут.

Средства правовой защиты не сложны, но мало кто считает их первоочередной задачей.

Версия должна быть привязана к конкретному коммиту, хэшу или чистому выпуску и не полагаться на такие имена, как «последний», которые могут дрейфовать в течение длительного времени. Лучше всего помещать веса, токенизаторы, конфигурации и образы вывода во внутреннее хранилище вместе, хотя бы для того, чтобы их можно было перестроить при отключении сети. Вход по умолчанию должен иметь резервный маршрут и не может иметь только один сетевой адрес. Оценочные образцы и старые результаты также необходимо хранить в деле, иначе не будет ясно даже, «насколько изменилось».

Все эти вещи выглядят как детали эксплуатации и технического обслуживания, но на самом деле они возвращают контроль над внешними настройками по умолчанию. Без этого уровня закрытости открытый исходный код принесет только «кажущуюся свободу», но не «фактическую управляемость».

После того, как модель с открытым исходным кодом будет обнародована, что действительно хрупко, так это не сам вес, а маршрут по умолчанию. Пока вход по-прежнему контролируется значениями по умолчанию других людей, рабочий процесс все равно будет нарушен при повторном открытии модели.

FAQ

What to read next

Related

Continue reading