
AI Magazine Volume 5 Number 1 (1984) (© AAAI) Talking to UNIX in English: An Overview of an On-line UNIX Consultant Robert Wilensky Dzvzszon of Computer Sczence Department of Electracal Enganeerang and Computer Scaence Unaversaty of Calafornaa, Berkeley Berkeley, CA. 94720 Abstract of features to enhance its function as a user interface. These include the following: The goal of UC is to provide a natural language help facility that allows new users to learn operating systems conventions in a relatively painless 1. A robust language analyzer, which almost never has way UC is not meant to be a substitute for a good operating system a “hard” failure and which has the ability to handle command int,erpreter, but rather, an additional tool at the disposal of most elliptical constructions in context the new user, to be used in conjunction with other operating system components 2 A context and memory mechanism that determines the focus of attention and helps with lexical and syntactic disambiguation, and with some aspects of UrjIXI CONSULTANT [UC] is an intelligent natural pronominal reference. language interface that allows naive users to communicate 3 Highly extensible knowledge bases both of facts about with the UNIX operating system in ordinary English UC UN IX and about the English language allows the user to engage in natural language dialogues with 4. A mechanism for trying to make sense out of ill- the operating system While there are a number of other formed inputs natural language interfaces available today, these are mostly 5 An experimental planning component that provides used as natural language front ends to particular data bases commonsense reasoning in creating plans for the (Hayes & Carbonell 1981, Hendrix 1977, Robinson 1982, user Waltz et al. 1976, Woods 1970). In contrast: the user 6 A goal analysis mechanism, which performs functions uses UC in order to learn how better to use the UNIX related to interpreting the user’s statements as speech environment in which UC is embedded UC can handle acts. requests stated in a wide variety of forms, and has a number 7. A UC Teacher, which enables UC to learn new vocabulary and new facts about UNIX by being in- structed in natural language. This research was sponsored in part by the Office of Naval Research under contract NOOO14.80-C-0732 and the National Science Foundation While some of the components of the system are ex- under grant hZCS79-06543 perimental in nature: the basic features of UC provide a us- IUNIX is trademark of Bell Laboratories able device to obtain information about UNIX. In addition, THE AI ,MAGAZINE Spring 1984 29 it is straightforward to extend UC’s knowledge base to cover UC: Typing “Is -I filename” will tell what the protec- areas of UNIX with which UC is not currently familiar. tion on the file named filename is (For more informa- tion on the Is command type “man Is “) UC Examples User: How can I change the write permission on my terminal? (or permission of or protection) The following examples are illustrative of the breadth UC: To change the write permission on your terminal, of dialogues in which UC can participate. UC is capable type “mesg y” to allow writing to your terminal, of generating the answers shown below in response to most “mesg n” to disallow writing to your terminal forms of the request users might supply. UC can participate User: What is a search path? in some dialogues that are considerably more involved than this one, and which will be discussed in more detail later on: UC: A search path in Unix is a list of directories in which the operating system searches for programs to execute Simple Dialogue: User: What do you know about Unix? (or What can How do I delete a file? (or remove a file) User: you tell me about Unix?) “rm filename” will remove the file with UC: Typing UC: I currently know about the Unix file system name filename from your current directory User: A directory? Rationale UC: Typing “rm -r directoryname” will recursively delete the directory with the name directoryname and all the files and directories contained in the directory The problem of naive user communication with an operating system provides an appealing domain for study User: How should one edit a file? (or change a file) and application of a number of Artificial Intelligence tech- UC: Typing “ex filename” will get you into the ex niques. The domain is complex enough to provide sub- editor, typing “emacs filename” will get you into the stantial sub-problems, but not so unbounded that a useful emacs editor working system must possess a hopelessly large repertoire of User: What is the best way to create a file? (or the knowledge. The task involves a quite realistic use of natural right way or the proper way, or make a file) language, namely, participating in a purposive dialogue. In addition: UC provides an application of natural lan- UC: The best way to create a new file is to use the guage processing that people would actually be willing to editor, i e - “ex filename ” use. Some common uses for natural language processing, for User: A directory? example; natural language front ends to data bases, may not have this property. Simple requests to a data base manage- UC: Typing “mkdir directoryname” will create a direc- tory with name directoryname in your current direc- ment system may be shorter in natural language than in tory typical data base accessing formalisms (Hayes & Carbonell, 1981). However, this is less clearly true for more complex re- User: Do you know how to read a file? (or list a file) quests. Thus it may be the case that once a user has learned UC: Typing “pr filename” will print the file with name a somewhat more cryptic query language, he is apt to prefer filename on your terminal it over natural language as it is likely to provide a more User: How can I find out how full the disk is? precise and less verbose mode of expression for many of his queries Also, use of a natural language front end is probably UC: Typing “df” will tell you how full the disk is not conducive to the learning of the underlying formalism. User: How can I find out who is on the system? (or In contrast, a naive user of a system would probably on Unix or using Unix) be willing to converse in English with a machine, since the alternatives are apt to be worse. Manuals and on-line help UC: Typing “who” will tell you who is on Unix facilities are only marginally useful. A user usually needs User: How can I compare two files? to be fairly sophisticated in order to issue the right help UC: To compare two files, type “diff file1 file2 ” command, and then these are successful only a fraction of the time In the times that they do succeed, the information User: How can I get more help? returned is apt to be cryptic and confusing. UC: To get more information on Unix, try typing Consider, for example, the problem of finding the answer “help ” to the question “How can I find out if two files are the same?” Since the user does not know the name of the appropriate User: How can I sort a file? command, retrieving - by” command name is not applicable UC: Type “sort filel” to sort the file with name file1 (This is particularly true in UNIX, where many command User: How can I find out who has access to my files? names would appear to be unmotivated). Retrieval by a 30 THEY AI MAGAZINE Spring 1984 keyword is possible using “file:” but this is likely to return too of ill-formed inputs In addition! the interface will have to be much information, since operating systems generally have continually extended, both to include new vocabulary and many commands related to files. In the current release of new facts about the domain of discourse The constraints UNIX, for example, issuing an “apropros file” command on the design of the interface imposed by the latter feature returns five screenfuls of command names. have been less well studied. Below we describe how these Also, there is no guarantee that the keyword with which problems are handled in UC. the user stat’es his request is appropriate for the particular A useful natural language interface must also incor- operating system, or happens to index the appropriate in- porate some processes that may be collectively referred to formation. For our previous example, in UNIX, retrieving as commonsense reasoning. To demonstrate the importance by the keyword “same” will find no associated commands of such extra-linguistic mechanisms, consider the following Nor will retrieval by the word “difference.” However, using hypothetical dialogue with a naive interface (NI) We as- the keyword “different” or “compare” returns the lists “diff sume here that NI possesses knowledge about a language’s diff3” and “cmp,” respectively. syntactic and semantic conventions, but is not otherwise an In such situations, navigating through a maze of infor- intelligent system: mation is undesirable, and the user would probably prefer User: I’m trying to get some more disk space simply to pose the question to a colleague. However, people knowledgeable enough to be helpful are not always available NI: Type “rm *” and usually do not have the time to offer. Under such cir- 1%1’ssuggestion, if executed by the user, would destroy cumstances, typing in the question in English, exactly as it all the user’s files.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages11 Page
-
File Size-