Нейросеть для перевода научных статей: термины, формулы, ссылки

Научный текст ломается там, где обычный перевод проходит гладко: формулы, термины, ссылки. Показываем конвейер с защитой формул, глоссарием и проверками и считаем, сколько он стоит.

5 мин · · автоматизация · разработка

Нейросеть для перевода научных статей справляется с гладким текстом хорошо, а вот с формулами, ссылками и терминами возникают проблемы: символ потерялся, номер источника сдвинулся, один и тот же термин переведён тремя способами. Решается это не выбором «самой умной» модели, а аккуратным конвейером вокруг неё: подготовка текста, защита формул, словарь терминов, проверки на выходе. Ниже такой конвейер с кодом и расчётом стоимости. Он подходит и для запросов вроде «перевод pdf через нейросеть», если сначала правильно достать из PDF текст.

Что ломается при переводе научного текста

  • Формулы. Модель может «починить» формулу, поменять индекс или переписать запись другими символами.
  • Ссылки и номера. [12], \cite{smith2020}, «Table 3», «Eq. (7)» должны остаться на своих местах.
  • Термины. Один и тот же английский термин в разных местах получает разные русские эквиваленты.
  • Числа и единицы. Десятичная точка превращается в запятую, и это нормально, а вот потерянная цифра нет.
  • Структура. Заголовки, подписи к рисункам, список литературы.

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

Шаг 1. Получите чистый текст

Лучший вариант, если у вас есть исходники LaTeX (для статей на arXiv их можно скачать): формулы там уже записаны текстом. Если есть только PDF, достаньте текст утилитой pdftotext из пакета poppler:

bash
pdftotext -layout paper.pdf paper.txt

Для двухколоночных статей порядок строк может перемешаться, а формулы часто превращаются в мусор. Тогда сложные страницы лучше отдать модели с поддержкой изображений: как перевести страницы в картинки и отправить их в запрос, описано в статье как распознать PDF нейросетью.

Шаг 2. Защитите формулы и ссылки

Самый надёжный приём: заменить формулы и ссылки на метки до перевода и вернуть после. Модель переводит только текст, а то, что нельзя трогать, она вообще не видит.

bash
import re

MATH = re.compile(r"\$\$.+?\$\$|\$[^$\n]+?\$|\\\[.+?\\\]", re.S)
CITE = re.compile(r"\\cite[tp]?\{[^}]*\}|\[\d+(?:[,–-]\s*\d+)*\]")

def protect(text: str):
    store = {}

    def sub(m):
        key = f"⟦{len(store)}⟧"
        store[key] = m.group(0)
        return key

    text = MATH.sub(sub, text)
    text = CITE.sub(sub, text)
    return text, store

def restore(text: str, store: dict) -> str:
    for key, value in store.items():
        text = text.replace(key, value)
    return text

Регулярные выражения рассчитаны на типичный LaTeX и нумерованные ссылки; для вашего формата их придётся подправить. Метки вида ⟦12⟧ в промпте нужно объяснить модели: «копируй без изменений».

Шаг 3. Заведите глоссарий

Терминологический словарь решает проблему «три перевода одного термина». Сначала попросите модель выписать из текста кандидатов, затем проверьте и поправьте их сами или с коллегой из области. Получится список вроде:

bash
attention head — голова внимания
fine-tuning — дообучение
ablation study — исследование с отключением компонентов

Глоссарий вставляется в системное сообщение каждого запроса. Если термина в нём нет, пусть модель оставляет английский оригинал в скобках при первом упоминании: это сразу показывает спорные места.

Шаг 4. Переводите по разделам и проверяйте на выходе

Длинная статья помещается в контекст целиком (у моделей Claude и GPT из нашего каталога он 1M токенов), но переводить лучше по разделам: так проще проверять и повторять. Пример на OpenAI SDK:

bash
from openai import OpenAI

client = OpenAI(base_url="https://api.zukko.pro/v1", api_key="fetch_ваш_ключ")

SYSTEM = """Ты переводишь научный текст с английского на русский.
- Метки вида ⟦12⟧ — формулы и ссылки. Копируй их без изменений на тех же местах.
- Термины переводи строго по глоссарию. Если термина нет, оставь оригинал в скобках при первом упоминании.
- Ничего не добавляй, не пропускай и не сокращай. Числа и единицы не меняй.
Глоссарий:
{glossary}"""

