prev pScrapboxAutoTrans2023-04-18
from 継続的翻訳 (DeepL)継続的インテグレーションと継続的デリバリーは、自動化、頻繁な更新、迅速なフィードバック、品質保証など、共通のパターンを持っています。これらのパターンを翻訳や国際コミュニケーションの領域に適用することで、「継続的翻訳」という新しい概念を提案することができます。
pScrapboxAutoTrans2023-04-18のこれ
よくなったかどうか定量的に判断したいなぁ
2023-04-27
タイトル
Polis Experience Report: Do you want to investigate the causes of terrorism?Polis Experience Report: Should we investigate the causes of terrorism?アイコンの位置
Link
[detail https://scrapbox.io/nishio/Polis:%E3%83%86%E3%83%AD%E3%81%AE%E5%8E%9F%E5%9B%A0%E7%A9%B6%E6%98%8E%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%AE%E8%AD%B0%E8%AB%96#643d39f4aff09e0000dd6581]翻訳
以上が英文を読まずにわかるミス
次に英文をDeepLして眺める
fixed
全然終わってないな :
9%|███████▍ | 1279/14848 [2:45:52<21:35:30, 5.73s/it]
503 Server Error: Temporary Error for url: https://api.deepl.com/v2/translate
14%|███████████▊ | 2037/14848 [4:19:43<77:17:07, 21.72s/it]
('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer'))
26%|██████████████████████▎ | 3862/14848 [7:05:29<13:20:20, 4.37s/it]
3時間翻訳が走って、残り時間15時間の見積もりになっている(これは帰宅時に書いた)
下記のコードは翻訳サービスのAPIにリクエストを送ります。現在の下記のコードはAPIアクセスが直列化しているので遅いです。並列化して高速にしてください。
python
for page in pages:
for line in lines:
line["text"] = translate(line["text"])
あなたが要求しているように、Pythonの concurrent.futures ライブラリを使って、翻訳APIへのリクエストを並列化し、高速化することができます。以下にサンプルコードを示します。
python
import concurrent.futures
def translate_line(line):
return {"text": translate(line["text"])}
# 翻訳リクエストを並列化する
with concurrent.futures.ThreadPoolExecutor() as executor:
for page in pages:
# 各行に対して翻訳リクエストを送信
translated_lines = list(executor.map(translate_line, lines))
# 翻訳された行を元のリストに戻す
for i, translated_line in enumerate(translated_lines):
lines[i].update(translated_line)
便利〜
:
cache length: 273667
40%|████████████████████████████████████████████████████▏ | 6003/14848 [18:22<4:18:18, 1.75s/it]503 Server Error: Temporary Error for url: https://api.deepl.com/v2/translate
50%|████████████████████████████████████████████████████████████████▊ | 7461/14848 [38:26<1:00:26, 2.04it/s]503 Server Error: Temporary Error for url: https://api.deepl.com/v2/translate
51%|██████████████████████████████████████████████████████████████████ | 7606/14848 [41:43<1:25:02, 1.42it/s]503 Server Error: Temporary Error for url: https://api.deepl.com/v2/translate
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 14848/14848 [53:34<00:00, 4.62it/s]
total 29370658 no_cache 1581996 ratio 0.05386314463911568
translate: 3218.0509019168094
おー、1時間弱で残りが終わった。