Co-Reference Resolution, Query Generation, Retrieval Model, Result Generation
EXTRACTIVE
conversational search, conversational question answering, conversational recommendation, conversational natural language interface to structured and semi-structured data
EXTRACTIVE
Co-Reference Resolution: To support multi-turn interactions, it is sometimes necessary to use co-reference resolution techniques for effective retrieval. In Macaw, we identify all the co-references from the last request of user to the conversation history. The same co-reference resolution outputs can be used for different query generation components. This can be a generic or action-specific component. Query Generation: This component generates a query based on the past user-system interactions. The query generation component may take advantage of co-reference resolution for query expansion or re-writing. Retrieval Model: This is the core ranking component that retrieves documents or passages from a large collection. Macaw can retrieve documents from an arbitrary document collection using the Indri python interface BIBREF9, BIBREF10. We also provide the support for web search using the Bing Web Search API. Macaw also allows multi-stage document re-ranking. Result Generation: The retrieved documents can be too long to be presented using some interfaces. Result generation is basically a post-processing step ran on the retrieved result list. In case of question answering, it can employ answer selection or generation techniques, such as machine reading comprehension models. For example, Macaw features the DrQA model BIBREF11 for question answering.
Macaw is designed based on a modular architecture to support different information seeking tasks, including conversational search, conversational question answering, conversational recommendation, and conversational natural language interface to structured and semi-structured data. Each interaction in Macaw (from both user and system) is a Message object, thus a conversation is a list of Messages. Macaw consists of multiple actions, each action is a module that can satisfy the information needs of users for some requests. For example, search and question answering can be two actions in Macaw. Even multiple search algorithms can be also seen as multiple actions. Each action can produce multiple outputs (e.g., multiple retrieved documents). For every user interaction, Macaw runs all actions in parallel. The actions' outputs produced within a predefined time interval (i.e., an interaction timeout constant) are then post-processed. Macaw can choose one or combine multiple of these outputs and prepare an output Message object as the user's response.
1912.08904
Introduction </s> The Ġrapid Ġgrowth Ġin Ġspeech Ġand Ġsmall Ġscreen Ġinterfaces , Ġparticularly Ġon Ġmobile Ġdevices , Ġhas Ġsignificantly Ġinfluenced Ġthe Ġway Ġusers Ġinteract Ġwith Ġintelligent Ġsystems Ġto Ġsatisfy Ġtheir Ġinformation Ġneeds . ĠThe Ġgrowing Ġinterest Ġin Ġpersonal Ġdigital Ġassistants , Ġsuch Ġas ĠAmazon ĠAlexa , ĠApple ĠSiri , ĠGoogle ĠAssistant , Ġand ĠMicrosoft ĠCortana , Ġdemonstrates Ġthe Ġwillingness Ġof Ġusers Ġto Ġemploy Ġconvers ational Ġinteractions ĠB IB REF 0 . ĠAs Ġa Ġresult , Ġconvers ational Ġinformation Ġseeking Ġ( C IS ) Ġhas Ġbeen Ġrecognized Ġas Ġa Ġmajor Ġemerging Ġresearch Ġarea Ġin Ġthe ĠThird ĠStrategic ĠWorkshop Ġon ĠInformation ĠRet ri eval Ġ( SW IR L Ġ2018 ) ĠB IB REF 1 . </s> Research Ġprogress Ġin ĠCIS Ġrelies Ġon Ġthe Ġavailability Ġof Ġresources Ġto Ġthe Ġcommunity . ĠThere Ġhave Ġbeen Ġrecent Ġefforts Ġon Ġproviding Ġdata Ġfor Ġvarious ĠCIS Ġtasks , Ġsuch Ġas Ġthe ĠT REC Ġ2019 ĠConvers ational ĠAssistance ĠTrack Ġ( C As T ), ĠM ISC ĠB IB REF 2 , ĠQ ul ac ĠB IB REF 3 , ĠCo Q A ĠB IB REF 4 , ĠQu AC ĠB IB REF 5 , ĠSC S ĠB IB REF 6 , Ġand ĠCCP E - M ĠB IB REF 7 . ĠIn Ġaddition , ĠB IB REF 8 Ġhave Ġimplemented Ġa Ġdemonstration Ġfor Ġconvers ational Ġmovie Ġrecommendation Ġbased Ġon ĠGoogle 's ĠDial og Flow . ĠDespite Ġall Ġof Ġthese Ġresources , Ġthe Ġcommunity Ġstill Ġfeels Ġthe Ġlack Ġof Ġa Ġsuitable Ġplatform Ġfor Ġdeveloping ĠCIS Ġsystems . ĠWe Ġbelieve Ġthat Ġproviding Ġsuch Ġplatform Ġwill Ġspeed Ġup Ġthe Ġprogress Ġin Ġconvers ational Ġinformation Ġseeking Ġresearch . ĠTherefore , Ġwe Ġdeveloped Ġa Ġgeneral Ġframework Ġfor Ġsupporting ĠCIS Ġresearch . ĠThe Ġframework Ġis Ġcalled ĠMac aw . ĠThis Ġpaper Ġdescribes Ġthe Ġhigh - level Ġarchitecture Ġof ĠMac aw , Ġthe Ġsupported Ġfunctionality , Ġand Ġour Ġfuture Ġvision . ĠResearchers Ġworking Ġon Ġvarious ĠCIS Ġtasks Ġshould Ġbe Ġable Ġto Ġtake Ġadvantage Ġof ĠMac aw Ġin Ġtheir Ġprojects . </s> Mac aw Ġis Ġdesigned Ġbased Ġon Ġa Ġmodular Ġarchitecture Ġto Ġsupport Ġdifferent Ġinformation Ġseeking Ġtasks , Ġincluding Ġconvers ational Ġsearch , Ġconvers ational Ġquestion Ġanswering , Ġconvers ational Ġrecommendation , Ġand Ġconvers ational Ġnatural Ġlanguage Ġinterface Ġto Ġstructured Ġand Ġsemi - struct ured Ġdata . ĠEach Ġinteraction Ġin ĠMac aw Ġ( from Ġboth Ġuser Ġand Ġsystem ) Ġis Ġa ĠMessage Ġobject , Ġthus Ġa Ġconversation Ġis Ġa Ġlist Ġof ĠMessages . ĠMac aw Ġconsists Ġof Ġmultiple Ġactions , Ġeach Ġaction Ġis Ġa Ġmodule Ġthat Ġcan Ġsatisfy Ġthe Ġinformation Ġneeds Ġof Ġusers Ġfor Ġsome Ġrequests . ĠFor Ġexample , Ġsearch Ġand Ġquestion Ġanswering Ġcan Ġbe Ġtwo Ġactions Ġin ĠMac aw . ĠEven Ġmultiple Ġsearch Ġalgorithms Ġcan Ġbe Ġalso Ġseen Ġas Ġmultiple Ġactions . ĠEach Ġaction Ġcan Ġproduce Ġmultiple Ġoutputs Ġ( e . g ., Ġmultiple Ġretrieved Ġdocuments ). ĠFor Ġevery Ġuser Ġinteraction , ĠMac aw Ġruns Ġall Ġactions Ġin Ġparallel . ĠThe Ġactions ' Ġoutputs Ġproduced Ġwithin Ġa Ġpred efined Ġtime Ġinterval Ġ( i . e ., Ġan Ġinteraction Ġtimeout Ġconstant ) Ġare Ġthen Ġpost - process ed . ĠMac aw Ġcan Ġchoose Ġone Ġor Ġcombine Ġmultiple Ġof Ġthese Ġoutputs Ġand Ġprepare Ġan Ġoutput ĠMessage Ġobject Ġas Ġthe Ġuser 's Ġresponse . </s> The Ġmodular Ġdesign Ġof ĠMac aw Ġmakes Ġit Ġrelatively Ġeasy Ġto Ġconfigure Ġa Ġdifferent Ġuser Ġinterface Ġor Ġadd Ġa Ġnew Ġone . ĠThe Ġcurrent Ġimplementation Ġof ĠMac aw Ġsupports Ġa Ġcommand Ġline Ġinterface Ġas Ġwell Ġas Ġmobile , Ġdesktop , Ġand Ġweb Ġapps . ĠIn Ġmore Ġdetail , ĠMac aw 's Ġinterface Ġcan Ġbe Ġa ĠTelegram Ġbot , Ġwhich Ġsupports Ġa Ġwide Ġrange Ġof Ġdevices Ġand Ġoperating Ġsystems Ġ( see ĠFIG REF 4 ). ĠThis Ġallows ĠMac aw Ġto Ġsupport Ġmulti - mod al Ġinteractions , Ġsuch Ġas Ġtext , Ġspeech , Ġimage , Ġclick , Ġetc . ĠA Ġnumber Ġof ĠAPIs Ġfor Ġautomatic Ġspeech Ġrecognition Ġand Ġgeneration Ġhave Ġbeen Ġemployed Ġto Ġsupport Ġspeech Ġinteractions . ĠNote Ġthat Ġthe ĠMac aw 's Ġarchitecture Ġand Ġimplementation Ġallows Ġmixed - in iti ative Ġinteractions . </s> The Ġresearch Ġcommunity Ġcan Ġbenefit Ġfrom ĠMac aw Ġfor Ġthe Ġfollowing Ġpurposes : </s> [ left margin = * ] </s> Develop ing Ġalgorithms , Ġtools , Ġand Ġtechniques Ġfor ĠCIS . </s> Stud ying Ġuser Ġinteractions Ġwith ĠCIS Ġsystems . </s> Per forming ĠCIS Ġstudies Ġbased Ġon Ġan Ġintermediary Ġperson Ġand Ġwizard Ġof Ġoz . </s> Prep aring Ġquick Ġdemonstration Ġfor Ġa Ġdeveloped ĠCIS Ġmodel . </s> Mac aw ĠArchitecture </s> Mac aw Ġhas Ġa Ġmodular Ġdesign , Ġwith Ġthe Ġgoal Ġof Ġmaking Ġit Ġeasy Ġto Ġconfigure Ġand Ġadd Ġnew Ġmodules Ġsuch Ġas Ġa Ġdifferent Ġuser Ġinterface Ġor Ġdifferent Ġretrieval Ġmodule . ĠThe Ġoverall Ġsetup Ġalso Ġfollows Ġa ĠModel - View - Controller Ġ( M VC ) Ġlike Ġarchitecture . ĠThe Ġdesign Ġdecisions Ġhave Ġbeen Ġmade Ġto Ġsmooth Ġthe ĠMac aw 's Ġadopt ions Ġand Ġextensions . ĠMac aw Ġis Ġimplemented Ġin ĠPython , Ġthus Ġmachine Ġlearning Ġmodels Ġimplemented Ġusing ĠPy Tor ch , ĠSci kit - learn , Ġor ĠT ensor Flow Ġcan Ġbe Ġeasily Ġintegrated Ġinto ĠMac aw . ĠThe Ġhigh - level Ġoverview Ġof ĠMac aw Ġis Ġdepicted Ġin ĠFIG REF 8 . ĠThe Ġuser Ġinteracts Ġwith Ġthe Ġinterface Ġand Ġthe Ġinterface Ġproduces Ġa ĠMessage Ġobject Ġfrom Ġthe Ġcurrent Ġinteraction Ġof Ġuser . ĠThe Ġinteraction Ġcan Ġbe Ġin Ġmulti - mod al Ġform , Ġsuch Ġas Ġtext , Ġspeech , Ġimage , Ġand Ġclick . ĠMac aw Ġstores Ġall Ġinteractions Ġin Ġan ĠâĢ ľ Inter action ĠDatabase âĢ Ŀ . ĠFor Ġevery Ġinteraction , ĠMac aw Ġlooks Ġfor Ġmost Ġrecent Ġuser - system Ġinteractions Ġ( including Ġthe Ġsystem 's Ġresponses ) Ġto Ġcreate Ġa Ġlist Ġof ĠMessages , Ġcalled Ġthe Ġconversation Ġlist . ĠIt Ġis Ġthen Ġdispatched Ġto Ġmultiple Ġinformation Ġseeking Ġ( and Ġrelated ) Ġactions . ĠThe Ġactions Ġrun Ġin Ġparallel , Ġand Ġeach Ġshould Ġrespond Ġwithin Ġa Ġpre - defined Ġtime Ġinterval . ĠThe Ġoutput Ġselection Ġcomponent Ġselects Ġfrom Ġ( or Ġpotentially Ġcombines ) Ġthe Ġoutputs Ġgenerated Ġby Ġdifferent Ġactions Ġand Ġcreates Ġa ĠMessage Ġobject Ġas Ġthe Ġsystem 's Ġresponse . ĠThis Ġmessage Ġis Ġlogged Ġinto Ġthe Ġinteraction Ġdatabase Ġand Ġis Ġsent Ġto Ġthe Ġinterface Ġto Ġbe Ġpresented Ġto Ġthe Ġuser . ĠAgain , Ġthe Ġresponse Ġmessage Ġcan Ġbe Ġmulti - mod al Ġand Ġinclude Ġtext , Ġspeech , Ġlink , Ġlist Ġof Ġoptions , Ġetc . </s> Mac aw Ġalso Ġsupports ĠWizard Ġof ĠOz Ġstudies Ġor Ġintermediary - based Ġinformation Ġseeking Ġstudies . ĠThe Ġarchitecture Ġof ĠMac aw Ġfor Ġsuch Ġsetup Ġis Ġpresented Ġin ĠFIG REF 16 . ĠAs Ġshown Ġin Ġthe Ġfigure , Ġthe Ġseeker Ġinteracts Ġwith Ġa Ġreal Ġconvers ational Ġinterface Ġthat Ġsupports Ġmulti - mod al Ġand Ġmixed - in iti ative Ġinteractions Ġin Ġmultiple Ġdevices . ĠThe Ġintermediary Ġ( or Ġthe Ġwizard ) Ġreceives Ġthe Ġseeker 's Ġmessage Ġand Ġperforms Ġdifferent Ġinformation Ġseeking Ġactions Ġwith ĠMac aw . ĠAll Ġseeker - inter medi ary Ġand Ġintermediary - system Ġinteractions Ġwill Ġbe Ġlogged Ġfor Ġfurther Ġanalysis . ĠThis Ġsetup Ġcan Ġsimulate Ġan Ġideal ĠCIS Ġsystem Ġand Ġthus Ġis Ġuseful Ġfor Ġcollecting Ġhigh - quality Ġdata Ġfrom Ġreal Ġusers Ġfor ĠCIS Ġresearch . </s> Ret ri eval Ġand ĠQuestion ĠAn sw ering Ġin ĠMac aw </s> The Ġoverview Ġof Ġretrieval Ġand Ġquestion Ġanswering Ġactions Ġin ĠMac aw Ġis Ġshown Ġin ĠFIG REF 17 . ĠThese Ġactions Ġconsist Ġof Ġthe Ġfollowing Ġcomponents : </s> [ left margin = * ] </s> Co - Reference ĠResolution : ĠTo Ġsupport Ġmulti - turn Ġinteractions , Ġit Ġis Ġsometimes Ġnecessary Ġto Ġuse Ġco - reference Ġresolution Ġtechniques Ġfor Ġeffective Ġretrieval . ĠIn ĠMac aw , Ġwe Ġidentify Ġall Ġthe Ġco - ref erences Ġfrom Ġthe Ġlast Ġrequest Ġof Ġuser Ġto Ġthe Ġconversation Ġhistory . ĠThe Ġsame Ġco - reference Ġresolution Ġoutputs Ġcan Ġbe Ġused Ġfor Ġdifferent Ġquery Ġgeneration Ġcomponents . ĠThis Ġcan Ġbe Ġa Ġgeneric Ġor Ġaction - specific Ġcomponent . </s> Query ĠGeneration : ĠThis Ġcomponent Ġgenerates Ġa Ġquery Ġbased Ġon Ġthe Ġpast Ġuser - system Ġinteractions . ĠThe Ġquery Ġgeneration Ġcomponent Ġmay Ġtake Ġadvantage Ġof Ġco - reference Ġresolution Ġfor Ġquery Ġexpansion Ġor Ġre - writing . </s> Ret ri eval ĠModel : ĠThis Ġis Ġthe Ġcore Ġranking Ġcomponent Ġthat Ġretrie ves Ġdocuments Ġor Ġpassages Ġfrom Ġa Ġlarge Ġcollection . ĠMac aw Ġcan Ġretrieve Ġdocuments Ġfrom Ġan Ġarbitrary Ġdocument Ġcollection Ġusing Ġthe ĠInd ri Ġpython Ġinterface ĠB IB REF 9 , ĠB IB REF 10 . ĠWe Ġalso Ġprovide Ġthe Ġsupport Ġfor Ġweb Ġsearch Ġusing Ġthe ĠBing ĠWeb ĠSearch ĠAPI . ĠMac aw Ġalso Ġallows Ġmulti - stage Ġdocument Ġre - ranking . </s> Result ĠGeneration : ĠThe Ġretrieved Ġdocuments Ġcan Ġbe Ġtoo Ġlong Ġto Ġbe Ġpresented Ġusing Ġsome Ġinterfaces . ĠResult Ġgeneration Ġis Ġbasically Ġa Ġpost - processing Ġstep Ġran Ġon Ġthe Ġretrieved Ġresult Ġlist . ĠIn Ġcase Ġof Ġquestion Ġanswering , Ġit Ġcan Ġemploy Ġanswer Ġselection Ġor Ġgeneration Ġtechniques , Ġsuch Ġas Ġmachine Ġreading Ġcomprehension Ġmodels . ĠFor Ġexample , ĠMac aw Ġfeatures Ġthe ĠDr Q A Ġmodel ĠB IB REF 11 Ġfor Ġquestion Ġanswering . </s> These Ġcomponents Ġare Ġimplemented Ġin Ġa Ġgeneric Ġform , Ġso Ġresearchers Ġcan Ġeasily Ġreplace Ġthem Ġwith Ġtheir Ġown Ġfavorite Ġalgorithms . </s> User ĠInter faces </s> We Ġhave Ġimplemented Ġthe Ġfollowing Ġinterfaces Ġfor ĠMac aw : </s> [ left margin = * ] </s> File ĠIO : ĠThis Ġinterface Ġis Ġdesigned Ġfor Ġexperimental Ġpurposes , Ġsuch Ġas Ġevaluating Ġthe Ġperformance Ġof Ġa Ġconvers ational Ġsearch Ġtechnique Ġon Ġa Ġdataset Ġwith Ġmultiple Ġqueries . ĠThis Ġis Ġnot Ġan Ġinteractive Ġinterface . </s> Standard ĠIO : ĠThis Ġinteractive Ġcommand Ġline Ġinterface Ġis Ġdesigned Ġfor Ġdevelopment Ġpurposes Ġto Ġinteract Ġwith Ġthe Ġsystem , Ġsee Ġthe Ġlogs , Ġand Ġdebug Ġor Ġimprove Ġthe Ġsystem . </s> Te legram : ĠThis Ġinteractive Ġinterface Ġis Ġdesigned Ġfor Ġinteraction Ġwith Ġreal Ġusers Ġ( see ĠFIG REF 4 ). ĠTelegram Ġis Ġa Ġpopular Ġinstant Ġmessaging Ġservice Ġwhose Ġclient - side Ġcode Ġis Ġopen - source . ĠWe Ġhave Ġimplemented Ġa ĠTelegram Ġbot Ġthat Ġcan Ġbe Ġused Ġwith Ġdifferent Ġdevices Ġ( personal Ġcomputers , Ġtablets , Ġand Ġmobile Ġphones ) Ġand Ġdifferent Ġoperating Ġsystems Ġ( Android , ĠiOS , ĠLinux , ĠMac ĠOS , Ġand ĠWindows ). ĠThis Ġinterface Ġallows Ġmulti - mod al Ġinteractions Ġ( text , Ġspeech , Ġclick , Ġimage ). ĠIt Ġcan Ġbe Ġalso Ġused Ġfor Ġspeech - only Ġinteractions . ĠFor Ġspeech Ġrecognition Ġand Ġgeneration , ĠMac aw Ġrelies Ġon Ġonline ĠAPIs , Ġe . g ., Ġthe Ġservices Ġprovided Ġby ĠGoogle ĠCloud Ġand ĠMicrosoft ĠAzure . ĠIn Ġaddition , Ġthere Ġexist Ġmultiple Ġpopular Ġgroups Ġand Ġchannels Ġin ĠTelegram , Ġwhich Ġallows Ġfurther Ġintegration Ġof Ġsocial Ġnetworks Ġwith Ġconvers ational Ġsystems . ĠFor Ġexample , Ġsee Ġthe ĠN aser i Ġand ĠZam ani 's Ġstudy Ġon Ġnews Ġpopularity Ġin ĠTelegram ĠB IB REF 12 . </s> Similar Ġto Ġthe Ġother Ġmodules , Ġone Ġcan Ġeasily Ġextend ĠMac aw Ġusing Ġother Ġappropriate Ġuser Ġinterfaces . </s> Lim itations Ġand ĠFuture ĠWork </s> The Ġcurrent Ġimplementation Ġof ĠMac aw Ġlacks Ġthe Ġfollowing Ġactions . ĠWe Ġintend Ġto Ġincrement ally Ġimprove ĠMac aw Ġby Ġsupporting Ġmore Ġactions Ġand Ġeven Ġmore Ġadvanced Ġtechniques Ġfor Ġthe Ġdeveloped Ġactions . </s> [ left margin = * ] </s> Clar ification Ġand ĠPre ference ĠE lic itation : ĠAs king Ġclar ifying Ġquestions Ġhas Ġbeen Ġrecently Ġrecognized Ġas Ġa Ġnecessary Ġcomponent Ġin Ġa Ġconvers ational Ġsystem ĠB IB REF 3 , ĠB IB REF 7 . ĠThe Ġauthors Ġare Ġnot Ġaware Ġof Ġa Ġpublished Ġsolution Ġfor Ġgenerating Ġclar ifying Ġquestions Ġusing Ġpublic Ġresources . ĠTherefore , ĠMac aw Ġdoes Ġnot Ġcurrently Ġsupport Ġclarification . </s> Ex plan ation : ĠDespite Ġits Ġimportance , Ġresult Ġlist Ġexplanation Ġis Ġalso Ġa Ġrelatively Ġless Ġexplored Ġtopic . ĠWe Ġintend Ġto Ġextend ĠMac aw Ġwith Ġresult Ġlist Ġexplanation Ġas Ġsoon Ġas Ġwe Ġfind Ġa Ġstable Ġand Ġmature Ġsolution . </s> Recommend ation : ĠIn Ġour Ġfirst Ġrelease , Ġwe Ġfocus Ġon Ġconvers ational Ġsearch Ġand Ġquestion Ġanswering Ġtasks . ĠWe Ġintend Ġto Ġprovide Ġsupport Ġfor Ġconvers ational Ġrecommendation , Ġe . g ., ĠB IB REF 13 , ĠB IB REF 14 , ĠB IB REF 15 , Ġand Ġjoint Ġsearch Ġand Ġrecommendation , Ġe . g ., ĠB IB REF 16 , ĠB IB REF 17 , Ġin Ġthe Ġfuture . </s> Natural ĠLanguage ĠInterface : ĠMac aw Ġcan Ġpotentially Ġsupport Ġaccess Ġto Ġstructured Ġdata , Ġsuch Ġas Ġknowledge Ġgraph . ĠWe Ġwould Ġlike Ġto Ġease Ġconvers ational Ġnatural Ġlanguage Ġinterface Ġto Ġstructured Ġand Ġsemi - struct ured Ġdata Ġin Ġour Ġfuture Ġreleases . </s> Cont ribution </s> Mac aw Ġis Ġdistributed Ġunder Ġthe ĠMIT ĠLicense . ĠWe Ġwelcome Ġcontributions Ġand Ġsuggestions . ĠMost Ġcontributions Ġrequire Ġyou Ġto Ġagree Ġto Ġa ĠContribut or ĠLicense ĠAgreement Ġ( CLA ) Ġdeclaring Ġthat Ġyou Ġhave Ġthe Ġright Ġto , Ġand Ġactually Ġdo , Ġgrant Ġus Ġthe Ġrights Ġto Ġuse Ġyour Ġcontribution . ĠFor Ġdetails , Ġvisit Ġhttps :// cl a . opens ource . microsoft . com . ĠThis Ġproject Ġhas Ġadopted Ġthe ĠMicrosoft ĠOpen ĠSource ĠCode Ġof ĠConduct . </s> When Ġyou Ġsubmit Ġa Ġpull Ġrequest , Ġa ĠCLA Ġbot Ġwill Ġautomatically Ġdetermine Ġwhether Ġyou Ġneed Ġto Ġprovide Ġa ĠCLA Ġand Ġdecor ate Ġthe ĠPR Ġappropriately Ġ( e . g ., Ġstatus Ġcheck , Ġcomment ). ĠSimply Ġfollow Ġthe Ġinstructions Ġprovided Ġby Ġthe Ġbot . ĠYou Ġwill Ġonly Ġneed Ġto Ġdo Ġthis Ġonce Ġacross Ġall Ġrep os Ġusing Ġour ĠCLA . </s> Con clusions </s> This Ġpaper Ġdescribed ĠMac aw , Ġan Ġopen - source Ġplatform Ġfor Ġconvers ational Ġinformation Ġseeking Ġresearch . ĠMac aw Ġsupports Ġmulti - turn , Ġmulti - mod al , Ġand Ġmixed - in iti ative Ġinteractions . ĠIt Ġwas Ġdesigned Ġbased Ġon Ġa Ġmodular Ġarchitecture Ġthat Ġallows Ġfurther Ġimprovements Ġand Ġextensions . ĠResearchers Ġcan Ġbenefit Ġfrom ĠMac aw Ġfor Ġdeveloping Ġalgorithms Ġand Ġtechniques Ġfor Ġconvers ational Ġinformation Ġseeking Ġresearch , Ġfor Ġuser Ġstudies Ġwith Ġdifferent Ġinterfaces , Ġfor Ġdata Ġcollection Ġfrom Ġreal Ġusers , Ġand Ġfor Ġpreparing Ġa Ġdemonstration Ġof Ġa ĠCIS Ġmodel . </s> Acknowled gements </s> The Ġauthors Ġwish Ġto Ġthank ĠAhmed ĠHassan ĠAw ad allah , ĠKris z t ian ĠBal og , Ġand ĠAr jen ĠP . Ġde ĠV ries Ġfor Ġtheir Ġinvaluable Ġfeedback .
Introduction The rapid growth in speech and small screen interfaces, particularly on mobile devices, has significantly influenced the way users interact with intelligent systems to satisfy their information needs. The growing interest in personal digital assistants, such as Amazon Alexa, Apple Siri, Google Assistant, and Microsoft Cortana, demonstrates the willingness of users to employ conversational interactions BIBREF0. As a result, conversational information seeking (CIS) has been recognized as a major emerging research area in the Third Strategic Workshop on Information Retrieval (SWIRL 2018) BIBREF1. Research progress in CIS relies on the availability of resources to the community. There have been recent efforts on providing data for various CIS tasks, such as the TREC 2019 Conversational Assistance Track (CAsT), MISC BIBREF2, Qulac BIBREF3, CoQA BIBREF4, QuAC BIBREF5, SCS BIBREF6, and CCPE-M BIBREF7. In addition, BIBREF8 have implemented a demonstration for conversational movie recommendation based on Google's DialogFlow. Despite all of these resources, the community still feels the lack of a suitable platform for developing CIS systems. We believe that providing such platform will speed up the progress in conversational information seeking research. Therefore, we developed a general framework for supporting CIS research. The framework is called Macaw. This paper describes the high-level architecture of Macaw, the supported functionality, and our future vision. Researchers working on various CIS tasks should be able to take advantage of Macaw in their projects. Macaw is designed based on a modular architecture to support different information seeking tasks, including conversational search, conversational question answering, conversational recommendation, and conversational natural language interface to structured and semi-structured data. Each interaction in Macaw (from both user and system) is a Message object, thus a conversation is a list of Messages. Macaw consists of multiple actions, each action is a module that can satisfy the information needs of users for some requests. For example, search and question answering can be two actions in Macaw. Even multiple search algorithms can be also seen as multiple actions. Each action can produce multiple outputs (e.g., multiple retrieved documents). For every user interaction, Macaw runs all actions in parallel. The actions' outputs produced within a predefined time interval (i.e., an interaction timeout constant) are then post-processed. Macaw can choose one or combine multiple of these outputs and prepare an output Message object as the user's response. The modular design of Macaw makes it relatively easy to configure a different user interface or add a new one. The current implementation of Macaw supports a command line interface as well as mobile, desktop, and web apps. In more detail, Macaw's interface can be a Telegram bot, which supports a wide range of devices and operating systems (see FIGREF4). This allows Macaw to support multi-modal interactions, such as text, speech, image, click, etc. A number of APIs for automatic speech recognition and generation have been employed to support speech interactions. Note that the Macaw's architecture and implementation allows mixed-initiative interactions. The research community can benefit from Macaw for the following purposes: [leftmargin=*] Developing algorithms, tools, and techniques for CIS. Studying user interactions with CIS systems. Performing CIS studies based on an intermediary person and wizard of oz. Preparing quick demonstration for a developed CIS model. Macaw Architecture Macaw has a modular design, with the goal of making it easy to configure and add new modules such as a different user interface or different retrieval module. The overall setup also follows a Model-View-Controller (MVC) like architecture. The design decisions have been made to smooth the Macaw's adoptions and extensions. Macaw is implemented in Python, thus machine learning models implemented using PyTorch, Scikit-learn, or TensorFlow can be easily integrated into Macaw. The high-level overview of Macaw is depicted in FIGREF8. The user interacts with the interface and the interface produces a Message object from the current interaction of user. The interaction can be in multi-modal form, such as text, speech, image, and click. Macaw stores all interactions in an “Interaction Database”. For every interaction, Macaw looks for most recent user-system interactions (including the system's responses) to create a list of Messages, called the conversation list. It is then dispatched to multiple information seeking (and related) actions. The actions run in parallel, and each should respond within a pre-defined time interval. The output selection component selects from (or potentially combines) the outputs generated by different actions and creates a Message object as the system's response. This message is logged into the interaction database and is sent to the interface to be presented to the user. Again, the response message can be multi-modal and include text, speech, link, list of options, etc. Macaw also supports Wizard of Oz studies or intermediary-based information seeking studies. The architecture of Macaw for such setup is presented in FIGREF16. As shown in the figure, the seeker interacts with a real conversational interface that supports multi-modal and mixed-initiative interactions in multiple devices. The intermediary (or the wizard) receives the seeker's message and performs different information seeking actions with Macaw. All seeker-intermediary and intermediary-system interactions will be logged for further analysis. This setup can simulate an ideal CIS system and thus is useful for collecting high-quality data from real users for CIS research. Retrieval and Question Answering in Macaw The overview of retrieval and question answering actions in Macaw is shown in FIGREF17. These actions consist of the following components: [leftmargin=*] Co-Reference Resolution: To support multi-turn interactions, it is sometimes necessary to use co-reference resolution techniques for effective retrieval. In Macaw, we identify all the co-references from the last request of user to the conversation history. The same co-reference resolution outputs can be used for different query generation components. This can be a generic or action-specific component. Query Generation: This component generates a query based on the past user-system interactions. The query generation component may take advantage of co-reference resolution for query expansion or re-writing. Retrieval Model: This is the core ranking component that retrieves documents or passages from a large collection. Macaw can retrieve documents from an arbitrary document collection using the Indri python interface BIBREF9, BIBREF10. We also provide the support for web search using the Bing Web Search API. Macaw also allows multi-stage document re-ranking. Result Generation: The retrieved documents can be too long to be presented using some interfaces. Result generation is basically a post-processing step ran on the retrieved result list. In case of question answering, it can employ answer selection or generation techniques, such as machine reading comprehension models. For example, Macaw features the DrQA model BIBREF11 for question answering. These components are implemented in a generic form, so researchers can easily replace them with their own favorite algorithms. User Interfaces We have implemented the following interfaces for Macaw: [leftmargin=*] File IO: This interface is designed for experimental purposes, such as evaluating the performance of a conversational search technique on a dataset with multiple queries. This is not an interactive interface. Standard IO: This interactive command line interface is designed for development purposes to interact with the system, see the logs, and debug or improve the system. Telegram: This interactive interface is designed for interaction with real users (see FIGREF4). Telegram is a popular instant messaging service whose client-side code is open-source. We have implemented a Telegram bot that can be used with different devices (personal computers, tablets, and mobile phones) and different operating systems (Android, iOS, Linux, Mac OS, and Windows). This interface allows multi-modal interactions (text, speech, click, image). It can be also used for speech-only interactions. For speech recognition and generation, Macaw relies on online APIs, e.g., the services provided by Google Cloud and Microsoft Azure. In addition, there exist multiple popular groups and channels in Telegram, which allows further integration of social networks with conversational systems. For example, see the Naseri and Zamani's study on news popularity in Telegram BIBREF12. Similar to the other modules, one can easily extend Macaw using other appropriate user interfaces. Limitations and Future Work The current implementation of Macaw lacks the following actions. We intend to incrementally improve Macaw by supporting more actions and even more advanced techniques for the developed actions. [leftmargin=*] Clarification and Preference Elicitation: Asking clarifying questions has been recently recognized as a necessary component in a conversational system BIBREF3, BIBREF7. The authors are not aware of a published solution for generating clarifying questions using public resources. Therefore, Macaw does not currently support clarification. Explanation: Despite its importance, result list explanation is also a relatively less explored topic. We intend to extend Macaw with result list explanation as soon as we find a stable and mature solution. Recommendation: In our first release, we focus on conversational search and question answering tasks. We intend to provide support for conversational recommendation, e.g., BIBREF13, BIBREF14, BIBREF15, and joint search and recommendation, e.g., BIBREF16, BIBREF17, in the future. Natural Language Interface: Macaw can potentially support access to structured data, such as knowledge graph. We would like to ease conversational natural language interface to structured and semi-structured data in our future releases. Contribution Macaw is distributed under the MIT License. We welcome contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com. This project has adopted the Microsoft Open Source Code of Conduct. When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA. Conclusions This paper described Macaw, an open-source platform for conversational information seeking research. Macaw supports multi-turn, multi-modal, and mixed-initiative interactions. It was designed based on a modular architecture that allows further improvements and extensions. Researchers can benefit from Macaw for developing algorithms and techniques for conversational information seeking research, for user studies with different interfaces, for data collection from real users, and for preparing a demonstration of a CIS model. Acknowledgements The authors wish to thank Ahmed Hassan Awadallah, Krisztian Balog, and Arjen P. de Vries for their invaluable feedback.
What functionality does Macaw provide?
78a5546e87d4d88e3d9638a0a8cd0b7debf1f09d
What Ġfunctionality Ġdoes ĠMac aw Ġprovide ?
Co - Reference ĠResolution , ĠQuery ĠGeneration , ĠRet ri eval ĠModel , ĠResult ĠGeneration
<s> What Ġfunctionality Ġdoes ĠMac aw Ġprovide ? </s> Introduction </s> The Ġrapid Ġgrowth Ġin Ġspeech Ġand Ġsmall Ġscreen Ġinterfaces , Ġparticularly Ġon Ġmobile Ġdevices , Ġhas Ġsignificantly Ġinfluenced Ġthe Ġway Ġusers Ġinteract Ġwith Ġintelligent Ġsystems Ġto Ġsatisfy Ġtheir Ġinformation Ġneeds . ĠThe Ġgrowing Ġinterest Ġin Ġpersonal Ġdigital Ġassistants , Ġsuch Ġas ĠAmazon ĠAlexa , ĠApple ĠSiri , ĠGoogle ĠAssistant , Ġand ĠMicrosoft ĠCortana , Ġdemonstrates Ġthe Ġwillingness Ġof Ġusers Ġto Ġemploy Ġconvers ational Ġinteractions ĠB IB REF 0 . ĠAs Ġa Ġresult , Ġconvers ational Ġinformation Ġseeking Ġ( C IS ) Ġhas Ġbeen Ġrecognized Ġas Ġa Ġmajor Ġemerging Ġresearch Ġarea Ġin Ġthe ĠThird ĠStrategic ĠWorkshop Ġon ĠInformation ĠRet ri eval Ġ( SW IR L Ġ2018 ) ĠB IB REF 1 . </s> Research Ġprogress Ġin ĠCIS Ġrelies Ġon Ġthe Ġavailability Ġof Ġresources Ġto Ġthe Ġcommunity . ĠThere Ġhave Ġbeen Ġrecent Ġefforts Ġon Ġproviding Ġdata Ġfor Ġvarious ĠCIS Ġtasks , Ġsuch Ġas Ġthe ĠT REC Ġ2019 ĠConvers ational ĠAssistance ĠTrack Ġ( C As T ), ĠM ISC ĠB IB REF 2 , ĠQ ul ac ĠB IB REF 3 , ĠCo Q A ĠB IB REF 4 , ĠQu AC ĠB IB REF 5 , ĠSC S ĠB IB REF 6 , Ġand ĠCCP E - M ĠB IB REF 7 . ĠIn Ġaddition , ĠB IB REF 8 Ġhave Ġimplemented Ġa Ġdemonstration Ġfor Ġconvers ational Ġmovie Ġrecommendation Ġbased Ġon ĠGoogle 's ĠDial og Flow . ĠDespite Ġall Ġof Ġthese Ġresources , Ġthe Ġcommunity Ġstill Ġfeels Ġthe Ġlack Ġof Ġa Ġsuitable Ġplatform Ġfor Ġdeveloping ĠCIS Ġsystems . ĠWe Ġbelieve Ġthat Ġproviding Ġsuch Ġplatform Ġwill Ġspeed Ġup Ġthe Ġprogress Ġin Ġconvers ational Ġinformation Ġseeking Ġresearch . ĠTherefore , Ġwe Ġdeveloped Ġa Ġgeneral Ġframework Ġfor Ġsupporting ĠCIS Ġresearch . ĠThe Ġframework Ġis Ġcalled ĠMac aw . ĠThis Ġpaper Ġdescribes Ġthe Ġhigh - level Ġarchitecture Ġof ĠMac aw , Ġthe Ġsupported Ġfunctionality , Ġand Ġour Ġfuture Ġvision . ĠResearchers Ġworking Ġon Ġvarious ĠCIS Ġtasks Ġshould Ġbe Ġable Ġto Ġtake Ġadvantage Ġof ĠMac aw Ġin Ġtheir Ġprojects . </s> Mac aw Ġis Ġdesigned Ġbased Ġon Ġa Ġmodular Ġarchitecture Ġto Ġsupport Ġdifferent Ġinformation Ġseeking Ġtasks , Ġincluding Ġconvers ational Ġsearch , Ġconvers ational Ġquestion Ġanswering , Ġconvers ational Ġrecommendation , Ġand Ġconvers ational Ġnatural Ġlanguage Ġinterface Ġto Ġstructured Ġand Ġsemi - struct ured Ġdata . ĠEach Ġinteraction Ġin ĠMac aw Ġ( from Ġboth Ġuser Ġand Ġsystem ) Ġis Ġa ĠMessage Ġobject , Ġthus Ġa Ġconversation Ġis Ġa Ġlist Ġof ĠMessages . ĠMac aw Ġconsists Ġof Ġmultiple Ġactions , Ġeach Ġaction Ġis Ġa Ġmodule Ġthat Ġcan Ġsatisfy Ġthe Ġinformation Ġneeds Ġof Ġusers Ġfor Ġsome Ġrequests . ĠFor Ġexample , Ġsearch Ġand Ġquestion Ġanswering Ġcan Ġbe Ġtwo Ġactions Ġin ĠMac aw . ĠEven Ġmultiple Ġsearch Ġalgorithms Ġcan Ġbe Ġalso Ġseen Ġas Ġmultiple Ġactions . ĠEach Ġaction Ġcan Ġproduce Ġmultiple Ġoutputs Ġ( e . g ., Ġmultiple Ġretrieved Ġdocuments ). ĠFor Ġevery Ġuser Ġinteraction , ĠMac aw Ġruns Ġall Ġactions Ġin Ġparallel . ĠThe Ġactions ' Ġoutputs Ġproduced Ġwithin Ġa Ġpred efined Ġtime Ġinterval Ġ( i . e ., Ġan Ġinteraction Ġtimeout Ġconstant ) Ġare Ġthen Ġpost - process ed . ĠMac aw Ġcan Ġchoose Ġone Ġor Ġcombine Ġmultiple Ġof Ġthese Ġoutputs Ġand Ġprepare Ġan Ġoutput ĠMessage Ġobject Ġas Ġthe Ġuser 's Ġresponse . </s> The Ġmodular Ġdesign Ġof ĠMac aw Ġmakes Ġit Ġrelatively Ġeasy Ġto Ġconfigure Ġa Ġdifferent Ġuser Ġinterface Ġor Ġadd Ġa Ġnew Ġone . ĠThe Ġcurrent Ġimplementation Ġof ĠMac aw Ġsupports Ġa Ġcommand Ġline Ġinterface Ġas Ġwell Ġas Ġmobile , Ġdesktop , Ġand Ġweb Ġapps . ĠIn Ġmore Ġdetail , ĠMac aw 's Ġinterface Ġcan Ġbe Ġa ĠTelegram Ġbot , Ġwhich Ġsupports Ġa Ġwide Ġrange Ġof Ġdevices Ġand Ġoperating Ġsystems Ġ( see ĠFIG REF 4 ). ĠThis Ġallows ĠMac aw Ġto Ġsupport Ġmulti - mod al Ġinteractions , Ġsuch Ġas Ġtext , Ġspeech , Ġimage , Ġclick , Ġetc . ĠA Ġnumber Ġof ĠAPIs Ġfor Ġautomatic Ġspeech Ġrecognition Ġand Ġgeneration Ġhave Ġbeen Ġemployed Ġto Ġsupport Ġspeech Ġinteractions . ĠNote Ġthat Ġthe ĠMac aw 's Ġarchitecture Ġand Ġimplementation Ġallows Ġmixed - in iti ative Ġinteractions . </s> The Ġresearch Ġcommunity Ġcan Ġbenefit Ġfrom ĠMac aw Ġfor Ġthe Ġfollowing Ġpurposes : </s> [ left margin = * ] </s> Develop ing Ġalgorithms , Ġtools , Ġand Ġtechniques Ġfor ĠCIS . </s> Stud ying Ġuser Ġinteractions Ġwith ĠCIS Ġsystems . </s> Per forming ĠCIS Ġstudies Ġbased Ġon Ġan Ġintermediary Ġperson Ġand Ġwizard Ġof Ġoz . </s> Prep aring Ġquick Ġdemonstration Ġfor Ġa Ġdeveloped ĠCIS Ġmodel . </s> Mac aw ĠArchitecture </s> Mac aw Ġhas Ġa Ġmodular Ġdesign , Ġwith Ġthe Ġgoal Ġof Ġmaking Ġit Ġeasy Ġto Ġconfigure Ġand Ġadd Ġnew Ġmodules Ġsuch Ġas Ġa Ġdifferent Ġuser Ġinterface Ġor Ġdifferent Ġretrieval Ġmodule . ĠThe Ġoverall Ġsetup Ġalso Ġfollows Ġa ĠModel - View - Controller Ġ( M VC ) Ġlike Ġarchitecture . ĠThe Ġdesign Ġdecisions Ġhave Ġbeen Ġmade Ġto Ġsmooth Ġthe ĠMac aw 's Ġadopt ions Ġand Ġextensions . ĠMac aw Ġis Ġimplemented Ġin ĠPython , Ġthus Ġmachine Ġlearning Ġmodels Ġimplemented Ġusing ĠPy Tor ch , ĠSci kit - learn , Ġor ĠT ensor Flow Ġcan Ġbe Ġeasily Ġintegrated Ġinto ĠMac aw . ĠThe Ġhigh - level Ġoverview Ġof ĠMac aw Ġis Ġdepicted Ġin ĠFIG REF 8 . ĠThe Ġuser Ġinteracts Ġwith Ġthe Ġinterface Ġand Ġthe Ġinterface Ġproduces Ġa ĠMessage Ġobject Ġfrom Ġthe Ġcurrent Ġinteraction Ġof Ġuser . ĠThe Ġinteraction Ġcan Ġbe Ġin Ġmulti - mod al Ġform , Ġsuch Ġas Ġtext , Ġspeech , Ġimage , Ġand Ġclick . ĠMac aw Ġstores Ġall Ġinteractions Ġin Ġan ĠâĢ ľ Inter action ĠDatabase âĢ Ŀ . ĠFor Ġevery Ġinteraction , ĠMac aw Ġlooks Ġfor Ġmost Ġrecent Ġuser - system Ġinteractions Ġ( including Ġthe Ġsystem 's Ġresponses ) Ġto Ġcreate Ġa Ġlist Ġof ĠMessages , Ġcalled Ġthe Ġconversation Ġlist . ĠIt Ġis Ġthen Ġdispatched Ġto Ġmultiple Ġinformation Ġseeking Ġ( and Ġrelated ) Ġactions . ĠThe Ġactions Ġrun Ġin Ġparallel , Ġand Ġeach Ġshould Ġrespond Ġwithin Ġa Ġpre - defined Ġtime Ġinterval . ĠThe Ġoutput Ġselection Ġcomponent Ġselects Ġfrom Ġ( or Ġpotentially Ġcombines ) Ġthe Ġoutputs Ġgenerated Ġby Ġdifferent Ġactions Ġand Ġcreates Ġa ĠMessage Ġobject Ġas Ġthe Ġsystem 's Ġresponse . ĠThis Ġmessage Ġis Ġlogged Ġinto Ġthe Ġinteraction Ġdatabase Ġand Ġis Ġsent Ġto Ġthe Ġinterface Ġto Ġbe Ġpresented Ġto Ġthe Ġuser . ĠAgain , Ġthe Ġresponse Ġmessage Ġcan Ġbe Ġmulti - mod al Ġand Ġinclude Ġtext , Ġspeech , Ġlink , Ġlist Ġof Ġoptions , Ġetc . </s> Mac aw Ġalso Ġsupports ĠWizard Ġof ĠOz Ġstudies Ġor Ġintermediary - based Ġinformation Ġseeking Ġstudies . ĠThe Ġarchitecture Ġof ĠMac aw Ġfor Ġsuch Ġsetup Ġis Ġpresented Ġin ĠFIG REF 16 . ĠAs Ġshown Ġin Ġthe Ġfigure , Ġthe Ġseeker Ġinteracts Ġwith Ġa Ġreal Ġconvers ational Ġinterface Ġthat Ġsupports Ġmulti - mod al Ġand Ġmixed - in iti ative Ġinteractions Ġin Ġmultiple Ġdevices . ĠThe Ġintermediary Ġ( or Ġthe Ġwizard ) Ġreceives Ġthe Ġseeker 's Ġmessage Ġand Ġperforms Ġdifferent Ġinformation Ġseeking Ġactions Ġwith ĠMac aw . ĠAll Ġseeker - inter medi ary Ġand Ġintermediary - system Ġinteractions Ġwill Ġbe Ġlogged Ġfor Ġfurther Ġanalysis . ĠThis Ġsetup Ġcan Ġsimulate Ġan Ġideal ĠCIS Ġsystem Ġand Ġthus Ġis Ġuseful Ġfor Ġcollecting Ġhigh - quality Ġdata Ġfrom Ġreal Ġusers Ġfor ĠCIS Ġresearch . </s> Ret ri eval Ġand ĠQuestion ĠAn sw ering Ġin ĠMac aw </s> The Ġoverview Ġof Ġretrieval Ġand Ġquestion Ġanswering Ġactions Ġin ĠMac aw Ġis Ġshown Ġin ĠFIG REF 17 . ĠThese Ġactions Ġconsist Ġof Ġthe Ġfollowing Ġcomponents : </s> [ left margin = * ] </s> Co - Reference ĠResolution : ĠTo Ġsupport Ġmulti - turn Ġinteractions , Ġit Ġis Ġsometimes Ġnecessary Ġto Ġuse Ġco - reference Ġresolution Ġtechniques Ġfor Ġeffective Ġretrieval . ĠIn ĠMac aw , Ġwe Ġidentify Ġall Ġthe Ġco - ref erences Ġfrom Ġthe Ġlast Ġrequest Ġof Ġuser Ġto Ġthe Ġconversation Ġhistory . ĠThe Ġsame Ġco - reference Ġresolution Ġoutputs Ġcan Ġbe Ġused Ġfor Ġdifferent Ġquery Ġgeneration Ġcomponents . ĠThis Ġcan Ġbe Ġa Ġgeneric Ġor Ġaction - specific Ġcomponent . </s> Query ĠGeneration : ĠThis Ġcomponent Ġgenerates Ġa Ġquery Ġbased Ġon Ġthe Ġpast Ġuser - system Ġinteractions . ĠThe Ġquery Ġgeneration Ġcomponent Ġmay Ġtake Ġadvantage Ġof Ġco - reference Ġresolution Ġfor Ġquery Ġexpansion Ġor Ġre - writing . </s> Ret ri eval ĠModel : ĠThis Ġis Ġthe Ġcore Ġranking Ġcomponent Ġthat Ġretrie ves Ġdocuments Ġor Ġpassages Ġfrom Ġa Ġlarge Ġcollection . ĠMac aw Ġcan Ġretrieve Ġdocuments Ġfrom Ġan Ġarbitrary Ġdocument Ġcollection Ġusing Ġthe ĠInd ri Ġpython Ġinterface ĠB IB REF 9 , ĠB IB REF 10 . ĠWe Ġalso Ġprovide Ġthe Ġsupport Ġfor Ġweb Ġsearch Ġusing Ġthe ĠBing ĠWeb ĠSearch ĠAPI . ĠMac aw Ġalso Ġallows Ġmulti - stage Ġdocument Ġre - ranking . </s> Result ĠGeneration : ĠThe Ġretrieved Ġdocuments Ġcan Ġbe Ġtoo Ġlong Ġto Ġbe Ġpresented Ġusing Ġsome Ġinterfaces . ĠResult Ġgeneration Ġis Ġbasically Ġa Ġpost - processing Ġstep Ġran Ġon Ġthe Ġretrieved Ġresult Ġlist . ĠIn Ġcase Ġof Ġquestion Ġanswering , Ġit Ġcan Ġemploy Ġanswer Ġselection Ġor Ġgeneration Ġtechniques , Ġsuch Ġas Ġmachine Ġreading Ġcomprehension Ġmodels . ĠFor Ġexample , ĠMac aw Ġfeatures Ġthe ĠDr Q A Ġmodel ĠB IB REF 11 Ġfor Ġquestion Ġanswering . </s> These Ġcomponents Ġare Ġimplemented Ġin Ġa Ġgeneric Ġform , Ġso Ġresearchers Ġcan Ġeasily Ġreplace Ġthem Ġwith Ġtheir Ġown Ġfavorite Ġalgorithms . </s> User ĠInter faces </s> We Ġhave Ġimplemented Ġthe Ġfollowing Ġinterfaces Ġfor ĠMac aw : </s> [ left margin = * ] </s> File ĠIO : ĠThis Ġinterface Ġis Ġdesigned Ġfor Ġexperimental Ġpurposes , Ġsuch Ġas Ġevaluating Ġthe Ġperformance Ġof Ġa Ġconvers ational Ġsearch Ġtechnique Ġon Ġa Ġdataset Ġwith Ġmultiple Ġqueries . ĠThis Ġis Ġnot Ġan Ġinteractive Ġinterface . </s> Standard ĠIO : ĠThis Ġinteractive Ġcommand Ġline Ġinterface Ġis Ġdesigned Ġfor Ġdevelopment Ġpurposes Ġto Ġinteract Ġwith Ġthe Ġsystem , Ġsee Ġthe Ġlogs , Ġand Ġdebug Ġor Ġimprove Ġthe Ġsystem . </s> Te legram : ĠThis Ġinteractive Ġinterface Ġis Ġdesigned Ġfor Ġinteraction Ġwith Ġreal Ġusers Ġ( see ĠFIG REF 4 ). ĠTelegram Ġis Ġa Ġpopular Ġinstant Ġmessaging Ġservice Ġwhose Ġclient - side Ġcode Ġis Ġopen - source . ĠWe Ġhave Ġimplemented Ġa ĠTelegram Ġbot Ġthat Ġcan Ġbe Ġused Ġwith Ġdifferent Ġdevices Ġ( personal Ġcomputers , Ġtablets , Ġand Ġmobile Ġphones ) Ġand Ġdifferent Ġoperating Ġsystems Ġ( Android , ĠiOS , ĠLinux , ĠMac ĠOS , Ġand ĠWindows ). ĠThis Ġinterface Ġallows Ġmulti - mod al Ġinteractions Ġ( text , Ġspeech , Ġclick , Ġimage ). ĠIt Ġcan Ġbe Ġalso Ġused Ġfor Ġspeech - only Ġinteractions . ĠFor Ġspeech Ġrecognition Ġand Ġgeneration , ĠMac aw Ġrelies Ġon Ġonline ĠAPIs , Ġe . g ., Ġthe Ġservices Ġprovided Ġby ĠGoogle ĠCloud Ġand ĠMicrosoft ĠAzure . ĠIn Ġaddition , Ġthere Ġexist Ġmultiple Ġpopular Ġgroups Ġand Ġchannels Ġin ĠTelegram , Ġwhich Ġallows Ġfurther Ġintegration Ġof Ġsocial Ġnetworks Ġwith Ġconvers ational Ġsystems . ĠFor Ġexample , Ġsee Ġthe ĠN aser i Ġand ĠZam ani 's Ġstudy Ġon Ġnews Ġpopularity Ġin ĠTelegram ĠB IB REF 12 . </s> Similar Ġto Ġthe Ġother Ġmodules , Ġone Ġcan Ġeasily Ġextend ĠMac aw Ġusing Ġother Ġappropriate Ġuser Ġinterfaces . </s> Lim itations Ġand ĠFuture ĠWork </s> The Ġcurrent Ġimplementation Ġof ĠMac aw Ġlacks Ġthe Ġfollowing Ġactions . ĠWe Ġintend Ġto Ġincrement ally Ġimprove ĠMac aw Ġby Ġsupporting Ġmore Ġactions Ġand Ġeven Ġmore Ġadvanced Ġtechniques Ġfor Ġthe Ġdeveloped Ġactions . </s> [ left margin = * ] </s> Clar ification Ġand ĠPre ference ĠE lic itation : ĠAs king Ġclar ifying Ġquestions Ġhas Ġbeen Ġrecently Ġrecognized Ġas Ġa Ġnecessary Ġcomponent Ġin Ġa Ġconvers ational Ġsystem ĠB IB REF 3 , ĠB IB REF 7 . ĠThe Ġauthors Ġare Ġnot Ġaware Ġof Ġa Ġpublished Ġsolution Ġfor Ġgenerating Ġclar ifying Ġquestions Ġusing Ġpublic Ġresources . ĠTherefore , ĠMac aw Ġdoes Ġnot Ġcurrently Ġsupport Ġclarification . </s> Ex plan ation : ĠDespite Ġits Ġimportance , Ġresult Ġlist Ġexplanation Ġis Ġalso Ġa Ġrelatively Ġless Ġexplored Ġtopic . ĠWe Ġintend Ġto Ġextend ĠMac aw Ġwith Ġresult Ġlist Ġexplanation Ġas Ġsoon Ġas Ġwe Ġfind Ġa Ġstable Ġand Ġmature Ġsolution . </s> Recommend ation : ĠIn Ġour Ġfirst Ġrelease , Ġwe Ġfocus Ġon Ġconvers ational Ġsearch Ġand Ġquestion Ġanswering Ġtasks . ĠWe Ġintend Ġto Ġprovide Ġsupport Ġfor Ġconvers ational Ġrecommendation , Ġe . g ., ĠB IB REF 13 , ĠB IB REF 14 , ĠB IB REF 15 , Ġand Ġjoint Ġsearch Ġand Ġrecommendation , Ġe . g ., ĠB IB REF 16 , ĠB IB REF 17 , Ġin Ġthe Ġfuture . </s> Natural ĠLanguage ĠInterface : ĠMac aw Ġcan Ġpotentially Ġsupport Ġaccess Ġto Ġstructured Ġdata , Ġsuch Ġas Ġknowledge Ġgraph . ĠWe Ġwould Ġlike Ġto Ġease Ġconvers ational Ġnatural Ġlanguage Ġinterface Ġto Ġstructured Ġand Ġsemi - struct ured Ġdata Ġin Ġour Ġfuture Ġreleases . </s> Cont ribution </s> Mac aw Ġis Ġdistributed Ġunder Ġthe ĠMIT ĠLicense . ĠWe Ġwelcome Ġcontributions Ġand Ġsuggestions . ĠMost Ġcontributions Ġrequire Ġyou Ġto Ġagree Ġto Ġa ĠContribut or ĠLicense ĠAgreement Ġ( CLA ) Ġdeclaring Ġthat Ġyou Ġhave Ġthe Ġright Ġto , Ġand Ġactually Ġdo , Ġgrant Ġus Ġthe Ġrights Ġto Ġuse Ġyour Ġcontribution . ĠFor Ġdetails , Ġvisit Ġhttps :// cl a . opens ource . microsoft . com . ĠThis Ġproject Ġhas Ġadopted Ġthe ĠMicrosoft ĠOpen ĠSource ĠCode Ġof ĠConduct . </s> When Ġyou Ġsubmit Ġa Ġpull Ġrequest , Ġa ĠCLA Ġbot Ġwill Ġautomatically Ġdetermine Ġwhether Ġyou Ġneed Ġto Ġprovide Ġa ĠCLA Ġand Ġdecor ate Ġthe ĠPR Ġappropriately Ġ( e . g ., Ġstatus Ġcheck , Ġcomment ). ĠSimply Ġfollow Ġthe Ġinstructions Ġprovided Ġby Ġthe Ġbot . ĠYou Ġwill Ġonly Ġneed Ġto Ġdo Ġthis Ġonce Ġacross Ġall Ġrep os Ġusing Ġour ĠCLA . </s> Con clusions </s> This Ġpaper Ġdescribed ĠMac aw , Ġan Ġopen - source Ġplatform Ġfor Ġconvers ational Ġinformation Ġseeking Ġresearch . ĠMac aw Ġsupports Ġmulti - turn , Ġmulti - mod al , Ġand Ġmixed - in iti ative Ġinteractions . ĠIt Ġwas Ġdesigned Ġbased Ġon Ġa Ġmodular Ġarchitecture Ġthat Ġallows Ġfurther Ġimprovements Ġand Ġextensions . ĠResearchers Ġcan Ġbenefit Ġfrom ĠMac aw Ġfor Ġdeveloping Ġalgorithms Ġand Ġtechniques Ġfor Ġconvers ational Ġinformation Ġseeking Ġresearch , Ġfor Ġuser Ġstudies Ġwith Ġdifferent Ġinterfaces , Ġfor Ġdata Ġcollection Ġfrom Ġreal Ġusers , Ġand Ġfor Ġpreparing Ġa Ġdemonstration Ġof Ġa ĠCIS Ġmodel . </s> Acknowled gements </s> The Ġauthors Ġwish Ġto Ġthank ĠAhmed ĠHassan ĠAw ad allah , ĠKris z t ian ĠBal og , Ġand ĠAr jen ĠP . Ġde ĠV ries Ġfor Ġtheir Ġinvaluable Ġfeedback .