Mechanical Turk On Rails


Published on

The Mechanical Turk is the only solution available for specific kind of tasks where human assistance cannot be replaced by machines. Think about moderation of images, web sites or videos that should go public inside your app for example. If you can’t hire people specifically for the task, you can give the Mechanical Turk a try. Interfacing with the Turk isn’t simple though: it’s a highly asynchronous interaction where you need to persist state, then checking for tasks in the queue and acting accordingly. The low level Ruby APIs from Amazon can be used to integrate the service into a Rails application but then you need specific classes to deal with it. This presentation illustrates patterns for creating tasks, observing Turk tasks, parsing results and send events back to the application.

Published in: Technology
1 Comment
  • You can take a look at my gem Turkee ( Built on top of RTurk, should help streamline the creation of external forms and importing the worker entered data back into your models.
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Mechanical Turk On Rails

  1. 1. AMooConf 2010, June 5, Rostock Mechanical Turk On Rails Renzo Borgatti
  2. 2. Rails iPhone Agile Productivity
  3. 3. when cpu power is not enough and cost is an issue human intelligence on-demand with a programmable approach
  4. 4. user generated content that must obey rules and restrictions or need classification visual or graphical aspects offensive content out-of-topics
  5. 5. requester submits a HIT properties: tags, expiration, $$ HIT rendered from a HTML Template worker accepts the HIT worker executes the task and earn $$ retrieve results when HIT Reviewable requester pays the worker or rejects
  6. 6. Rails Options web service call ... ruby-aws RTurk
  7. 7. Template Moderable Moderable Task Moderable Props Parser Engine Notify Callback Get Results
  8. 8. Ninja Tips initial performance test supervised training period add RAILS_ENV to HIT tags stub MechanicalTurkRequester
  9. 9. http:// http: // AWSMturkAPI/2008-08-02 h t t p : / / d e v e l o p e r. a m a z o n w e b s e r v i c e s . c o m / c o n n e c t / forum.jspa?forumID=11
  10. 10. http:// Me reborg AT @reborg http: // AWSMturkAPI/2008-08-02 h t t p : / / d e v e l o p e r. a m a z o n w e b s e r v i c e s . c o m / c o n n e c t / forum.jspa?forumID=11
  11. 11. http://The Talk // http: reborg/mechanical-turk-onrails http: // AWSMturkAPI/2008-08-02 h t t p : / / d e v e l o p e r. 3383-mechanical-turk-on-rails forum.jspa?forumID=11
  12. 12. Thanks! Questions? Rate my talk!