IB
Aʟᴇx
Более современный подход - использовать библиотеку для локализации доступную для твоего языка программирования.
Например, для Go можно взять: https://github.com/nicksnyder/go-i18n
Для Python: https://pypi.org/project/python-i18n/
Aʟᴇx
Банальный пример:
if (currentLanguage == russian) {
MSG_SELECT_BAG = "Выбрать сумку"
}
IB
Aʟᴇx
Aʟᴇx
Я думаю, что вряд ли словарь будет очень большим и не поместится в оперативную память
yopp
IB
yopp
(Spoiler alert: не будет, а если и будет, то это не будет никакой проблемой)
Aʟᴇx
И я думаю, что лучше его держать в оперативаной памяти, чем на диске, ради отзывчивости приложения
Aʟᴇx
translator bot
Я не думаю, что данные в таком формате подходят для переводчика
Aʟᴇx
Нельзя просто так хранить переводы как ключ-значение
yopp
translator bot
You are using one to talk in this group or you are writing one?
IB
yopp
Then use one that is standard or wildly accepted for your language
IB
Aʟᴇx
yopp
Localization database size is not an issue. There is no need to optimize for a problem you don’t have.
yopp
Never ever. Spend your energy on delivering your thing instead.
yopp
Anyway, we have English speaking group @mongo_db
IB
Why not map?
because i have already writen translation of words in mongo db (
yopp
If you are not going to speak Russian here, then go there, otherwise it’s rude to the local community.
IB
yopp
Не нужно использовать для этого монгу. Зачем?
yopp
В вашем языке 100% есть готовое простое решение
IB
Aʟᴇx
IB
Aʟᴇx
yopp
yopp
Вы изобретаете велосипед
IB
yopp
Вместо того чтоб решать основную проблему
Aʟᴇx
Какую логику?
Я думаю, имеется в виду, что если ты пишешь логику (код), то это тебя обучает
IB
yopp
Пишите логику которая двигает вас вперёд
Aʟᴇx
Я попробую Спасибо
А какая у тебя конечная цель - изучить монгу или сделать локализацию?
yopp
А не изобретайте велосипед
IB
IB
yopp
Который делает что?
IB
yopp
Вот и делаете магазин
yopp
А не библиотеку для переводов
Aʟᴇx
Онлайн шоп
Тогда в монге тебе нужно добавить коллекцию пользователей, заказов, товаров и так далее, но не перевод
yopp
Это анти-скил делать ненужную фигню, вместо продукта
IB
yopp
Велосипеды изобретают в том случае, когда затраты на его изобретение покроются дополнительным доходом. Или когда это хобби
yopp
Фокус научиться держать
yopp
Делаете магазин? Делаете магазин
yopp
Если вы хотите зарабатывать денег, научитесь доставлять результат
yopp
За минимальное время и деньги
yopp
А это значит что в первую очередь лучше уметь интегрировать существующие решения, чем изобретать свои. Своё решение это всегда ОЧЕНЬ дорого и ОЧЕНЬ долго
IB
yopp
yopp
Но тоже скилл, да
IB
Еще один вещь , translator bots use db or no ? Интересно
yopp
Нет, перевод это статистический анализ
yopp
Или как сейчас модно говорить тупыми словами: ML/AI
IB
IB
yopp
IB
yopp
В 2019 там хранят датасеты для анализа и метрики
yopp
Сам перевод это матричные умножения уже достаточно давно
Aʟᴇx
Да, я не работал в переводчиках, просто хотел сказать, что хранилище в любом случае есть, но то, как с ним работают отличается от обычного интернет-магазина с монгой
yopp
Засунули в word2vec, сделали фрейм из сотни векторов и дали на вход модели, на выходе получили набор векторов перевода, из них восстановили перевод
IB
Спасибо вам
IB
Я иду докончить бота , как-нибудь вам написать , вы много знаете и приятно общатся
yopp
yopp
И какая-то баблайка в которую падает статистика качества переводов (та самая заветная кнопочка ‘помочь улучшить перевод’) которую иногда как-тот немного фильтруют и пополняют датасет
yopp
И дальше это всё подаётся в случайно выбранный набор из матричных умножений, который крутится в каком-то невероятном количество вычислительной мощности пару суток. Смысл практически тупым перебором найти такой набор значений для этих самых матриц, при которых поданный на вход текстовый файл, совпадает с текстовым файлом в котором хранится ожидаемый вывод.
Поздравляю, теперь вы датасаентолог.