簡體   English   中英

Python - IBM Watson Language Translator v3 - 上傳文件內容並下載結果

[英]Python - IBM Watson Language Translator v3 - uploading content of a file and downloading the result

我正在嘗試使用適用於 IBM Watson Language Translator v3 的 Python SDK,測試翻譯實際文檔的 beta 功能。 以下是我的代碼:-

from ibm_watson import LanguageTranslatorV3
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator

API = "1234567890abcdefg"
GATEWAY = 'https://gateway-lon.watsonplatform.net/language-translator/api'

document_list = []

"""The below authenticates to the IBM Watson service and initiates an instance"""
authenticator = IAMAuthenticator(API)
language_translator = LanguageTranslatorV3(
    version='2018-05-01',
    authenticator=authenticator
)

language_translator.set_service_url(GATEWAY)

submission = language_translator.translate_document(file="myfile.txt", filename="myfile.txt", file_content_type='text/plain', model_id=None, source='en', target='es', document_id=None)
document_list.append(submission.result['document_id'])

while len(document_list) > 0:
    for document in document_list:
        document_status = language_translator.get_document_status(document)
        if document_status.result['status'] == "available":
            translated_document = language_translator.get_translated_document(document)
            document_list.remove(document)
            language_translator.delete_document(document)

關於這個的幾個問題:-

  1. 當我檢查“translated_document”的內容時,它實際上不包含任何內容。 它包含響應的標頭和 HTTP 狀態,但沒有實際翻譯的內容
  2. 我決定使用 CURL 下載我上傳的文檔,而不是上傳 .txt 文件的實際內容進行翻譯,當通過 CURL 下載翻譯文件時,內容似乎是實際文件名 (myfile.txt)正在提交翻譯而不是文件的內容。

對此進行研究並查看實際的 IBM Watson Github 存儲庫,看來我可能必須將“myfile.txt”的內容讀取到一個變量,然后在提交翻譯時將此變量作為“file={my_variable}”傳遞,但沒有這不是破壞了能夠提交實際文件進行翻譯的目的嗎? 這與提供的傳統服務有何不同?

有人可以告訴我我做錯了什么嗎? 例如,我嘗試了多種方法(將“translated_content”的值寫入文件),但我似乎無法獲取翻譯的內容,也無法將文件的內容實際上傳到服務,相反,我只是似乎提交了文件名。

謝謝大家

translate_documentfile參數應該是要翻譯的實際內容。 我意識到文檔中並不清楚,但這就是服務的工作方式。 因此,請嘗試在file參數中傳遞您要翻譯的實際內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM