<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Yuriy Gavrilov: posts tagged LLM</title>
<link>https://gavrilov.info/tags/llm/</link>
<description>Welcome to my personal place for love, peace and happiness 🤖 Yuiry Gavrilov</description>
<author></author>
<language>en</language>
<generator>Aegea 11.4 (v4171e)</generator>

<itunes:owner>
<itunes:name></itunes:name>
<itunes:email>yvgavrilov@gmail.com</itunes:email>
</itunes:owner>
<itunes:subtitle>Welcome to my personal place for love, peace and happiness 🤖 Yuiry Gavrilov</itunes:subtitle>
<itunes:image href="https://gavrilov.info/pictures/userpic/userpic-square@2x.jpg?1643451008" />
<itunes:explicit>no</itunes:explicit>

<item>
<title>OpenAI OSS: можно качать</title>
<guid isPermaLink="false">258</guid>
<link>https://gavrilov.info/all/openai-oss-mozhno-kachat/</link>
<pubDate>Tue, 05 Aug 2025 21:40:28 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/openai-oss-mozhno-kachat/</comments>
<description>
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/Snimok-ekrana-2025-08-05-v-21.34.50.png" width="1878" height="1180" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://openai.com/open-models/"&gt;https://openai.com/open-models/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Для большой модели надо h100, а маленькая попроще и требует всего 16gb.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/telegram-cloud-photo-size-2-5231372004953823349-y.jpg" width="1280" height="1200" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Ну и главное: удаляем сразу, если заметим, что клянчит деньги и просит купить меня :)&lt;/p&gt;
&lt;p&gt;А вот квенчик красавчик: ai molodca)&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/Snimok-ekrana-2025-08-05-v-21.38.36.png" width="1218" height="746" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;но он знал ))&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/Snimok-ekrana-2025-08-05-v-21.42.51.png" width="852" height="504" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;почти&lt;/p&gt;
&lt;p&gt;trinking...&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;...
But the trick is that when &amp;quot;А&amp;quot; fell, it becomes &amp;quot;а&amp;quot; (lowercase?), but maybe not. Wait, another angle: in Russian, the phrase &amp;quot;А упала&amp;quot; could be a pun. Because &amp;quot;упала&amp;quot; means fell, but &amp;quot;а&amp;quot; is also the word for &amp;quot;and&amp;quot; in some contexts, but here it's the letter. Wait, maybe the answer is that only the &amp;quot;и&amp;quot; (which means &amp;quot;and&amp;quot;) is left? Because the sentence is &amp;quot;А и Б сидели на трубе&amp;quot;: A and B were sitting on the pipe. So the letters A, the word &amp;quot;и&amp;quot; (and), and B. So if A fell and B disappeared, then the &amp;quot;и&amp;quot; is left. Because the &amp;quot;и&amp;quot; is part of the phrase. Wait, that's a common riddle. Let me confirm.
...&lt;/code&gt;&lt;/pre&gt;</description>
</item>

<item>
<title>LLM в продуктивной среде – Yadro’нные технологии</title>
<guid isPermaLink="false">257</guid>
<link>https://gavrilov.info/all/llm-v-produktivnoy-srede-yadronnye-tehnologii/</link>
<pubDate>Sun, 03 Aug 2025 23:48:27 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/llm-v-produktivnoy-srede-yadronnye-tehnologii/</comments>
<description>
&lt;p&gt;Недавняя статья компании YADRO на Хабре, “Где живут LLM”, стала редким и ценным окном в реальную практику построения корпоративного инференс-кластера. Команда не только поделилась своей архитектурой, но и честно рассказала о проблемах, что делает их опыт вдвойне полезным. Спасибо им за это!&lt;/p&gt;
&lt;p&gt; 🚀🚀🚀 &lt;a href="https://habr.com/ru/companies/yadro/articles/930304/"&gt;https://habr.com/ru/companies/yadro/articles/930304/&lt;/a&gt;&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/telegram-cloud-photo-size-2-5224277706823301943-y.jpg" width="1024" height="1024" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Их кейс можно брать за основу, давайте разберем его и проведем небольшой анализ стека для работы с LLM — от низкоуровневых движков на GPU до low-code платформ для конечных пользователей. Этот разбор покажет, почему определенные технологические решения становятся стандартом и что необходимо для построения не просто работающей, а по-настоящему эффективной и масштабируемой AI-экосистемы.&lt;/p&gt;
&lt;h5&gt;Фундамент: Архитектура инференс-кластера&lt;/h5&gt;
&lt;p&gt;В основе кластера YADRO лежат проверенные и мощные компоненты, ставшие индустриальным стандартом:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Оборудование:&lt;/b&gt; Серверы с NVIDIA H100.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Оркестрация:&lt;/b&gt; Kubernetes.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Движок инференса:&lt;/b&gt; &lt;b&gt;vLLM&lt;/b&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ключевым и очень показательным решением стал выбор &lt;b&gt;vLLM&lt;/b&gt; вместо, казалось бы, более нативного для NVIDIA &lt;b&gt;Triton Inference Server&lt;/b&gt;. Аргументация YADRO проста и прагматична: с vLLM «намного проще добавлять новые модели», и он «изначально предоставляет OpenAI-совместимые REST API».&lt;/p&gt;
&lt;p&gt;Это идеально отражает главный тренд в LLM Serving. Triton — это универсальная рабочая лошадка, мощная, но требующая серьезной подготовки: конвертации моделей в форматы вроде TensorRT и часто создания дополнительной «обвязки» для предоставления удобного API. vLLM, напротив, это специализированный инструмент, заточенный именно под LLM. Благодаря своей ключевой инновации — &lt;b&gt;PagedAttention&lt;/b&gt;, которая кардинально оптимизирует управление памятью для KV-кэша, — он обеспечивает высочайшую пропускную способность и простоту использования «из коробки».&lt;/p&gt;
&lt;h5&gt;Средний слой: Production-ready операции и масштабирование&lt;/h5&gt;
&lt;p&gt;Переход от тестов к эксплуатации всегда вскрывает «узкие места». Опыт YADRO — прекрасное тому подтверждение.&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;&lt;b&gt;Проблема шлюза (Gateway):&lt;/b&gt; Команда обнаружила, что популярный прокси &lt;b&gt;LiteLLM&lt;/b&gt;, хотя и удобен для старта, становится узким местом при нагрузке выше 50 одновременных запросов. Их решение — разработка собственного `LLM Gateway` на Go — является абсолютно верным шагом для высоконагруженных систем. Такой шлюз берет на себя аутентификацию, логирование, rate-limiting и, что самое главное, умную маршрутизацию запросов. Для тех, кто не готов к собственной разработке, в экосистеме появляются готовые решения, такие как &lt;b&gt;vllm-router&lt;/b&gt;, специально созданные для балансировки нагрузки между фермами vLLM-инстансов. &lt;a href="https://docs.vllm.ai/en/stable/deployment/integrations/production-stack.html"&gt;https://docs.vllm.ai/en/stable/deployment/integrations/production-stack.html&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="2"&gt;
&lt;li&gt;&lt;b&gt;Продвинутое масштабирование в Kubernetes:&lt;/b&gt; В статье упоминается горизонтальное автомасштабирование (HPA) по CPU. Для GPU-сервисов это неэффективно. Современный подход требует более точных триггеров:
&lt;ul&gt;
  &lt;li&gt;Масштабирование по GPU:** Использование `DCGM Exporter` от NVIDIA для сбора метрик утилизации GPU и настройка HPA или KEDA (Kubernetes Event-driven Autoscaling) по этим данным.&lt;/li&gt;
  &lt;li&gt;Масштабирование по очереди:** vLLM предоставляет метрику `vllm_requests_waiting` (количество запросов в очереди). Это лучший показатель реальной нагрузки: как только очередь растет, система добавляет новые поды с моделями.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="3"&gt;
&lt;li&gt;&lt;b&gt;Мониторинг (Production Metrics):&lt;/b&gt; Для стабильной работы 24/7 критически важно отслеживать специфичные метрики vLLM в реальном времени через Prometheus и Grafana:
&lt;ul&gt;
  &lt;li&gt;Производительность:** Time to First Token (TTFT) и Time per Output Token (TPOT).&lt;/li&gt;
  &lt;li&gt;Нагрузка:** `vllm_requests_running` (в обработке) и `vllm_requests_waiting` (в очереди).&lt;/li&gt;
  &lt;li&gt;Состояние памяти:** `vllm_gpu_cache_usage_perc` (процент использования KV-кэша). Рост этой метрики — прямой предвестник ошибки нехватки памяти (OOM).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h5&gt;Верхний уровень: Платформы и интерфейсы для пользователей&lt;/h5&gt;
&lt;p&gt;Самый мощный бэкенд бесполезен без удобного доступа. YADRO упоминают, что предоставили пользователям интерфейсы через &lt;b&gt;Dify&lt;/b&gt; и собственный WebUI, что выводит нас на уровень приложений и пользовательского опыта.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Dify: Low-code платформа для создания AI-приложений.&lt;/b&gt; Dify — это не просто чат, а открытая LLM Ops платформа, позволяющая быстро создавать и развертывать AI-приложения. С помощью визуального конструктора даже нетехнические специалисты могут собирать сложные воркфлоу, включая чат-ботов, RAG-системы (поиск по базам знаний) и AI-агентов. Dify подключается к инференс-кластеру по OpenAI API и служит мостом между мощным бэкендом и конечными бизнес-задачами.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Open WebUI: Персональный и безопасный доступ к моделям.&lt;/b&gt; Если Dify — это конструктор приложений, то &lt;b&gt;Open WebUI&lt;/b&gt; — это универсальный и безопасный «кабинет» для прямого взаимодействия с моделями. Как отмечается в документации, это «расширяемая, многофункциональная и удобная платформа для самостоятельного хостинга, предназначенная для работы полностью в автономном режиме» &lt;a href="https://docs.vllm.ai/en/latest/deployment/frameworks/open-webui.html"&gt;docs.vllm.ai&lt;/a&gt;). Open WebUI предоставляет привычный интерфейс в стиле ChatGPT, но с расширенными возможностями: работа с локальными документами (RAG), веб-браузинг в чатах и управление доступом для команд — всё это в защищенном контуре компании &lt;a href="https://www.repocloud.io/details/?app_id=271"&gt;https://www.repocloud.io/details/?app_id=271&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h5&gt;Инструменты для разработчиков: Интеграция в рабочий процесс&lt;/h5&gt;
&lt;p&gt;Чтобы LLM стали повседневным инструментом, их нужно встроить в рабочую среду разработчиков. YADRO верно отмечают ключевые компоненты этого уровня:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;&lt;a href="https://github.com/continuedev/continue"&gt;Continue.dev&lt;/a&gt;:&lt;/b&gt; Open-source расширение для VS Code/JetBrains, которое превращает внутренний инференс-кластер в полноценного AI-ассистента, работающего прямо в IDE.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;a href="https://openai.github.io/openai-agents-python/"&gt;OpenAI SDK&lt;/a&gt; и &lt;a href="https://docs.litellm.ai/docs/proxy/demo"&gt;LiteLLM&lt;/a&gt;:&lt;/b&gt; Использование этих библиотек на стороне клиентских приложений — золотой стандарт. Они позволяют разработчикам абстрагироваться от деталей реализации бэкенда и работать с унифицированным, удобным API.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Кстати у litellm.ai есть демка их прокси сервера заходим Username: admin Password: sk-1234&lt;br /&gt;
&lt;a href="https://demo.litellm.ai/ui"&gt;https://demo.litellm.ai/ui&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Итоги и выводы&lt;/h4&gt;
&lt;p&gt;Опыт YADRO — это отличный срез современной инженерной практики в области LLM. Его комплексный анализ позволяет сформировать полную картину production-ready AI-экосистемы, которая состоит из нескольких ключевых слоев:&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;&lt;b&gt;Бэкенд:&lt;/b&gt; Специализированные движки (&lt;b&gt;vLLM&lt;/b&gt;) на &lt;b&gt;Kubernetes&lt;/b&gt; стали де-факто стандартом для высокопроизводительного инференса.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;API и Ops:&lt;/b&gt; &lt;b&gt;OpenAI-совместимый API&lt;/b&gt; — это универсальный «язык» для всех компонентов системы. Для масштабирования необходим кастомный &lt;b&gt;Gateway/Router&lt;/b&gt; (как у YADRO) и продвинутое &lt;b&gt;автомасштабирование&lt;/b&gt; по метрикам GPU и длине очереди.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Приложения и GUI:&lt;/b&gt; Low-code платформы (&lt;b&gt;Dify&lt;/b&gt;) позволяют быстро создавать бизнес-решения, а интерфейсы вроде &lt;b&gt;Open WebUI&lt;/b&gt; или &lt;b&gt;&lt;a href="https://github.com/danny-avila/LibreChat"&gt;LibreChat&lt;/a&gt;&lt;/b&gt; предоставляют сотрудникам безопасный и многофункциональный доступ к моделям.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;DevX (Developer Experience):&lt;/b&gt; Интеграция в IDE (&lt;b&gt;Continue.dev&lt;/b&gt;) и использование стандартизированных &lt;b&gt;SDK&lt;/b&gt; делают LLM по-настоящему удобным инструментом для разработчиков.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Таким образом, создание «дома для LLM» — это далеко не только развертывание моделей на GPU. Это выстраивание целостной, многоуровневой системы, где каждый слой решает свою задачу, обеспечивая производительность, надежность и, в конечном итоге, ценность для бизнеса.&lt;/p&gt;
&lt;h4&gt;Ссылки Основная: &lt;a href="https://habr.com/ru/companies/yadro/articles/930304/"&gt;https://habr.com/ru/companies/yadro/articles/930304/&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://docs.vllm.ai/en/latest/deployment/frameworks/open-webui.html"&gt;https://docs.vllm.ai/en/latest/deployment/frameworks/open-webui.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.repocloud.io/details/?app_id=271"&gt;https://www.repocloud.io/details/?app_id=271&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.digitalocean.com/products/marketplace/catalog/open-webui/"&gt;https://docs.digitalocean.com/products/marketplace/catalog/open-webui/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pondhouse-data.com/blog/integrating-n8n-with-open-webui"&gt;https://www.pondhouse-data.com/blog/integrating-n8n-with-open-webui&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.requesty.ai/blog/openwebui-vs-librechat-which-self-hosted-chatgpt-ui-is-right-for-you"&gt;https://www.requesty.ai/blog/openwebui-vs-librechat-which-self-hosted-chatgpt-ui-is-right-for-you&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/danny-avila/LibreChat"&gt;LibreChat &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>