def translate(chunk: str, glossary: str) -> str:
    r = client.chat.completions.create(
        model="claude-sonnet-5-5",
        messages=[
            {"role": "system", "content": SYSTEM.format(glossary=glossary)},
            {"role": "user", "content": chunk},
        ],
    )
    return r.choices[0].message.content

Машинные проверки, которые стоит запускать на каждом разделе:

bash
import re
from collections import Counter

def labels_ok(src: str, out: str) -> bool:
    return Counter(re.findall(r"⟦\d+⟧", src)) == Counter(re.findall(r"⟦\d+⟧", out))

def numbers(text: str) -> Counter:
    text = re.sub(r"⟦\d+⟧", "", text)
    return Counter(n.replace(",", ".") for n in re.findall(r"\d+(?:[.,]\d+)?", text))

def numbers_ok(src: str, out: str) -> bool:
    return numbers(src) == numbers(out)

Если метки или числа не совпали, раздел переводится заново, а при повторной неудаче уходит на ручную проверку. Эти проверки ловят потери, но не смысловые ошибки: для них нужен человек.

Шаг 5. Проверка смысла

  1. Выборочное чтение специалистом. Абстракт, выводы и разделы с ключевыми утверждениями читает человек, знающий область.
  2. Обратный перевод. Переведите русский текст обратно на английский другой моделью и сравните с оригиналом: расхождения подсветят места, где смысл поехал. Это подсказка, а не доказательство.
  3. Сверка списка литературы. Названия работ в списке не переводите, оставляйте как в оригинале.
  4. Единообразие. Поиском по тексту проверьте, что термины из глоссария везде переведены одинаково.

Сколько стоит перевод статьи

Формула: стоимость = вход × цена входа / 1 000 000 + выход × цена выхода / 1 000 000. Допущение для примера: исходный текст 20 000 токенов; русский перевод 25 000 токенов (русский обычно длиннее в токенах, фиксированного коэффициента мы не берём, замерьте на своём тексте через count_tokens); глоссарий и инструкции по 1 500 токенов в каждом из 10 запросов, то есть 15 000. Итого вход 20 000 + 15 000 = 35 000, выход 25 000. Цены Zukko на 18 октября 2026, $ за 1M токенов:

  • claude-sonnet-5-5 (0.4 / 2): $0.4 × 0.035 + $2 × 0.025 = $0.014 + $0.05 = $0.064. По официальным ценам (2 / 10): $2 × 0.035 + $10 × 0.025 = $0.07 + $0.25 = $0.32.
  • claude-opus-5-5 (0.8 / 4): $0.8 × 0.035 + $4 × 0.025 = $0.028 + $0.10 = $0.128.
  • gpt-6.1-sol (0.27 / 1.32): $0.27 × 0.035 + $1.32 × 0.025 = $0.00945 + $0.033 = $0.04245.
  • deepseek-v4.1-flash (0.013 / 0.038): $0.013 × 0.035 + $0.038 × 0.025 = $0.000455 + $0.00095 = $0.001405.

Модель мы не рекомендуем по качеству перевода: для специальной терминологии дешёвую модель обязательно сравните с более сильной на одном и том же отрывке вашей статьи. Индекс силы (Intelligence Index, Artificial Analysis) у перечисленных моделей: 48, 58, 52 и 39 соответственно. Обратный перевод для проверки примерно удваивает расход. Цены меняются — актуальные отдаёт GET https://api.zukko.pro/v1/models. Подробнее про API — chat completions. Если переводите много файлов, смотрите перевод текстов через API: пайплайн для больших объёмов.

Ключ создаётся в кабинете. Баланс в долларах пополняется от $1: СБП (платёжная страница добавляет 8,5% сверху), криптой или картой MasterCard.

Частые вопросы

Можно ли просто загрузить PDF в нейросеть?

Через API проще работать с текстом или картинками страниц. Для PDF с обычным текстовым слоем сначала извлеките текст, для сканов и сложных формул используйте модель с поддержкой изображений.

Как не потерять формулы?

Заменяйте их метками до перевода и возвращайте после, а затем сверяйте число меток в исходнике и результате.

Достаточно ли перевода нейросетью для публикации?

Нет. Черновик нужно вычитать специалисту по теме, а требования издателя к машинному переводу проверить отдельно.

Какую модель взять?

Начните с недорогой, прогоните один и тот же отрывок на двух-трёх моделях и сравните термины и точность. Мы не утверждаем, что какая-то из них переводит науку лучше.

zukko

Платите в 25×
меньше

за Claude Code & ChatGPT

Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.

Нейросеть для перевода научных статей и PDF · Zukko