Инфраструктура перевода для эра агента
Большинство API для перевода были разработаны в то время, когда «перевод» означал, что человек вставлял текст в веб-форму. FluentC был создан для того, чем сейчас является перевод: агента, вызывающего API тысячи раз в час, в середине рабочего процесса, ожидающего ответа до того, как пользователь заметит.
Это изменение меняет всё внутри API — как работает кэширование, как обрабатываются пакеты, как структурирована ценовая политика, как ведут себя ограничения по скорости. Мы перестроили стек вокруг этого.
Один продукт. Несколько движущихся частей. Вот экскурсия.
Каждый раздел содержит ссылку на более подробную страницу, если вы хотите узнать всю историю.
Один конечный пункт, три формата ввода, один UUID для аутентификации.
POST /ai_agent/translate обрабатывает текст, HTML и JSON. Вы выбираете формат ввода, целевой язык и хотите ли вы получить ответ синхронно или в виде пакетной обработки. Это вся площадь поверхности.
Аутентификация — это один UUID в заголовке Authorization. Обмен токенами не требуется, клиентские библиотеки не нужны для начала работы. curl работает. n8n работает. Инструмент LangChain работает. Что бы ты ни держал, работает.
curl -X POST https://api.fluentc.io/ai_agent/translate \ -H "Authorization: 4f3a-uuid-...-9c2e" \ -H "Content-Type: application/json" \ -d '{ "input_format": "json", "target_language": "es", "mode": "sync", "content": { "title": "Hello", "body": "Welcome" } }' # 204ms · 200 OK { "translation": { "title": "Hola", "body": "Bienvenido" }, "target_language": "es", "tm_hit": false, "request_id": "tx_8f3a72c4" }
Когда агент находится в середине разговора и ему нужен ответ прямо сейчас.
Синхронный запрос, перевод текста в ответе, без опроса.
За сценой находится кэш, адресованный по содержимому, с ключом на SHA256(target_language + input)Второй раз, когда та же строка проходит, вы полностью пропускаете модель — тот же перевод, тот же ключ, более быстрый ответ.
Это важнее, чем кажется на первый взгляд. Многоязычный чатбот, отвечающий привет будет постоянно обращаться к этому кэшу на двенадцати языках
Когда у вас есть 50 000 строк, и вам нужно все сразу.
Отправьте задание, получите а job_id Назад, опрос для результатов, когда будете готовы. Подходит для Google Таблиц, каталога продуктов, справочника JSON-файлов i18n — для всего.
JSON обрабатывается правильно: вложенные структуры обходятся, каждое строковое значение переводится независимо и параллельно, и исходная форма восстанавливается в конце. Ключи остаются ключами. Структура остается структурой.
То же самое job_id безопасно голосовать вечно — это детерминированный хеш вашего ввода, не случайный билет. Повторно отправьте тот же контент, и вы получите тот же идентификатор задания (job_id) и тот же закэшированный результат.
Заплатите один раз за «Добавить в корзину». Навсегда.
Память переводов — это база данных переводов, за которые вы уже заплатили. В следующий раз, когда та же строка пройдет, вы не платите снова — и ответ будет быстрее, потому что он не обращается к модели.
Большинство API для перевода взимают плату за каждый символ каждый раз. Мы не делаем этого. Для каталогов электронной коммерции, поддержки макросов и любых продуктов с повторяющимися строками именно здесь достигается большая часть экономии.
Вы также можете перезаписать конкретные переводы для каждого сайта когда вам нужен другой рендеринг, отличный от стандартного модели Кэш учитывает ваши переопределения.
Каталог, который вы ожидаете, ограниченный в соответствии с агентом, который спрашивает.
Основные европейские языки, основные азиатские языки, арабский, иврит, хинди и длинный хвост за ними.
Список кэшируется и доступен по адресу GET /ai_agent/languages, ограничено тем, что вы включили в своем агенте.
Добавляйте или удаляйте языки на своей панели управления. У каждого агента есть свой собственный набор разрешенных — поэтому агент Shopify, переводящий на десять языков, и внутренний агент поддержки, переводящий на три, могут находиться в одном аккаунте.
Пять вещей, которые стоит знать, если вы оцениваете.
Идентичный ввод + целевой язык — это попадание в кэш. Нет неожиданных "нечетких совпадений", нет оплаты за вызов при повторных строках.
Повторная отправка той же партии данных возвращает тот же job_id. Идемпотентный по замыслу.
Фоновые задания на перевод повторяются при тайм-аутах модели (5 попыток, экспоненциальное увеличение задержки) и ограничениях по скорости (10 попыток, с учетом Retry-After). Вам не нужно строить это самостоятельно.
Документ с 200 строковыми значениями не выполняет 200 последовательных вызовов модели — он распыляется и собирается обратно.
Весь API доступен через curl. SDK существуют, если вы хотите их; они не являются обязательными.
Спецификация OpenAPI опубликована по адресу /ai_agent/swagger.yml и интерактивные документы по /ai_agent/docs.