<item>
<title>Анализ: Orange Pi AI Studio Pro vs. NVIDIA DGX Spark (Project DIGITS)</title>
<guid isPermaLink="false">247</guid>
<link>https://gavrilov.info/all/analiz-orange-pi-ai-studio-pro-vs-nvidia-dgx-spark-project-digit/</link>
<pubDate>Sun, 22 Jun 2025 18:29:39 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/analiz-orange-pi-ai-studio-pro-vs-nvidia-dgx-spark-project-digit/</comments>
<description>
&lt;p&gt;Битва персональных AI-суперкомпьютеров  ( подготовил DeepSeek 😁 и спасибо ему за это )&lt;br /&gt;
Если чего, то эти игрушки для подходят для запуска средних моделей у себя дома. Железа должно хватит.&lt;br /&gt;
Впрочем битва только начинается. посмотрим, что еще выйдет. А пока наслаждаемся тем, что есть.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/Snimok-ekrana-2025-06-22-v-18.22.32.png" width="2460" height="1178" alt="" /&gt;
&lt;/div&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/Snimok-ekrana-2025-06-22-v-18.23.22.png" width="2512" height="1246" alt="" /&gt;
&lt;/div&gt;
&lt;h4&gt;&lt;b&gt;Введение: Эра доступного AI-железа&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;Революция генеративного ИИ сместила фокус с облачных кластеров на персональные устройства. В 2025 году два решения претендуют на звание «AI-суперкомпьютер на столе»: &lt;b&gt;NVIDIA DGX Spark&lt;/b&gt; (ранее Project DIGITS) и &lt;b&gt;Orange Pi AI Studio Pro&lt;/b&gt;. Оба обещают экзафлопсную производительность, но с разной философией. Разберем их детально, используя данные из официальных анонсов, тестовых обзоров и сообществ &lt;a href="https://habr.com/ru/companies/bothub/news/872002"&gt;https://habr.com/ru/companies/bothub/news/872002&lt;/a&gt; и &lt;a href="https://www.reddit.com/r/LocalLLaMA/comments/1im141p/orange_pi_ai_studio_pro_mini_pc_with_408gbs."&gt;https://www.reddit.com/r/LocalLLaMA/comments/1im141p/orange_pi_ai_studio_pro_mini_pc_with_408gbs.&lt;/a&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;h4&gt;&lt;b&gt;1. Аппаратная платформа: Архитектура и Производительность&lt;/b&gt;&lt;/h4&gt;
&lt;h5&gt;&lt;b&gt;NVIDIA DGX Spark&lt;/b&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Чипсет&lt;/b&gt;: GB10 Grace Blackwell Superchip – гибрид 20-ядерного ARM-процессора (Cortex-X925 + Cortex-A725) и GPU Blackwell с Tensor Core 5-го поколения .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Память&lt;/b&gt;: 128 ГБ LPDDR5X с единым адресным пространством (CPU+GPU), что критично для обработки моделей до 200B параметров без перегрузок .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Производительность&lt;/b&gt;: 1 PFLOPS при FP4 с поддержкой спарсности. Для моделей &gt;200B параметров два устройства связываются через ConnectX-7, достигая 405B .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Энергоэффективность&lt;/b&gt;: Потребляет ~120–240 Вт, работает от розетки 220 В .&lt;/li&gt;
&lt;/ul&gt;
&lt;h5&gt;&lt;b&gt;Orange Pi AI Studio Pro&lt;/b&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Чипсет&lt;/b&gt;: Huawei Ascend 310s с NPU, заявленная производительность – &lt;b&gt;352 TOPS&lt;/b&gt; (INT8) в Pro-версии .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Память&lt;/b&gt;: До 192 ГБ LPDDR4X (в конфигурации Pro), но без унификации. Пользователи Reddit отмечают проблемы с пропускной способностью при загрузке LLM &gt;70B параметров .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Масштабируемость&lt;/b&gt;: Нет аналога NVLink. Для больших моделей требуется ручная оптимизация через swap-файлы .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Охлаждение&lt;/b&gt;: Инженерные образцы склонны к перегреву при длительной нагрузке, что требует дополнительного кулера .&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Резюме&lt;/b&gt;: DGX Spark выигрывает в балансе памяти и вычислений, Orange Pi предлагает сырую мощность TOPS, но страдает от архитектурных ограничений.&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;&lt;b&gt;2. Программная экосистема: Готовность к работе&lt;/b&gt;&lt;/h4&gt;
&lt;h5&gt;&lt;b&gt;NVIDIA&lt;/b&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Стек&lt;/b&gt;: Полная предустановка DGX OS + CUDA, NeMo, RAPIDS, поддержка PyTorch/Jupyter. Бесшовная интеграция с NGC-каталогом и облаком DGX .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Развертывание&lt;/b&gt;: Локальная тонкая настройка (fine-tuning) моделей до 70B параметров с последующим деплоем в дата-центр без переписывания кода .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Для разработчиков&lt;/b&gt;: Поддержка Windows через WSL2, что упрощает миграцию с ПК .&lt;/li&gt;
&lt;/ul&gt;
&lt;h5&gt;&lt;b&gt;Orange Pi&lt;/b&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ПО&lt;/b&gt;: Базовые образы Ubuntu/OpenEuler. Для работы AI требуется CANN-Toolkit (только через Docker), установка которого занимает 5–6 часов из-за зависимостей .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Поддерживаемые фреймворки&lt;/b&gt;: ONNX, TensorFlow, Caffe. &lt;b&gt;Нет поддержки PyTorch напрямую!&lt;/b&gt; Экспорт LLM (например, Whisper) возможен только через ONNX с ручной конвертацией .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Сообщество&lt;/b&gt;: Документация – преимущественно на китайском. Англоязычные гайды фрагментарны, а на Reddit жалуются на сложность отладки .&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Резюме&lt;/b&gt;: NVIDIA предлагает enterprise-решение «из коробки», Orange Pi требует экспертных знаний и времени для настройки.&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;&lt;b&gt;3. Сценарии использования: Для кого эти устройства?&lt;/b&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;NVIDIA DGX Spark&lt;/b&gt;:
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;Исследователи&lt;/b&gt;: Локальный запуск Llama 3 70B или GPT-4-class моделей.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Корпорации&lt;/b&gt;: Разработка edge-приложений для робототехники (Isaac) или медвизуализации (Clara) с гарантией совместимости .&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Стартапы&lt;/b&gt;: Прототипирование агентов ИИ с помощью NIM-микросервисов .&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Orange Pi AI Studio Pro&lt;/b&gt;:
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;Энтузиасты&lt;/b&gt;: Эксперименты с компьютерным зрением (YOLO) на дешевом железе.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Нишевые проекты&lt;/b&gt;: Развертывание специфичных моделей (например, для обработки сенсорных данных), где не нужна интеграция с облаком.&lt;/li&gt;
  &lt;li&gt;&lt;b&gt;Китайский рынок&lt;/b&gt;: Альтернатива Jetson Orin для вузов и госпредприятий .&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;&lt;b&gt;4. Цена и Доступность&lt;/b&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;NVIDIA&lt;/b&gt;: От $3000, доступен с мая 2025 через партнеров (например, Dell, Supermicro) .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Orange Pi&lt;/b&gt;: Цена не объявлена, но аналоги (Atlas 200I DK) стоили ~$500. Ориентировочно Pro-версия – $700–$1000. &lt;b&gt;Важно&lt;/b&gt;: нет глобальных поставок; покупка только через AliExpress .&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;&lt;b&gt;Итоговая таблица сравнения&lt;/b&gt;&lt;/h4&gt;
&lt;table cellpadding="0" cellspacing="0" border="0" class="e2-text-table"&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;Критерий&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;NVIDIA DGX Spark&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;Orange Pi AI Studio Pro&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;----------------------------&lt;/td&gt;
&lt;td&gt;------------------------------------------&lt;/td&gt;
&lt;td&gt;--------------------------------------&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;Аппаратная мощность&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;1 PFLOPS (FP4), 128 ГБ RAM&lt;/td&gt;
&lt;td style="text-align: center"&gt;352 TOPS (INT8), 192 ГБ RAM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;Поддержка LLM&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;До 405B параметров (2 устройства)&lt;/td&gt;
&lt;td style="text-align: center"&gt;До 70B (с оговорками)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;Программная готовность&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;Полный стек AI Enterprise&lt;/td&gt;
&lt;td style="text-align: center"&gt;Ручная настройка CANN-Toolkit&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;Экосистема&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;CUDA, PyTorch, облачная интеграция&lt;/td&gt;
&lt;td style="text-align: center"&gt;ONNX/TensorFlow, изолированность&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;Целевая аудитория&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;Enterprise, исследователи&lt;/td&gt;
&lt;td style="text-align: center"&gt;Энтузиасты, нишевые разработчики&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;Цена&lt;/b&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;От $3000&lt;/td&gt;
&lt;td style="text-align: center"&gt;~$700–$1000 (оценка)&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;h4&gt;&lt;b&gt;Заключение: Что выбрать?&lt;/b&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;NVIDIA DGX Spark&lt;/b&gt; – выбор для тех, кому нужен &lt;b&gt;промышленный инструмент&lt;/b&gt; с минимумом настройки. Идеален для команд, внедряющих ИИ в продукты с последующим масштабированием. Демократизация без жертв .&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Orange Pi AI Studio Pro&lt;/b&gt; – &lt;b&gt;экспериментальная платформа&lt;/b&gt; для тех, кому важен TOPS/$ и кто готов бороться с китайской документацией. Подойдет для R&amp;D в условиях санкционных ограничений или бюджетных проектов .&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Тренд&lt;/b&gt;: Оба устройства подтверждают сдвиг ИИ в сторону edge-вычислений. Но если NVIDIA ведет к «персонализации суперкомпьютеров», то Orange Pi остается хардварным хаком для избранных. Ориентируйтесь на задачи: для стартапа или лаборатории – DGX Spark; для образовательных целей или кастомных задач – Orange Pi, если вы готовы к боли.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;*«AI будет мейнстримом в каждом приложении для каждой индустрии»* (Дженсен Хуанг, NVIDIA ). В 2025 это звучит как констатация факта, а не прогноз.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Почитать подробнее можно тут:&lt;br /&gt;
&lt;a href="https://www.nvidia.com/en-us/products/workstations/dgx-spark/"&gt;https://www.nvidia.com/en-us/products/workstations/dgx-spark/&lt;/a&gt;&lt;br /&gt;
или тут&lt;br /&gt;
&lt;a href="http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AI-Studio-Pro.html"&gt;http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AI-Studio-Pro.html&lt;/a&gt;&lt;/p&gt;
</description>
</item>

<item>
<title>Практическое руководство построения Агентов ИИ</title>
<guid isPermaLink="false">233</guid>
<link>https://gavrilov.info/all/prakticheskoe-rukovodstvo-postroeniya-agentov-ii/</link>
<pubDate>Sun, 20 Apr 2025 14:09:40 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/prakticheskoe-rukovodstvo-postroeniya-agentov-ii/</comments>
<description>
&lt;p&gt;&lt;a href="http://a.gavrilov.info/data/posts/Practical_Guide_to_Building_Agents.pdf"&gt;Инструкция оригинал тут&lt;/a&gt;&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/AI_Agents.png" width="600" height="380" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Потом еще свой код покажу, но он работает в версии 1.65, надо бы обновить.&lt;/p&gt;
&lt;p&gt;Документ представляет собой руководство по разработке автономных систем (агентов) на базе языковых моделей (LLM). Основные темы:&lt;/p&gt;
&lt;p&gt;Определение агентов: системы, выполняющие задачи от имени пользователя с высокой степенью автономии.&lt;br /&gt;
Ключевые компоненты: модели LLM, инструменты (API, функции), инструкции, защитные механизмы (guardrails).&lt;br /&gt;
Оркестрация: подходы к управлению агентами (одиночные и мультиагентные системы).&lt;br /&gt;
Guardrails: механизмы безопасности для контроля рисков.&lt;br /&gt;
Практические рекомендации: выбор моделей, проектирование инструментов, обработка исключений, интеграция с людьми.&lt;/p&gt;
&lt;p&gt;Ниже не полный перевод. Раздел Guardrails очень интересный!&lt;/p&gt;
&lt;hr /&gt;
&lt;h4&gt;Практическое руководство по созданию агентов&lt;/h4&gt;
&lt;p&gt;&lt;b&gt;Автор: OpenAI&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h5&gt;Содержание&lt;/h5&gt;
&lt;ol start="1"&gt;
&lt;li&gt;&lt;b&gt;Введение&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Что такое агент?&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Когда следует создавать агента?&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Основы проектирования агентов&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Выбор моделей&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Определение инструментов&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Конфигурация инструкций&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Оркестрация&lt;/b&gt;
&lt;ul&gt;
  &lt;li&gt;8.1. Системы с одним агентом&lt;/li&gt;
  &lt;li&gt;8.2. Мультиагентные системы&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Защитные механизмы (Guardrails)&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Заключение&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;1. Введение&lt;/h4&gt;
&lt;p&gt;Крупные языковые модели (LLM) становятся всё более способными решать сложные многошаговые задачи. Достижения в области логических рассуждений, мультимодальности и использования инструментов открыли новую категорию систем на базе LLM — &lt;b&gt;агентов&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;Это руководство предназначено для продуктовых и инженерных команд, изучающих создание своих первых агентов. В нём собраны практические рекомендации, основанные на опыте внедрения агентов в различных проектах.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;После прочтения вы узнаете:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Как выбирать подходящие сценарии использования.&lt;/li&gt;
&lt;li&gt;Как проектировать логику агентов и управлять их взаимодействием.&lt;/li&gt;
&lt;li&gt;Как обеспечивать безопасность и предсказуемость работы.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;2. Что такое агент?&lt;/h4&gt;
&lt;p&gt;Агенты — системы, которые &lt;b&gt;самостоятельно&lt;/b&gt; выполняют задачи от имени пользователя.&lt;/p&gt;
&lt;h5&gt;Ключевые характеристики:&lt;/h5&gt;
&lt;ol start="1"&gt;
&lt;li&gt;&lt;b&gt;Использование LLM&lt;/b&gt;
&lt;ul&gt;
  &lt;li&gt;Управление рабочими процессами.&lt;/li&gt;
  &lt;li&gt;Корректировка действий при ошибках.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Доступ к инструментам&lt;/b&gt;
