gpt4 book ai didi

python - 使用 boto 和 python 从带有参数的布局创建 mTurk HIT

转载 作者:太空狗 更新时间:2023-10-30 01:21:45 26 4
gpt4 key购买 nike

我正在尝试利用 boto 在 Mechanical Turk 中生成 HIT。目标是使用已在我的 mTurk 帐户上生成的通用布局,并将图像的 url 传递给它以迭代创建 HIT。

问题是即使正确命名参数,如果图像 urls boto 不成功。我创建命中的示例代码是:

from boto.mturk.connection import MTurkConnection
from boto.s3.connection import S3Connection
from boto.mturk.layoutparam import LayoutParameter
from boto.s3.key import Key
import datetime

mtc = MTurkConnection(aws_access_key_id=AWSKEY,
aws_secret_access_key=AWSSKEY,
host=HOST)

#Define the layout ID to use and url to the image being used (bucket and serial defined in another place
LAYOUTID = '30W9SLHWRYCURO27D44916CUTGKDS2'
S3URL = LayoutParameter('image_url','https://s3.amazonaws.com/'+BUCKET_NAME+'/'+SERIAL)
REWARD = 0.05

#Call create_hit to generate the HIT
hit_result = mtc.create_hit(hit_layout=LAYOUTID,layout_params=S3URL, keywords=keywords_list, reward=REWARD,
duration=datetime.timedelta(7),max_assignments=1)

这会产生错误您的请求缺少必需的参数。必需的参数包括 HITLayoutParameter。您没有提供所有必需的 HITLayout 参数。缺少参数名称:image_url

只是为了确保我的布局 ID 具有正确的参数名称,当我检查 mTurk 时我看到了(无法发布屏幕截图):

Layout ID: 30W9SLHWRYCURO27D44916CUTGKDS2 Parameters: image_url

使用 LayoutParameter 有什么技巧吗?还是我以错误的方式使用了 create_hit?

最佳答案

您好,我知道现在回答有点晚了,但这是您需要做的。将布局参数放入LayoutParameter类后,再打包到一个LayoutParameters类中。例如。

......
from boto.mturk.layoutparam import LayoutParameter
from boto.mturk.layoutparam import LayoutParameters
........

S3URL = LayoutParameter('image_url','https://s3.amazonaws.com/'+BUCKET_NAME+'/'+SERIAL)

# put the layout parameter in a list/tuple and pass it to LayoutParameters
params = LayoutParameters([S3URL])

hit_result = mtc.create_hit(hit_layout=LAYOUTID,layout_params=params, keywords=keywords_list, reward=REWARD,
duration=datetime.timedelta(7),max_assignments=1)

关于python - 使用 boto 和 python 从带有参数的布局创建 mTurk HIT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29202837/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com