{ "version": "https://jsonfeed.org/version/1.1", "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL -- https://matoken.org/blog/tag/argostranslate/feed/json/ -- and add it your reader.", "home_page_url": "https://matoken.org/blog/tag/argostranslate/", "feed_url": "https://matoken.org/blog/tag/argostranslate/feed/json/", "language": "ja", "title": "argostranslate – matoken's blog", "description": "Is there no plan B?", "icon": "https://matoken.org/blog/wp-content/uploads/2025/03/cropped-1865f695c4eecc844385acef2f078255036adccd42c254580ea3844543ab56d9.jpeg", "items": [ { "id": "https://matoken.org/blog/?p=4011", "url": "https://matoken.org/blog/2024/04/30/libretranslate-model-download/", "title": "LibreTranslate \u306e\u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9", "content_html": "
\n

\u5148\u65e5\u65b0\u3057\u3044\u7aef\u672b\u3092\u5165\u624b\u3057\u305f\u306e\u3067\uff0cDebian \u3092\u5165\u308c\u3066\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e\u3053\u308c\u306b LibreTranslate \u3092 Docker \u7d4c\u7531\u3067\u5165\u308c\u305f\u306e\u3067\u3059\u304c\uff0c\u30e2\u30c7\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u306b\u5931\u6557\u3057\u3066\u518d\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u304f\u308c\u306a\u304b\u3063\u305f\u306e\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u76f4\u3057\u3055\u305b\u305f\u30e1\u30e2\u3067\u3059\uff0e

\n
\n
\n

\n\n\n\n\n\n\n\n
\n
Note
\n
\nHP t430 thin client CPU Intel N4000/RAM 4GB/eMMC 32GB\uff0c\u30e4\u30d5\u30aa\u30af\u306b\u3066 1,000\u5186 + \u9001\u6599 1,680\u5186
\n
\n

\n
\n

LibreTranslate \u306f Argos Translate \u306b web \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3084 API \u3092\u4ed8\u3051\u305f\u3088\u3046\u306a\u611f\u3058\u306e\u3082\u306e\u3067\uff0c\u30bb\u30eb\u30d5\u30db\u30b9\u30c8\u3057\u3066\u56de\u7dda\u7121\u3057\u3067\u3082\u4f7f\u3046\u3053\u3068\u304c\u51fa\u6765\u307e\u3059\uff0e

\n
\n
\n\n
\n
\n

LibreTranslate \u306b\u3064\u3044\u3066\u306f \u9e7f\u5150\u5cf6\u3089\u3050\u306e \u9e7f\u5150\u5cf6Linux\u52c9\u5f37\u4f1a 2022.12 \u3067\u767a\u8868\u3057\u307e\u3057\u305f\uff0e\u3053\u306e\u3068\u304d\u306f pip \u3067\u5c0e\u5165\uff0c\u4eca\u56de\u306f Docker \u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n
\n

Docker \u5229\u7528\u6642\u306f\uff0c ./run.sh \u3092\u5b9f\u884c\u3059\u308b\u3068\u5c0e\u5165\u3055\u308c\u3066\u3044\u306a\u3051\u308c\u3070\u5c0e\u5165\uff0c\u305d\u3057\u3066\u8d77\u52d5\u3057\u3066\u304f\u308c\u307e\u3059\uff0e
\n\u30e2\u30c7\u30eb\u304c\u306a\u3044\u5834\u5408\uff0c\u30e2\u30c7\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3082\u3057\u3066\u304f\u308c\u307e\u3059\uff0e

\n
\n
\n

\u3057\u304b\u3057\uff0c\u56de\u7dda\u304c\u4e0d\u5b89\u5b9a\u3060\u3068\u30e2\u30c7\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u304c\u9014\u4e2d\u3067\u5931\u6557\u3057\u3066\u3057\u307e\u3046\u3053\u3068\u304c\u3042\u308a\u307e\u3059\uff0e

\n
\n
\n
\n
$ ./run.sh\n  :\nDownloading English \u2192 Czech (1.9) ...\n(IncompleteRead(15249408 bytes read, 56611648 more expected),)\n  :\n^c
\n
\n
\n
\n

\u518d\u5ea6\u5b9f\u884c\u3059\u308b\u3068\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u306a\u304b\u3063\u305f\u30e2\u30c7\u30eb\u304c\u4f7f\u3048\u306a\u3044\u72b6\u614b\u3067\u8d77\u52d5\u3057\u307e\u3059\uff0e\u4eca\u56de\u306f\u4e00\u756a\u4f7f\u3044\u305f\u3044\u65e5\u672c\u8a9e\u306e\u30e2\u30c7\u30eb\u304c\u306a\u3044\u72b6\u614b\u3067\u3059\u2026\u2026

\n
\n
\n
\n
$ ./run.sh\nChecking for docker...   found\nRunning on http://*:5000
\n
\n
\n
\n

run.sh \u3092\u78ba\u8a8d\u3059\u308b\u3068\uff0c\u6700\u5f8c\u306e\u884c\u3067\uff0clibretranslat \u3092 run.sh \u306e\u5f15\u6570\u4ed8\u304d\u3067\u547c\u3093\u3067\u3044\u308b\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
docker run -ti --rm -p $LT_PORT:$LT_PORT $DB_VOLUME -v lt-local:/home/libretranslate/.local libretranslate/libretranslate ${ARGS[@]}
\n
\n
\n
\n

\u3068\u3044\u3046\u3053\u3068\u3067 libretranslat \u306e usage \u3084 README.md \u306e Arguments \u3092\u898b\u308b\u3068 --update-models \u304c\u4f7f\u3048\u305d\u3046\u3067\u3059\uff0e\u3053\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u3066\u8d77\u52d5\u3059\u308b\u3068\u8db3\u308a\u306a\u3044\u30e2\u30c7\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3092\u3057\u3066\u304f\u308c\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ ./run.sh --update-models\nChecking for docker...   found\nUpdating language models\nFound 88 models\nDownloading English \u2192 Danish (1.3) ...\n  :
\n
\n
\n
\n

\u3057\u304b\u3057\uff0c\u3084\u306f\u308a\u56de\u7dda\u304c\u99c4\u76ee\u306a\u306e\u3067\u3088\u304f\u8ee2\u3051\u308b\u3057\u6642\u9593\u304c\u304b\u304b\u308a\u307e\u3059\uff0e --load-only \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u6307\u5b9a\u3057\uff0c\u4e00\u756a\u4f7f\u3046\u82f1\u8a9e\u3068\u65e5\u672c\u8a9e\u3092\u4f7f\u3046\u3088\u3046\u306b\u6307\u5b9a\u3059\u308b\u3068\uff0c\u82f1\u8a9e\u3068\u672c\u8a9e\u306e\u30e2\u30c7\u30eb\u3060\u3051\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u304f\u308c\u3066\uff0c\u82f1\u8a9e<\u2192\u65e5\u672c\u8a9e\u76f8\u4e92\u7ffb\u8a33\u304c\u53ef\u80fd\u306b\u306a\u308a\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ ./run.sh --load-only 'ja,en' --update-models\nChecking for docker...   found\nUpdating language models\nFound 88 models\nKeep 2 models\nDownloading English \u2192 Japanese (1.1) ...\nDownloading Japanese \u2192 English (1.1) ...\nLoaded support for 13 languages (2 models total)!\nRunning on http://*:5000
\n
\n
\n
\n

\u6b8b\u308a\u306e\u30e2\u30c7\u30eb\u306f\u304a\u3044\u304a\u3044\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u601d\u3044\u307e\u3059\uff0e

\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\nusage \u3092\u898b\u308b\u3068 --force-update-models \u3068\u3044\u3046\u30aa\u30d7\u30b7\u30e7\u30f3\u3082\u3042\u308a\u307e\u3057\u305f\uff0e\u672a\u78ba\u8a8d\u3067\u3059\u304c\uff0c\u30e2\u30c7\u30eb\u30d5\u30a1\u30a4\u30eb\u304c\u58ca\u308c\u3066\u3044\u308b\u5834\u5408\u306a\u3069\u306b\u4f7f\u3048\u305d\u3046\u3067\u3059\uff0e
\n
\n", "content_text": "\u5148\u65e5\u65b0\u3057\u3044\u7aef\u672b\u3092\u5165\u624b\u3057\u305f\u306e\u3067\uff0cDebian \u3092\u5165\u308c\u3066\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e\u3053\u308c\u306b LibreTranslate \u3092 Docker \u7d4c\u7531\u3067\u5165\u308c\u305f\u306e\u3067\u3059\u304c\uff0c\u30e2\u30c7\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u306b\u5931\u6557\u3057\u3066\u518d\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u304f\u308c\u306a\u304b\u3063\u305f\u306e\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u76f4\u3057\u3055\u305b\u305f\u30e1\u30e2\u3067\u3059\uff0e\n\n\n\n\n\n\n\nNote\n\n\nHP t430 thin client CPU Intel N4000/RAM 4GB/eMMC 32GB\uff0c\u30e4\u30d5\u30aa\u30af\u306b\u3066 1,000\u5186 + \u9001\u6599 1,680\u5186\n\n\n\n\n\n\nLibreTranslate \u306f Argos Translate \u306b web \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3084 API \u3092\u4ed8\u3051\u305f\u3088\u3046\u306a\u611f\u3058\u306e\u3082\u306e\u3067\uff0c\u30bb\u30eb\u30d5\u30db\u30b9\u30c8\u3057\u3066\u56de\u7dda\u7121\u3057\u3067\u3082\u4f7f\u3046\u3053\u3068\u304c\u51fa\u6765\u307e\u3059\uff0e\n\n\n\nLibreTranslate/LibreTranslate: Free and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup.\n\n\n\nLibreTranslate \u306b\u3064\u3044\u3066\u306f \u9e7f\u5150\u5cf6\u3089\u3050\u306e \u9e7f\u5150\u5cf6Linux\u52c9\u5f37\u4f1a 2022.12 \u3067\u767a\u8868\u3057\u307e\u3057\u305f\uff0e\u3053\u306e\u3068\u304d\u306f pip \u3067\u5c0e\u5165\uff0c\u4eca\u56de\u306f Docker \u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e\n\n\n\n\u6a5f\u68b0\u7ffb\u8a33\u3092\u30ed\u30fc\u30ab\u30eb\u30de\u30b7\u30f3\u3067( ArgosTranslate/LibreTranslate )\n\n\nhttps://gitlab.com/matoken/kagolug-2022.12/-/blob/master/slide/slide.adoc\nhttps://speakerdeck.com/matoken/libretranslate\n\n\n\n\n\n\nDocker \u5229\u7528\u6642\u306f\uff0c ./run.sh \u3092\u5b9f\u884c\u3059\u308b\u3068\u5c0e\u5165\u3055\u308c\u3066\u3044\u306a\u3051\u308c\u3070\u5c0e\u5165\uff0c\u305d\u3057\u3066\u8d77\u52d5\u3057\u3066\u304f\u308c\u307e\u3059\uff0e\n\u30e2\u30c7\u30eb\u304c\u306a\u3044\u5834\u5408\uff0c\u30e2\u30c7\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3082\u3057\u3066\u304f\u308c\u307e\u3059\uff0e\n\n\n\u3057\u304b\u3057\uff0c\u56de\u7dda\u304c\u4e0d\u5b89\u5b9a\u3060\u3068\u30e2\u30c7\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u304c\u9014\u4e2d\u3067\u5931\u6557\u3057\u3066\u3057\u307e\u3046\u3053\u3068\u304c\u3042\u308a\u307e\u3059\uff0e\n\n\n\n$ ./run.sh\n :\nDownloading English \u2192 Czech (1.9) ...\n(IncompleteRead(15249408 bytes read, 56611648 more expected),)\n :\n^c\n\n\n\n\u518d\u5ea6\u5b9f\u884c\u3059\u308b\u3068\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u306a\u304b\u3063\u305f\u30e2\u30c7\u30eb\u304c\u4f7f\u3048\u306a\u3044\u72b6\u614b\u3067\u8d77\u52d5\u3057\u307e\u3059\uff0e\u4eca\u56de\u306f\u4e00\u756a\u4f7f\u3044\u305f\u3044\u65e5\u672c\u8a9e\u306e\u30e2\u30c7\u30eb\u304c\u306a\u3044\u72b6\u614b\u3067\u3059\u2026\u2026\n\n\n\n$ ./run.sh\nChecking for docker... found\nRunning on http://*:5000\n\n\n\nrun.sh \u3092\u78ba\u8a8d\u3059\u308b\u3068\uff0c\u6700\u5f8c\u306e\u884c\u3067\uff0clibretranslat \u3092 run.sh \u306e\u5f15\u6570\u4ed8\u304d\u3067\u547c\u3093\u3067\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\n\n\n\ndocker run -ti --rm -p $LT_PORT:$LT_PORT $DB_VOLUME -v lt-local:/home/libretranslate/.local libretranslate/libretranslate ${ARGS[@]}\n\n\n\n\u3068\u3044\u3046\u3053\u3068\u3067 libretranslat \u306e usage \u3084 README.md \u306e Arguments \u3092\u898b\u308b\u3068 --update-models \u304c\u4f7f\u3048\u305d\u3046\u3067\u3059\uff0e\u3053\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u3066\u8d77\u52d5\u3059\u308b\u3068\u8db3\u308a\u306a\u3044\u30e2\u30c7\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3092\u3057\u3066\u304f\u308c\u307e\u3057\u305f\uff0e\n\n\n\n$ ./run.sh --update-models\nChecking for docker... found\nUpdating language models\nFound 88 models\nDownloading English \u2192 Danish (1.3) ...\n :\n\n\n\n\u3057\u304b\u3057\uff0c\u3084\u306f\u308a\u56de\u7dda\u304c\u99c4\u76ee\u306a\u306e\u3067\u3088\u304f\u8ee2\u3051\u308b\u3057\u6642\u9593\u304c\u304b\u304b\u308a\u307e\u3059\uff0e --load-only \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u6307\u5b9a\u3057\uff0c\u4e00\u756a\u4f7f\u3046\u82f1\u8a9e\u3068\u65e5\u672c\u8a9e\u3092\u4f7f\u3046\u3088\u3046\u306b\u6307\u5b9a\u3059\u308b\u3068\uff0c\u82f1\u8a9e\u3068\u672c\u8a9e\u306e\u30e2\u30c7\u30eb\u3060\u3051\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u304f\u308c\u3066\uff0c\u82f1\u8a9e<\u2192\u65e5\u672c\u8a9e\u76f8\u4e92\u7ffb\u8a33\u304c\u53ef\u80fd\u306b\u306a\u308a\u307e\u3057\u305f\uff0e\n\n\n\n$ ./run.sh --load-only 'ja,en' --update-models\nChecking for docker... found\nUpdating language models\nFound 88 models\nKeep 2 models\nDownloading English \u2192 Japanese (1.1) ...\nDownloading Japanese \u2192 English (1.1) ...\nLoaded support for 13 languages (2 models total)!\nRunning on http://*:5000\n\n\n\n\u6b8b\u308a\u306e\u30e2\u30c7\u30eb\u306f\u304a\u3044\u304a\u3044\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3088\u3046\u3068\u601d\u3044\u307e\u3059\uff0e\n\n\n\n\n\n\nNote\n\n\nusage \u3092\u898b\u308b\u3068 --force-update-models \u3068\u3044\u3046\u30aa\u30d7\u30b7\u30e7\u30f3\u3082\u3042\u308a\u307e\u3057\u305f\uff0e\u672a\u78ba\u8a8d\u3067\u3059\u304c\uff0c\u30e2\u30c7\u30eb\u30d5\u30a1\u30a4\u30eb\u304c\u58ca\u308c\u3066\u3044\u308b\u5834\u5408\u306a\u3069\u306b\u4f7f\u3048\u305d\u3046\u3067\u3059\uff0e", "date_published": "2024-04-30T19:24:55+09:00", "date_modified": "2024-04-30T19:24:57+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "argostranslate", "LibreTranslate", "bookworm", "Debian", "Linux" ] }, { "id": "https://matoken.org/blog/?p=3791", "url": "https://matoken.org/blog/2022/12/31/libretranslate-your-own-translation-server/", "title": "LibreTranslate \u3067\u81ea\u5206\u7528\u7ffb\u8a33\u30b5\u30fc\u30d0", "content_html": "
\n

ArgosTranslate \u3067\u30ed\u30fc\u30ab\u30eb\u3067\u6a5f\u68b0\u7ffb\u8a33\u3092\u8a66\u3057\u3066\u3044\u3044\u611f\u3058\u3060\u3063\u305f\u306e\u3067\uff0cArgosTranslate \u3092\u4f7f\u3063\u305f\u7ffb\u8a33\u30a6\u30a7\u30d6\u30b5\u30fc\u30ca\u306eLibreTanslate \u3082\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n

\n
\n\n
\n
\n

pip\u3067\u304b\u3093\u305f\u3093\u306b\u5c0e\u5165\u3067\u304d\u307e\u3059\uff0e\u3053\u3053\u3067\u306fvenv\u3067\u74b0\u5883\u3092\u5206\u3051\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n
\n
$ python3 -m venv venv (1)\n$ source venv/bin/activate (2)\n$ pip install libretranslate (3)\n$ du -Hs . (4)\n3518928 .\n$ libretranslate (5)\nUpdating language models\nFound 58 models\nDownloading Arabic \u2192 English (1.0) ...\nDownloading Azerbaijani \u2192 English (1.5) ...\nDownloading Catalan \u2192 English (1.7) ...\n  :\n^c\n$ du -Hs ~/.local/share/argos-translate/ (6)\n6137956 /home/matoken/.local/share/argos-translate/\n$ libretranslate --frontend-language-source en --frontend-language-target ja (7)\nRunning on http://127.0.0.1:5000
\n
\n
\n
\n
    \n
  1. venv\u8a2d\u5b9a
  2. \n
  3. venv\u53cd\u6620
  4. \n
  5. pip\u3067LibreTranslate\u3092\u5c0e\u5165
  6. \n
  7. \u5bb9\u91cf\u78ba\u8a8d
  8. \n
  9. \u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u304c\u7121\u3044\u5834\u5408\u306f\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u308b
  10. \n
  11. \u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u306e\u5bb9\u91cf\u78ba\u8a8d
  12. \n
  13. \u7ffb\u8a33\u5143\u65e2\u5b9a\u5024\u3092en, \u7ffb\u8a33\u5148\u65e2\u5b9a\u5024\u3092ja\u306b\u3057\u3066\u8d77\u52d5
  14. \n
\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n
\n

argostranslate\u3082\u4e00\u7dd2\u306b\u5c0e\u5165\u3055\u308c\u307e\u3059\uff0e

\n
\n
\n
\n
$ argos-translate -h\nusage: argos-translate [-h] [--from-lang FROM_LANG] [--to-lang TO_LANG] [TEXT]\n\nOpen-source offline translation.\n\npositional arguments:\n  TEXT                  The text to translate. Read from standard input if missing.\n\noptions:\n  -h, --help            show this help message and exit\n  --from-lang FROM_LANG, -f FROM_LANG\n                        The code for the language to translate from (ISO 639-1)\n  --to-lang TO_LANG, -t TO_LANG\n                        The code for the language to translate to (ISO 639-1)
\n
\n
\n
\n
\n
\n

\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067 http://127.0.0.1:5000/ \u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\uff0e\u5de6\u5074\u306e\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u306b\u7ffb\u8a33\u3057\u305f\u3044\u6587\u5b57\u5217\u3092\u5165\u529b\u3059\u308b\u3068\u5165\u529b\u3055\u308c\u308b\u305f\u3073\u306b\u7ffb\u8a33\u3055\u308c\u53f3\u5074\u306b\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u306b\u7d50\u679c\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e

\n
\n
\n

\"libretranslate00\"/

\n
\n
\n

curl\u7d4c\u7531\u3067\u3082\u5b9f\u884c\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n
\n
$ curl -X POST --silent --show-error -F \"q=hello world.\" -F \"source=en\" -F \"target=ja\" http://127.0.0.1:5000/translate | jq .\n{\n  \"translatedText\": \"\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\u3002.\"\n}
\n
\n
\n
\n\n\n\n\n\n\n\n
\n
Tip
\n
\n
\n

\u30a6\u30a7\u30d6\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3067\u4e00\u90e8\u306e\u8a00\u8a9e\u3057\u304b\u9078\u3079\u306a\u304b\u3063\u305f\u308a\uff0c

\n
\n
\n
\n
\n

Cannot translate text: 400 Bad Request: English (en) is not available as a target language from Japanese (ja)

\n
\n
\n
\n
\n

\u306e\u3088\u3046\u306a\u30a8\u30e9\u30fc\u3068\u306a\u3063\u305f\uff0e

\n
\n
\n

\u521d\u56de\u8d77\u52d5\u6642\u306b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u8a00\u8a9e\u30e2\u30c7\u30eb\u304c\u58ca\u308c\u3066\u3044\u305f\u305f\u3081\u306e\u3088\u3046\u3067\u4e00\u65e6\u524a\u9664\u3057\u3066\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u76f4\u3059\u3053\u3068\u3067\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306b\u306a\u3063\u305f\uff0e(\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u4e2d\u306bNotePC\u3092\u30b5\u30b9\u30da\u30f3\u30c9\u3057\u3066\u3057\u307e\u3063\u305f\u305b\u3044\u3060\u3068\u601d\u3046\u2026\u2026)

\n
\n
\n
\n
$ rm -r ~/.local/share/argos-translate\n$ libretranslate\nUpdating language models\nFound 58 models\nDownloading Arabic \u2192 English (1.0) ...\nDownloading Azerbaijani \u2192 English (1.5) ...\n  :
\n
\n
\n
\n
\n
\n
\u4fbf\u5229\u305d\u3046\u306a\u30c4\u30fc\u30eb\u306a\u3069
\n\n
\n
\n
\u74b0\u5883
\n
\n
$ dpkg-query -W python3 python3-pip\npython3 3.10.6-3+b1\npython3-pip     22.3.1+dfsg-1\ne$ lsb_release -a\nDistributor ID: Debian\nDescription:    Debian GNU/Linux bookworm/sid\nRelease:        n/a\nCodename:       bookworm\n$ arch\nx86_64
\n
\n
\n", "content_text": "ArgosTranslate \u3067\u30ed\u30fc\u30ab\u30eb\u3067\u6a5f\u68b0\u7ffb\u8a33\u3092\u8a66\u3057\u3066\u3044\u3044\u611f\u3058\u3060\u3063\u305f\u306e\u3067\uff0cArgosTranslate \u3092\u4f7f\u3063\u305f\u7ffb\u8a33\u30a6\u30a7\u30d6\u30b5\u30fc\u30ca\u306eLibreTanslate \u3082\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\nArgos Translate \u3067\u30aa\u30d5\u30e9\u30a4\u30f3\u6a5f\u68b0\u7ffb\u8a33 \u2013 matoken\u2019s meme\n\n\n\n\n\nLibreTranslate – Free and Open Source Machine Translation API\nLibreTranslate/LibreTranslate: Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup.\n\n\n\npip\u3067\u304b\u3093\u305f\u3093\u306b\u5c0e\u5165\u3067\u304d\u307e\u3059\uff0e\u3053\u3053\u3067\u306fvenv\u3067\u74b0\u5883\u3092\u5206\u3051\u3066\u3044\u307e\u3059\uff0e\n\n\n\n$ python3 -m venv venv (1)\n$ source venv/bin/activate (2)\n$ pip install libretranslate (3)\n$ du -Hs . (4)\n3518928 .\n$ libretranslate (5)\nUpdating language models\nFound 58 models\nDownloading Arabic \u2192 English (1.0) ...\nDownloading Azerbaijani \u2192 English (1.5) ...\nDownloading Catalan \u2192 English (1.7) ...\n :\n^c\n$ du -Hs ~/.local/share/argos-translate/ (6)\n6137956 /home/matoken/.local/share/argos-translate/\n$ libretranslate --frontend-language-source en --frontend-language-target ja (7)\nRunning on http://127.0.0.1:5000\n\n\n\n\nvenv\u8a2d\u5b9a\nvenv\u53cd\u6620\npip\u3067LibreTranslate\u3092\u5c0e\u5165\n\u5bb9\u91cf\u78ba\u8a8d\n\u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u304c\u7121\u3044\u5834\u5408\u306f\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u308b\n\u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u306e\u5bb9\u91cf\u78ba\u8a8d\n\u7ffb\u8a33\u5143\u65e2\u5b9a\u5024\u3092en, \u7ffb\u8a33\u5148\u65e2\u5b9a\u5024\u3092ja\u306b\u3057\u3066\u8d77\u52d5\n\n\n\n\n\n\n\nNote\n\n\n\nargostranslate\u3082\u4e00\u7dd2\u306b\u5c0e\u5165\u3055\u308c\u307e\u3059\uff0e\n\n\n\n$ argos-translate -h\nusage: argos-translate [-h] [--from-lang FROM_LANG] [--to-lang TO_LANG] [TEXT]\n\nOpen-source offline translation.\n\npositional arguments:\n TEXT The text to translate. Read from standard input if missing.\n\noptions:\n -h, --help show this help message and exit\n --from-lang FROM_LANG, -f FROM_LANG\n The code for the language to translate from (ISO 639-1)\n --to-lang TO_LANG, -t TO_LANG\n The code for the language to translate to (ISO 639-1)\n\n\n\n\n\n\n\n\n\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067 http://127.0.0.1:5000/ \u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\uff0e\u5de6\u5074\u306e\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u306b\u7ffb\u8a33\u3057\u305f\u3044\u6587\u5b57\u5217\u3092\u5165\u529b\u3059\u308b\u3068\u5165\u529b\u3055\u308c\u308b\u305f\u3073\u306b\u7ffb\u8a33\u3055\u308c\u53f3\u5074\u306b\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u306b\u7d50\u679c\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0e\n\n\n\n\n\ncurl\u7d4c\u7531\u3067\u3082\u5b9f\u884c\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\n\n$ curl -X POST --silent --show-error -F \"q=hello world.\" -F \"source=en\" -F \"target=ja\" http://127.0.0.1:5000/translate | jq .\n{\n \"translatedText\": \"\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\u3002.\"\n}\n\n\n\n\n\n\n\nTip\n\n\n\n\u30a6\u30a7\u30d6\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3067\u4e00\u90e8\u306e\u8a00\u8a9e\u3057\u304b\u9078\u3079\u306a\u304b\u3063\u305f\u308a\uff0c\n\n\n\n\nCannot translate text: 400 Bad Request: English (en) is not available as a target language from Japanese (ja)\n\n\n\n\n\u306e\u3088\u3046\u306a\u30a8\u30e9\u30fc\u3068\u306a\u3063\u305f\uff0e\n\n\n\u521d\u56de\u8d77\u52d5\u6642\u306b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u8a00\u8a9e\u30e2\u30c7\u30eb\u304c\u58ca\u308c\u3066\u3044\u305f\u305f\u3081\u306e\u3088\u3046\u3067\u4e00\u65e6\u524a\u9664\u3057\u3066\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u76f4\u3059\u3053\u3068\u3067\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306b\u306a\u3063\u305f\uff0e(\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u4e2d\u306bNotePC\u3092\u30b5\u30b9\u30da\u30f3\u30c9\u3057\u3066\u3057\u307e\u3063\u305f\u305b\u3044\u3060\u3068\u601d\u3046\u2026\u2026)\n\n\n\n$ rm -r ~/.local/share/argos-translate\n$ libretranslate\nUpdating language models\nFound 58 models\nDownloading Arabic \u2192 English (1.0) ...\nDownloading Azerbaijani \u2192 English (1.5) ...\n :\n\n\n\n\n\n\n\n\n\u4fbf\u5229\u305d\u3046\u306a\u30c4\u30fc\u30eb\u306a\u3069\n\nargosopentech/LibreTranslate-sh: Unix bindings for LibreTranslate\nHayao-Tools/libretranslate-sh at master \u00b7 Hayao0819/Hayao-Tools\nhugopeixoto/libretranslate-firefox: Firefox extension to integrate LibreTranslate\n\n\n\n\u74b0\u5883\n\n$ dpkg-query -W python3 python3-pip\npython3 3.10.6-3+b1\npython3-pip 22.3.1+dfsg-1\ne$ lsb_release -a\nDistributor ID: Debian\nDescription: Debian GNU/Linux bookworm/sid\nRelease: n/a\nCodename: bookworm\n$ arch\nx86_64", "date_published": "2022-12-31T19:35:34+09:00", "date_modified": "2022-12-31T19:35:34+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "argostranslate", "LibreTranslate", "translate", "bookworm", "Debian", "Linux" ] }, { "id": "https://matoken.org/blog/?p=3787", "url": "https://matoken.org/blog/2022/12/22/offline-machine-translation-with-argos-translate/", "title": "Argos Translate \u3067\u30aa\u30d5\u30e9\u30a4\u30f3\u6a5f\u68b0\u7ffb\u8a33", "content_html": "
\n

OSS\u306e\u6a5f\u68b0\u7ffb\u8a33\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306eArgos Translate \u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308a\u307e\u3059\uff0e\u306a\u3093\u3068\u306a\u304f\u91cd\u305d\u3046\u3060\u306a\u3068\u601d\u3063\u3066\u89e6\u3063\u305f\u3053\u3068\u304c\u306a\u304b\u3063\u305f\u306e\u3067\u3059\u304c\uff0cArgos Translate \u30d9\u30fc\u30b9\u306eLibre Translate \u304cRaspberry Pi 4 \u3067\u3082\u52d5\u304f\u3068\u3044\u3046\u3053\u3068\u3067\uff0c\u305d\u308c\u306a\u3089\u624b\u5143\u306e\u30de\u30b7\u30f3\u3067\u3082\u5927\u4e08\u592b\u3060\u308d\u3046\u3068\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n

\n
\n\n
\n
\n
\u5c0e\u5165
\n
\n
$ mkdir ./argostranslate\n$ cd ./argostranslate/\n$ python3 -m venv venv\n$ source venv/bin/activate\n$ pip install argostranslate\n$ du -Hs .\n3449892 .
\n
\n
\n
\n

venv \u3067\u74b0\u5883\u5207\u3063\u3066pip \u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e

\n
\n
\n
argospm \u30b3\u30de\u30f3\u30c9\u3067\u7ffb\u8a33\u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u5165\u624b
\n
\n
$ argospm --help\nusage: argospm [-h] {update,search,install,list,remove} ...\n\npositional arguments:\n  {update,search,install,list,remove}\n                        Available commands.\n    update              Downloads remote package index.\n    search              Search package from remote index.\n    install             Install package.\n    list                List installed packages.\n    remove              Remove installed package.\n\noptions:\n  -h, --help            show this help message and exit\n$ argospm update (1)\n$ argospm search | wc -l (2)\n58\n$ argospm search --to-lang ja (3)\ntranslate-en_ja: en -> ja\n$ argospm search --from-lang ja (4)\ntranslate-ja_en: ja -> en\n$ argospm install translate-en_ja (5)\n$ argospm install translate-ja_en (6)\n$ du -Hs ~/.local/share/argos-translate/packages/*ja* (7)\n131380  /home/matoken/.local/share/argos-translate/packages/en_ja\n131780  /home/matoken/.local/share/argos-translate/packages/ja_en
\n
\n
\n
\n
    \n
  1. \u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u66f4\u65b0
  2. \n
  3. \u30ea\u30e2\u30fc\u30c8\u306e\u30e2\u30c7\u30eb\u6570\u3092\u78ba\u8a8d
  4. \n
  5. \u65e5\u672c\u8a9e\u3078\u306e\u5909\u63db\u30e2\u30c7\u30eb\u3092\u78ba\u8a8d
  6. \n
  7. \u65e5\u672c\u8a9e\u304b\u3089\u306e\u5909\u63db\u30e2\u30c7\u30eb\u3092\u78ba\u8a8d
  8. \n
  9. \u82f1\u8a9e\u2192\u65e5\u672c\u8a9e\u306e\u30e2\u30c7\u30eb\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb
  10. \n
  11. \u65e5\u672c\u8a9e\u2192\u82f1\u8a9e\u306e\u30e2\u30c7\u30eb\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb
  12. \n
  13. \u30e2\u30c7\u30eb\u306e\u5bb9\u91cf\u78ba\u8a8d
  14. \n
\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n\u65e5\u672c\u8a9e\u306f\u82f1\u8a9e\u3068\u306e\u30e2\u30c7\u30eb\u3057\u304b\u3042\u308a\u307e\u305b\u3093\u304c\uff0c\u4f8b\u3048\u3070\u30d5\u30e9\u30f3\u30b9\u8a9e\u2192\u65e5\u672c\u8a9e\u306e\u5909\u63db\u3092\u3057\u305f\u3044\u5834\u5408\u306bfr\u2192en\u306e\u8a00\u8a9e\u30e2\u30c7\u30eb\u3082\u3042\u308b\u5834\u5408Argos Translate\u306f\u81ea\u52d5\u7684\u306b\u4e2d\u9593\u8a00\u8a9e\u3092\u4ecb\u3057\u3066\u4ecf\u2192\u82f1\u2192\u65e5\u306e\u3088\u3046\u306b\u7ffb\u8a33\u3057\u3066\u304f\u308c\u308b\u305d\u3046\u3067\u3059\uff0e\u305f\u3060\u3057\u7cbe\u5ea6\u306f\u843d\u3061\u307e\u3059\uff0e
\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n\u5f8c\u8ff0\u306eGUI\u7248\u3067\u3082\u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u5165\u624b\u53ef\u80fd\u3067\u3059\uff0e
\n
\n
\n
Python\u3067\u8a66\u3059
\n
\n
$ cat ./sample.py\nimport argostranslate.package\nimport argostranslate.translate\n\nfrom_code = \"en\"\nto_code = \"ja\"\n\ntranslatedText = argostranslate.translate.translate(\"hello world.\", from_code, to_code)\nprint(translatedText)\n$ python3 ./sample.py\n\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\u3002
\n
\n
\n
\n
\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u3067\u8a66\u3059
\n
\n
$ argos-translate --help\nusage: argos-translate [-h] [--from-lang FROM_LANG] [--to-lang TO_LANG] [TEXT]\n\nOpen-source offline translation.\n\npositional arguments:\n  TEXT                  The text to translate. Read from standard input if missing.\n\noptions:\n  -h, --help            show this help message and exit\n  --from-lang FROM_LANG, -f FROM_LANG\n                        The code for the language to translate from (ISO 639-1)\n  --to-lang TO_LANG, -t TO_LANG\n                        The code for the language to translate to (ISO 639-1)\n$ time argos-translate --from-lang en --to-lang ja 'hello world.' (1)\n\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\u3002\n\nreal    0m2.124s\nuser    0m1.731s\nsys     0m0.484s\n$ echo 'cat is awesome.' | argos-translate --from-lang en --to-lang ja (2)\n\u732b\u306f\u7d20\u6674\u3089\u3057\u3044\u3067\u3059\u3002\n$ LC_ALL=en_US.UTF-8 man man | wc\n    478    4698   33208\n$ time LC_ALL=en_US.UTF-8 man man | argos-translate --from-lang en --to-lang ja (3)\n    :\n    :\n\nreal    2m56.132s\nuser    4m48.187s\nsys     0m57.290s
\n
\n
\n
\n
    \n
  1. \u82f1\u8a9e\u304b\u3089\u65e5\u672c\u8a9e\u306b\u7ffb\u8a33
  2. \n
  3. \u6a19\u6e96\u5165\u529b\u3092\u7ffb\u8a33
  4. \n
  5. \u30b3\u30de\u30f3\u30c9\u306e\u7d50\u679c\u3092\u7ffb\u8a33
  6. \n
\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n
\n

translate shell \u306a\u3069\u3068\u9055\u3044\u30ed\u30fc\u30ab\u30eb\u3067\u5b9f\u884c\u3067\u304d\u308b\u306e\u304c\u3044\u3044\u611f\u3058\u3060\u304c\u30de\u30b7\u30f3\u30b9\u30da\u30c3\u30af\u306b\u3088\u308a\u4f4e\u901f\uff0e
\n

\n
\n
\n
\n
\n
GUI
\n
\n
$ pip install argostranslategui\n$ argos-translate-gui
\n
\n
\n
\n
\u7ffb\u8a33\u753b\u9762
\n

\"argos

\n
\n
\n
\u30e2\u30c7\u30eb\u306e\u78ba\u8a8d\uff0c\u524a\u9664
\n

\"argos

\n
\n
\n
\u30e2\u30c7\u30eb\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb
\n

\"argos

\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n
\n

\u753b\u9762\u30b5\u30a4\u30ba\u3092\u5e83\u3052\u308b\u3053\u3068\u3067\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u3082\u5e83\u304c\u308a\u9577\u6587\u306b\u3082\u5bfe\u5fdc\u3057\u3084\u3059\u304f\uff0e

\n
\n
\n
\n
\n

\u5c11\u3057\u8a66\u3057\u305f\u3068\u3053\u308d\u77ed\u6587\u306a\u3089\u30b5\u30af\u30b5\u30af\u3068\u52d5\u304d\u307e\u3059\u304c\uff0cman \u306e\u7d50\u679c\u3092\u307e\u3068\u3081\u3066\u6e21\u3059\u306a\u3069\u3059\u308b\u3068\u3057\u3070\u3089\u304f\u5f85\u3064\u3053\u3068\u306b\uff0e\u4eba\u9593\u306e\u8aad\u3080\u901f\u5ea6\u3088\u308a\u306f\u901f\u3044\u306e\u3067\u5206\u3051\u3066\u6e21\u3059\u3088\u3046\u306b\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e(\u82e5\u3057\u304f\u306f\u5bfe\u5fdcGPU\u3092\u8ffd\u52a0\u3059\u308b\u306a\u3069\u30de\u30b7\u30f3\u30b9\u30da\u30c3\u30af\u3092\u4e0a\u3052\u308b\uff0e)
\n\u7ffb\u8a33\u7cbe\u5ea6\u3082\u601d\u3063\u3066\u3044\u305f\u3088\u308a\u826f\u3044\u611f\u3058\u3067\uff0cGoogle\u7ffb\u8a33\u4ee5\u524d\u306e\u7ffb\u8a33\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3088\u308a\u305a\u3063\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n

\u7121\u6599\u7ffb\u8a33\u30b5\u30a4\u30c8\u306f\u7ffb\u8a33\u30c7\u30fc\u30bf\u304c\u4fdd\u5b58\uff0c\u5229\u7528\u3055\u308c\u308b\u3053\u3068\u304c\u591a\u3044\u306e\u3067\u30bb\u30f3\u30b7\u30c6\u30a3\u30d6\u306a\u3082\u306e\u306b\u306f\u4f7f\u3048\u306a\u3044\u306e\u3067\u3059\u304c\uff0cArgos Translate \u306a\u3089\u30ed\u30fc\u30ab\u30eb\u3067\u5b8c\u7d50\u3059\u308b\u306e\u3067\u305d\u306e\u3088\u3046\u306a\u30c7\u30fc\u30bf\u306e\u7ffb\u8a33\u306b\u3082\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n\n\n\n\n\n\n\n
\n
Note
\n
\n
\n

\u9e7f\u5150\u5cf6Linux\u52c9\u5f37\u4f1a 2022.12 \u3067\u7d39\u4ecb\u3057\u307e\u3057\u305f\uff0e
\n

\n
\n
\n
\n
\n
\u74b0\u5883
\n
\n
$ dpkg-query -W python3\npython3 3.10.6-1\n$ lsb_release -dr\nDescription:    Debian GNU/Linux bookworm/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n", "content_text": "OSS\u306e\u6a5f\u68b0\u7ffb\u8a33\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306eArgos Translate \u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308a\u307e\u3059\uff0e\u306a\u3093\u3068\u306a\u304f\u91cd\u305d\u3046\u3060\u306a\u3068\u601d\u3063\u3066\u89e6\u3063\u305f\u3053\u3068\u304c\u306a\u304b\u3063\u305f\u306e\u3067\u3059\u304c\uff0cArgos Translate \u30d9\u30fc\u30b9\u306eLibre Translate \u304cRaspberry Pi 4 \u3067\u3082\u52d5\u304f\u3068\u3044\u3046\u3053\u3068\u3067\uff0c\u305d\u308c\u306a\u3089\u624b\u5143\u306e\u30de\u30b7\u30f3\u3067\u3082\u5927\u4e08\u592b\u3060\u308d\u3046\u3068\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n\nArgos Open Tech\nGitHub – argosopentech/argos-translate: Open-source offline translation library written in Python\n\n\n\n\u5c0e\u5165\n\n$ mkdir ./argostranslate\n$ cd ./argostranslate/\n$ python3 -m venv venv\n$ source venv/bin/activate\n$ pip install argostranslate\n$ du -Hs .\n3449892 .\n\n\n\nvenv \u3067\u74b0\u5883\u5207\u3063\u3066pip \u3067\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e\n\n\nargospm \u30b3\u30de\u30f3\u30c9\u3067\u7ffb\u8a33\u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u5165\u624b\n\n$ argospm --help\nusage: argospm [-h] {update,search,install,list,remove} ...\n\npositional arguments:\n {update,search,install,list,remove}\n Available commands.\n update Downloads remote package index.\n search Search package from remote index.\n install Install package.\n list List installed packages.\n remove Remove installed package.\n\noptions:\n -h, --help show this help message and exit\n$ argospm update (1)\n$ argospm search | wc -l (2)\n58\n$ argospm search --to-lang ja (3)\ntranslate-en_ja: en -> ja\n$ argospm search --from-lang ja (4)\ntranslate-ja_en: ja -> en\n$ argospm install translate-en_ja (5)\n$ argospm install translate-ja_en (6)\n$ du -Hs ~/.local/share/argos-translate/packages/*ja* (7)\n131380 /home/matoken/.local/share/argos-translate/packages/en_ja\n131780 /home/matoken/.local/share/argos-translate/packages/ja_en\n\n\n\n\n\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u3092\u66f4\u65b0\n\u30ea\u30e2\u30fc\u30c8\u306e\u30e2\u30c7\u30eb\u6570\u3092\u78ba\u8a8d\n\u65e5\u672c\u8a9e\u3078\u306e\u5909\u63db\u30e2\u30c7\u30eb\u3092\u78ba\u8a8d\n\u65e5\u672c\u8a9e\u304b\u3089\u306e\u5909\u63db\u30e2\u30c7\u30eb\u3092\u78ba\u8a8d\n\u82f1\u8a9e\u2192\u65e5\u672c\u8a9e\u306e\u30e2\u30c7\u30eb\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\n\u65e5\u672c\u8a9e\u2192\u82f1\u8a9e\u306e\u30e2\u30c7\u30eb\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\n\u30e2\u30c7\u30eb\u306e\u5bb9\u91cf\u78ba\u8a8d\n\n\n\n\n\n\n\nNote\n\n\n\u65e5\u672c\u8a9e\u306f\u82f1\u8a9e\u3068\u306e\u30e2\u30c7\u30eb\u3057\u304b\u3042\u308a\u307e\u305b\u3093\u304c\uff0c\u4f8b\u3048\u3070\u30d5\u30e9\u30f3\u30b9\u8a9e\u2192\u65e5\u672c\u8a9e\u306e\u5909\u63db\u3092\u3057\u305f\u3044\u5834\u5408\u306bfr\u2192en\u306e\u8a00\u8a9e\u30e2\u30c7\u30eb\u3082\u3042\u308b\u5834\u5408Argos Translate\u306f\u81ea\u52d5\u7684\u306b\u4e2d\u9593\u8a00\u8a9e\u3092\u4ecb\u3057\u3066\u4ecf\u2192\u82f1\u2192\u65e5\u306e\u3088\u3046\u306b\u7ffb\u8a33\u3057\u3066\u304f\u308c\u308b\u305d\u3046\u3067\u3059\uff0e\u305f\u3060\u3057\u7cbe\u5ea6\u306f\u843d\u3061\u307e\u3059\uff0e\n\n\n\n\n\n\n\n\n\nNote\n\n\n\u5f8c\u8ff0\u306eGUI\u7248\u3067\u3082\u30e2\u30c7\u30eb\u30c7\u30fc\u30bf\u5165\u624b\u53ef\u80fd\u3067\u3059\uff0e\n\n\n\n\n\nPython\u3067\u8a66\u3059\n\n$ cat ./sample.py\nimport argostranslate.package\nimport argostranslate.translate\n\nfrom_code = \"en\"\nto_code = \"ja\"\n\ntranslatedText = argostranslate.translate.translate(\"hello world.\", from_code, to_code)\nprint(translatedText)\n$ python3 ./sample.py\n\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\u3002\n\n\n\n\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u3067\u8a66\u3059\n\n$ argos-translate --help\nusage: argos-translate [-h] [--from-lang FROM_LANG] [--to-lang TO_LANG] [TEXT]\n\nOpen-source offline translation.\n\npositional arguments:\n TEXT The text to translate. Read from standard input if missing.\n\noptions:\n -h, --help show this help message and exit\n --from-lang FROM_LANG, -f FROM_LANG\n The code for the language to translate from (ISO 639-1)\n --to-lang TO_LANG, -t TO_LANG\n The code for the language to translate to (ISO 639-1)\n$ time argos-translate --from-lang en --to-lang ja 'hello world.' (1)\n\u3053\u3093\u306b\u3061\u306f\u4e16\u754c\u3002\n\nreal 0m2.124s\nuser 0m1.731s\nsys 0m0.484s\n$ echo 'cat is awesome.' | argos-translate --from-lang en --to-lang ja (2)\n\u732b\u306f\u7d20\u6674\u3089\u3057\u3044\u3067\u3059\u3002\n$ LC_ALL=en_US.UTF-8 man man | wc\n 478 4698 33208\n$ time LC_ALL=en_US.UTF-8 man man | argos-translate --from-lang en --to-lang ja (3)\n :\n :\n\nreal 2m56.132s\nuser 4m48.187s\nsys 0m57.290s\n\n\n\n\n\u82f1\u8a9e\u304b\u3089\u65e5\u672c\u8a9e\u306b\u7ffb\u8a33\n\u6a19\u6e96\u5165\u529b\u3092\u7ffb\u8a33\n\u30b3\u30de\u30f3\u30c9\u306e\u7d50\u679c\u3092\u7ffb\u8a33\n\n\n\n\n\n\n\nNote\n\n\n\ntranslate shell \u306a\u3069\u3068\u9055\u3044\u30ed\u30fc\u30ab\u30eb\u3067\u5b9f\u884c\u3067\u304d\u308b\u306e\u304c\u3044\u3044\u611f\u3058\u3060\u304c\u30de\u30b7\u30f3\u30b9\u30da\u30c3\u30af\u306b\u3088\u308a\u4f4e\u901f\uff0e\n\n\n\n\n\n\n\n\nGUI\n\n$ pip install argostranslategui\n$ argos-translate-gui\n\n\n\n\u7ffb\u8a33\u753b\u9762\n\n\n\n\u30e2\u30c7\u30eb\u306e\u78ba\u8a8d\uff0c\u524a\u9664\n\n\n\n\u30e2\u30c7\u30eb\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\n\n\n\n\n\n\n\nNote\n\n\n\n\u753b\u9762\u30b5\u30a4\u30ba\u3092\u5e83\u3052\u308b\u3053\u3068\u3067\u30c6\u30ad\u30b9\u30c8\u30a8\u30ea\u30a2\u3082\u5e83\u304c\u308a\u9577\u6587\u306b\u3082\u5bfe\u5fdc\u3057\u3084\u3059\u304f\uff0e\n\n\n\n\n\n\n\n\u5c11\u3057\u8a66\u3057\u305f\u3068\u3053\u308d\u77ed\u6587\u306a\u3089\u30b5\u30af\u30b5\u30af\u3068\u52d5\u304d\u307e\u3059\u304c\uff0cman \u306e\u7d50\u679c\u3092\u307e\u3068\u3081\u3066\u6e21\u3059\u306a\u3069\u3059\u308b\u3068\u3057\u3070\u3089\u304f\u5f85\u3064\u3053\u3068\u306b\uff0e\u4eba\u9593\u306e\u8aad\u3080\u901f\u5ea6\u3088\u308a\u306f\u901f\u3044\u306e\u3067\u5206\u3051\u3066\u6e21\u3059\u3088\u3046\u306b\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e(\u82e5\u3057\u304f\u306f\u5bfe\u5fdcGPU\u3092\u8ffd\u52a0\u3059\u308b\u306a\u3069\u30de\u30b7\u30f3\u30b9\u30da\u30c3\u30af\u3092\u4e0a\u3052\u308b\uff0e)\n\u7ffb\u8a33\u7cbe\u5ea6\u3082\u601d\u3063\u3066\u3044\u305f\u3088\u308a\u826f\u3044\u611f\u3058\u3067\uff0cGoogle\u7ffb\u8a33\u4ee5\u524d\u306e\u7ffb\u8a33\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3088\u308a\u305a\u3063\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\u7121\u6599\u7ffb\u8a33\u30b5\u30a4\u30c8\u306f\u7ffb\u8a33\u30c7\u30fc\u30bf\u304c\u4fdd\u5b58\uff0c\u5229\u7528\u3055\u308c\u308b\u3053\u3068\u304c\u591a\u3044\u306e\u3067\u30bb\u30f3\u30b7\u30c6\u30a3\u30d6\u306a\u3082\u306e\u306b\u306f\u4f7f\u3048\u306a\u3044\u306e\u3067\u3059\u304c\uff0cArgos Translate \u306a\u3089\u30ed\u30fc\u30ab\u30eb\u3067\u5b8c\u7d50\u3059\u308b\u306e\u3067\u305d\u306e\u3088\u3046\u306a\u30c7\u30fc\u30bf\u306e\u7ffb\u8a33\u306b\u3082\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\n\n\n\nNote\n\n\n\n\u9e7f\u5150\u5cf6Linux\u52c9\u5f37\u4f1a 2022.12 \u3067\u7d39\u4ecb\u3057\u307e\u3057\u305f\uff0e\n\n\n\n\n\n\n\n\n\u74b0\u5883\n\n$ dpkg-query -W python3\npython3 3.10.6-1\n$ lsb_release -dr\nDescription: Debian GNU/Linux bookworm/sid\nRelease: n/a\n$ arch\nx86_64", "date_published": "2022-12-22T20:23:52+09:00", "date_modified": "2022-12-22T20:25:37+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "argostranslate", "translate", "bookworm", "Debian", "Linux" ] } ] }