&lt;ul&gt;
  &lt;li&gt;Взаимодействие с API, базами данных, внешними системами.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;b&gt;Примеры задач:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Обработка запросов в службе поддержки.&lt;/li&gt;
&lt;li&gt;Бронирование ресторана.&lt;/li&gt;
&lt;li&gt;Генерация отчётов.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Не являются агентами:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Простые чат-боты.&lt;/li&gt;
&lt;li&gt;Системы без управления рабочими процессами.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;3. Когда следует создавать агента?&lt;/h4&gt;
&lt;p&gt;Агенты подходят для задач, где традиционные правила и детерминированные системы неэффективны.&lt;/p&gt;
&lt;h5&gt;Сценарии для внедрения:&lt;/h5&gt;
&lt;table cellpadding="0" cellspacing="0" border="0" class="e2-text-table"&gt;
&lt;tr&gt;
&lt;td&gt;Категория&lt;/td&gt;
&lt;td&gt;Примеры задач&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Сложные решения&lt;/td&gt;
&lt;td&gt;Одобрение возврата средств.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Сложные правила&lt;/td&gt;
&lt;td&gt;Проверка безопасности поставщиков.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Неструктурированные данные&lt;/td&gt;
&lt;td&gt;Анализ страховых случаев.&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;b&gt;Перед созданием агента:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Убедитесь, что задача требует неоднозначных решений.&lt;/li&gt;
&lt;li&gt;Если задача простая, используйте детерминированные методы.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;4. Основы проектирования агентов&lt;/h4&gt;
&lt;p&gt;Агент состоит из трёх компонентов:&lt;/p&gt;
&lt;table cellpadding="0" cellspacing="0" border="0" class="e2-text-table"&gt;
&lt;tr&gt;
&lt;td&gt;Компонент&lt;/td&gt;
&lt;td&gt;Описание&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Модель&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;LLM для логики и принятия решений.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Инструменты&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;API, базы данных, внешние системы.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Инструкции&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Правила и ограничения поведения.&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;b&gt;Пример кода (Agents SDK):&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;weather_agent = Agent(  
    name=&amp;quot;Weather agent&amp;quot;,  
    instructions=&amp;quot;Вы помощник, который отвечает на вопросы о погоде.&amp;quot;,  
    tools=[get_weather],  
)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;5. Выбор моделей&lt;/h4&gt;
&lt;p&gt;&lt;b&gt;Рекомендации:&lt;/b&gt;&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;Начните с самой мощной модели для базового уровня производительности.&lt;/li&gt;
&lt;li&gt;Заменяйте её на более лёгкие модели, где это возможно.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;b&gt;Примеры задач:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Простые запросы → Маленькие модели (например, `gpt-3.5`).&lt;/li&gt;
&lt;li&gt;Сложные решения → Мощные модели (например, `gpt-4`).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;6. Определение инструментов&lt;/h4&gt;
&lt;p&gt;Инструменты расширяют возможности агентов через API.&lt;/p&gt;
&lt;h5&gt;Типы инструментов:&lt;/h5&gt;
&lt;table cellpadding="0" cellspacing="0" border="0" class="e2-text-table"&gt;
&lt;tr&gt;
&lt;td&gt;Тип&lt;/td&gt;
&lt;td style="text-align: right"&gt;Примеры&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Данные&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Запросы к CRM, чтение PDF.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Действия&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Отправка email, обновление CRM.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Оркестрация&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Агент возвратов, исследовательский агент.&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;&lt;b&gt;Пример кода:&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;search_agent = Agent(  
    name=&amp;quot;Search agent&amp;quot;,  
    instructions=&amp;quot;Помогите пользователю искать в интернете.&amp;quot;,  
    tools=[WebSearchTool(), save_results],  
)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;7. Конфигурация инструкций&lt;/h4&gt;
&lt;p&gt;&lt;b&gt;Рекомендации:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Используйте существующие документы (например, инструкции службы поддержки).&lt;/li&gt;
&lt;li&gt;Разбивайте задачи на шаги.&lt;/li&gt;
&lt;li&gt;Определяйте чёткие действия для каждого шага.&lt;/li&gt;
&lt;li&gt;Учитывайте крайние случаи.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Пример генерации инструкций:&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;prompt = &amp;quot;&amp;quot;&amp;quot;  
Вы эксперт по созданию инструкций для агентов.  
Преобразуйте документ в нумерованный список без неоднозначностей.  
Документ: {{help_center_doc}}  
&amp;quot;&amp;quot;&amp;quot;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;8. Оркестрация&lt;/h4&gt;
&lt;h5&gt;8.1. Системы с одним агентом&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Один агент управляет всеми задачами.&lt;/li&gt;
&lt;li&gt;Простота внедрения и обслуживания.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Пример работы:&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;await Runner.run(agent, [UserMessage(&amp;quot;Столица США?&amp;quot;)])&lt;/code&gt;&lt;/pre&gt;&lt;h5&gt;8.2. Мультиагентные системы&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Менеджер-агент&lt;/b&gt; координирует специализированных агентов.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Децентрализованные агенты&lt;/b&gt; передают задачи друг другу.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Пример менеджер-агента:&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;manager_agent = Agent(  
    name=&amp;quot;Менеджер переводов&amp;quot;,  
    tools=[spanish_agent, french_agent],  
)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;9. Защитные механизмы (Guardrails)&lt;/h4&gt;
&lt;p&gt;&lt;b&gt;Цель:&lt;/b&gt; Предотвращение рисков (утечки данных, вредоносные запросы).&lt;/p&gt;
&lt;h5&gt;Типы защит:&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Классификатор релевантности&lt;/b&gt; → Фильтрация не относящихся к делу запросов.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Фильтр PII&lt;/b&gt; → Защита персональных данных.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Модерация&lt;/b&gt; → Блокировка вредоносного контента.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Пример кода:&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;@input_guardrail  
async def churn_detection(ctx, input):  
    # Проверка риска оттока клиентов  
    ...&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;---&lt;/p&gt;
&lt;h4&gt;10. Заключение&lt;/h4&gt;
&lt;p&gt;&lt;b&gt;Ключевые принципы:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Начинайте с простых агентов.&lt;/li&gt;
&lt;li&gt;Используйте защитные механизмы.&lt;/li&gt;
&lt;li&gt;Планируйте вмешательство человека для критических задач.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Агенты открывают новые возможности для автоматизации сложных рабочих процессов.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;OpenAI&lt;/b&gt; — компания, занимающаяся разработкой ИИ. Наша миссия — обеспечить, чтобы искусственный интеллект приносил пользу человечеству.&lt;/p&gt;
</description>
</item>

<item>
<title>Свежее по классификации подвезли – mistral</title>
<guid isPermaLink="false">232</guid>
<link>https://gavrilov.info/all/svezhee-po-klassifikacii-podvezli-i-mistral/</link>
<pubDate>Wed, 16 Apr 2025 23:08:56 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/svezhee-po-klassifikacii-podvezli-i-mistral/</comments>
<description>
&lt;p&gt;🔥 Classifier Factory от Mistral&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/IMG_5876.jpeg" width="1280" height="911" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Classifier Factory — это интуитивно понятное руководство для создания и обучения собственных моделей классификации на базе компактных LLM от Mistral AI.&lt;/p&gt;
&lt;p&gt;С его помощью — как через веб‑интерфейс La Plateforme, так и через API — можно быстро разворачивать решения для модерации контента, детекции намерений, анализа тональности, кластеризации данных, обнаружения мошенничества, фильтрации спама, рекомендательных систем и других задач&lt;/p&gt;
&lt;p&gt;Таким образом, Classifier Factory упрощает весь цикл работы с custom‑классификаторами: от подготовки данных до развёртывания готовой модели в продакшене.&lt;/p&gt;
&lt;p&gt;Еще они обнвоили доку.&lt;/p&gt;
&lt;p&gt;🔜 &lt;a href="https://docs.mistral.ai/capabilities/finetuning/classifier_factory/"&gt;Docs&lt;/a&gt;&lt;br /&gt;
🔜&lt;a href="https://colab.research.google.com/github/mistralai/cookbook/blob/main/mistral/classifier_factory/moderation_classifier.ipynb"&gt;Cookbook: Moderation Classifier&lt;/a&gt;&lt;br /&gt;
🔜&lt;a href="https://colab.research.google.com/github/mistralai/cookbook/blob/main/mistral/classifier_factory/intent_classification.ipynb"&gt;Cookbook: Intent Classification&lt;/a&gt;&lt;br /&gt;
🔜&lt;a href="https://colab.research.google.com/github/mistralai/cookbook/blob/main/mistral/classifier_factory/product_classification.ipynb"&gt;Cookbook: Classification of Food&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;@ai_machinelearning_big_data&lt;/p&gt;
&lt;p&gt;#Mistral #api&lt;/p&gt;
</description>
</item>

<item>
<title>Китайская виртуализация Openscaler и RISC-V</title>
<guid isPermaLink="false">221</guid>
<link>https://gavrilov.info/all/kitayskaya-virtualizaciya-openscaler-i-risc-v/</link>
<pubDate>Fri, 04 Apr 2025 22:09:46 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/kitayskaya-virtualizaciya-openscaler-i-risc-v/</comments>
<description>
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-170.png" width="1280" height="707" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Тестирование производительности решений контейнерной виртуализации — &lt;a href="https://openscaler.ru/2023/06/21/1125/"&gt;https://openscaler.ru/2023/06/21/1125/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Второй подход к снаряду, iSula&lt;br /&gt;
&lt;a href="https://openscaler.ru/2023/10/12/secont-test-isula/"&gt;https://openscaler.ru/2023/10/12/secont-test-isula/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Тестирование запуска контейнеров внутри виртуальных машин в кластере kubernetes&lt;br /&gt;
&lt;a href="https://openscaler.ru/2024/02/19/isulad-kata-k8s/"&gt;https://openscaler.ru/2024/02/19/isulad-kata-k8s/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Обновление ОС рабочих узлов кластера k8s при помощи KubeOS&lt;br /&gt;
&lt;a href="https://openscaler.ru/2024/05/24/kubeos_kubevirt/"&gt;https://openscaler.ru/2024/05/24/kubeos_kubevirt/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Rubik – ещё один способ управления ресурсами в kubernetes&lt;br /&gt;
&lt;a href="https://openscaler.ru/2024/11/01/rubik/"&gt;https://openscaler.ru/2024/11/01/rubik/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Kmesh и k8s — &lt;a href="https://openscaler.ru/2023/12/12/kmesh-and-k8s/"&gt;https://openscaler.ru/2023/12/12/kmesh-and-k8s/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Kuasar – runtime с поддержкой sandbox — &lt;a href="https://openscaler.ru/2025/02/17/kuasar/"&gt;https://openscaler.ru/2025/02/17/kuasar/&lt;/a&gt;&lt;br /&gt;
Тестирование контейнерной ОС на основе кодовой базы openEuler / OpenScaler — &lt;a href="https://openscaler.ru/2023/07/27/nestos/"&gt;https://openscaler.ru/2023/07/27/nestos/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;А еще это:&lt;br /&gt;
Побег из технологической клетки США. Китай создал первый серверный процессор на RISC-V на замену Intel Xeon и AMD Epyc &lt;a href="https://www.cnews.ru/news/top/2025-04-04_kitaj_sbegaet_iz_tehnologicheskogo"&gt;https://www.cnews.ru/news/top/2025-04-04_kitaj_sbegaet_iz_tehnologicheskogo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.securitylab.ru/news/558028.php"&gt;https://www.securitylab.ru/news/558028.php&lt;/a&gt; или читаем в оригинале тут: &lt;a href="https://www.tmtpost.com/7519579.html"&gt;https://www.tmtpost.com/7519579.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Но интересно это: “Процессор Lingyu построен по интересной схеме: в нём объединены 32 универсальных ядра для вычислений и 8 специализированных интеллектуальных ядер. Такая конфигурация хорошо подходит, например, для запуска моделей вроде ChatGPT с открытым исходным кодом, и при этом позволяет сдерживать энергопотребление и общую стоимость владения”&lt;/p&gt;
&lt;p&gt;Но и это любопытно тоже:&lt;br /&gt;
&lt;a href="https://tenstorrent.com"&gt;https://tenstorrent.com&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Tenstorrent представила ИИ-ускорители Blackhole на архитектуре RISC-V&lt;/p&gt;
&lt;p&gt;Канадский стартап Tenstorrent анонсировал ИИ-ускорители семейства Blackhole, выполненные в виде двухслотовых карт расширения с интерфейсом PCI Express 5.0 x16. Кроме того, дебютировала рабочая станция TT-QuietBox, оборудованная этими изделиями. Напомним, ранее Tenstorrent выпустила ИИ-ускорители Wormhole с 72 и 128 ядрами Tensix, каждое из которых содержит пять ядер RISC-V. Объём памяти GDDR6 составляет соответственно 12 и 24 Гбайт. Производительность достигает 262 и 466 Тфлопс на операциях FP8. Для сравнения A100 дает 624 до 1248 если SXM. Но дело все в цене, которая в десятки раз ниже.&lt;/p&gt;
&lt;p&gt;Кстати, мы используем аналог Trino, это CedrusData, он на Java. Учитывая тот факт, что там используется Temurin java, которая имеется для архитектуры risc-v, то можно сказать – мимиграция ядер не за горами.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-171.png" width="1150" height="351" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;а есть и российская java для рисков &lt;a href="https://www.axiomjdk.ru/announcements/2024/12/11/risc-v/"&gt;https://www.axiomjdk.ru/announcements/2024/12/11/risc-v/&lt;/a&gt; от Axiom&lt;/p&gt;
&lt;p&gt;ждем )&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-172.png" width="1024" height="1024" alt="" /&gt;
&lt;/div&gt;
</description>
</item>

