簡體   English   中英

AWS Sagemaker java.lang.IllegalArgumentException

[英]AWS Sagemaker java.lang.IllegalArgumentException

我有一個 SageMaker 端點。 SageMaker 端點正在通過 Lambda function 調用。 調用它的 Lambda function 代碼的一部分是:

SM_ENDPOINT_NAME = "pytorch-inference-2021-xx-xx"
sm_runtime= boto3.client('runtime.sagemaker')
txt = "Canon Compact Photo Printer"
response = sm_runtime.invoke_endpoint(EndpointName=SM_ENDPOINT_NAME, ContentType='text/plain', Body=txt)
print(response)

沒有記錄response 它應該返回一個vector

當 Lambda function 調用 SageMaker 端點時,它會超時。 我今天開始在 SageMaker Endpoint 日志中突然看到此錯誤:

java.lang.IllegalArgumentException: reasonPhrase contains one of the following prohibited characters: \r\n: tokenizers>=0.10.1,<0.11 is required for a normal functioning of this module, but found tokenizers==0.11.2.

Try: pip install transformers -U or pip install -e '.[dev]' if you're working with git master

對於上下文,ML Model 應該接受字符串輸入並返回vector (列表)。 我所有的代碼庫都在 Python3 中。 Java 異常似乎來自 SageMaker 后端。

幾個月來我還沒有更新 SageMaker 端點或 Lambda function。 這似乎是 SageMaker 的問題。

這是我可以解決的問題還是我需要聯系 AWS? 如果是這樣,我該怎么做?

根據您的錯誤,您似乎正在使用標記器模塊的 v0.11.2,並且該消息表明您應該使用 0.10.1 和 0.11 之間的版本。

嘗試卸載 tokenizers 模塊,然后通過 pip 拉取舊版本...

pip install 'tokenizers>=0.10.1,<0.11'

以下是所有發布版本供參考: https://pypi.org/project/tokenizers/#history

更新模塊后,再次部署 lambda function 看看是否能解決問題。

暫無
暫無

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

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