Próbuję wykorzystać boto do wygenerowania HIT w mechanicznej turk. Celem jest wykorzystanie wspólnego układu, który jest już generowany na moim koncie mTurk, i przekazywanie mu adresów obrazów do iteracyjnego tworzenia HIT-ów.Tworzenie mTurk HIT z układu przy użyciu parametrów przy użyciu boto i python
Problem polega na tym, że nawet w przypadku poprawnego nazwania parametru, jeśli adres URL obrazu nie jest pomyślny. Mój przykładowy kod do tworzenia hitem jest:
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)
ten generuje błąd Żądanie brakuje wymaganych parametrów. Wymagane parametry to HITLayoutParameter. Nie podałeś wszystkich wymaganych parametrów HITLayout. Brakuje nazwy parametrów: image_url
I tylko upewnić się, mój układ ID ma poprawnych nazw parametrów, kiedy sprawdzić mTurk widzę (nie można umieścić Screengrab):
Układ ID: 30W9SLHWRYCURO27D44916CUTGKDS2 Parametry: IMAGE_URL
czy są jakieś sztuczki do korzystania LayoutParameter? Czy używam create_hit w niewłaściwy sposób?