Я сталкиваюсь с некоторыми ошибками при использовании Discourse AI. Вот ситуация:
Сначала давайте рассмотрим правильный пост, чтобы показать, что проблема не в моей конфигурации и всё работает так, как я планировал.
Базовый язык моего сайта — упрощённый китайский, и доступно ещё 9 языков.
Этот пост «New post test 0 translation» отображается нормально.
Однако некоторые отдельные посты работают некорректно. Например:
Пост «About ‘Image Library’ category». Исходный пост был опубликован на упрощённом китайском (он был автоматически создан при создании категории).
Но в результатах перевода исходный упрощённый китайский снова переведён как «zh_CN», вместо того чтобы быть переведённым на английский.
В выпадающем списке я не могу добавить отдельный перевод для английского языка.
Однако в моих глобальных настройках английский (США) уже добавлен корректно.
Я отключил кэш CDN и несколько раз очистил кэш локального браузера.
Это исключает кэширование как причину проблемы.
Мою базовую конфигурацию также можно исключить, так как на первом изображении показано правильное поведение.
Я не понимаю, почему возникает эта проблема. Как её исправить?
Моя версия Discourse: 3.6.0.beta1-dev(b8e86ceb23)
Операционная система сервера: Debian 12.12
Я протестировал это локально с использованием последних версий браузеров Chrome и Opera.
Ссылка на правильный случай: https://openttc.com/t/topic/61
Ссылка на неправильный случай: https://openttc.com/t/topic/58
Это не ошибка. Поскольку язык по умолчанию для описаний всех категорий (созданных системой) — английский (En), независимо от того, что вы вводите, пост по умолчанию считается английским. Поэтому перевод не активируется.
Если пост изначально написан на «китайском», система должна определить его как «zh_CN». Вы можете увидеть определённый язык в обычном редакторе (не в редакторе перевода) рядом с иконкой .
Да. Он ошибочно распознан как en, а не zh_CN. Я проверил и обнаружил, что все сообщения с описанием категорий, созданные системой, распознаются как en, даже если они написаны на китайском языке.
Новый вопрос: поддерживает ли страница FAQ несколько языков? Где следует добавлять переводы?
Это также может быть связано со временем. Если категории были созданы до переключения языка сайта, то языки тем в этих категориях могли остаться английскими.
В таком случае вы можете перейти к первому сообщению в теме каждой категории, открыть редактор и переключить их на китайский язык.
Я создал новую категорию 6 минут назад: https://openttc.com/t/topic/66
Затем я ничего не делал, ожидая, пока сработает перевод.
После этого я получил пост на китайском языке, который был ошибочно распознан как английский.
Интересно, можете ли вы выполнить этот запрос к эксплореру данных?
-- [params]
-- integer :topic_id = 66
SELECT
a.id,
a.created_at,
a.response_tokens,
(REGEXP_MATCH(a.raw_response_payload, '"text": "([^"\\]+)"'))[1] AS llm_detected_locale,
a.raw_response_payload
FROM ai_api_audit_logs a
JOIN posts p ON p.id = a.post_id AND p.deleted_at IS NULL
LEFT JOIN topics t ON t.id = a.topic_id AND t.deleted_at IS NULL
WHERE t.id = :topic_id
AND p.post_number = 1
AND a.feature_name = 'translation'
AND a.response_tokens < 5
Это должно показать, что именно возвращает LLM.
Если в столбце llm_detected_locale мы видим значение “en”, я подозреваю, что промпты вашего сайта для определения локали требуют изменения, либо вы можете использовать более подходящий LLM (возможно, qwen?)
Здравствуйте. В итоге я не решил эту проблему, но она не имеет большого значения.
Наиболее точное описание проблемы звучит так: когда я создаю новую категорию, автоматически сгенерированная системой тема «О категории» по умолчанию определяется как en. Хотя её текстовое содержание действительно на упрощённом китайском языке, при открытии темы она определяется как английская, и мне приходится менять это вручную.
Не уверен, связано ли это с настройками моего файла app.yml?