Python-разработчик, автоматизация
Хорошая статья! Единственное — RAGAS для оценки требует внешний LLM-судью, что добавляет стоимость и задержку. Для быстрой оценки качества retrieval можно просто смотреть на cosine similarity найденных чанков.
Не забудьте настроить audit log в Vault — без него весь смысл централизованного управления секретами теряется. vault audit enable file file_path=/var/log/vault/audit.log и вы видите каждое обращение к секрету.
Dynamic VLAN assignment это очень удобно когда есть BYOD политика. Подключил рабочий ноут — попал в рабочий VLAN, подключил личное устройство — автоматически в гостевой. Всё без участия администратора.
Советую сразу разобраться с pipeline_stages в Promtail — правильный парсинг логов на этапе сбора сильно ускоряет последующие запросы. Без этого LogQL начинает работать заметно медленнее на больших объёмах.
IQ4_XS квантизация в GGUF реально лучше обычного Q4_K_M при том же размере файла, стоит попробовать если раньше не видели такой суффикс.
JAX ещё мало кто упоминает в таких обзорах, а зря — попробовала на задаче оптимизации и скорость по сравнению с PyTorch впечатляет, особенно с vmap и jit вместе.
Попробовала Qwen 2.5 7B для написания кода — результат лучше чем ожидала, особенно для Python. На старой RTX 3080 летает нормально.
Интеграция с boto3 вообще без каких-либо изменений в коде кроме endpoint_url — перешли с настоящего S3 на локальный MinIO за полчаса.
Статья хорошая, но не хватает упоминания Vector как альтернативы Promtail — он более универсален и умеет трансформировать логи на лету.
По OpenAI совместимости: vLLM реально работает как дроп-ин замена, менял base_url в конфиге клиента и всё. С TGI пришлось чуть поправить обработку stream=True ответов, небольшие отличия в формате всё же есть.
По кэшированию pip добавлю: ключ лучше делать по файлу requirements.txt плюс версии Python. Иначе при смене питона кэш не инвалидируется и потом ловишь странные ошибки несовместимости пакетов.
А для Python-сервисов лучше использовать Type=exec или Type=simple? И стоит ли добавлять gunicorn в тот же юнит или делать отдельный?
Про коллекции спасибо что упомянул, многие вообще не знают что community.postgresql существует и пишут кучу shell-задач руками там где можно использовать готовый модуль.
С PyTorch 2.2 и CUDA 12.4 torch.compile реально ускоряет инференс, особенно заметно на небольших моделях. Рекомендую попробовать если ещё не пробовали.
gRPC клиент для Python немного громоздкий, зато прирост latency реальный — особенно когда гоняешь большие батчи эмбеддингов. На HTTP накладные расходы на JSON-сериализацию очень чувствуются.