<item>
<title>Тестируем Гуся 🪿</title>
<guid isPermaLink="false">220</guid>
<link>https://gavrilov.info/all/testiruem-gusya/</link>
<pubDate>Tue, 01 Apr 2025 23:10:03 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/testiruem-gusya/</comments>
<description>
&lt;p&gt;an open source, extensible AI agent that goes beyond code suggestions – install, execute, edit, and test with any LLM&lt;/p&gt;
&lt;p&gt;смотрим, все понятно.&lt;/p&gt;
&lt;p&gt;&lt;video controls style="width: 100%; max-width: 740px; height: auto;"&gt;&lt;br /&gt;
&lt;source src="http://a.gavrilov.info/data/posts/Meet-codename-goose-1-0.mp4" type="video/mp4"&gt;&lt;br /&gt;
Ваш браузер не поддерживает видео.&lt;br /&gt;
&lt;/video&gt;&lt;/p&gt;
&lt;p&gt;Основной их сайт:  &lt;a href="https://block.github.io/goose/"&gt;https://block.github.io/goose/&lt;/a&gt;&lt;br /&gt;
Взять можно тут: &lt;a href="https://github.com/block/goose"&gt;https://github.com/block/goose&lt;/a&gt;&lt;br /&gt;
или еще почитать тут: &lt;a href="https://habr.com/ru/articles/877522/"&gt;https://habr.com/ru/articles/877522/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Вот, что сделал:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/Snimok-ekrana-2025-04-01-v-23.02.54.png" width="1494" height="1126" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;или тут файлы: &lt;a href="http://a.gavrilov.info/data/posts/Goose_App.zip"&gt;Goose_App.zip&lt;/a&gt;&lt;/p&gt;
&lt;ol start="0"&gt;
&lt;li&gt;Небольшой сайт, что выше&lt;/li&gt;
&lt;li&gt;Скачал версию на Мак&lt;/li&gt;
&lt;li&gt;Настроил на openrouter.ai&lt;/li&gt;
&lt;li&gt;Выбрал сеть Sonnet 3.5 ( Есть и другие, но эта первая попалась )&lt;/li&gt;
&lt;li&gt;Поставил режим режим апрува Goose Mode: Smart Approval&lt;/li&gt;
&lt;li&gt;Рабочая директория /Users/yuriygavrilov/NeDir&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Промт:&lt;/p&gt;
&lt;p&gt;выключи запущенную программу на python, сделай кнопку красной и добавь исчезающее приветствие. Запусти программу снова и открой её в браузере. сделай страницу красивой. добавь туда самолет зеленый на фон и запускай программу в фоновом режиме. Открой программу в браузере. Ожидай дальнейших инструкций. Приветствие должно появляться по нажатию кнопки. и добавь еще ssl сертификат на страницу сгенерированный.&lt;/p&gt;
&lt;p&gt;Ответ:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Я помогу вам модифицировать и запустить программу. Давайте выполним это пошагово.

Сначала найдем и остановим запущенную программу:
Shell
command
ps aux | grep python | grep uvicorn

Output
Shell
command
pkill -f uvicorn

Output
Goose would like to call the above tool. Allow?
Shell is approved
Теперь посмотрим текущий код:
Shell
command
rg --files | rg '\.py$'

Output
Text Editor
command
view
path
/Users/yuriygavrilov/NeDir/app.py

Output
Создадим новый HTML шаблон с красивым дизайном:
Shell
command
mkdir -p templates static/images

Output
Goose would like to call the above tool. Allow?
Shell is approved
Создадим обновленный HTML файл:
Text Editor
command
write
file_text
&amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html lang=&amp;quot;ru&amp;quot;&amp;gt; &amp;lt;head&amp;gt; &amp;lt;meta charset=&amp;quot;U...

path
/Users/yuriygavrilov/NeDir/templates/index.html

Output
Goose would like to call the above tool. Allow?
Text Editor is approved
Создадим SVG изображение самолета:
Text Editor
command
write
file_text
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt; &amp;lt;svg width=&amp;quot;800px&amp;quot; he...

path
/Users/yuriygavrilov/NeDir/static/images/airplane.svg

Output
Goose would like to call the above tool. Allow?
Text Editor is approved
Установим необходимые зависимости:
Shell
command
pip install flask flask-talisman pyOpenSSL

Output
Goose would like to call the above tool. Allow?
Shell is approved
Запустим программу в фоновом режиме:
Shell
command
python app.py &amp;amp;

Output
Goose would like to call the above tool. Allow?
Shell is approved
Теперь вы можете открыть программу в браузере по адресу: https://localhost:5000

Что было сделано:

Остановлена предыдущая версия программы
Создан новый дизайн с красной кнопкой
Добавлено исчезающее приветствие (появляется на 3 секунды при нажатии на кнопку)
Добавлен зеленый самолет
Настроен SSL сертификат (самоподписанный)
Программа запущена в фоновом режиме
При открытии в браузере вы увидите:

Красивый градиентный фон
Красную кнопку в центре
Полупрозрачный зеленый самолет на фоне
При нажатии на кнопку появится приветствие, которое исчезнет через 3 секунды
Примечание: Поскольку используется самоподписанный SSL-сертификат, браузер может показать предупреждение о безопасности. Это нормально в тестовой среде. Чтобы продолжить, нужно подтвердить исключение безопасности в браузере.

Жду ваших дальнейших инструкций!&lt;/code&gt;&lt;/pre&gt;&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/Snimok-ekrana-2025-04-01-v-23.04.01.png" width="1478" height="1580" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;🤖 Ай да Гусь :) но самолета не вижу почему то.  А денег съела прилично где-то 80 центов за пару тестов.&lt;/p&gt;
&lt;p&gt;Еще не то увидим, когда заработает &lt;a href="https://gavrilov.info/all/iishnica-strategicheskiy-vzglyad-vybor-lokalnoy-llm-i-mcp"&gt;MCP&lt;/a&gt; повсюду.&lt;/p&gt;
</description>
</item>

