MTurk:3 个 HIT 中的最佳 2 个 creation/retrieval

MTurk: Best 2 out of 3 HIT creation/retrieval

想要的结果

我可以为给定的 HIT 检索商定的答案值

问题

当我打电话时

CLIENT.list_review_policy_results_for_hit(HITId=hit['HITId'])

要从 mturk 沙箱端点检索特定 HITId 的结果,约定答案的“值”是一个空字符串。我假设我在布局定义或 create_hit() 逻辑中遗漏了某种问题映射,但文档真的不清楚这应该如何工作,所以我什至不确定“list_review_policy_results_for_hit()”是检索结果的正确方法。

背景

我正在努力创建一个用于上传单个问题 HIT 的管道,其中 turker 应该将二进制等级的文本评为“质量”或“质量不佳”。我想用“三分之二的最佳”裁决来评估每个 HIT,其中将 HIT 提供给两个 turker 进行审查,如果需要决胜局则再提供一个第三个 turker。

我正在使用 SimplePlurality/2011-09-01 审核政策来处理“三选二”逻辑。

我很高兴根据要求包含更多 information/code 示例,但不想用不必要的信息使初始 post 膨胀。

您可能没有正确配置 ReviewPolicy。

能否分享您在 CreateHIT 请求中作为 HITReviewPolicy 参数传递的 ReviewPolicy?

我在下面分享了一个示例。您可以将 "your_question_id" 替换为您的 HIT 中的标识符。

谢谢

{
    'PolicyName': 'SimplePlurality/2011-09-01',
    'Parameters': [
        {
            'Key': 'QuestionIds',
            'Values': ['your_question_id']
        },
        {
            'Key': 'QuestionAgreementThreshold',
            'Values': ['66']
        },
        {
            'Key': 'ExtendIfHITAgreementScoreIsLessThan',
            'Values': ['100']
        },
        {
            'Key': 'ExtendMaximumAssignments',
            'Values': ['3']
        },
        {
            'Key': 'ExtendMinimumTimeInSeconds',
            'Values': ['86400']
        },
        {
            'Key': 'DisregardAssignmentIfRejected',
            'Values': ['T']
        }
    ]
}