<?xml version="1.0" encoding="utf-8" ?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:tt="http://teletype.in/" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/"><title>🤓Бартов: про работу с ИТ- и медтекстами и прочее</title><subtitle>Евгений Бартов, редактор/переводчик/копирайтер/автоматизатор.
Главред бюро переводов «Альянс ПРО» (ИТ, ИБ | медицина)
Почта: bartov-e@ya.ru

</subtitle><author><name>🤓Бартов: про работу с ИТ- и медтекстами и прочее</name></author><id>https://teletype.in/atom/bartov</id><link rel="self" type="application/atom+xml" href="https://teletype.in/atom/bartov?offset=0"></link><link rel="alternate" type="text/html" href="https://teletype.in/@bartov?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><link rel="next" type="application/rss+xml" href="https://teletype.in/atom/bartov?offset=10"></link><link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></link><updated>2026-10-28T10:01:33.026Z</updated><entry><id>bartov:65Kit58mzqx</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/65Kit58mzqx?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Ограничение запросов: `rate limiting` vs `request throttling`</title><published>2026-10-27T00:01:03.995Z</published><updated>2026-10-27T14:03:58.570Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img3.teletype.in/files/a2/f0/a2f0f4b5-97fc-4cde-8163-c015075beaac.png"></media:thumbnail><category term="it" label="IT"></category><summary type="html">&lt;img src=&quot;https://img2.teletype.in/files/14/f4/14f4bc35-d76e-4869-846b-22b418dd5df0.png&quot;&gt;В плане перевода этих терминов по отдельности проблем не было — и то, и другое в разных источниках переводилось как что-то вроде «ограничение скорости/числа/частоты запросов».   Но вот они сейчас в одном предложении, и их надо развести, чтобы читатель не запутался. Окей, разберемся, в чем разница.</summary><content type="html">
  &lt;p id=&quot;6vsp&quot;&gt;Встретилось предложение: &lt;/p&gt;
  &lt;blockquote id=&quot;XgHo&quot;&gt;These attacks can be prevented by implementing &lt;strong&gt;rate limiting&lt;/strong&gt;, &lt;strong&gt;request throttling&lt;/strong&gt;, and other techniques to head these attacks off at the pass.&lt;/blockquote&gt;
  &lt;p id=&quot;gUVl&quot;&gt;В плане перевода этих терминов по отдельности проблем не было — и то, и другое в разных источниках переводилось как что-то вроде «&lt;strong&gt;ограничение скорости/числа/частоты запросов»&lt;/strong&gt;. &lt;/p&gt;
  &lt;p id=&quot;kz1W&quot;&gt;Но вот они сейчас в одном предложении, и их надо развести, чтобы читатель не запутался. Окей, разберемся, в чем разница. &lt;/p&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;L6nR&quot;&gt;&lt;strong&gt;Rate limiting&lt;/strong&gt; — это жёсткое административное ограничение, устанавливаемое на сервере. &lt;/p&gt;
  &lt;p id=&quot;Fg2f&quot;&gt;Сервер как бы объявляет клиентскому устройству правило: «&lt;em&gt;У тебя есть лимит — 100 запросов в минуту. Соответственно, 101-й запрос я даже смотреть не стану&lt;/em&gt;». Термин так и переводится: «&lt;strong&gt;ограничение/лимитирование частоты запросов&lt;/strong&gt;». &lt;/p&gt;
  &lt;p id=&quot;hmKF&quot;&gt;Такую защиту ставят от DDoS-атак или в рамках реализации тарифного плана (мой провайдер ИИ-модели часто тормозит меня этим ограничением: типа, посиди, остынь, не шли мне свои запросы слишком часто).&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(236, 74%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;LHKT&quot; class=&quot;m_original&quot;&gt;
      &lt;img src=&quot;https://img2.teletype.in/files/14/f4/14f4bc35-d76e-4869-846b-22b418dd5df0.png&quot; width=&quot;1280&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;WHHK&quot;&gt;&lt;strong&gt;Request throttling&lt;/strong&gt; — а это мягкое ограничение, которое плавно регулирует скорость потока. Тут сервер как бы рефлексирует: «&lt;em&gt;Что-то запросы кучно пошли, ещё немного в таком духе — и я захлебнусь. Отклонять их не буду, но коней надо придержать: пусть постоят в очереди&lt;/em&gt;». &lt;/p&gt;
  &lt;p id=&quot;5KeY&quot;&gt;В итоге сервер искусственно замедляет (притормаживает) обработку запросов, размазывая пиковую нагрузку во времени. Запросы выстраиваются в очередь и выполняются постепенно.&lt;/p&gt;
  &lt;p id=&quot;BDTv&quot;&gt;К этому механизму прибегают, чтобы спасти бэкенд от всплесков трафика и плавно распределить ресурсы системы.&lt;/p&gt;
  &lt;p id=&quot;gH5B&quot;&gt;Переводится как «&lt;strong&gt;троттлинг запросов&lt;/strong&gt;», реже — «&lt;strong&gt;дросселирование&lt;/strong&gt;».&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(236, 74%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;gHVB&quot; class=&quot;m_original&quot;&gt;
      &lt;img src=&quot;https://img3.teletype.in/files/2d/9f/2d9f156c-2511-4a8e-a05a-29b34bc19c3c.png&quot; width=&quot;700&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;

</content></entry><entry><id>bartov:rxCyNkKrKvG</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/rxCyNkKrKvG?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>`Shell command` и `CLI command`: в чём разница и почему она важна</title><published>2026-10-26T23:38:23.558Z</published><updated>2026-10-26T23:38:23.558Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img2.teletype.in/files/1a/f2/1af2f6c9-f967-4f88-8541-c1a092d078cd.png"></media:thumbnail><category term="it" label="IT"></category><summary type="html">&lt;img src=&quot;https://img1.teletype.in/files/4b/1b/4b1ba9bb-fdbb-4aeb-bbb9-d575a4981d34.png&quot;&gt;Спойлер: для многих переведенных мною авторов разницы нет.</summary><content type="html">
  &lt;p id=&quot;3yzc&quot;&gt;Спойлер: для многих переведенных мною авторов разницы нет. &lt;/p&gt;
  &lt;p id=&quot;G3As&quot;&gt;Вот примеры из текущей книги: &lt;/p&gt;
  &lt;blockquote id=&quot;q5YX&quot;&gt;Command injection is similar, except user input is able to execute arbitrary &lt;strong&gt;CLI&lt;br /&gt;commands&lt;/strong&gt; on the system. &lt;/blockquote&gt;
  &lt;blockquote id=&quot;LAjR&quot;&gt;You can use several techniques to defend against these exploits... e.g. using allowlist &lt;strong&gt;shell commands&lt;/strong&gt; or prompts or sandboxing the environment in which &lt;strong&gt;shell commands &lt;/strong&gt;are executed. &lt;/blockquote&gt;
  &lt;blockquote id=&quot;ryB7&quot;&gt;Both of these vulnerabilities can be relevant to MCP servers, especially if your server is used to access a database or execute &lt;strong&gt;CLI commands&lt;/strong&gt;.&lt;/blockquote&gt;
  &lt;p id=&quot;9ers&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;jDUm&quot;&gt;Если не сильно заморачиваться, то в целом речь идёт о некоем чёрном окошечке, в котором моргает курсор и куда можно вбивать команды.&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(236, 74%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;G15u&quot; class=&quot;m_original&quot;&gt;
      &lt;img src=&quot;https://img1.teletype.in/files/4b/1b/4b1ba9bb-fdbb-4aeb-bbb9-d575a4981d34.png&quot; width=&quot;622&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;p id=&quot;y7lS&quot;&gt;А вот если все же вникнуть, то разница есть. Будем разбираться. &lt;/p&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;I8eW&quot;&gt;Для начала надо понять, что такое &lt;strong&gt;shell&lt;/strong&gt;. &lt;/p&gt;
  &lt;p id=&quot;7Jks&quot;&gt;&lt;strong&gt;Shell (оболочка) &lt;/strong&gt;— это интерпретатор команд, который принимает ввод и передаёт его на выполнение ядру или другим программам. Оболочка может выполнять как свои внутренние, встроенные команды, так и запускать сторонние программы по команде. &lt;/p&gt;
  &lt;p id=&quot;qG1K&quot;&gt;Встроенные команды оболочки — это, как правило, команды, которые выполняются внутри самого процесса оболочки. Эти команды могут изменять состояние самого процесса: например, изменить его рабочий каталог, переменные окружения, таблицу функций и т. д. И эти команды — первое, что проверяет оболочка, когда их в ней запускают. Именно тут речь идёт о &lt;strong&gt;shell command&lt;/strong&gt; — командах оболочки.&lt;/p&gt;
  &lt;p id=&quot;tXgO&quot;&gt;А вот запуск из оболочки внешнего файла — например, git, docker или, скажем, python — это явно не встроенные в оболочку команды/инструменты. Это уже будет считаться &lt;strong&gt;CLI command&lt;/strong&gt;.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;zSki&quot;&gt;В этой путанице с точки зрения ИТ, пожалуй, ничего особо страшного нет — ну мало ли, в каком порядке там команды исполняются. А вот с точки зрения ИБ разница более ощутимая: в первом случае компрометируется контроль над всей системой, а во втором — над одним из сторонних файлов/инструментов/утилит внутри системы.&lt;/p&gt;
  &lt;p id=&quot;1nBf&quot;&gt;Конечно, многое зависит от критичности этого стороннего файла, но это уже другая тема. А пока, я надеюсь, как смог объяснил разницу между &lt;strong&gt;shell command&lt;/strong&gt; (команда оболочки, команда интерпретатора) и &lt;strong&gt;CLI command&lt;/strong&gt; (терминальная команда, консольная команда, команда CLI, команда интерфейса командной строки — пардон за тавтологию).&lt;/p&gt;
  &lt;p id=&quot;7SIo&quot;&gt;. &lt;/p&gt;

</content></entry><entry><id>bartov:lZPRiBZhOLx</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/lZPRiBZhOLx?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Роль резиновой уточки в сосудистой хирургии</title><published>2026-10-26T18:43:21.141Z</published><updated>2026-10-26T18:43:21.141Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img1.teletype.in/files/06/42/06426edf-a14e-42c2-90b9-ed76fcbd8a98.png"></media:thumbnail><category term="medicine" label="medicine"></category><tt:hashtag>заметки_на_полях</tt:hashtag><tt:hashtag>учимся_переводить</tt:hashtag><summary type="html">&lt;img src=&quot;https://img3.teletype.in/files/ef/fe/effe9207-d19d-427a-9aeb-1309127bd8a0.png&quot;&gt;Надеюсь, было познавательно.</summary><content type="html">
  &lt;tt-tags id=&quot;Ldz1&quot;&gt;
    &lt;tt-tag name=&quot;заметки_на_полях&quot;&gt;#заметки_на_полях&lt;/tt-tag&gt;
    &lt;tt-tag name=&quot;учимся_переводить&quot;&gt;#учимся_переводить&lt;/tt-tag&gt;
  &lt;/tt-tags&gt;
  &lt;figure id=&quot;E8jk&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/ef/fe/effe9207-d19d-427a-9aeb-1309127bd8a0.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;aznm&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/dd/c8/ddc81eb9-7b2d-4e4f-a51b-02d76d132c49.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;Erlu&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/17/2b/172b6a47-fb0d-4cec-a5e0-41824796d5cf.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;G0Xw&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;ZzIX&quot;&gt;Надеюсь, было познавательно.&lt;/p&gt;
  &lt;p id=&quot;AnJG&quot;&gt;Ваш Евгений Б.&lt;/p&gt;
  &lt;p id=&quot;husD&quot;&gt;~&lt;/p&gt;

</content></entry><entry><id>bartov:Wp-21iW_CYf</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/Wp-21iW_CYf?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Английский в картинках: сonjunctions and punctuation</title><published>2026-10-26T18:38:42.513Z</published><updated>2026-10-26T18:38:42.513Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img2.teletype.in/files/d2/74/d2744436-92b7-40c1-ae42-d91ea30707a7.png"></media:thumbnail><category term="other" label="Other"></category><tt:hashtag>английский_в_картинках</tt:hashtag><summary type="html">&lt;img src=&quot;https://img2.teletype.in/files/dc/3f/dc3f9013-9174-400b-a9b2-47fa25b2c1c8.png&quot;&gt;Надеюсь, было познавательно.</summary><content type="html">
  &lt;tt-tags id=&quot;TW8R&quot;&gt;
    &lt;tt-tag name=&quot;английский_в_картинках&quot;&gt;#английский_в_картинках&lt;/tt-tag&gt;
  &lt;/tt-tags&gt;
  &lt;figure id=&quot;y2Hb&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/dc/3f/dc3f9013-9174-400b-a9b2-47fa25b2c1c8.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;1CN2&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/3b/59/3b59d559-aba7-48f7-8c0b-7b50d53f9d8f.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;8y7p&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/cd/9c/cd9c07dd-03a7-4df9-93e5-1d2175ef5e0f.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;kIQF&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/00/83/00832c15-8da7-41f4-a4fd-5e13d7d4f36d.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;YHJA&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/64/2b/642b6ba4-f23a-405a-a2d1-8240517992b5.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;YeHp&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;KYIQ&quot;&gt;Надеюсь, было познавательно.&lt;/p&gt;
  &lt;p id=&quot;Hw9u&quot;&gt;Ваш Евгений Б.&lt;/p&gt;
  &lt;p id=&quot;7Nwa&quot;&gt;~&lt;/p&gt;

</content></entry><entry><id>bartov:Q5gcg2NDzex</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/Q5gcg2NDzex?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Английский в картинках: предложения и пунктуация</title><published>2026-10-26T18:28:47.357Z</published><updated>2026-10-26T18:28:47.357Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img1.teletype.in/files/49/34/4934cc97-d877-4b82-9b64-9aedce703bf5.png"></media:thumbnail><category term="other" label="Other"></category><tt:hashtag>английский_в_картинках</tt:hashtag><summary type="html">&lt;img src=&quot;https://img1.teletype.in/files/c5/00/c50067ca-80ef-49e4-a1e3-5cf99be8e805.png&quot;&gt;Надеюсь, было познавательно.</summary><content type="html">
  &lt;tt-tags id=&quot;jUAy&quot;&gt;
    &lt;tt-tag name=&quot;английский_в_картинках&quot;&gt;#английский_в_картинках&lt;/tt-tag&gt;
  &lt;/tt-tags&gt;
  &lt;p id=&quot;BUb3&quot;&gt;&lt;/p&gt;
  &lt;figure id=&quot;pBu9&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/c5/00/c50067ca-80ef-49e4-a1e3-5cf99be8e805.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;6dVb&quot;&gt;Надеюсь, было познавательно.&lt;/p&gt;
  &lt;p id=&quot;KCZ4&quot;&gt;Ваш Евгений Б.&lt;/p&gt;
  &lt;p id=&quot;po3H&quot;&gt;~&lt;/p&gt;

</content></entry><entry><id>bartov:_eWKxRZToBw</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/_eWKxRZToBw?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Английский в картинках: причастный оборот</title><published>2026-10-26T18:12:16.335Z</published><updated>2026-10-26T18:23:44.966Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img1.teletype.in/files/48/5b/485b6088-2f35-4e87-8f37-ac632127faba.png"></media:thumbnail><category term="other" label="Other"></category><tt:hashtag>английский_в_картинках</tt:hashtag><summary type="html">&lt;img src=&quot;https://img4.teletype.in/files/fb/b9/fbb9424a-717b-4003-897b-60acb16085ab.png&quot;&gt;</summary><content type="html">
  &lt;tt-tags id=&quot;lyw6&quot;&gt;
    &lt;tt-tag name=&quot;английский_в_картинках&quot;&gt;#английский_в_картинках&lt;/tt-tag&gt;
  &lt;/tt-tags&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(24,  24%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;suIy&quot; class=&quot;m_column&quot;&gt;
      &lt;img src=&quot;https://img4.teletype.in/files/f0/b1/f0b17c04-2020-4d89-9d86-44ed77d14023.png&quot; width=&quot;1000&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(24,  24%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;Rwbs&quot; class=&quot;m_column&quot;&gt;
      &lt;img src=&quot;https://img2.teletype.in/files/d0/d4/d0d4e69a-cbf1-4c5e-b968-06741bb3b082.png&quot; width=&quot;1000&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(24,  24%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;Cpxe&quot; class=&quot;m_column&quot;&gt;
      &lt;img src=&quot;https://img3.teletype.in/files/aa/c7/aac7e93b-d425-460c-b580-56798de52928.png&quot; width=&quot;1000&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(24,  24%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;y9iA&quot; class=&quot;m_column&quot;&gt;
      &lt;img src=&quot;https://img1.teletype.in/files/4a/02/4a02771d-c272-468b-a2a0-e1b40dfdbc32.png&quot; width=&quot;1000&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(24,  24%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;pYVL&quot; class=&quot;m_column&quot;&gt;
      &lt;img src=&quot;https://img3.teletype.in/files/69/3c/693c93f9-dcbe-4eef-9e4a-5becc298423b.png&quot; width=&quot;1000&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;p id=&quot;KF6G&quot;&gt;Источники:&lt;/p&gt;
  &lt;figure id=&quot;HvsD&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/fb/b9/fbb9424a-717b-4003-897b-60acb16085ab.png&quot; width=&quot;1000&quot; /&gt;
  &lt;/figure&gt;
  &lt;ol id=&quot;4lcD&quot;&gt;
    &lt;li id=&quot;Dutq&quot;&gt;&lt;em&gt;THE ELEMENTS OF Style BY WILLIAM STRUNK Jr. with Revisions, an Introduction, and a Chapter on Writing BY E. B. WHITE. COPYRIGHT © 2000, 1979. ALLYN &amp;amp; BACON&lt;/em&gt;&lt;/li&gt;
    &lt;li id=&quot;SyL8&quot;&gt;&lt;em&gt;Ali Dabbagh • Antonio Hernandez Conte Lorraine Lubin Editors Congenital Heart Disease in Pediatric and Adult Patients Anesthetic and Perioperative Management&lt;/em&gt;&lt;/li&gt;
    &lt;li id=&quot;jtAo&quot;&gt;&lt;em&gt;Joep Perk, Peter Mathes, Helmut Gohlke, Catherine Monpère, Irene Hellemans, Hannah McGee, Philippe Sellier, and Hugo Saner,Editors Cardiovascular Prevention and Rehabilitation. © Springer-Verlag London Limited 2007&lt;/em&gt;&lt;/li&gt;
    &lt;li id=&quot;0Kfb&quot;&gt;&lt;em&gt;Complete Java J2EE Questions. JavaEra.com ®&lt;/em&gt;&lt;/li&gt;
  &lt;/ol&gt;
  &lt;p id=&quot;3CEk&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;SM47&quot;&gt;Автор: Мария Соловьева, переводчик БП «Альянс ПРО».&lt;/p&gt;
  &lt;p id=&quot;T84h&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;zjOC&quot;&gt;Надеюсь, было познавательно. Спасибо за внимание.&lt;/p&gt;
  &lt;p id=&quot;wjTs&quot;&gt;Ваш Евгений Б.&lt;/p&gt;
  &lt;p id=&quot;jyQj&quot;&gt;~&lt;/p&gt;

</content></entry><entry><id>bartov:JOwgRSRCnaI</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/JOwgRSRCnaI?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Автоматизируем работу переводчика: разбиваем том на главы, каждую главу в файл</title><published>2026-10-26T17:48:14.609Z</published><updated>2026-10-26T17:48:14.609Z</updated><category term="automation" label="Automation"></category><tt:hashtag>nlp</tt:hashtag><summary type="html">На днях возникла задача — надо было проалайнить книгу (= сделать из книги translation memory), а из доступных инструментов, которые делают автоалайнмент, на руках был только SDL Trados Studio 2021.</summary><content type="html">
  &lt;tt-tags id=&quot;H15c&quot;&gt;
    &lt;tt-tag name=&quot;nlp&quot;&gt;#nlp&lt;/tt-tag&gt;
  &lt;/tt-tags&gt;
  &lt;p id=&quot;9Jgw&quot;&gt;На днях возникла задача — надо было проалайнить книгу (= сделать из книги translation memory), а из доступных инструментов, которые делают автоалайнмент, на руках был только SDL Trados Studio 2021.&lt;/p&gt;
  &lt;p id=&quot;rlhk&quot;&gt;Я распознал через Finereader две книги по 400 страниц — одну на русском, одну на английском — скормил автоалайнеру, и оставил на ночь. Утром прихожу — он еще в раздумьях, где-то до середины дошел и в общем-то вроде как и не завис, но по ощущениям он нифига не алайнит. Ступор какой-то.&lt;/p&gt;
  &lt;p id=&quot;Xfb9&quot;&gt;Провел эксперимент: вырезал ручками по одной главе из каждой книжки, и скормил их алайнеру — через 2 минуты он их проалайнил. Ага, значит, кошечка по имени Традос тупо поперхнулась большим объемом книжки.&lt;/p&gt;
  &lt;p id=&quot;ViTN&quot;&gt;Отсюда вывод, надо скармливать алайнеру книгу главами. Но как это сделать? Ручками? Но там ок. 30 глав в каждой, задолбаюсь. Тут я вспомнил, что мы недавно переводили на эту тему ролик, там этот процесс автоматизировался через Python.&lt;/p&gt;
  &lt;p id=&quot;cVLx&quot;&gt;Привожу здесь код на примере файла alice.txt и разделительного слова CHAPTER:&lt;/p&gt;
  &lt;pre data-lang=&quot;Python&quot; id=&quot;ilUP&quot;&gt;#читаем TXT-файл
with open(&amp;quot;alice.txt&amp;quot;, &amp;quot;r&amp;quot;) as f:
    text = f.read()
#ставим разделительные символы перед найденным разделителем
    formatted_text = text.replace(&amp;quot;CHAPTER&amp;quot;, &amp;quot;=-CHAPTER&amp;quot;)   
#режем по добавленным символам
    split_text = formatted_text.split(&amp;quot;=-&amp;quot;)
#убираем первый кусок, он пустой
    del split_text[0]
#каждый найденный кусок нумеруем, даем название и сохраняем в отдельный файл 
    for i in split_text:
        name = i.split(&amp;quot;\n\n&amp;quot;)
        form_name = name[0].replace(&amp;quot;.&amp;quot;, &amp;quot;_&amp;quot;).replace(&amp;quot; &amp;quot;,
                                                      &amp;quot;_&amp;quot;).replace(&amp;quot;?&amp;quot;, &amp;quot;&amp;quot;)
        print(form_name)
        with open(f&amp;quot;./chapters/{form_name}.txt&amp;quot;, &amp;quot;a+&amp;quot;) as f:
            f.write(i)&lt;/pre&gt;
  &lt;p id=&quot;oV5S&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;8W9V&quot;&gt;Когда у вас в книжке 5 глав, это можно сделать и ручками. Если их по 30-50 в каждом томе — имеет смысл автоматизировать.&lt;/p&gt;
  &lt;p id=&quot;TmAd&quot;&gt;Подробнее см. в видео (ниже) и &lt;a href=&quot;https://colab.research.google.com/drive/1mREH_0gqgfX3mRBqqEqV4TGdIbg5VJuM&quot; target=&quot;_blank&quot;&gt;Google.Colab&lt;/a&gt;.&lt;/p&gt;
  &lt;p id=&quot;nG39&quot;&gt;&lt;/p&gt;
  &lt;figure id=&quot;1crY&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://vk.com/video_ext.php?oid=-72004531&amp;id=456239215&amp;autoplay=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;QTkF&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;7CxM&quot;&gt;Надеюсь, было познавательно. Спасибо за внимание.&lt;/p&gt;
  &lt;p id=&quot;ibfm&quot;&gt;Ваш Евгений Б.&lt;/p&gt;
  &lt;p id=&quot;K5m0&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;6xbT&quot;&gt;~&lt;/p&gt;

</content></entry><entry><id>bartov:sviRCHXdzlA</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/sviRCHXdzlA?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Многоликий &quot;performance&quot;: разбор ИТ-термина</title><published>2026-10-26T16:03:59.447Z</published><updated>2026-10-26T17:31:05.817Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img2.teletype.in/files/d7/2b/d72b3058-2a0d-4c78-b862-e308df941aab.png"></media:thumbnail><category term="it" label="IT"></category><tt:hashtag>заметки_на_полях</tt:hashtag><summary type="html">&lt;img src=&quot;https://img4.teletype.in/files/bb/68/bb6854d3-5127-4a7b-a1b7-d087a700f4de.png&quot;&gt;Про этот термин я уже писал, сейчас решил чуть расширить прошлую свою заметку примерами. 

1. Итак, в ИТ-переводах есть одно капризное слово - performance. Для чистоты эксперимента  возьмем самый понятный пример:</summary><content type="html">
  &lt;tt-tags id=&quot;hbxi&quot;&gt;
    &lt;tt-tag name=&quot;заметки_на_полях&quot;&gt;#заметки_на_полях&lt;/tt-tag&gt;
  &lt;/tt-tags&gt;
  &lt;p id=&quot;S5jd&quot;&gt;Про этот термин я уже &lt;a href=&quot;https://t.me/alliancepro/3599&quot; target=&quot;_blank&quot;&gt;писал&lt;/a&gt;, сейчас решил чуть расширить прошлую свою заметку примерами и новыми версиями переводов. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1. &lt;/strong&gt;Итак, в ИТ-переводах есть одно капризное слово - &lt;strong&gt;performance&lt;/strong&gt;. Для чистоты эксперимента  возьмем самый понятный пример:&lt;/p&gt;
  &lt;blockquote id=&quot;2Aji&quot;&gt;&lt;em&gt;Pagination allows servers to return a subset of a response to the requesting client along with a token that represents the current position in the overall response data.&lt;br /&gt;This utility can help improve &lt;strong&gt;performance &lt;/strong&gt;when dealing with large datasets both&lt;br /&gt;locally and remotely.&lt;/em&gt;&lt;/blockquote&gt;
  &lt;p id=&quot;DzKy&quot;&gt;Суть отрывка для ИТ-переводчика прозрачна: пагинация экономит оперативную память и снижает нагрузку на сеть (сокращается latency/задержка). Кастомный транспорт оптимизирует утилизацию процессора или скорость передачи пакетов. В обоих случаях мы оцениваем систему метриками «быстрее/меньше ресурсов», поэтому пишем «&lt;strong&gt;производительность&lt;/strong&gt;» или «&lt;strong&gt;быстродействие&lt;/strong&gt;» — классический перевод этого термина. &lt;/p&gt;
  &lt;figure id=&quot;diDE&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/bb/68/bb6854d3-5127-4a7b-a1b7-d087a700f4de.png&quot; width=&quot;580&quot; /&gt;
  &lt;/figure&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;SJNE&quot;&gt;&lt;strong&gt;2. &lt;/strong&gt;Но так бывает далеко не всегда. Возьмем парочку других примеров: &lt;/p&gt;
  &lt;blockquote id=&quot;XS7Q&quot;&gt;&lt;em&gt;...you need to balance token efficiency with clarity and context that enables optimal tool-choice &lt;strong&gt;performance&lt;/strong&gt;...&lt;/em&gt;&lt;/blockquote&gt;
  &lt;blockquote id=&quot;hIOT&quot;&gt;&lt;em&gt;Like people, LLMs work best when they have a few examples to work from. This is called few-shot learning, a powerful technique for improving the accuracy and &lt;strong&gt;performance &lt;/strong&gt;of LLMs.&lt;/em&gt; &lt;/blockquote&gt;
  &lt;p id=&quot;yFq4&quot;&gt;Здесь надо иметь либо очень богатое воображение, либо чугуннобетонный пофигизм на смысл перевода, чтобы перевести этот performance как &lt;strong&gt;производительность&lt;/strong&gt;. &lt;/p&gt;
  &lt;p id=&quot;VDdh&quot;&gt;Смысл здесь в том, что если у модели падает &lt;strong&gt;tool-choice performance&lt;/strong&gt;, это НЕ значит, что она начинает &lt;strong&gt;медленнее &lt;/strong&gt;генерировать токены. Это значит, что она начинает&lt;strong&gt; тупить и ошибаться&lt;/strong&gt; — выбирать не тот инструмент или путать аргументы. Следовательно, речь идет о &lt;strong&gt;«&lt;/strong&gt;точности и &lt;strong&gt;качестве работы &lt;/strong&gt;LLM&lt;strong&gt;»&lt;/strong&gt; или об &lt;strong&gt;«эффективность выполнения &lt;/strong&gt;задач&lt;strong&gt;». &lt;/strong&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;Hk7F&quot;&gt;3. А вот извольте взглянуть на этот примерчик: &lt;/p&gt;
  &lt;blockquote id=&quot;FPhr&quot;&gt;&lt;em&gt;You will have to consider what you really want out of your prompt and evaluate its &lt;strong&gt;performance &lt;/strong&gt;with different example sets across many runs.&lt;/em&gt;&lt;/blockquote&gt;
  &lt;p id=&quot;9Jx0&quot;&gt;Очевидно, что промпт не имеет «производительности» (он не работает быстрее или медленнее). Промпт сам по себе тоже не работает, это лишь инструкция для LLM. Таким образом, мы тут говорим о том, насколько стабильно (&lt;em&gt;across many runs&lt;/em&gt;) данный промпт приводит к нужному результату. Здесь performance — это &lt;strong&gt;«эффективность»&lt;/strong&gt; или &lt;strong&gt;«результативность»&lt;/strong&gt; или «&lt;strong&gt;стабильность&lt;/strong&gt;» промпта.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;2juK&quot;&gt;4. И приведу еще один примерчик, который вроде как и пересекается по смыслу с примерами выше,  но все же немного стоит особняком: &lt;/p&gt;
  &lt;blockquote id=&quot;BTL1&quot;&gt;&lt;em&gt;You can also use tricks to improve your prompts that are model specific, but they may not necessarily reduce &lt;strong&gt;performance &lt;/strong&gt;when used on other models. &lt;/em&gt;&lt;/blockquote&gt;
  &lt;p id=&quot;lIzq&quot;&gt;На первый взгляд кажется, что это косплей 3-го примера — и там, и там мы оцениваем как работает промпт. Но есть нюанс. &lt;/p&gt;
  &lt;p id=&quot;ysz6&quot;&gt;В 3-м примере мы тестируем один конкретный промпт и замеряем его &lt;strong&gt;«стабильность» во времени&lt;/strong&gt;. В 4-м примере мы берем стабильный для одной модели промпт и запускаем его на другой модели. &lt;/p&gt;
  &lt;p id=&quot;QbpU&quot;&gt;Но другая модель обладает иной архитектурой. Хак, который заставлял, скажем, Claude выдавать шедевры, в чужой модели может вызвать ступор, галлюцинации или игнорирование системных инструкций. И фраза &amp;quot;reduce performance&amp;quot; означает не то, что промпт станет менее &amp;quot;эффективным&amp;quot; в плане выполнения задачи или менее &amp;quot;стабильным&amp;quot;, а то, что чужая модель начнет ломаться и выдавать некорректные/неадекватные ответы. &lt;/p&gt;
  &lt;p id=&quot;QzsW&quot;&gt;То есть речь идет о деградации базового поведения модели. Соответственно, здесь performance будет уместно переводить как &amp;quot;качество работы&amp;quot;, &amp;quot;адекватность ответов&amp;quot; или &amp;quot;корректность поведения&amp;quot;. &lt;/p&gt;
  &lt;p id=&quot;k6Sx&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;Oj2K&quot;&gt;Надеюсь, было познавательно. Спасибо за внимание.&lt;/p&gt;
  &lt;p id=&quot;mMp3&quot;&gt;Ваш Евгений Б.&lt;/p&gt;
  &lt;p id=&quot;Cj9s&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;OS6k&quot;&gt;~&lt;/p&gt;

</content></entry><entry><id>bartov:FQCIjjvSh-7</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/FQCIjjvSh-7?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Двоякий перевод 'completion' в контексте ИИ-ассистентов и MCP</title><published>2026-10-23T18:27:00.883Z</published><updated>2026-10-23T18:29:03.252Z</updated><category term="it" label="IT"></category><summary type="html">&lt;img src=&quot;https://img4.teletype.in/files/b7/e3/b7e3ad6d-2798-455a-b69e-a99deca52238.png&quot;&gt;В контексте ИИ-ассистентов есть такой термин — completion. Посмотрите на эти два отрывка:</summary><content type="html">
  &lt;p id=&quot;ULj3&quot;&gt;В контексте ИИ-ассистентов есть такой термин — &lt;strong&gt;completion&lt;/strong&gt;. Посмотрите на эти два отрывка: &lt;/p&gt;
  &lt;blockquote id=&quot;xIqg&quot;&gt;Sampling allows your server to request chat &lt;u&gt;completions &lt;/u&gt;from the client application’s language model, lending your server the capability to use the client application’s language model to augment the functionality of your tools.&lt;/blockquote&gt;
  &lt;p id=&quot;D985&quot;&gt;&lt;/p&gt;
  &lt;blockquote id=&quot;oULK&quot;&gt;In the &lt;u&gt;completion &lt;/u&gt;message lifecycle, as the user fills in a prompt or resource-&lt;br /&gt;template argument, the client sends completion requests to the server, and each response narrows the suggestion list until the user selects a value. &lt;/blockquote&gt;
  &lt;p id=&quot;MbrG&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;wJMv&quot;&gt;Проблема с переводом этого термина в том, что специалисты используют его взаимозаменяемо с двумя другими терминами — &lt;strong&gt;chat completion&lt;/strong&gt; и &lt;strong&gt;autocompletion&lt;/strong&gt;. &lt;/p&gt;
  &lt;p id=&quot;mfwO&quot;&gt;А между собой эти термины различаются принципиально. Это два абсолютно разных механизма в работе ИИ-ассистентов и решают они противоположные задачи. &lt;/p&gt;
  &lt;hr /&gt;
  &lt;h2 id=&quot;Uigl&quot;&gt;Первое прочтение&lt;/h2&gt;
  &lt;p id=&quot;pEuK&quot;&gt;Думаю, большинству моих читателей такое явление, как &lt;strong&gt;chat completion&lt;/strong&gt;, известно весьма хорошо. Это не что иное, как сообщение в чат-боте (в оранжевой рамке).&lt;/p&gt;
  &lt;figure id=&quot;iBI7&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/b7/e3/b7e3ad6d-2798-455a-b69e-a99deca52238.png&quot; width=&quot;561&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;qYt2&quot;&gt;Суть этого &lt;strong&gt;completion &lt;/strong&gt;(то есть &lt;strong&gt;chat completion&lt;/strong&gt;) в том, что пользователь делает запрос к языковой модели, а она в ответ генерирует ответ. Поэтому перевод здесь будет, согласно хабру, «&lt;strong&gt;генерация ответа/текста&lt;/strong&gt;».&lt;/p&gt;
  &lt;p id=&quot;VPOg&quot;&gt;&lt;/p&gt;
  &lt;h2 id=&quot;faiC&quot;&gt;Второе прочтение &lt;/h2&gt;
  &lt;p id=&quot;61Lm&quot;&gt;Допустим, вы работаете с ИИ-ассистентом и вам нужно заполнить аргументы в шаблоне промптов — подставить туда значения переменных. Вы начинаете набирать эти значения или просто жмете Tab и ваш ассистент (а точнее, его клиентская часть, которая общается с MCP-сервером) запрашивает варианты подсказок (suggestions) у MCP-сервера, чтобы не ошибиться и не опечататься.&lt;/p&gt;
  &lt;figure id=&quot;a0gz&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/45/56/45569255-457f-415e-b628-db7c86629380.png&quot; width=&quot;418&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;NNob&quot;&gt;Вот эти подсказки и будут &lt;strong&gt;autocompletions/completions. &lt;/strong&gt; На русский переводится как «автодополнения», «подсказки», реже — «комплишены». &lt;/p&gt;

</content></entry><entry><id>bartov:kMh5FmlQ-66</id><link rel="alternate" type="text/html" href="https://teletype.in/@bartov/kMh5FmlQ-66?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=bartov"></link><title>Почему 'manual notification'  — это не про руки</title><published>2026-10-22T22:34:48.712Z</published><updated>2026-10-22T22:49:03.221Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img3.teletype.in/files/65/3a/653a4fb5-7310-4c57-b7e1-1d279387d0ae.png"></media:thumbnail><category term="it" label="IT"></category><summary type="html">&lt;img src=&quot;https://img2.teletype.in/files/11/21/11210e31-0951-46e1-97bf-3c99842e7e4f.png&quot;&gt;Есть такой контекст.</summary><content type="html">
  &lt;p id=&quot;QKzB&quot;&gt;Есть такой контекст.&lt;/p&gt;
  &lt;p id=&quot;Mcfv&quot;&gt;В переводимой сейчас мною книге речь идёт о том, что вы разработчик MCP-сервера (это сервер который общается с вашим ИИ-агентом и предоставляет ему контексты — см. схемку ниже). &lt;/p&gt;
  &lt;figure id=&quot;BGWl&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/11/21/11210e31-0951-46e1-97bf-3c99842e7e4f.png&quot; width=&quot;1200&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;m225&quot;&gt; У вас есть всякие инструменты, которыми можно воспользоваться для взаимодействия с хостом. Вот в этих предложениях они и перечисляются:&lt;/p&gt;
  &lt;blockquote id=&quot;LfPt&quot;&gt;The major utilities are completions, the context object, logging, progress notifications, and pagination. Other utilities are also available to you as a server developer, like server icons and &lt;strong&gt;manual notifications&lt;/strong&gt;.&lt;/blockquote&gt;
  &lt;p id=&quot;bL24&quot;&gt;В целом вроде всё укладывается в логику: вы можете слать в чат-бот клиента подсказки, логировать общение, сообщать о прогрессе выполнения запроса, делить вывод на страницы (пагинация). В общем, всё путём — кроме последних двух слов: &lt;strong&gt;manual notifications&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;pZ3N&quot;&gt;&lt;strong&gt;Manual &lt;/strong&gt;- это обычно руками. А руками — это как? Вот сижу я, разработчик или админ на сервере, в сервер летят тысячи запросов, и я тут вдруг решил кому-то отправить уведомление вручную? Нахрена?&lt;/p&gt;
  &lt;p id=&quot;pFKs&quot;&gt;• • •&lt;/p&gt;
  &lt;p id=&quot;dkJA&quot;&gt;Недолгие раскопки привели меня к тому, что &lt;strong&gt;manual &lt;/strong&gt;здесь — вообще не про манипуляции руками.&lt;/p&gt;
  &lt;p id=&quot;GU8r&quot;&gt;Дело в том, что MCP-сервер подавляющее большинство разных уведомлений выполняет в автоматическом режиме, и эти уведомления у него заложены по умолчанию, из коробки.&lt;/p&gt;
  &lt;p id=&quot;kMaV&quot;&gt;Но я как разработчик могу наделать ещё и своих уведомлений — кастомных, которые мой сервер может отправлять пользователю, не дожидаясь от него запроса. Типа «&lt;strong&gt;У вас закончились токены&lt;/strong&gt;» или «&lt;strong&gt;Мы выкатили апдейт&lt;/strong&gt;».&lt;/p&gt;
  &lt;p id=&quot;7HAl&quot;&gt;Вот эти кастомные уведомления и будут &lt;strong&gt;manual notifications&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;apjt&quot;&gt;Получается, никакие они не ручные, а вполне себе автоматические. Просто источник автоматики — не дефолтовый конфиг, а ручки программиста, которыми он делает дополнительную автоматику.&lt;/p&gt;

</content></entry></feed>