<item>
<title>Внедрение и оптимизация Apache DolphinScheduler в NetEase Mail</title>
<guid isPermaLink="false">217</guid>
<link>https://gavrilov.info/all/vnedrenie-i-optimizaciya-apache-dolphinscheduler-v-netease-mail/</link>
<pubDate>Sun, 30 Mar 2025 21:21:55 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/vnedrenie-i-optimizaciya-apache-dolphinscheduler-v-netease-mail/</comments>
<description>
&lt;h3&gt;Перевод: Внедрение и оптимизация Apache DolphinScheduler в NetEase Mail&lt;/h3&gt;
&lt;p&gt;Оригинал: &lt;a href="https://apachedolphinscheduler.substack.com/p/netease-mails-migration-journey-to"&gt;https://apachedolphinscheduler.substack.com/p/netease-mails-migration-journey-to&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;В связи с бурным развитием Интернета, электронная почта — один из важнейших инструментов обмена информацией — испытывает постоянно растущий спрос на обработку данных и планирование задач. NetEase Mail, ведущий поставщик услуг электронной почты в Китае, внедрил платформу DolphinScheduler, чтобы лучше справляться с задачами обработки огромных объемов данных и планирования задач. Компания провела углубленное внедрение и оптимизацию платформы в реальных условиях эксплуатации.&lt;/p&gt;
&lt;p&gt;Докладчик:&lt;/p&gt;
&lt;p&gt;Лэй Баосинь, инженер больших данных NetEase Mail&lt;/p&gt;
&lt;h3&gt;Предпосылки проекта и выбор платформы&lt;/h3&gt;
&lt;p&gt;NetEase Mail – это &lt;b&gt;ведущий китайский поставщик услуг электронной почты,&lt;/b&gt; являющийся частью крупной интернет-компании NetEase.  Вот основные характеристики и информация о компании:&lt;/p&gt;
&lt;p&gt;* &lt;b&gt;Широкая линейка продуктов:&lt;/b&gt;  NetEase Mail предлагает разнообразные почтовые услуги, включая:&lt;br /&gt;
* &lt;b&gt;Бесплатная почта:&lt;/b&gt;  Наиболее известные сервисы 126.com и 163.com, хорошо известные в Китае.&lt;br /&gt;
* &lt;b&gt;Корпоративная почта:&lt;/b&gt;  Предназначена для бизнеса, предлагая более надежные и профессиональные решения.&lt;br /&gt;
* &lt;b&gt;VIP-почта:&lt;/b&gt;  Почтовые сервисы премиум-класса с расширенными функциями и поддержкой.&lt;br /&gt;
* &lt;b&gt;Долгая история:&lt;/b&gt; Существует с 1997 года, что говорит о стабильности и накопленном опыте.&lt;br /&gt;
* &lt;b&gt;Огромная база пользователей:&lt;/b&gt;  Благодаря популярности сервиса в Китае, NetEase Mail обслуживает миллионы пользователей.&lt;br /&gt;
* &lt;b&gt;Технологическая зрелость:&lt;/b&gt; NetEase Mail активно использует современные технологии (например, Kubernetes, Apache DolphinScheduler и Streampark) для обработки больших объемов данных, планирования задач и улучшения общей эффективности.&lt;br /&gt;
* &lt;b&gt;Ориентация на стабильность и безопасность:&lt;/b&gt;  Компания уделяет большое внимание предоставлению стабильных, безопасных и эффективных почтовых услуг.&lt;br /&gt;
* &lt;b&gt;Инновационное развитие:&lt;/b&gt; NetEase Mail постоянно совершенствует свои сервисы, внедряя новые функции, интегрируя искусственный интеллект и оптимизируя инфраструктуру.&lt;br /&gt;
* &lt;b&gt;Вклад в opensource:&lt;/b&gt; NetEase Mail активно контрибьютит в open-source проекты, например, SeaTunnel, что говорит об их технической экспертизе и желании делиться разработками с сообществом.&lt;/p&gt;
&lt;p&gt;В целом, &lt;b&gt;NetEase Mail – это авторитетный и инновационный поставщик услуг электронной почты в Китае, отличающийся широким спектром услуг, ориентацией на стабильность и безопасность, а также активным применением передовых технологий.&lt;/b&gt;&lt;/p&gt;
&lt;h4&gt;История развития NetEase Mail&lt;/h4&gt;
&lt;p&gt;С момента запуска в 1997 году, NetEase Mail прошла несколько важных этапов развития, эволюционировав от 126 Mail, 163 Mail до Mail Master, постоянно расширяя линейку продуктов и спектр услуг. Сегодня NetEase Mail создала диверсифицированную бизнес-систему, включающую бесплатную почту, корпоративную почту, VIP-почту и многое другое, предоставляя стабильные, безопасные и эффективные услуги электронной почты огромному количеству пользователей.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-154.png" width="800" height="450" alt="" /&gt;
&lt;div class="e2-text-caption"&gt;*Из рисунка выше видно, что NetEase Mail внедрила Apache DolphinScheduler в 2023 году.*&lt;/div&gt;
&lt;/div&gt;
&lt;h4&gt;Сценарии применения данных&lt;/h4&gt;
&lt;p&gt;В ежедневной работе NetEase Mail необходимо обрабатывать огромные объемы данных журналов бизнес-операций. Эти данные требуют постоянного холодного и горячего резервного копирования в течение более полугода, а журналы бизнес-операций обрабатываются и хранятся отдельно как в автономном режиме (HDFS), так и в режиме реального времени (ClickHouse). В то же время, для обеспечения доступности бизнеса, критически важные звенья, такие как основные механизмы отправки/получения электронной почты и аутентификации пользователей, требуют эффективной обработки данных и поддержки планирования задач.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-155.png" width="800" height="450" alt="" /&gt;
&lt;/div&gt;
&lt;h4&gt;Предпосылки выбора и преимущества DolphinScheduler&lt;/h4&gt;
&lt;p&gt;Столкнувшись с постоянно растущими потребностями в обработке данных, команда NetEase Mail сравнила несколько платформ планирования задач с открытым исходным кодом. DolphinScheduler выделился благодаря поддержке различных механизмов планирования, высокой стабильности, простоте использования и богатой функциональности. Он способен поддерживать различные сценарии работы с данными, отвечая сложным и разнообразным требованиям NetEase Mail к планированию задач.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-156.png" width="800" height="450" alt="" /&gt;
&lt;/div&gt;
&lt;h4&gt;Развертывание платформы и текущее использование&lt;/h4&gt;
&lt;h4&gt;Путь обновления и преобразования на основе DS&lt;/h4&gt;
&lt;p&gt;После внедрения платформы DolphinScheduler, команда NetEase Mail встала на путь непрерывной оптимизации и обновления. Начиная с предварительных исследований и сравнений при выборе платформы, затем решая проблемы, возникающие в процессе использования, и, наконец, выполняя вторичную разработку для постоянного улучшения простоты использования и пользовательского опыта, команда неустанно двигалась к совершенствованию платформы. После подтверждения выбора в марте 2023 года, первоначальная трансформация на основе функциональности оповещения была завершена в декабре 2023 года, а к марту 2024 года была достигнута стабильная работа и продолжающиеся исследования.&lt;/p&gt;
&lt;h4&gt;Архитектура данных и текущее использование&lt;/h4&gt;
&lt;p&gt;В настоящее время в отделе NetEase Mail платформа DolphinScheduler развернута в архитектуре 3 Master, 5 Worker и работает на Kubernetes (k8s). Платформа поддерживает более 1200 автономных задач планирования для таких сервисов, как защита от спама, контроль рисков, AI и многого другого, с ежедневным количеством запусков, превышающим 50 000.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-157.png" width="800" height="792" alt="" /&gt;
&lt;div class="e2-text-caption"&gt;*На уровне архитектуры данных, благодаря интеграции DolphinScheduler с Streampark, было достигнуто сочетание автономного планирования и обработки задач Flink в режиме реального времени. Между тем, самостоятельно разработанные компоненты, такие как центр метаданных и портал данных, формируют уровень обслуживания данных, обеспечивая поддержку управления данными и сервисов.*&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Внедрение платформы значительно повысило эффективность разработки данных, снизило затраты на эксплуатацию и обслуживание и обеспечило стабильный вывод бизнес-данных, тем самым оказывая сильную поддержку быстрой итерации и инновациям в бизнесе.&lt;/p&gt;
&lt;h4&gt;Типы задач и поддержка приложений&lt;/h4&gt;
&lt;p&gt;Платформа DolphinScheduler стала основной платформой планирования задач внутри отдела, предлагая широкий спектр типов задач, включая Spark, Shell, SQL, SeaTunnel, Python и многое другое. Эти задачи обеспечивают надежную поддержку данных для нисходящих приложений, таких как управление метаданными, отчеты BI и исследования и разработки данных, удовлетворяя потребности в обработке данных в различных бизнес-сценариях.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-158.png" width="800" height="295" alt="" /&gt;
&lt;/div&gt;
&lt;h3&gt;Интеграция функциональности распространения данных и методы оптимизации&lt;/h3&gt;
&lt;h4&gt;Интеграция функциональности распространения данных&lt;/h4&gt;
&lt;p&gt;Что касается планирования и распространения данных, команда NetEase Mail выявила несколько проблем, которые необходимо было решить для повышения эффективности и возможностей обработки данных, в том числе:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Частые запросы на обработку данных:** Частые запросы на обработку данных от персонала, не занимающегося исследованиями и разработками, требуют поддержки разработчиков данных.&lt;/li&gt;
&lt;li&gt;Низкая готовность к созданию промежуточных таблиц:** Команды разработчиков продуктов и контроля качества демонстрируют небольшую готовность к созданию промежуточных таблиц, поскольку это занимает много времени.&lt;/li&gt;
&lt;li&gt;Существуют пороги в конфигурации синхронизации данных:** Конфигурация задач синхронизации данных между гетерогенными источниками данных представляет определенные пороги, требующие специализированной поддержки разработки данных.&lt;/li&gt;
&lt;li&gt;Процесс разработки задач синхронизации относительно длинный:** Полный процесс разработки задач синхронизации данных является длительным, включая такие шаги, как создание таблиц, создание конфигурации синхронизации и создание задач планирования.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Чтобы решить эти проблемы, команда NetEase Mail интегрировала функциональность распространения данных в платформу DolphinScheduler.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-159.png" width="800" height="457" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;*Общий подход – это создание промежуточных таблиц + генерация конфигурации задач синхронизации + создание задач планирования, что повышает эффективность обработки промежуточных данных и обеспечивает комплексный процесс для построения задач обработки данных.*&lt;/p&gt;
&lt;p&gt;Эта функциональность предлагает два режима — быструю конфигурацию и пользовательскую конфигурацию. Она может автоматически генерировать операторы DDL таблицы на основе параметров формы и выполнять логику создания таблицы, одновременно генерируя SQL для промежуточной обработки и конфигурации задач синхронизации данных, и, наконец, вызывать внутренние методы Dolphin для создания рабочих процессов и задач планирования.&lt;/p&gt;
&lt;p&gt;В результате внедрения этой функциональности среднее время обработки промежуточных данных сократилось с 1 часа до 20 минут, что увеличило эффективность разработки на 67%, и она уже поддерживает более 40 онлайн-задач обработки данных, при этом количество пользователей постоянно растет.&lt;/p&gt;
&lt;h4&gt;Оптимизация методов автономного планирования для повышения отказоустойчивости&lt;/h4&gt;
&lt;p&gt;Исходный механизм планирования, при обработке сбоев зависимых задач, приводил к непосредственному сбою зависимых узлов, делая невозможным повторный запуск незавершенной цепочки данных одним щелчком мыши. Это увеличивало операционную нагрузку на разработчиков данных и увеличивало время восстановления после сбоев.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-160.png" width="800" height="236" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Чтобы решить эту проблему, команда переработала логику обработки сигналов ожидания и сбоев в методе getModelDependResult класса DependentExecute в модуле dolphinscheduler-master. Когда статус зависимой задачи — FAILED, статус в dependResultList изменяется на WAITING, чтобы нижестоящие задачи получали статус WAITING, а не FAILED.&lt;/p&gt;
&lt;p&gt;Эта оптимизация позволяет восстанавливать и повторно запускать цепочку данных одним щелчком мыши, снижая затраты на ручное вмешательство, повышая эффективность и интеллектуальность восстановления цепочки задач, ускоряя скорость восстановления цепочки данных после сбоев и обеспечивая своевременное восстановление и вывод бизнес-данных.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-161.png" width="800" height="118" alt="" /&gt;
&lt;/div&gt;
&lt;h4&gt;Интеграция и оптимизация компонентов SeaTunnel, повышение эффективности синхронизации данных&lt;/h4&gt;
&lt;p&gt;Чтобы удовлетворить потребности в крупномасштабной синхронизации данных для нового бизнеса, команда внедрила инструмент интеграции данных SeaTunnel и развернула его в кластере Kubernets (k8s) в режиме разделенного кластера.&lt;/p&gt;
&lt;p&gt;За счет оптимизации плагинов SeaTunnel NetEase Mail предлагает как пользовательские, так и быстрые режимы конфигурации, тем самым снижая порог использования.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-162.png" width="482" height="502" alt="" /&gt;
&lt;/div&gt;
&lt;h5&gt;Принцип реализации&lt;/h5&gt;
&lt;p&gt;С точки зрения реализации, решение поддерживает как конфигурацию на основе форм, так и пользовательскую конфигурацию. Режим конфигурации на основе форм генерирует логику взаимодействия для конфигурации SeaTunnel (ST) через параметры формы и поддерживает конфигурацию дополнительных пользовательских параметров, а также конфигураций JVM на уровне задач.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-163.png" width="601" height="491" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Бэкэнд получает параметры формы для генерации необходимой конфигурации для контекста выполнения задачи. Он разрабатывает интерфейс IConfigGenerator для реализации логики генерации Source и Sink для каждого источника данных, и, наконец, класс SeatunnelConfigGenerator используется для генерации окончательной конфигурации ST.&lt;/p&gt;
&lt;h5&gt;Развертывание и настройка&lt;/h5&gt;
&lt;p&gt;Что касается развертывания и настройки, то кластер SeaTunnel использует архитектуру 2 Master, 5 Worker для обеспечения высокой доступности и производительности синхронизации.&lt;/p&gt;
&lt;p&gt;За счет оптимизации логики сегментирования для HDFS, HIVE и MultiTable Source, считыватель получает более сбалансированные сегменты, что повышает производительность синхронизации данных. Соответствующие оптимизации были отправлены в виде PR в сообщество.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-164.png" width="515" height="264" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;С точки зрения настройки параметров, в ответ на требование крупномасштабной синхронизации данных из HDFS в Doris, после исследования и настройки параметров кода DorisSink была достигнута скорость передачи данных в 2 миллиона записей в секунду, что значительно повысило производительность синхронизации данных.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-165.png" width="452" height="206" alt="" /&gt;
&lt;/div&gt;
&lt;h3&gt;Практический пример проекта: перенос задач и практика изоляции ресурсов&lt;/h3&gt;
&lt;h4&gt;Эффективная миграция задач с платформы Mammoth на DolphinScheduler&lt;/h4&gt;
&lt;p&gt;Платформа Mammoth – это программное обеспечение платформы больших данных, разработанное для внутреннего использования в NetEase Group, и некоторые зависимости между задачами Mammoth очень сложны, требуя анализа и организации. Если это делать вручную, эффективность будет низкой, и, вероятно, возникнут пропуски или ошибки.&lt;/p&gt;
&lt;p&gt;В конце концов, после изучения представления зависимостей задач на платформе DolphinScheduler, было решено перейти на DolphinScheduler.&lt;/p&gt;
&lt;p&gt;Что касается выбора метода миграции, то если бы был принят ручной подход к миграции, он был бы не только трудоемким и отнимающим много времени, но и подвержен ошибкам миграции из-за сложности зависимостей задач, что повлияло бы на общую стабильность задач.&lt;/p&gt;
&lt;p&gt;Исходя из различных соображений, после обсуждения и исследований NetEase Mail решила принять решение об автоматизированном решении синхронизации. Это решение автоматически собирает метаданные задач и lineage задач со старой платформы, преобразует их в формат конфигурации задач платформы Dolphin и одновременно добавляет зависимости задач. Наконец, рабочие процессы быстро создаются через интерфейс Dolphin. Для достижения этого процесса NetEase Mail использовала инструмент синхронизации PyDolphinScheduler, официально предоставляемый DolphinScheduler — Python API, который позволяет определять рабочие процессы с использованием кода Python, а именно, “workflow as code”.&lt;/p&gt;
&lt;p&gt;Кроме того, NetEase Mail также собирала метаданные и lineage задач Mammoth через систему метаданных, пакетно переписывала задачи Mammoth в задачи DolphinScheduler и автоматически добавляла узлы зависимостей в соответствии с lineage.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-166.png" width="800" height="430" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Эта практика эффективно завершила перенос более 300 задач Mammoth, обеспечив плавный бизнес-переход, достигнув массовой миграции одним щелчком мыши, значительно сэкономив затраты на рабочую силу и предоставив ценный опыт для аналогичных сценариев миграции задач в будущем.&lt;/p&gt;
&lt;h4&gt;Практика изоляции групп Worker&lt;/h4&gt;
&lt;p&gt;Следующая практика проекта — это практика изоляции ресурсов на основе группировки Worker в DolphinScheduler.&lt;/p&gt;
&lt;p&gt;В повседневном использовании платформы NetEase Mail DolphinScheduler ключевым бизнес-сценарием является поддержка задач планирования онлайн-мониторинга QA. Эти задачи характеризуются высокой частотой планирования, в основном на уровне минут; существует большое количество задач, при этом количество задач, связанных с мониторингом, в настоящее время достигает 120+.&lt;/p&gt;
&lt;p&gt;Выполнение этих задач планирования мониторинга в настоящее время в основном достигается с помощью типа задачи SHELL путем вызова самостоятельно разработанного jar-пакета инструмента обработки задач ETL. Этот jar-пакет предоставляет дополнительные функциональные возможности во время выполнения задачи, такие как проверки идемпотентности, повторные попытки по таймауту и т.д.&lt;/p&gt;
&lt;p&gt;Однако этот вид вызова запустит множество процессов JVM на рабочих узлах (worker nodes). В это время, если некоторые критически важные задачи планирования также запланированы на тот же рабочий узел, и OOM killer запускается из-за нехватки памяти, эти критически важные задачи, как правило, имеющие более высокое использование памяти, могут получить более высокий балл OOM и с большей вероятностью будут завершены, что приведет к нестабильному выполнению критически важных задач.&lt;/p&gt;
&lt;p&gt;Кроме того, для выполнения некоторые задания синхронизации Т+1 на следующее утро требуют большого количества ресурсов и не подходят для планирования на том же узле, что и другие задания, что может повлиять на производительность и стабильность выполнения других заданий на том же работнике.&lt;/p&gt;
&lt;p&gt;Поэтому команда NetEase Mail рассматривала возможность использования решения для изоляции Worker group для решения вышеуказанных проблем.&lt;/p&gt;
&lt;p&gt;Благодаря изоляции групп Worker команда отделила высокочастотные задачи планирования, такие как мониторинг в режиме реального времени, от других задач, обеспечив стабильное выполнение основных графиков, связанных с OKR, и повысив общую стабильность и надежность выполнения задач.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-167.png" width="800" height="189" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;На практике NetEase Mail создала на платформе различные группы Worker, содержащие различные узлы Worker, включая такие группы, как Default, AI, Monitoring, Hadoop и группы задач с большими ресурсами, чтобы избежать проблем блокировки задач и состязания за ресурсы, оптимизировать распределение ресурсов и повысить общую утилизацию ресурсов и производительность платформы.&lt;/p&gt;
&lt;p&gt;Эта практика эффективно решила такие проблемы, как блокировка задач, вызванная высокой частотой планирования задач мониторинга QA, и проблемы OOM узла worker, вызванные высоким запросом ресурсов задачами Т+1 рано утром, тем самым снизив операционные риски.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-168.png" width="591" height="397" alt="" /&gt;
&lt;/div&gt;
&lt;h3&gt;Итоги и перспективы&lt;/h3&gt;
&lt;h4&gt;Резюме практики&lt;/h4&gt;
&lt;p&gt;Внедрив платформу DolphinScheduler и проведя серию мероприятий по развертыванию и оптимизации, команда NetEase Mail достигла значительных результатов в повышении эффективности разработки данных, снижении эксплуатационных затрат и обеспечении стабильного вывода бизнес-данных. Вторичная разработка платформы тесно связана с бизнес-потребностями, подчеркивая повышенное удобство для пользователя и эффективность разработки, в то время как команда постоянно сосредотачивается на оптимизации и улучшении платформы и активно вносит вклад в сообщество, стимулируя постоянное развитие платформы.&lt;/p&gt;
&lt;h4&gt;Значение и преимущества платформы&lt;/h4&gt;
&lt;p&gt;Платформа DolphinScheduler играет важную роль в бизнесе NetEase Mail. Она не только повышает эффективность и стабильность разработки данных, но и удовлетворяет разнообразные потребности бизнеса за счет оптимизированных процессов планирования задач, обеспечивая своевременный вывод данных и активно способствуя устойчивому развитию почтового бизнеса.&lt;/p&gt;
&lt;h4&gt;Обмен опытом и идеями&lt;/h4&gt;
&lt;p&gt;В процессе развертывания и оптимизации платформы команда NetEase Mail накопила богатый практический опыт. Этот опыт представляет собой важную справочную ценность для других предприятий при выборе и использовании платформ планирования задач. Команда подчеркивает, что вторичная разработка должна быть тесно интегрирована с фактическими бизнес-потребностями, всегда уделяя первоочередное внимание пользовательскому опыту и эффективности разработки. В то же время постоянная ориентация на оптимизацию и улучшение платформы и активное участие в построении сообщества с открытым исходным кодом может стимулировать постоянное совершенствование и развитие платформы.&lt;/p&gt;
&lt;h4&gt;Перспективы на будущее&lt;/h4&gt;
&lt;p&gt;Заглядывая в будущее, команда NetEase Mail планирует продолжить изучение и продвижение в следующих направлениях:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Внедрение ИИ:** Интеграция возможностей ИИ и LLM для достижения более интеллектуальных и удобных для пользователя процессов ETL обработки данных, повышая уровень автоматизации и интеллектуализации обработки данных.&lt;/li&gt;
&lt;li&gt;Управление данными:** Интеграция данных планирования DolphinScheduler с внутренним центром метаданных для достижения интеллектуального сбора и анализа lineage данных/задач и карт данных, обеспечивая сильную поддержку управления данными.&lt;/li&gt;
&lt;li&gt;Оптимизация платформы:** Дальнейшая оптимизация производительности и функциональности платформы DolphinScheduler для повышения ее стабильности и надежности, что позволит лучше удовлетворять растущие потребности в обработке данных.&lt;/li&gt;
&lt;li&gt;Внедрение DATA OPS:** Достижение интеграции и консолидации между платформой DolphinScheduler и другими системами платформ данных, содействие автоматизации интеграции и передачи данных, а также построение более эффективной экосистемы данных.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;В заключение&lt;/h4&gt;
&lt;p&gt;Практика развертывания и оптимизации NetEase Mail на основе платформы DolphinScheduler не только решила существующие проблемы планирования задач и обработки данных, но и заложила прочный фундамент для будущего развития. Благодаря постоянным технологическим инновациям и практическим исследованиям NetEase Mail продолжит предоставлять пользователям более качественные и эффективные услуги электронной почты, а также вносить больший вклад в развитие сообщества с открытым исходным кодом.&lt;/p&gt;
</description>
</item>

<item>
<title>AI да Зайка 🐰 –  Trino 474</title>
<guid isPermaLink="false">213</guid>
<link>https://gavrilov.info/all/ai-da-zayka-trino-474/</link>
<pubDate>Wed, 26 Mar 2025 01:06:29 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/ai-da-zayka-trino-474/</comments>
<description>
&lt;p&gt;Тестируем AI функции в Trino 474&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/Snimok-ekrana-2025-03-26-v-00.58.22.png" width="1040" height="562" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Дока тут: &lt;a href="https://trino.io/docs/current/functions/ai.html"&gt;https://trino.io/docs/current/functions/ai.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Заводим конектор llm.properties&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;connector.name=ai
ai.provider=openai
ai.model=gpt-4o-mini
ai.openai.api-key=sk-XXXXXXa
ai.openai.endpoint= https://api.XXXXX/openai&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;немного конфига config.properties&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;sql.path=llm.ai&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Пробуем:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;SELECT ai_analyze_sentiment('Ai да заяц какой умный как утка только отруби не есть'); -- mixed
SELECT ai_analyze_sentiment('Ai да заяц какой умный'); -- positive

SELECT ai_classify('Buy fucking deep! and bitcoin', ARRAY['spam', 'not spam']); -- spam
-- spam

SELECT ai_classify('много денег', ARRAY['Хорошо', 'Плохо']); -- Хорошо

SELECT ai_classify('мало денег', ARRAY['Хорошо', 'Плохо']); -- Плохо

SELECT ai_fix_grammar('Пошёл я, значица, на рынок, там нашол один такой магазинчег, где продают всякие запчасти. Думал, прикуплю видюху крутую, чтобы всё летало. Смотрю - лежыт такая, блестит, вся из себя навороченая. Спрашиваю продавца: &amp;quot;Скока стоит эта красота?&amp;quot; А он мне такой цену заломил, у меня глаза на лоб полезли.');
-- Пошёл я, значит, на рынок, там нашёл один такой магазинчик, где продают всякие запчасти. Думал, прикуплю крутую видеокарту, чтобы всё летало. Смотрю - лежит такая, блестит, вся из себя навороченная. Спрашиваю продавца: &amp;quot;Сколько стоит эта красота?&amp;quot; А он мне такую цену назвал, что у меня глаза на лоб полезли.

SELECT ai_gen('Опиши что такое Москва коротко'); 
-- Москва — столица и крупнейший город России, расположенный в центральной части страны. Это политический, экономический и культурный центр, известный своими историческими памятниками, такими как Кремль и Красная площадь, а также современными skyscrapers. Город обладает развитой инфраструктурой, включая транспортную сеть, образовательные учреждения и театры. Москва также является одним из крупнейших мегаполисов мира с разнообразной культурой и многонациональным населением.

SELECT ai_mask(
    'Позвони мне быстро 987 554 32 11 или приходи ул. ленина 43 кв. 32,  скажи, что от Гаврилова Юры',
    ARRAY['телефон', 'Адрес',  'Имя']);
-- Позвони мне быстро [MASKED] или приходи [MASKED], скажи, что от [MASKED]

SELECT ai_translate('Буря мглою небо кроет,
Вихри снежные крутя;
То, как зверь, она завоет,
То заплачет, как дитя,
То по кровле обветшалой
Вдруг соломой зашумит,
То, как путник запоздалый,
К нам в окошко застучит.', 'en');

/*
The storm covers the sky with gloom,  
Whirling snowstorms twist and turn;  
Now, like a beast, it howls,  
Now it cries like a child,  
Now on the dilapidated roof  
Suddenly rustles with straw,  
Now, like a late traveler,  
It knocks at our window.
*/


SELECT name, address,comment, ai_classify(comment, ARRAY['Хорошо', 'Плохо', 'Можно помочь']), ai_translate(comment, 'ru') FROM tpch.sf1000.customer limit 10;

Customer#037500001rLbDxR0mC,PwQ5QkxWCfXCCtes; slyly regular pearls cajole quicklПлохолжем; хитро обычные жемчужины уговаривают быстро
Customer#0375000020bZ7K57TnmFs9goL41xTB64xBTLuXPtGPNunusual, ironic pinto beans haggle across the regular reqПлохонеобычные, ироничные пинто фасоль торгуются по обычному запросу
Customer#0375000035QliQMqzyzietly. deposits nag sometimes according to the even deposits. fПлохотихо. депозиты иногда зависят от равномерных депозитов. f
Customer#037500004FMm4JPC9UUSTOdfsfnect; slyly even packages haggle. pending instПлохождут; хитро даже пакеты торгуются. в ожидании инст
Customer#037500005a CUUBM75af0IX66Jmunts are bold, unusual packages. fluffily unusual foxes nag furiously even depositsПлохоУнцы — это смелые, необычные пакеты. Пухово-необычные лисы яростно требуют даже депозиты.
Customer#037500006VoXTOweLVJuiKe7xcn K69l7RoN61,ar pinto beans haggle blithely. Можно помочьФасоль &amp;quot;пинто&amp;quot; торгуются беззаботно.
Customer#037500007fUoQ2Fkssi94OhGGE1UetR wages hang blithely among the slyly ruthless accounts. carefully penПлоховозрасты беззаботно свисают среди хитро безжалостных счетов. осторожно пишите
Customer#037500008xogtDxejUq slyly special dependencies use quickly throughout the blithely stealthy accounts. dependМожно помочьЛукавые специальные зависимости используются быстро на протяжении безмятежных скрытных отчетов. зависеть
Customer#037500009ou,BZuF,BMMeEoSUgyODRQZFQJyIsFQMSWpen requests maintain. carefully ironic requests sleep carefullПлохозапросы поддерживают. осторожно ироничные запросы спят осторожно
Customer#037500010lcP8JaVg2dzy final packages. accounts along the quietly ironic ideas nag carefully idly express requests. requests detect ПлохоИтоговые пакеты. учетные записи вдоль тихо ироничных идей настойчиво и бездумно выражают запросы. запросы обнаруживают&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;При тестировании ни один заяц не пострадал, но вот hive и iceberg пришлось зарубить, там новые параметры для конфига.  Так,что. придется их изучить при обновлении на новые версии, старые работать не будут.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/ai-da-zayka-trino-474.png" width="225" height="225" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;а каталог iceberg я добавил так в итоге&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;connector.name=iceberg
fs.native-s3.enabled=true
s3.endpoint=https://gateway.storjshare.io
s3.region=us1
hive.metastore.uri=thrift://metastore:9083
hive.metastore.username=trino
hive.metastore.thrift.client.connect-timeout=1m
s3.path-style-access=true
s3.aws-access-key=XXXXX
s3.aws-secret-key=CCCCCCCCC
s3.socket-read-timeout=1m

iceberg.file-format=PARQUET
iceberg.compression-codec=SNAPPY
iceberg.target-max-file-size=128MB&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;но еще заметил эту багу &lt;a href="https://github.com/trinodb/trino/issues/25427"&gt;https://github.com/trinodb/trino/issues/25427&lt;/a&gt;&lt;/p&gt;
</description>
</item>

<item>
<title>Состояние больших языковых моделей (LLM) с открытым исходным кодом – Open Pioneers #32</title>
<guid isPermaLink="false">212</guid>
<link>https://gavrilov.info/all/sostoyanie-bolshih-yazykovyh-modeley-llm-s-otkrytym-ishodnym-kod/</link>
<pubDate>Tue, 25 Mar 2025 22:40:55 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/sostoyanie-bolshih-yazykovyh-modeley-llm-s-otkrytym-ishodnym-kod/</comments>
<enclosure url="https://gavrilov.info/video/MCP.mp4" type="video/mp4" length="6132783" />
<description>
&lt;p&gt;перевод: &lt;a href="https://www.openpioneers.com/p/the-state-of-open-source-llms"&gt;https://www.openpioneers.com/p/the-state-of-open-source-llms&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;С возвращением в &lt;a href="https://www.openpioneers.com"&gt;Open Pioneers&lt;/a&gt; #32.&lt;/p&gt;
&lt;p&gt;Прошло несколько месяцев с момента моей последней рассылки. Жизнь и работа в Linux Foundation занимали много времени, но я поставил перед собой цель снова писать еженедельно, начиная с этого момента.&lt;/p&gt;
&lt;p&gt;Я также использую этот перезапуск, чтобы кое-что изменить: помимо нового брендинга, я перешел с платформы Beehiiv на Substack для своей рассылки. Я также решил сделать контент более личным и углубляться в темы с открытым исходным кодом, которые мне интересны. Я по-прежнему буду рассказывать об альтернативах с открытым исходным кодом, объявлять о раундах финансирования или интересных вакансиях в секторе открытого исходного кода, но скорее в качестве побочного замечания.&lt;/p&gt;
&lt;p&gt;Я почистил список подписчиков и оставил в нем только тех, кто регулярно открывал мои электронные письма, так как не хочу никому рассылать спам.&lt;/p&gt;
&lt;p&gt;Тем не менее, я очень рад снова начать это делать. В сфере открытого исходного кода происходит так много интересного, и я с нетерпением жду возможности продолжать узнавать об этом вместе с вами!&lt;/p&gt;
&lt;p&gt;Состояние открытых больших языковых моделей (LLM)&lt;/p&gt;
&lt;p&gt;Большие языковые модели (LLM) с открытым исходным кодом превратились из нишевых академических проектов в устойчивые, управляемые сообществом платформы, которые бросают вызов проприетарным гигантам, таким как Microsoft или Google. Сегодня LLM с открытым исходным кодом не только способствуют прозрачности и сотрудничеству, но и обеспечивают более экономичный и адаптируемый подход к разработке искусственного интеллекта.&lt;/p&gt;
&lt;p&gt;Новая эра товарного ИИ&lt;/p&gt;
&lt;p&gt;Движение за открытый исходный код в области ИИ росло экспоненциально в течение последних нескольких лет. Вместо того чтобы полагаться исключительно на дорогие закрытые модели от крупных технологических компаний, разработчики и исследователи по всему миру теперь могут получать доступ к современным LLM, модифицировать и улучшать их. Эта коммодитизация имеет решающее значение для обеспечения доступности ИИ для всех, от независимых хакеров и стартапов до академических учреждений.&lt;/p&gt;
&lt;p&gt;Последние разработки показали потенциал LLM с открытым исходным кодом. Например, китайская модель R1 от DeepSeek привлекла всеобщее внимание, поскольку она соответствует характеристикам ведущих моделей, таких как o1 от OpenAI, при этом обучаясь за небольшую часть стоимости и вычислительной мощности. Использование DeepSeek обучения с подкреплением и архитектуры “смесь экспертов” позволяет ей активировать только подмножество из своих 671 миллиарда параметров на запрос, тем самым снижая энергопотребление и требования к оборудованию.&lt;/p&gt;
&lt;p&gt;Преимущества и проблемы LLM с открытым исходным кодом&lt;/p&gt;
&lt;p&gt;LLM с открытым исходным кодом предлагают несколько убедительных преимуществ:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Прозрачность и доверие:** Благодаря общедоступным данным обучения, исходному коду и весам моделей, LLM с открытым исходным кодом позволяют проводить тщательную проверку, что делает их менее “черным ящиком” по сравнению с проприетарными аналогами. Эта прозрачность приводит к доверию сообщества и совместному устранению неполадок.&lt;/li&gt;
&lt;li&gt;Низкие затраты:** Модели с открытым исходным кодом снижают барьер для входа. Экономическая эффективность открытого исходного кода особенно выгодна для академических учреждений и стартапов с ограниченными ресурсами – другими словами: это способствует инновациям.&lt;/li&gt;
&lt;li&gt;Настройка и гибкость:** Открытый доступ означает, что разработчики могут точно настраивать модели для нишевых приложений, интегрировать знания, специфичные для конкретной области, или даже адаптировать модели для местных языков – ключевое соображение для таких инициатив, как&lt;a href="https://openeurollm.eu/launch-press-release"&gt;OpenEuroLLM&lt;/a&gt;, которая стремится обслуживать языковое разнообразие Европы.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Однако остаются и проблемы. LLM с открытым исходным кодом могут быть уязвимы для атак с использованием состязательных методов, и качество доступных данных обучения может варьироваться. Более того, хотя открытые модели способствуют инновациям, они также поднимают вопросы об ответственном использовании, поскольку мощные инструменты ИИ в чужих руках могут привести к злоупотреблениям. Баланс между открытостью и безопасностью – это продолжающийся разговор внутри сообщества, к которому мы должны отнестись серьезно.&lt;/p&gt;
&lt;p&gt;Ключевые LLM с открытым исходным кодом, о которых вам следует знать&lt;/p&gt;
&lt;p&gt;Ниже приведен снимок текущего ландшафта открытого исходного кода, согласно таблице &lt;a href="https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard"&gt;лидеров Hugging Face Open LLM&lt;/a&gt;.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-152.png" width="1456" height="850" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Следующие LLM с открытым исходным кодом выделяются для меня, потому что они очень часто смешиваются и сочетаются более широким сообществом ИИ:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://huggingface.co/meta-llama/Llama-3.1-8B"&gt;Llama 3.1&lt;/a&gt; (Meta):** Серия Llama 3.1 от Meta — от небольших моделей до массивной версии с 405 млрд параметров — неизменно занимает высокие позиции в области генерации общего текста, многоязыковой обработки и задач кодирования.&lt;/li&gt;
&lt;li&gt;Mistral Large 2 (Mistral AI):** Благодаря мощной архитектуре с 123 миллиардами параметров и впечатляющему контекстному окну (до 128 тысяч токенов), &lt;a href="https://huggingface.co/mistralai/Mistral-Large-Instruct-2407"&gt;Mistral Large 2&lt;/a&gt; превосходно справляется как с пониманием языка, так и с задачами кодирования. Его разреженная конструкция “смесь экспертов” оптимизирует производительность при одновременном снижении затрат на вывод, что делает его лидером в эффективности и масштабируемости.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://huggingface.co/deepseek-ai/DeepSeek-R1"&gt;DeepSeek R1&lt;/a&gt; (DeepSeek):** Модель R1 от DeepSeek использует обучение с подкреплением и подход “смесь экспертов” для обеспечения конкурентоспособных возможностей рассуждения, математики и кодирования. Хотя DeepSeek предположительно использует менее сложное оборудование по сравнению со своими западными конкурентами (в США действует запрет на экспорт в Китай графических процессоров Nvidia), он достигает высокой производительности при небольшой доле затрат на обучение. Этот факт привел к множеству обсуждений, в том числе и в основных СМИ.&lt;/li&gt;
&lt;li&gt;DeepSeek v3 (DeepSeek):** Основываясь на серии R1, &lt;a href="https://huggingface.co/deepseek-ai/DeepSeek-V3"&gt;DeepSeek v3&lt;/a&gt; использует архитектуру Mixture-of-Experts с 671 миллиардом параметров – с 37 миллиардами активированных параметров на токен – для обеспечения впечатляющей эффективности при генерации общего текста, многоязычной обработке и задачах кодирования.&lt;/li&gt;
&lt;li&gt;Qwen 2.5 (Alibaba):** &lt;a href="https://huggingface.co/Qwen/Qwen2.5-7B-Instruct"&gt;Qwen 2.5&lt;/a&gt; от Alibaba произвел фурор благодаря своим сильным многоязычным возможностям, специализированной производительности в области кодирования и математических рассуждений, а также эффективным стратегиям развертывания. Его компоненты с открытым исходным кодом выпущены под лицензией Apache 2.0.&lt;/li&gt;
&lt;li&gt;Falcon-180B (Technology Innovation Institute):** Модель &lt;a href="https://huggingface.co/tiiuae/falcon-180B"&gt;Falcon-180B&lt;/a&gt; является свидетельством возможностей крупномасштабных LLM с открытым исходным кодом. Обученная на более чем 3,5 триллионах токенов, она обеспечивает первоклассную производительность по множеству тестов, что делает ее одной из самых конкурентоспособных доступных альтернатив с открытым исходным кодом. ( Вам потребуется примерно 8 видеокарт A100 с 80 ГБ памяти или эквивалентное оборудование для запуска этой модели )&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Перспективы&lt;/p&gt;
&lt;p&gt;Поскольку инвестиции в ИИ с открытым исходным кодом продолжают расти, такие игроки отрасли, как Meta, и общественные инициативы по всей Европе и за ее пределами удваивают ставки на потенциал совместной разработки ИИ. Благодаря тому, что компании выпускают свои модели под разрешительными лицензиями и делятся подробными техническими деталями и тестами, экосистема LLM готова к быстрым изменениям.&lt;/p&gt;
&lt;p&gt;Большинство экспертов считают, что будущее ИИ будет построено на основе открытого исходного кода, где общие знания ускоряют инновации и приводят к более равноправному технологическому прогрессу.&lt;/p&gt;
&lt;p&gt;Я думаю, что это будущее только началось.&lt;/p&gt;
&lt;p&gt;Новые и популярные проекты с открытым исходным кодом 🔥&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Second Me:** Прототип с открытым исходным кодом, где вы создаете своего собственного “ИИ-клона”: новый вид ИИ, который сохраняет вас, передает ваш контекст и защищает ваши интересы. &lt;a href="https://github.com/mindverse/Second-Me"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-153.png" width="1456" height="483" alt="" /&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Cursor Talk to Figma MCP:** Model Context Protocol (MCP), позволяющий Cursor взаимодействовать с Figma для чтения дизайнов и программного внесения изменений в них. &lt;a href="https://github.com/sonnylazuardi/cursor-talk-to-figma-mcp"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;На что способен MCP в области дизайна Cursor Talk to Figma MCP см. видео&lt;/p&gt;
&lt;div class="e2-text-video"&gt;
&lt;video src="https://gavrilov.info/video/MCP.mp4#t=0.001" width="1780" height="1080" controls alt="" /&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Classless.css:** Легкий CSS-фреймворк для веб-сайтов с безупречным вкусом, но без желания добавлять классы. &lt;a href="https://github.com/DigitallyTailored/Classless.css"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Раунды финансирования проектов с открытым исходным кодом 💸&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://supabase.com"&gt;Supabase&lt;/a&gt;, альтернатива Google Firebase с открытым исходным кодом, привлекла $100 млн при оценке стоимости в $2 млрд. &lt;a href="https://www.techinasia.com/news/supabase-developer-platform-raises-100m-valued-2b"&gt;Ссылка&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.aheadcomputing.com"&gt;AheadComputing&lt;/a&gt;, игрок из экосистемы RISC-V, объявила о посевном финансировании в размере $21,5 млн. &lt;a href="https://www.prnewswire.com/news-releases/aheadcomputing-raises-21-5m-seed-round-and-introduces-breakthrough-microprocessor-architecture-designed-for-next-era-of-general-purpose-computing-302379683.html"&gt;Ссылка&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://rerun.io"&gt;Rerun&lt;/a&gt;, создатели платформы для ведения журналов и визуализации мультимодальных данных, привлекли посевное финансирование в размере $17 млн под руководством PointNine. &lt;a href="https://rerun.io/blog/physical-ai-data"&gt;Ссылка&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.onyx.app"&gt;Onyx&lt;/a&gt;, решение для корпоративного поиска с открытым исходным кодом, привлекло посевное финансирование в размере $10 млн под совместным руководством Khosla Ventures и First Round Capital. &lt;a href="https://www.onyx.app/blog/seed-round"&gt;Ссылка&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://lingo.dev/en"&gt;Lingo.dev&lt;/a&gt;, создатели инструментария для локализации с открытым исходным кодом, привлекли $4,2 млн. &lt;a href="https://techcrunch.com/2025/02/18/lingo-dev-is-an-app-localization-engine-for-developers/"&gt;Ссылка&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Очень интересные проекты:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;[&lt;a href="https://github.com/onyx-dot-app/onyx](https://github.com/onyx-dot-app/onyx)**"&gt;https://github.com/onyx-dot-app/onyx](https://github.com/onyx-dot-app/onyx)**&lt;/a&gt; – Помогите своей инженерной команде, службе поддержки, отделу продаж и команде эксплуатации продукта быстрее находить информацию. Искусственный интеллект с открытым исходным кодом, подключенный к документам, приложениям и сотрудникам вашей компании.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;[&lt;a href="https://github.com/rerun-io/rerun](https://github.com/rerun-io/rerun)**"&gt;https://github.com/rerun-io/rerun](https://github.com/rerun-io/rerun)**&lt;/a&gt; – Визуализируйте потоки мультимодальных данных. Бесплатно, быстро, просто в использовании и легко интегрируется. Написано на Rust.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;[&lt;a href="https://github.com/lingodotdev/lingo.dev](https://github.com/lingodotdev/lingo.dev)**"&gt;https://github.com/lingodotdev/lingo.dev](https://github.com/lingodotdev/lingo.dev)**&lt;/a&gt; – Фиксируйте. Переводите. AI-локализация для команд, которые быстро выпускают продукты. Переводите приложения, веб-сайты и целые базы данных, используя лучшие LLM-модели.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;[&lt;a href="https://github.com/sonnylazuardi/cursor-talk-to-figma-mcp](https://github.com/sonnylazuardi/cursor-talk-to-figma-mcp)**"&gt;https://github.com/sonnylazuardi/cursor-talk-to-figma-mcp](https://github.com/sonnylazuardi/cursor-talk-to-figma-mcp)**&lt;/a&gt; – Этот проект реализует интеграцию Model Context Protocol (MCP) между Cursor AI и Figma, позволяя Cursor взаимодействовать с Figma для чтения дизайнов и программного внесения изменений в них.&lt;/li&gt;
&lt;/ul&gt;
</description>
</item>

<item>
<title>ИИшница – стратегический взгляд, выбор локальной LLM и MCP</title>
<guid isPermaLink="false">209</guid>
<link>https://gavrilov.info/all/iishnica-strategicheskiy-vzglyad-vybor-lokalnoy-llm-i-mcp/</link>
<pubDate>Mon, 24 Mar 2025 22:32:14 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/iishnica-strategicheskiy-vzglyad-vybor-lokalnoy-llm-i-mcp/</comments>
<description>
&lt;p&gt;&lt;a href="https://habr.com/ru/articles/892956"&gt;Зачем бизнесу LLM: стратегический взгляд&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://habr.com/ru/articles/892468"&gt;Выбор локальной LLM модели. Публикация на сайт с чатом&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://habr.com/ru/articles/893482"&gt;MCP (Model Context Protocol) &lt;/a&gt;&lt;/p&gt;
</description>
</item>

<item>
<title>vLLM vs TGI различия фреймворка для инференса</title>
<guid isPermaLink="false">207</guid>
<link>https://gavrilov.info/all/vllm-vs-tgi-razlichiya-freymvorka-dlya-inferensa/</link>
<pubDate>Thu, 20 Mar 2025 23:17:08 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/vllm-vs-tgi-razlichiya-freymvorka-dlya-inferensa/</comments>
<description>
&lt;p&gt;Автор: Yiren Lu @YirenLu&lt;br /&gt;
Оригинал: &lt;a href="https://modal.com/blog/vllm-vs-tgi-article"&gt;https://modal.com/blog/vllm-vs-tgi-article&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Зачем использовать фреймворк для инференса?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Почему разработчики не могут просто использовать библиотеку вроде Transformers для обслуживания своих моделей?&lt;/p&gt;
&lt;p&gt;Хотя библиотеки, такие как Transformers, отлично подходят для обучения и базового инференса, у них есть ограничения, когда дело доходит до масштабного развертывания и обслуживания LLM:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Эффективность использования памяти:** LLM требуют значительных ресурсов памяти. Универсальные библиотеки могут не оптимизировать использование памяти, что приводит к неэффективному распределению ресурсов. Для получения дополнительной информации о требованиях VRAM для обслуживания LLM, прочитайте &lt;a href="https://modal.com/blog/how-much-vram-need-inference"&gt;здесь&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Скорость инференса:** Стандартным библиотекам часто не хватает оптимизаций, специфичных для инференса, что приводит к замедлению времени обработки больших моделей.&lt;/li&gt;
&lt;li&gt;Пакетная обработка и очереди:** Эффективная обработка нескольких запросов требует сложных механизмов пакетной обработки и очередей, которые обычно не включаются в библиотеки, ориентированные на обучение.&lt;/li&gt;
&lt;li&gt;Масштабируемость:** Обслуживание LLM в масштабе требует тщательного управления вычислительными ресурсами, что выходит за рамки большинства универсальных библиотек.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Вместо этого, для большинства случаев обслуживания моделей в production, чтобы максимизировать пропускную способность и минимизировать задержку, вам следует использовать inference server. Двумя наиболее популярными inference serverами для случаев использования LLM являются vLLM и TGI.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Что такое vLLM и TGI?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;vLLM&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/vllm-project/vllm"&gt;vLLM&lt;/a&gt; — это библиотека с открытым исходным кодом, разработанная для быстрого инференса и обслуживания LLM. Разработанная исследователями из Калифорнийского университета в Беркли, она использует &lt;a href="https://blog.vllm.ai/2023/06/20/vllm.html"&gt;PagedAttention&lt;/a&gt;, новый алгоритм внимания, который эффективно управляет ключами и значениями внимания. vLLM обеспечивает до 24 раз более высокую пропускную способность, чем Hugging Face Transformers, без каких-либо изменений в архитектуре модели.&lt;/p&gt;
&lt;p&gt;Ключевые особенности vLLM включают в себя:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Эффективное управление памятью&lt;/li&gt;
&lt;li&gt;Непрерывная пакетная обработка&lt;/li&gt;
&lt;li&gt;Оптимизированные реализации ядра&lt;/li&gt;
&lt;li&gt;Поддержка различных архитектур моделей&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;TGI (Text Generation Inference)&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;TGI, сокращение от &lt;a href="https://huggingface.co/docs/text-generation-inference/en/index"&gt;Text Generation Inference&lt;/a&gt; (Инференс для генерации текста), — это инструментарий для развертывания и обслуживания больших языковых моделей (LLM). Разработанный компанией Hugging Face, TGI обеспечивает высокопроизводительную генерацию текста для самых популярных LLM с открытым исходным кодом, включая Llama, Falcon, StarCoder, BLOOM, GPT-NeoX и другие. Он ориентирован на предоставление готового к production решения для развертывания и обслуживания больших языковых моделей с особым упором на задачи генерации текста.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Сравнение производительности: Что быстрее?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Когда дело доходит до производительности, vLLM и TGI предлагают значительные улучшения по сравнению с базовыми реализациями. Однако определить, что быстрее, не так просто, поскольку производительность может варьироваться в зависимости от конкретного случая использования, архитектуры модели и конфигурации оборудования.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Пропускная способность:** vLLM часто демонстрирует более высокую пропускную способность, особенно для больших размеров пакетов, благодаря механизму PagedAttention и оптимизации непрерывной пакетной обработки.&lt;/li&gt;
&lt;li&gt;Эффективность использования памяти:** Метод PagedAttention в vLLM позволяет более эффективно использовать память, потенциально обеспечивая более высокую параллельность на одном и том же оборудовании.&lt;/li&gt;
&lt;li&gt;Простота использования:** Поскольку TGI создан Hugging Face, обслуживание любой модели Hugging Face (включая частные/gate-модели) с помощью &lt;a href="https://huggingface.co/docs/text-generation-inference/en/quicktour"&gt;TGI относительно просто&lt;/a&gt;. Стандартный способ запуска TGI, через официальный Docker-контейнер, также поднимает API endpoint.&lt;/li&gt;
&lt;li&gt;Готовность к производству (Production-readiness):** TGI предлагает встроенную телеметрию через OpenTelemetry и метрики Prometheus. У vLLM меньше “готовых к производству” наворотов.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;В целом, мы рекомендуем использовать vLLM, который обеспечивает хороший баланс между скоростью, поддержкой распределенного инференса (необходимого для больших моделей) и простотой установки.&lt;/p&gt;
</description>
</item>

<item>
<title>Когда использовать AI-агентов: Простая блок-схема</title>
<guid isPermaLink="false">198</guid>
<link>https://gavrilov.info/all/kogda-ispolzovat-ai-agentov-prostaya-blok-shema/</link>
<pubDate>Sun, 02 Mar 2025 20:49:45 +0300</pubDate>
<author></author>
<comments>https://gavrilov.info/all/kogda-ispolzovat-ai-agentov-prostaya-blok-shema/</comments>
<description>
&lt;p&gt;Перевод: Когда использовать AI-агентов: Простая блок-схема&lt;/p&gt;
&lt;p&gt;Оригинал: &lt;a href="https://www.llmwatch.com/p/when-to-use-ai-agents-a-simple-flowchart"&gt;https://www.llmwatch.com/p/when-to-use-ai-agents-a-simple-flowchart&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Когда и как использовать AI-агентов против AI-воркфлоу для ваших задач.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Ключевые моменты&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Используйте AI-агентов для задач, требующих гибкости и динамического принятия решений, например, для помощников по кодированию или виртуальных ассистентов.&lt;/li&gt;
&lt;li&gt;Используйте AI-воркфлоу для четко определенных, повторяющихся задач с ясными шагами, таких как обработка заказов или ответы службы поддержки.&lt;/li&gt;
&lt;li&gt;Начните с простого вызова LLM (большой языковой модели), если задача представляет собой простой запрос; при необходимости переходите к воркфлоу или агентам.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;AI-агенты против AI-воркфлоу – 30-секундная версия&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Что это такое?&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AI-агенты&lt;b&gt;, или агенты с ИИ, – это системы, которые автономно планируют и адаптируются, принимая решения на лету. Они отлично подходят для сложных, неструктурированных задач. &lt;/b&gt;AI-воркфлоу**, с другой стороны, следуют предопределенным шагам, что идеально подходит для последовательных, повторяющихся процессов.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Как выбрать?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Сначала проверьте, может ли простой вызов LLM с поиском (retrieval) справиться с вашей задачей, например, ответить на быстрый вопрос. Если нет, решите: Ваша задача хорошо определена с четкими шагами? Если да, используйте воркфлоу; если нет, и требуется гибкость, выбирайте AI-агентов. Этот подход обеспечивает простоту и эффективность.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Стоимость и задержка&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;AI-агенты могут быть дороже и медленнее из-за своей динамической природы, поэтому для проектов с ограниченным бюджетом воркфлоу могут быть лучше даже для сложных задач, если шаги четко определены.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;AI-агенты против AI-воркфлоу – Подробно&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Параграф выше, очевидно, был грубым упрощением. Но он должен дать вам представление о фундаментальных различиях между двумя подходами и о том, от каких факторов будет зависеть ваше решение.&lt;/p&gt;
&lt;p&gt;Давайте более подробно рассмотрим, когда использовать AI-агентов, а когда AI-воркфлоу, во многом опираясь на систему классификации Anthropic в качестве отправной точки. Таким образом, остальная часть этой статьи призвана направлять принятие решений, предлагая как теоретические идеи, так и практические применения, с акцентом на создание эффективных AI-систем.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Предпосылки и определения&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Для начала нам необходимо уточнить терминологию, на которой мы строим. Anthropic определяет две ключевые категории, важные для создания эффективных AI-систем:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AI-воркфлоу**: Это системы, в которых большие языковые модели (LLM) и инструменты оркеструются посредством предопределенных путей в коде. Они предназначены для задач с четкими, предсказуемыми шагами, обеспечивая согласованность и простоту отладки. Примеры включают автоматизацию обработки заказов или управление учетными записями клиентов, где последовательность действий хорошо установлена.&lt;/li&gt;
&lt;li&gt;AI-агенты**: Это, с другой стороны, системы, в которых LLM динамически управляют своими собственными процессами и использованием инструментов, сохраняя контроль над тем, как выполняются задачи. Они подходят для неструктурированных, сложных задач, требующих адаптивности, таких как автономные помощники по кодированию или виртуальные помощники, обрабатывающие различные запросы пользователей.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Это различие имеет решающее значение, и рекомендуется начинать с максимально простого решения, увеличивая сложность только при необходимости. Очень редко AI-агенты должны быть вашим первым выбором для решения проблемы.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Основа для принятия решений&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Процесс принятия решения при выборе между AI-агентами и AI-воркфлоу можно разбить на структурированную блок-схему, которую мы подробно опишем, а затем приведем простые правила. Это, конечно, работа в процессе, поскольку текущее поколение AI-агентов все еще находится в процессе развития, и неясно, когда этот быстрый прогресс остановится. В конце концов, за два года мы увидели колоссальное снижение вычислительных затрат.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Описание блок-схемы&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Процесс принятия решения можно визуализировать следующим образом, где каждый шаг представляет собой двоичный выбор, ведущий к соответствующей системе:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Начало:** Начните с оценки стоящей перед вами задачи.&lt;/li&gt;
&lt;li&gt;Решение 1:** Может ли задача быть решена одним вызовом LLM с поиском (retrieval)?
&lt;ul&gt;
  &lt;li&gt;Да:** Используйте один вызов LLM с поиском, которого достаточно для простых запросов, таких как ответы на фактические вопросы или генерация простого текста. Этот подход использует механизмы поиска для предоставления контекста, поддерживая низкие затраты и сложность.&lt;/li&gt;
  &lt;li&gt;Нет:** Если задача не может быть решена одним вызовом, перейдите к следующему решению.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Решение 2:** Является ли задача четко определенной с ясными, предопределенными шагами?
&lt;ul&gt;
  &lt;li&gt;Да:** Используйте AI-воркфлоу. Они идеально подходят для задач, которые можно разбить на последовательность предопределенных шагов, обеспечивая предсказуемость и согласованность. Примеры включают автоматизированные ответы службы поддержки или конвейеры обработки данных.&lt;/li&gt;
  &lt;li&gt;Нет:** Используйте AI-агентов. Они необходимы для задач, которые являются неструктурированными или требуют динамического принятия решений, таких как помощники по кодированию, решающие проблемы GitHub, или виртуальные помощники, планирующие и выполняющие различные задачи.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Эта базовая блок-схема отражает принцип начинать с самого простого решения (одиночный вызов LLM) и переходить к воркфлоу для четко определенных задач и, наконец, к агентам для более сложных, адаптивных нужд.&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://gavrilov.info/pictures/image-148.png" width="673" height="822" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;&lt;b&gt;Руководство по реализации&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Чтобы предоставить практические рекомендации, мы можем классифицировать варианты использования и соображения для каждого варианта:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Одиночный вызов LLM с поиском (Retrieval):**
&lt;ul&gt;
  &lt;li&gt;Вариант использования:** Подходит для простых запросов, когда LLM может предоставить прямой ответ, возможно, дополненный извлечением релевантной информации из базы данных или базы знаний. Например, ответ на вопрос клиента о технических характеристиках продукта.&lt;/li&gt;
  &lt;li&gt;Преимущества:** Низкая стоимость, низкая задержка и минимальная настройка. Это соответствует рекомендации Anthropic оптимизировать отдельные вызовы LLM поиском и примерами в контексте для многих приложений.&lt;/li&gt;
  &lt;li&gt;Пример:** Чат-бот, отвечающий: “Каковы часы работы вашего магазина?” путем извлечения информации и прямого ответа.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;AI-воркфлоу:**
&lt;ul&gt;
  &lt;li&gt;Вариант использования:** Лучше всего подходит для задач, которые хорошо определены и повторяются, с четкими шагами, которые не требуют от LLM принятия решений о том, какой следующий шаг следует предпринять. Примеры включают процессы выполнения заказов, от получения заказа до отправки, или управление учетными записями клиентов.&lt;/li&gt;
  &lt;li&gt;Преимущества:** Предсказуемость, согласованность и простота отладки. Воркфлоу следуют предопределенным путям в коде, что делает их подходящими для таких задач, как маршрутизация запросов клиентов в различные отделы на основе категорий (например, выставление счетов, техническая поддержка).&lt;/li&gt;
  &lt;li&gt;Соображения:** Убедитесь, что входы и выходы для каждого шага четко определены, чтобы избежать ошибок. Часто реализуется с помощью таких шаблонов, как объединение и маршрутизация подсказок как часть рабочих процессов, которые можно реализовать в нескольких десятках строк кода без сложных фреймворков.&lt;/li&gt;
  &lt;li&gt;Пример:** Банковский AI-чат-бот, который обрабатывает проверку баланса, выполняя предопределенную последовательность: проверяет пользователя, извлекает данные учетной записи, форматирует ответ.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;AI-агенты:**
&lt;ul&gt;
  &lt;li&gt;Вариант использования:** Идеально подходит для задач, которые являются сложными, неструктурированными или требуют гибкости и принятия решений на основе моделей. К ним относятся сценарии, в которых LLM необходимо планировать независимо, использовать внешние инструменты или адаптироваться к меняющимся условиям. Примеры включают агентов кодирования, решающих проблемы GitHub, как видно в тестах, таких как SWE-bench Verified, или виртуальных помощников, обрабатывающих различные запросы пользователей, такие как планирование встреч и создание отчетов.&lt;/li&gt;
  &lt;li&gt;Преимущества:** Высокая адаптивность, подходит для динамических сред. Агенты могут разбивать проблемы на управляемые шаги, сотрудничать с другими агентами и использовать такие инструменты, как веб-поиск или вызовы API, как отмечается в сообщении блога.&lt;/li&gt;
  &lt;li&gt;Соображения:** Более высокие затраты и задержка из-за динамической обработки. Рекомендуется проводить тестирование в изолированной среде и уделять приоритетное внимание прозрачности, показывая этапы планирования. Другим важным фактором для агентов, использующих сложные инструменты (например, Azure CLI, GitHub), является создание тщательного интерфейса между агентом и компьютером (ACI) посредством документации и тестирования инструментов. Ваши агенты смогут использовать правильные инструменты для ваших задач, только если у них есть доступ к достаточной информации о них.&lt;/li&gt;
  &lt;li&gt;Пример:** AI-агент, который автономно пишет и тестирует код для исправления проблемы GitHub, проверенный автоматизированными тестами и проверкой человеком, как часть инициативы SWE-bench.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;Дополнительные соображения&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Хотя блок-схема и рекомендации обеспечивают четкий путь, это только отправная точка. Основная цель этой статьи – повысить осведомленность о том, что “бросаться AI-агентами во все” – нежизнеспособная стратегия – и предоставить отправную точку для принятия решений.&lt;/p&gt;
&lt;p&gt;Многие из дополнительных факторов, которые следует учитывать, особенно в отношении затрат и производительности, представляют собой компромиссы, специфичные для ваших индивидуальных вариантов использования. Агентные системы часто жертвуют задержкой и стоимостью ради лучшего выполнения задач, что делает их менее подходящими для проектов с ограниченным бюджетом, где достаточно рабочих процессов. Например, если задача четко определена, но очень сложна, рабочим процессам все равно можно отдать предпочтение по сравнению с агентами для поддержания эффективности, если шаги можно адекватно определить заранее.&lt;/p&gt;
&lt;p&gt;Обслуживание клиентов – отличный пример: оно часто требует задержки, близкой к реальному времени, и строгих мер защиты, поскольку это приложение, ориентированное на клиентов (и многие клиенты, обращающиеся в службу поддержки, уже не в лучшем настроении). Хотя AI-агенты обещают справляться с этим намного лучше, чем предыдущие технологии, требования к надежности и безопасности высоки. И вы уже можете создавать довольно продвинутые чат-боты с помощью рабочих процессов. Фактически, большинство чат-ботов, работающих в настоящее время в промышленной эксплуатации, имеют мало общего с агентным AI (даже если они утверждают обратное). Такие вещи, как инструменты для клиентских данных и истории заказов, гораздо важнее и могут быть реализованы как рабочие процессы для стандартных запросов. Прагматичным компромиссом может быть использование агентов для более неоднозначных запросов. Два подхода к проектированию не исключают друг друга, что является еще одним важным соображением. Используйте то, что лучше всего подходит для вашего варианта использования.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Заключение&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;В заключение, решение между AI-агентами и AI-воркфлоу зависит от характера задачи: используйте отдельные вызовы LLM для простых запросов, рабочие процессы для четко определенных, повторяющихся задач и агентов для неструктурированных, динамических задач, требующих адаптивности. Этот подход согласуется с рекомендациями по простоте, прозрачности и тщательному тестированию, обеспечивая эффективную разработку AI-системы. Приведенная выше блок-схема и рекомендации предлагают практическую отправную точку для реализации, подкрепленную реальными примерами и общедоступными сведениями от ведущих AI-компаний, таких как Anthropic &amp; HuggingFace.&lt;/p&gt;
</description>
</item>


</channel>
</rss>