KR20010085878A - 대화형 가상 기계를 통한 대화형 컴퓨터 - Google Patents

대화형 가상 기계를 통한 대화형 컴퓨터 Download PDF

Info

Publication number
KR20010085878A
KR20010085878A KR1020017004223A KR20017004223A KR20010085878A KR 20010085878 A KR20010085878 A KR 20010085878A KR 1020017004223 A KR1020017004223 A KR 1020017004223A KR 20017004223 A KR20017004223 A KR 20017004223A KR 20010085878 A KR20010085878 A KR 20010085878A
Authority
KR
South Korea
Prior art keywords
interactive
application
syntax
cvm
user
Prior art date
Application number
KR1020017004223A
Other languages
English (en)
Other versions
KR100620826B1 (ko
Inventor
코프만다니엘
코머포드리암디
데젠나로스티븐브이
엡스타인에드워드에이
고팔라크리쉬난포나니
마에스스테판에이치
나하무데이비드
Original Assignee
포만 제프리 엘
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포만 제프리 엘, 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 포만 제프리 엘
Publication of KR20010085878A publication Critical patent/KR20010085878A/ko
Application granted granted Critical
Publication of KR100620826B1 publication Critical patent/KR100620826B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/285Memory allocation or algorithm optimisation to reduce hardware requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4936Speech interaction details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4938Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals comprising a voice browser which renders and interprets, e.g. VoiceXML
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72445User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting Internet browser applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/40Electronic components, circuits, software, systems or apparatus used in telephone systems using speech recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/60Medium conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/35Aspects of automatic or semi-automatic exchanges related to information services provided via a voice call
    • H04M2203/355Interactive dialogue design tools, features or methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/74Details of telephonic subscriber devices with voice recognition means
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42204Arrangements at the exchange for service or number selection by voice
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/44Additional connecting arrangements for providing access to frequently-wanted subscribers, e.g. abbreviated dialling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4931Directory assistance systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Saccharide Compounds (AREA)
  • Machine Translation (AREA)
  • Navigation (AREA)
  • Geophysics And Detection Of Objects (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명은 다수의 대화형 인식 응용 프로그램(11)(즉, 대화형 프로토콜을 교신하는 응용 프로그램) 및 종래 응용 프로그램(12)을 교차하여 보편적인 일치 복합 양식 대화형 사용자 인터페이스(CUI : 10)를 제공하는 대화형 컴퓨터 시스템에 관한 것이다. 대화형 인식 응용 프로그램(11)은 대화형 응용 프로그램 API(13)를 통해 대화형 커널(14)과 통신한다. 대화형 커널(14)은 등록된 대화형 특성 및 장치에 기초한 응용 프로그램 및 (국소적으로 및 네트워크된)장치를 교차하여 다이알로그를 제어하고, 통일된 대화형 사용자 인터페이스 및 대화형 서비스 및 행동을 제공한다. 대화형 컴퓨터 시스템은 종래의 동작 시스템 및 API(15) 및 종래의 장치 하드웨어(16)상에 설치될 수 있다. 대화형 커널(14)은 모든 I/O 프로세싱을 조종하여 대화형 엔진(18)을 제어한다. 대화형 커널(14)은 음성 요구를 질의로 전환하고, 출력을 전환하며, 대화형 엔진(18) 및 대화형 개요(17)를 사용하여 메시지를 교신한다. 대화형 응용 프로그램 API(13)는 대화형 커널(14)의 모든 정보를 전달하여 질의를 응용 프로그램 호출로 변형하여 출력을 사용자에게 제공되기 전에 선별된 음성으로 역으로 전환한다.

Description

대화형 가상 기계를 통한 대화형 컴퓨터{CONVERSATIONAL COMPUTING VIA CONVERSATIONAL VIRTUAL MACHINE}
최근에, OS(operating systems)에 기반을 둔 GUI(graphical user interface)는 리딩 아키텍쳐, 플랫폼 및 OS가 기본적으로 GUI 커널 주위에 기초되거나 설치된 GUI PC(personal computers) 및 워크스테이션 분야에서 지배적이다. 실제로, UI가 주로 음성 및 DTMF(dual tone multifrequency) I/O(input/output)인IVR(interactive voice response)과 같은 전화 응용 프로그램을 제외하고, 대부분의 일반적인 정보 억세스 및 관리 응용 프로그램은 GUI 패러다임 주위에 설치된다. 또, UI에 기초한 다른 non-GUI는 메인프레임 또는 아주 특수한 시스템과 같은 오래된 아키텍쳐에 접속하여 이용된다. 일반적으로, GUI 패러다임을 가지고, 사용자와 기계간의 UI는 그래픽(예를 들면, 마이크로소프트 윈도우 또는 유닉스-X 윈도우)이고, 멀티 태스킹은 분리한 윈도우와 같은 각 프로세스를 표시함으로써 제공되며, 각 윈도우에 대한 입력은 키보드, 마우스 및/또는 펜과 같은 다른 포인팅 장치를 통해 가능해질 수 있다(그러나, 사용자와 직접적으로 "인터액팅/인터페이싱"되지 않은 경우에는 일부 프로세스를 숨길 수 있다).
GUI는 시분할된 메인프레임으로부터 개별 기계 및 서버 및 백엔드 서비스 및 아키텍쳐와 같은 다른 계층까지 패러다임 이동을 촉진하고 유발한다. OS에 기초한 GUI는 정보를 억세스하고 관리하도록 종래의 PC 클라이언트/서버 모델에서 널리 실행되고 있다. 억세스된 정보는 장치에 로컬되고, 인터넷 또는 개인 인트라넷을 통한 리모트 퍼스널, 다수의 개인 PC, 장치 및 서버를 통해 리모트로 조작될 수 있다. 이러한 정보는 내용 자료, 트랜잭션 관리 및 생산 툴을 포함한다. 그러나, 우리는 서로 접속된 수억 개로 널리 퍼져 있는 컴퓨터 클라이언트(PvC 클라이언트)에 대한 정보를 억세스하고 관리하는 종래의 PC 클라이언트/서버 모델로부터 벗어나는 새로운 시도를 행하여, 사용자가 어떤 장치를 통해 어디서나 언제나 정보를 억세스하고 관리할 수 있게 허용한다. 그리고, 정보에 대한 억세스는 정보에 대한 인터페이스가 사용된 장치 또는 응용 프로그램과 관계없이 동일하다. 이 추세는 장치의소형화 및 극적인 성능 및 복잡성의 증가가 병행하여 진행한다. 동시에, 전화가 아직 정보를 억세스하는 가장 널리 존재하는 통신 장치이기 때문에, 전화를 통해 도처에서 정보를 억세스하고 관리할 수 있다.
불행하게도, 이러한 정보에 대한 억세스는 사용가능한 장치 또는 인터페이스에 의해 제한되고, 근본적인 논리는 장치에 따라 완전히 달라진다. 실제로, 내장 분야에서 접하는 다양성 및 제약은 다른 계층, 즉 데스크탑, 워크스테이션 및 백엔드 서버에 접한 것과 비교할 수 없음에 따라 내장 분야에서는 UI로의 실질적인 도전에 직면하고 있다. 또, 입력 및 출력 인터페이스와 결합된 PvC 클라이언트의 복잡성이 증가함에 따라, GUI의 효과가 상당히 감소한다. 실제로, PvC 클라이언트는 사용자가 손 또는 눈이 자유로운 작용을 원하는 모바일 환경에서 종종 사용된다. 일부 속박된 표시 능력을 제공하는 내장 장치조차도, GUI는 작은 디스플레이, 하그 스칸트 파워 및 CPU 리소스를 과부하시킨다. 또, 이러한 GUI는 제한된 인터페이스를 사용하는 사용자를 압도하여 이탈시킨다. 또, 임의의 장치를 통해 어디서나 언제나 정보를 억세스하고 관리하도록 편재 인터페이스용으로 최근에 고안된 제품은 GUI 한계를 나타내고 있다.
최근에, 음성 코맨드 및 제어(음성 C&C) UI는 컴퓨터가 사용되는 곳 어디에나 발생하고 있다. 또, 쉬링크 랩 리테일 생산물로서 음성 인식의 최근 성공 및 전화 IVR(interactive voice response) 인터페이스의 일부로서 점진적인 도입은 음성 인식이 키 사용자 인터페이스 요소가 되고 있다. 예를 들면, 전화 회사, 호출 센터 및 IVR은 특정 작업을 자동화하도록 음성 인터페이스를 실행하여, 이들 조작자 요구 사항, 조작 비용 및 가속 호출 프로세싱을 감소시킨다. 그러나, 이 단계에서, IVR 응용 프로그램 개발자는 전용 음성 엔진 및 API(application program interface)를 제공한다. 다이알로그 개발은 복잡한 스크립팅 및 숙련된 프로그래머를 필요로 하고, 이들 특허 응용 프로그램은 통상 벤더마다 이식할 수 없다(즉, 각 응용 프로그램은 힘들게 정밀하게 만들어지고 특정한 비지니스 로직용으로 설계된다).
또, OS에 기초한 GUI용 음성 인터페이스는 명령, 코맨드 및 제어용으로 상업적으로 사용가능한 연속적인 음성 인식 응용 프로그램을 사용하여 실행된다. 그러나, 이들 음성 응용 프로그램은 이 응용 프로그램이 키보드 및 마우스의 대체 등으로 허용하고 사용자가 포커스를 변경하고, 새로운 작업을 시작하며 음성 코맨드를 포커스의 작업에 제공하도록 OS에 기초한 GUI에 기본적으로 부가된다. 또, 이러한 음성 인터페이스를 제공하는 최근의 판매자 및 기술 개발자 모두는 GUI 메뉴에 촛점을 맞추고 선택하기 위해 키보드 또는 인쇄 장치를 직접적으로 대체하도록 코맨드 라인 입력으로서 통합 음성 또는 NLU(natural language understanding)에 의존한다. 이러한 응용 프로그램에서, 음성은 인간/기계 작용에서의 기본적인 변화의 벡터라기보다 새로운 추가 I/O 양식으로서 고려된다.
대화형 시스템으로서 음성, NLU 또는 어떤 다른 입력/출력 인터페이스의 실행은 표면적 통합을 오퍼레이팅 시스템에 한정되지 않는다. 이것은 내장 장치에 걸쳐 편재하는 모습 및 느낌에 한정되지 않는다. 대신에, 이것은 근본적인 오퍼레이팅 시스템 및 컴퓨터 기능의 설계를 기본적으로 변형시킬 수 있다. 또, 입력 및 출력 미디어의 유연성은 오퍼레이팅 시스템의 가장 기본적인 변화가 음성 입력/출력을 필요로 하지 않고 종래의 키보드, 마우스 또는 펜 입력 및 디스플레이 출력으로 실행될 수 있다는 것에 있다.
따라서, 종래의 대화형 응용 프로그램을 설치하거나 "음성"을 가상적으로 통합하거나 종래의 응용 프로그램에 부가 음성 I/O 또는 대화 능력을 벗어나는 보편적인 대화형 사용자 인터페이스를 통해 다수의 플랫폼, 장치 및 응용 프로그램 양단에 대화형 컴퓨터를 제공하는 시스템이 매우 바람직하다.
본 발명은 일반적으로 대화형 컴퓨터 시스템 및 방법에 관한 것이다. 특히, 독립형 OS(operating system) 또는 종래의 플랫폼 및 응용 프로그램의 역 호환성을 가능하게 제공하는 종래의 OS 또는 RTOS(real-time operating system)상에서 운용하는 플랫폼 또는 커널 중 하나로 실행될 수 있는 CVM(conversational virtual machine)에 관한 것이다. 본 명세서에서 설명한 바와 같은 CVM은 대화형 API(Application program interface), 대화형 프로토콜 및 대화형 파운데이션 클래스를 응용 프로그램 개발자에게 공개하고, 보편적인 CUI(conversational user interface)를 제공하도록 상이한 대화 능력을 갖는 플랫폼 및 장치 양단에 다이알로그 및 구문, 대화형 엔진 및 리소스와 대화형 프로토콜/통신을 관리함으로써 대화형 컴퓨터를 실행하는 커널층을 제공한다.
도 1은 본 발명의 실시예에 따른 대화형 컴퓨터 시스템의 블럭도.
도 2는 본 발명의 실시예에 따른 대화형 컴퓨터 시스템의 추상 계층을 도시하는 도면.
도 3은 본 발명의 한 특징에 따른 대화형 컴퓨터 시스템에서 실행된 대화형프로토콜을 도시하는 블럭도.
도 4는 본 발명의 실시예에 따른 대화형 컴퓨터 시스템의 성분 블럭도.
도 5는 본 발명의 한 특징에 따른 작업 디스패칭 프로세스를 도시하는 도면.
도 6은 본 발명의 한 특징에 따른 일반적인 대화형 사용자 인터페이스 및 입력/출력 프로세스를 도시하는 도면.
도 7은 본 발명의 한 특징에 따른 분할된 대화형 컴퓨터 시스템을 도시하는 도면.
도 8은 본 발명의 실시예에 따른 보편적인 대화형 응용 프로그램을 도시하는 도면.
도 9는 본 발명의 한 특징에 따른 다이알로그 관리 프로세스를 도시하는 도면.
도 10은 본 발명의 다른 특징에 따른 다이알로그 관리 프로세스의 도면.
도 11은 본 발명의 다른 특징에 따른 다이알로그 관리 프로세스의 도면.
도 12는 본 발명에 따른 대화형 네트워킹을 도시하는 도면.
본 발명은 보편적인 대화형 사용자 인터페이스(CUI)를 통해 대화형 컴퓨터를 제공하는 대화형 컴퓨터 패러다임에 기초한 시스템 및 방법에 관한 것이다. 대화형 컴퓨터 패러다임은 시스템이 질의를 완성하고 명확하게 하며 요약하고 보정하도록 사용자 및 이들 실행의 결과를 다이알로그하는 것을 규정한다. 이것은 구문, 응용 프로그램, 히스토리 및 사용자 즐겨찾기 및 바이오메트릭스에 기본을 둔 질의, 구문 및 조작의 정보를 요약하여 처리한다. 이들 핵심 원리는 음성 인에이블 I/O 인터페이스를 필요로 하지 않고, 오히려 근본적인 컴퓨터 코어에 깊게 침투한다. 실제로, 본 발명에 따른 대화형 컴퓨터 패러다임은 음성없이도 적용하고, 이러한 다이알로그가 예를 들면, 키보드 상에서 행해질지라도 다이알로그 및 대화 주위에 설치된 컴퓨터의 엣센스를 설명한다. 이것은 사용자가 VT100 또는 팜 파이롯 스크린(plam pilot screen)과 같은 더미 터미널 디스플레이일지라도, 예를 들면 병렬로 동작하는 다수의 윈도우 응용 프로그램을 완벽하게 제어하도록 허용하는 대화형 컴퓨터 패러다임이다.
본 발명의 한 특징으로, 대화형 패러다임에 기반을 둔 대화형 컴퓨터를 제공하는 시스템은 종래의 플랫폼 및 응용 프로그램을 위한 역호환성을 제공하는 종래의 OS 또는 RTOS(real-time operating system)상에 구동하는 독립형 OS(operating system) 또는 플랫폼 또는 커널 중 하나가 실행되는 CVM(conversational virtual machine)이다. CVM은 대화형 API(application program interface), 대화형 프로토콜 및 대화형 파운데이션 클래스를 응용 프로그램 개발자에게 공개하고, 다이알로그 및 구문, 대화형 엔진 및 리소스, 및 보편적인 CUI(conversational user interface)를 제공하는 다른 대화형 능력을 갖는 플랫폼 및 장치 양단에서 대화형 프로토콜/통신을 관리함으로써 대화형 컴퓨터를 실행할 수 있는 커널을 제공한다. CVM 커널은 이들 등록한 대화형 능력 및 요구에 기초하여 응용 프로그램 및 장치 양단에서 다이알로그를 제어하는 코어층이다. 또, 이것은 대화형 시스템 행동을 제공하기 위해 I/O 형태로서 부가 음성을 벗어나는 통합된 대화형 사용자 인터페이스를 제공한다. CVM은 화법, 구문, 혼합된 이니셔티브 및 요약을 가진 대화와 유사한 방법으로 작업을 관리할 수 있다.
본 발명의 한 특징으로, CVM은 사용자와 기계간에 다이알로그를 인식하기 발생하도록 음성 인식, 화자 인식, 텍스트-언어, 자연어 인식 및 자연 다이알로그 발생 엔진을 포함하는 대화형 서브시스템(로컬이거나 분산될 수 있는)을 사용한다. 이들 서브시스템은 CVM을 통해 억세스된다. 엔진은 대화형 응용 프로그램 API를 통해 응용 프로그램에 내장된다. CVM은 대화형 엔진 API를 통해 이러한 엔진을 제어할 수 있다. 또, 대화형 응용 프로그램 API는 대화형 엔진 API를 포함할 수 있다. 전형적으로, CVM은 응용 프로그램 개발자에게 이들 엔진 API의 직접적인 노출을 포함한다. 이것은 대화 응용 프로그램 API에 포함된 대화형 엔진 API를 가지거나 대화형 응용 프로그램 API의 레벨에서 유사한 호출 및 기능성을 에뮬레이팅함으로써 행해질 수 있다.
다른 특징으로, CVM 커널층(또는 CVM 콘트롤러)은 다이알로그를 관리하고 액티브 다이알로그, 구문 및 응용 프로그램을 선택하는 메타 정보 관리자, 리소스 관리자, 구문 스택, 글로벌 히스토리, 다이알로그 관리자 및 작업 디스패처를 포함한다. 구문 스택은 입력 인식(예를 들면, 음성 입력용 액티브 FSG, 주제, 어휘 또는 가능한 질의)용으로 필요한 데이타에 따라 활성화된 화법에 대한 각 활동 프로세스의 구문(충분한 질의 개요 및 상태/모두 - 즉, 어떤 이벤트 및 응용 프로그램에 의해 발생된 이벤트를 미리 도입한 질의 개요)을 축적한다. CVM 커널은 로컬 및 네트워크된 종래 및 대화 리소스에 생성된 다른 작업 및 프로세스를 조정한다. CVM 커널층은 이들 리소스의 트랙을 유지하고, 적합한 대화형 서브시스템에 입력을 전송하며, 장치, 상태 및 응용 프로그램 사이를 조정한다. 또, CVM 커널층은 활동 대화 및 대화 히스토리, 지연된 복귀, 네트워크 리소스 및 작업 파견에서의 파견 및 기억에 따른 출력 발생 및 우선 순위를 조정한다.
본 발명의 다른 특징으로, CVM 시스템은 객체, 데이타 스트림 조정, 네트워크, 주변 기기, 하드웨어 및 로컬 및 네트워크된 파일 시스템과 같은 요소에 관련된 메타 정보를 통한 요약 및 요약 카테고리의 하이 레벨을 제공한다. 본 발명의한 특징에 따른 이론적인 메타 정보 시스템은 리소스의 소유자/개발자 또는 리소스의 과거 사용자/응용 프로그램에 의해 한정된 다수의 카테고리를 포함한다. 이러한 요소는 앱스트랙트 숏컷 및 혼합된 이니셔티브 요구를 통해 억세스가능해진다. 등록 프로토콜은 객체 또는 이것의 내용과 관련된 이론적인 카테고리의 리스트를 업데이트시키고 각 리소스가 능력을 등록하도록 앱스트랙션 테이블을 작동하는 접속시 또는 메타 정보 서버(DNS 서버 또는 네임 스페이스 관리자에 대한 유추)를 통한 새로운 객체에 관련된 새로운 카테고리를 자동적으로 형성하도록 제공된다. 다운로드되거나 포워드된 객체는 동일 프로토콜을 사용하여 등록할 수 있다. 앱스트랙트 메타 정보는 숏컷, 자동적으로 요약 또는 네트워크의 프로세스 요소 중 하나에 사용될 수 있다.
다른 특징으로, CVM은 다수의 작업, 프로세스 및 화법(다수의 도메인을 가짐)에 걸쳐 분류된 NLU, NLG, 구문 및 혼합-이니셔티브, 자연 다이알로그를 갖는 능력을 제공한다. 대화형 입력 인터페이스는 ASCII 코맨드 또는 질의[즉, 속성값 쌍 또는 n-업레스(n-uples)]로 복사된 다수 모드 입력 스트림 세트가 제공된다. 각 입력 엔트리[코맨드, NLU 질의 분야 또는 개요 유닛(고립 문자, 워드 등)]는 시간마크에 관련되고, 합성된 입력 스트림에 따라 부가된다. 2개 이상의 동일 시간 마크는 각 입력 스트림이 미리 기여될 때에 기초하여 우선시되고, 각 응용 프로그램/입력 스트림이 구문 히스토리에 기초하여 수신되어 우선시된다. 합성 입력은 가능한 FSG 및 사전에서 체크되고, 사용자에게 역으로 공급된다. 각 리소스는 이들의 대화 능력을 교환하고, 입력 스트림은 관련된 정보를 단지 교환하기 위해 조정된다.
또 다른 특징으로, 대화형 출력 디스패치 및 인터페이스 프로토콜은 구문 스택 및 작업 디스패처에 기초한 모노 채널에 대기된 다수 작업의 출력을 제공한다. 기계는 다양한 경우라도 각 입력 스트림에 할당된 리소스를 재지향하거나 변형시키는데 제공된다. 각 리소스는 대화형 능력을 교환하고, 출력 스트림은 출력 보이스 폰트의 선택 및 대화형 소개를 포맷하는 관련된 정보를 단지 교환하도록 맞추어진다.
다른 특징으로, 프로그래밍/스크립트 언어는 입력 또는 출력 스트림과 같은 어떤 사용가능한 리소스의 사용을 허용하는데 사용된다. 대화형 서브시스템을 사용하여, 각 입력은 고유 객체로서 프로그래밍 언어에 의해 직접적으로 처리될 수 있는 이진 또는 ASCII 입력(속성값 쌍 또는 n-업레스)으로 전환된다. 호출, 플래그 및 태그는 대화형 메타 정보가 다른 객체에 대해 정확히 인터페이스되도록 요구된 객체와 프로세스간에 전송하도록 자동적으로 포함된다. 또, 어떤 형태의 입력은 관련된 구문 또는 구문 스택에 부가된 사실로서 CVM 커널층의 다이알로그 관리자에 의해 포획된다. 예를 들면, 코맨드 "나는 이것을 열고 싶다"에 의해 허용된 마우스 클릭 또는 포인터/스타일러스 포인팅 작동은 속성값 쌍으로 명확해진다; 코맨드 : 오픈, 객체 : 최종 마우스 클릭에 의해 선택된 윈도우 또는 작업. 출력은 응용 프로그램 또는 사용자의 필요에 따라 특히 포맷될 수 있다. 다수 모델 화법 프로세싱은 새로운 프로그래밍 도구를 사용하여 쉽게 만들어질 수 있다. 또, 이러한 프로그래밍 언어 및 스크립트는 대화형 인에이블 응용 프로그램 및 CML(conversationalmarkup language) 뿐만 아니라 CVM간의 대화형 API를 포함한다.
또 다른 특징에서, 종래 로직 서술문 상태 및 조작자는 이들 ASCII/이진 카운터에 기초하거나 속성값 n-업레스의 NLU 전환 질의/리스트에 기초하여 비교될 수 있다. 로직 조작자는 이러한 시스템을 테스트하거나 변형하도록 실행된다.
다른 특징에서, 대화형 네트워크 접속 프로토콜은 단지 대화할 수 있는 익명의 파트너를 포함하는 대화 능력을 등록하기 위해 다수의 대화형 장치 또는 응용 프로그램을 허용하도록 제공된다. 대화형 프로토콜은 다수의 CVM 및 익명의 파트너에 대한 대화를 조정하도록 제공되고, 다수의 CVM 장치가 대화적으로 접속되고 조정될 때는 한개의 단일 인터페이스(예를 들면, 단일 마이크로폰을 통해)를 통해 자동적으로 제어할 수 있다. 서로 발견하고 이 식별을 등록한 후, 각 시스템 또는 장치는 관련 정보에 대한 데이타 이송을 제한하는 대화 능력에 대한 정보를 교환한다. 익명의 대화 파트너는 유사하게 행동하고, 대화형 대리 서버를 통하거나 CVM의 대화 클라이언트으로서 상호 작용할 수 있다. 다수 CVM간의 좌표는 다수의 대화로 접속된 장치/객체에 의해 나타난 조정된 일정한 대화형 인터페이스를 제공하도록 동적 매스터-슬레이브 및 P2P 상호 작용을 포함할 수 있다. 또, 다른 토폴로지는 P2P 베이시스에서 서로들간에 상호 작용하는 다수의 로컬 매스터(모든 네트워크 교통 및 다이알로그 흐름 지연을 감소시키도록 최적화되거나 결정된)를 포함하여 고려될 수 있다. 객체 수집은 집중화되거나 분할된 구문 스택을 통해 사용자에게 단일 조정된 인터페이스를 나타낸다.
또 다른 특징에서, 개발 툴은 CVM용 대화할 수 있는 응용 프로그램을 만들고, 시뮬레이트하며 디버깅하기 위해 개발자용으로 제공된다. 개발 툴은 API 호출, 프로토콜 호출, API 및 프로토콜을 사용하는 응용 프로그램 및 라이브러리, CVM에 의해 제공된 서비스 및 행동을 이용하는 응용 프로그램에 관련된 링킹의 직접 실행을 제공한다. 이들 개발 툴은 사용자가 출력을 제공하는 음성 타입을 선택하는 음성 폰트와 같은 다수 개성으로 구성되도록 개량한 대화형 인터페이스를 허용한다. 대화형 포맷팅 언어는 포스트크립트 및 AFL(audio formatting languages)과 같은 대화형 존재를 설치하도록 제공되어 있다. 이들 응용 프로그램을 실행하는 코드는 서술적이거나 절차적일 수 있다. 이것은 라이브러리 링크, 대화형 로직, 엔진 호출 및 대화형 파운데이션 클래스를 갖는 번역되고 편집된 스크립트 및 프로그램을 포함한다. 대화형 파운데이션 클래스는 형태 또는 형태 결합의 다이알로그를 특징화하는 기본 성분 또는 대화형 제스쳐이다.
또 다른 특징에서, 대화 보안은 권한이 없는 억세스를 방지하기 위해 특히 실행할 수 있는 로컬의 저자 및/또는 변경자에 대한 메타 정보를 사용하여 제공되고 있다. CVM은 제한된 리소스에 대한 질의가 리소스에 관련된 보안 메타 정보에 기초하여 제작될 때마다 사용자의 자동 인증을 제공한다. 인증은 질의 직전에 얻어진 요구 또는 만료되지 않은 정보로 직접적으로 행해진다.
다른 특징에서, CVM은 대화 관계를 제공한다. 사용자는 리소스에 대한 질의가 만들어질 때마다 자동적으로 확인된다. 인증은 질의 직전에 얻어진 요구 또는 만료되지 않은 정보로 직접적으로 행해진다. 각 작업 또는 리소스 억세스는 요구자 즐겨 찾기로 개별적으로 맞추어질 수 있다. 작업 및 구문은 활동 사용자의 시퀀스에 따라 우선시되고, 각 사용자 변경에서 재우선시된다. 환경 변화는 전체 환경을 리셋하도록 요구하지 않고 사용자 ID의 변경에 기초하여 변형될 수 있다. 모호성은 사용자 ID를 사용하는 각 구문 또는 구문 스택의 레벨에서 해결된다.
또 다른 특징에서, 대화형 서치 능력은 파일의 이름, 변경 또는 ASCII 내용 뿐만 아니라 오퍼레이팅 시스템, 응용 프로그램 또는 사용자 및 오퍼레이팅 시스템에 의한 온 라인 또는 오프 라인을 요약한 토픽에 의해 한정된 이론적인 카테고리에 기초하여 제공되거나 객체가 억세스될 때 대화형 프로토콜을 통해 얻어지도록 제공된다. 또, 구문 서치 능력은 능동 질의를 완성하거나 유사한 질의/구문을 요약하도록 제공된다.
또 다른 특징에서, 대화형 선택 능력은 리소스 관리자 레벨에서 제공되거나 메타 정보, 앱스트랙션 및 대화형 질의/혼합된 초기 보정에 의존하는 응용 프로그램 내에서 제공된다. 이러한 대화형 선택 능력은 기본 선택의 긴 시퀀스를 피하고, 자연 숏컷 및 선택 보정을 제공한다. 또, 메카니즘은 계층 구조를 갖는 객체의 골격을 즉시 억세스하고 나타내도록 제공된다.
또 다른 특징에서, 대화형 도움말, 매뉴얼 및 지지는 요구를 완성하고 , 절차를 통해 가이드하며, 정보용으로 설치하고 새로운 응용 프로그램을 업그레이드/인스톨하기 위해 로컬 및 리모트 리소스, 사용자의 사용 히스토리 및 에이젼트를 이용하여 널리 존재하는 조정된 대화형 인터페이스를 통해 제공된다. 또, 도움말 정보는 도움말 정보를 억세스하는 NLU 질의를 사용하여 억세스될 수 있거나, 최근 사용자(히스토리)에 관련된 메타 정보에 기초하고 혼합된 기초 이니셔티브를 사용하여 분식되거나 변경된 개요에 기초하여 억세스될 수 있다. 각 응용 프로그램에 의해 제공된 다이아그램 사용자의 즐겨 찾기 및 전문 지식의 레벨로 조정된다.
본 발명에 따른 CVM에 의해 제공된 다른 특징은 최소 학습 곡선을 갖는 간단하고 직관적인 자연 인터페이스, 음성의 사용이 생산성, 새로운 기능 또는 사용을 크게 개량하는 강력한 대화 응용 프로그램, 자연 질의를 인식할 수 있는 클리버 머신/장치, 핸즈-프리 및/또는 아이-프리 모드에서 효율적으로 작업을 수행할 가능성, 종래의 사용자 I/O를 보충하고 필요에 따라 그들(디스플레이 없음 또느 소형 디스플레이, 키보드, 펜 또는 포인팅 장치가 없음, 리모트 컴퓨터 등), 트랜잭션/서비스/응용 프로그램에 독립하여 억세스할 수 있는 장치(PC, PDA, 전화 등)에 독립한 보편적인 사용자 인터페이스는 강력한 복합 양식 생산 사용자 인터페이스 및 하나의 장치가 복수개의 다른 장치를 제어하고, 기존의 OS, 응용 프로그램, 장치및 서비스와 역호환성을 가지도록 허용하는 복수개의 대화형 장치에 걸친 조정 인터페이스를 포함하고 있다.
본 발명의 이들 및 다른 특징 및 장점은 첨부하는 도면을 참조하여 기록되는 이어지는 양호한 실시예의 상세한 설명으로부터 명백하게 설명될 수 있다.
본 발명은 대화형 시스템 및 복합 양식 인터페이스의 모든 특징을 포함하는 대화형 컴퓨터용 시스템 및 방법에 관한 것이다. 본 명세서에 설명된 대화형 컴퓨터 패러다임에 따른 대화형 컴퓨터를 제공하는 주요 부품은 CVM(conversational virtual machine)이다. 일례로, CVM은 종래의 OS 또는 RTOS 상에서 운영하는 대화형 플랫폼 또는 커널이다. 또, CVM 플랫폼은 서버 및 PvC(pervasive computing) 클라이먼트로 실행될 수 있다. 일반적으로, CVM은 대화형 서브시스템(예를 들면, 음성 인식 엔진, 텍스트-음성 등)과 대화형 및/또는 종래의 응용 프로그램 간의 대화형 API 및 프로토콜을 제공한다. 또, CVM은 좀더 제한된 인터페이스를 갖는 기존의 응용 프로그램에 대해 역 호환성을 제공할 수 있다. 후술한 바와 같이, CVM은 CVM층 또는 적어도 대화형 인식에 설치된 다수의 응용 프로그램 및 장치와 상호 작용하는 대화형 프로토콜 뿐만 아니라 대화형 서비스 및 행동을 제공한다.
본 명세서에서 설명된 다른 요소 및 프로토콜/API는 실행하는 기능 및 교환하는 정보에 기초하여 한정된다. 이들 실제 조직 또는 실행은 변할 수 있는데, 예를 들면 동일하거나 다른 엔트리에 의해 실행되고, 더 큰 부품 또는 독립적으로 설명된 객체 또는 객체 또는 클래스군으로서 실행된다.
본 발명에 따라 본 명세서에서 설명된 대화형 컴퓨터 패러다임에 기초를 둔 CVM(또는 오퍼레이팅 시스템)은 컴퓨터 또는 임의의 다른 대화형 장치가 사용자와 대화하도록 허용한다. 또, CVM은 기계가 디스플레이 또는 GUI 능력, 키보드, 펜 또는 포인팅 장치를 가지지 않더라도 사용자가 기계의 복수 작업을 운영하도록 허용한다. 실제로, 사용자는 대화 등의 이들 작업을 관리하고, 종료하도록 작업 또는 복수 개의 동시 작업을 할 수 있다. 대화 등의 작업을 관리하기 위해, 본 발명에 따른 CVM은 혼합 이니셔티브, 구문 및 앱스트랙션의 개량 레벨에 의존하는 능력을 산출하여, 다양한 기능을 수행한다. 혼합 이니셔티브는 사용자가 시스템을 가진 다이알로그를 통해 요구를 자연스럽게 완성하거나 변경하거나 보정하게 한다. 또, 혼합된 이니셔티브는 CVM이 특히, 음성 인에이블 응용 프로그램에서 실제적으로돕고(이니셔티브를 도움) 작업을 통해 사용자를 코치할 수 있으며, 혼합된 이니셔티브 능력은 디스플레이없는 시스템 또는 디스플레이 능력이 제한된 시스템을 보상하는 자연스러운 방법임을 의미한다. 일반적으로, CVM은 대체하는 것보다 종래의 인터페이스 및 사용자 입력/출력을 보충한다. 이것은 "복합 양식"의 개념이고, 음성은 마우스, 키보드 및 펜과 같은 다른 입력 장치와 병행하여 사용된다. 종래의 인터페이스는 장치 제약이 특정 인터페이스의 실행을 제약할 때 대체될 수 있다. 또, 장치, 티어(tier) 및 서비스에 걸쳐 최종 인터페이스의 편재 및 일치는 추가적인 의무 특성이다. CVM 시스템은 종래의 입력 및/또는 출력 미디어를 갖는 복수 기능을 가질 수 있다. 실제로, 종래의 모니터 디스플레이와 결합된 종래의 키보드 입력 및 포인팅 장치를 갖는 컴퓨터는 본 발명에 따른 CVM을 활용함으로써 상당한 장점을 가질 수 있다. 그 일례는 참조 문헌(GUI 양식 및 음성 양식간에 정확한 동시성을 갖는 복합 양식 응용 프로그램을 구성하는 방법을 설명하는)으로 여기에 양도되고 구체화된 "복합 양식 셀"이라는 명칭의 1999년 4월 7일자로 출원된 미합중국 가출원 번호 제60/128,081에 설명되어 있다. 즉, 컴퓨터와 대화하기를 원하지 않는 사용자도 CVM 인에이블 기계와의 상호 작용에 대해 극적으로 긍정적인 변화를 실현할 수 있다.
도 1을 참조하면, 블럭도는 클라이언트 장치 또는 서버에 실행될 수 있는 본 발명의 실시예에 따른 대화형 컴퓨터 시스템(또는 CVM 시스템)을 설명한다. 일반적으로, CVM은 범용으로 조정된 복합 양식의 대화형 사용자 인터페이스(CUI : 10)를 제공한다. CUI의 "복합 양식" 특징은 음성, 키보드, 펜 및 포인팅 장치(마우스),키패드, 터치 스크린 등과 같은 다양한 I/O 리소스가 CVM 플랫폼과 병행하여 사용될 수 있음을 의미한다. CUI(10)의 "보편성" 특징은 CVM가 데스크톱 컴퓨터, 제한된 디스플레이 능력을 갖는 PDA에 접속하여 실행되는지 디스플레이없는 전화에 접속하여 실행되는지 여부를 동일 UI가 사용자에게 제공함을 의미한다. 다시 말하면, 보편성은 CVM 시스템이 음성만으로부터 복합 음성까지 단일 GUI에 대해, 즉 음성 +GUI까지의 능력을 갖는 장치의 UI를 적절하게 조정할 수 있음을 의미한다. 그러므로, 보편적인 CUI는 억세스 양식에도 불구하고 모든 사용자 상호 작용을 위한 동일한 UI를 제공한다.
또, 보편적인 CUI의 개념은 조정된 CUI의 개념으로 확장한다. 특히, 다수의 장치(다수의 컴퓨터 티어 내 또는 양단)가 동일 CUI를 제공한다고 가정하면, 장치는 단일 화법, 즉 조정 인터페이스를 통해 관리될 수 있다. 즉, 다수의 장치가 대화로 접속될 때(즉, 서로 인식될 때), 다수의 장치는 그 장치 중 하나에 속한 한개의 인터페이스(예를 들면, 단일 마이크로폰)를 통해 동시에 제어될 수 있다. 예를 들면, 음성은 접속된 보편적인 조정 CUI, 스마트 폰, 페이저, PDA, 네트워크된 컴퓨터 및 IVR 및 대화로 접속된 자동차를 통해 자동적으로 제어할 수 있다. 이들 CUI 개념은 상세히 후술한다.
또, CVM 시스템은 대화형 인식 응용 프로그램(11 : 즉, 대화형 프로토콜을 "스피크"하는 응용 프로그램) 및 종래의 응용 프로그램(12)을 포함하는 다수의 응용 프로그램을 포함한다. 대화형 인식 응용 프로그램(11)은 대화형 응용 프로그램 API(13)를 통해 CVM 코어층(또는 커널 : 14)을 조작하도록 프로그램된 응용 프로그램이다. 일반적으로, CVM 커널(14)은 등록된 대화 능력 및 요구 사항에 기초한 응용 프로그램 및 장치 양단의 다이알로그를 제어하고, 대화형 시스템 상태를 제공하기 위해 I/O 형식으로서 음성 추가를 벗어난 통합 대화형 사용자 인터페이스를 제공한다. CVM 시스템은 종래의 OS 및 API(15)와 종래의 장치 하드웨어(16)에 설치되고, 서버 또는 임의의 클라이언트 장치(PC, PDA, PvC)에 배치될 수 있다. 종래의 응용 프로그램(12)은 근본적인 OS 코맨드 뿐만 아니라 OS API를 통해 종래 응용 프로그램의 GUI 메뉴 및 코맨드를 억세스할 수 있는 CVM 커널층(14)에 의해 관리된다. CVM은 대화형 서브시스템(18 : 즉 대화형 엔진) 및 종래의 OS(15)의 종래의 서브 시스템(예를 들면, 파일 시스템 및 종래의 드라이버)을 포함하는 모든 입력/출력 문제점을 자동적으로 조정한다. 일반적으로, 대화형 서브시스템(18)은 음성 요구를 질의로 전환하고, 출력 및 결과를 적합한 데이타 파일(17 : 예를 들면, 구문, 유한 상태 문법, 어휘, 언어 모델, 심볼 질의맵 등)을 사용하여 말하는 메시지로 전환한다. 대화형 응용 프로그램 API(13)는 CVM(14)에 대한 모든 정보를 전달하여, 질의를 응용 프로그램 호출로 변형하고, 출력을 사용자에게 제공되기 전에 적절하게 분류된 음성으로 역전환된다.
도 2를 참조하면, 도면은 본 발명의 실시예에 따른 대화형 컴퓨터 시스템(또는 CVM)의 앱스트랙트 프로그래밍층을 도시한다. CVM의 앱스트랙트층은 대화형 인식 응용 프로그램(200) 및 종래의 응용 프로그램(201)을 포함한다. 전술한 바와 같이, 대화형 인식 응용 프로그램(200)은 대화형 응용 프로그램 API층(203)을 통해 CVM 커널층(202)과 상호 작용한다. 대화형 응용 API층(203)은 CVM 커널(202)에 제공된 다양한 특징(후술함)을 제공하도록 대화형 프로그래밍 언어/스크립트 및 라이브러리(대화형 파운데이션 클래스)를 포함한다. 예를 들면, 대화형 프로그래밍 언어/스크립트는 응용 프로그램 개발자가 대화형 인식 응용 프로그램(200)을 후크(또는 개발)하도록 허용하는 대화형 API를 제공한다. 또, 이것은 개발자가 "대화형 인식"을 응용 프로그램으로 형성하도록 허용하는 대화형 API층(203), 대화형 프로토콜(204) 및 시스템 호출을 제공한다. 응용 프로그램, API 호출 및 프로토콜 호출을 실행하는 코드는 라이브러리 링크, 대화형 로직(후술함) 엔진 호출 및 대화형 파운데이션 클래스를 갖는 설명되고 편집된 스크립트 및 프로그램을 포함한다.
특히, 대화형 응용 프로그램 API층(203)은 본 발명에 따른 CUI 또는 대화형 인식 응용 프로그램(200)을 설치하는데 사용될 수 있는 라이브러리 기능을 통해 응용 프로그램 개발자에게 제공된 다수의 대화형 파운데이션 클래스(205 : 또는 기본다이알로그 부품)를 포함한다. 대화형 파운데이션 클래스(205)는 어떤 다이알로그, 형식에 독립적이거나 형식의 조합(서술식이거나 절차식으로 실행될 수 있는)을 특성화하는 기본적인 부품 또는 대화형 기본 부품 또는 대화형 제스처(1997년 보스톤의 Kluwer Academic Publishers에서 발간한 "Auditory User Interfaces, Toward The Speaking Computer"에서 T.V. Raman에 의해 설명된 바와 같이)이다. 대화형 파운데이션 클래스(205)는 CUI 빌딩 블럭 및 대화형 플랫폼 라이브러리, 다이알로그 모듈 및 부품, 다이알 스크립츠 및 빈즈(beans)를 포함한다. 대화형 파운데이션 클래스(205)는 로컬하게 대화형 객체(206)로 편집될 수 있다. 특히, 대화형 객체(205)(또는 다이알로그 부품)는 자바 또는 C++와 같은 프로그래밍 언어를 통해이들 라이브러리를 호출하는 코드에서 다른 개별 클래스를 조합함으로써 대화형 파운데이션 클래스(205 : 기본 다이알로그 부품)로부터 편집된다. 전술한 바와 같이, 코딩은 이러한 기초 다이알로그 부품을 서술적인 코드로 내장하거나 이것을 절차 코드로 라이킹(liking)하는 것을 포함한다. 대화형 파운데이션 클래스(205)를 네스팅하고 내장하는 단계는 대화형 객체(206 : 재사용할 수 있거나 없거나)가 특정 다이알로그 작업 또는 응용 프로그램을 실행하도록 (서술적이거나 편집/번역을 통해) 구성된다. 예를 들면, 대화형 객체(206)는 여기에 참조 문헌으로 지정되고 구체화된 명칭이 "대화형 브라우저 및 대화형 시스템"이고 동시에 출원된 특허 출원 IBM 문서 YO9998-392P에 설명한 바와 같이 대화형 브라우저[또는 뷰어(viewer) : 200a]에 의해 처리되거나 로드된 CVM(conversational markup language)(네스트되거나 되지 않음)의 페이지와 같이 서술적으로 실행될 수 있다. 다이알로그 객체는 (대화형 브라우저를 통한) 페이지, (CVM 분산 가능) CVM 상의 절차 객체, CVM 상의 스크립트 태그 및 서블릿(servlet) 부품이 CVM(conversational markup language)을 통해 로드될 수 있는 애플릿 또는 객체를 포함한다.
본 발명에 따라 실행될 수 있는 대화형 제스처의 일부 예에 대해 설명한다. 대화형 제스처 메시지는 정보 메시지를 사용자에게 전달하기 위해 기계에 의해 사용된다. 제스처 메시지는 표시된 스트링 또는 이야기 프롬프트로서 전형적으로 제공될 수 있다. 이야기된 메시지 부분은 CVM에 운영하는 다양한 응용 프로그램/다이알로그의 현행 상태의 기능일 수 있다. 대화형 제스처 "세트로부터 선택"은 사용자가 개별 선택 세트로부터 잡아 낼 것으로 기대되는 다이알로그를 요약하는데 사용된다. 이것은 법적인 선택 세트 뿐만 아니라 프롬프트, 디폴트 선택을 요약한다. 대화형 제스처 메시지 " 범위로부터의 선택"은 사용자가 연속적인 값의 범위로부터 값을 선택하도록 허용되는 다이알로그를 요약한다. 제스처는 유효 범위, 현행 선택 및 정보 프롬프트를 요약한다. 또, 대화형 제스처 입력은 입력 제약이 더 복잡할 때(또는 아마 존재하지 않을 때)의 사용자 입력을 얻는데 사용된다. 제스처는 사용자 프롬프트, 요구되는(TBD) 정보 항목에 대한 응용 프로그램 레벨 의미론 및 입력의 다양성을 검사하기 위한 술어를 요약한다. 그러나, 전술한 바와 같이, 대화형 파운데이션 클래스는 이미 능가하는 대화 제스처의 개념을 포함한다(즉, 이것은 대화 작업을 실행하기 위한 법칙 뿐만 아니라 기초 행동 및 서비스의 레벨로 확장한다).
후술하는 바와 같이, 프로그래밍 모델은 대화형 API를 통해 매스터 다이알로그 관리자와 엔진간의 접속을 허용한다. 파운데이션 클래스의 데이타 파일은 CVM(내장된 플랫폼용으로 로드가능한)에 표시된다. 객체의 데이타 파일은 확장되고 로드될 수 있다. 다른 객체는 동시 다이알로그 관리자로서 작용한다. 일부의 대화형 파운데이션 클래스의 예는 다음과 같다.
로우 레벨 다이알로그 대화형 파운데이션 클래스 :
(적합하게 사용가능한 복합 양식 특징)
(분산될 때 CVM 조정에 대해)
1. Select_an_item_from_list
2. Field_filing_with_grammar
3. Acoustic_Enroll_speaker
4. Acoustic_Identify_speaker
5. Acoustic_Verify_speaker
6. Verify_utterance
7. Add_to_list
8. Enroll_utterance
9. Get_input_from_NL
10. Disambiguate
etc
로우 레벨 특수화된 다이알로그 대화형 파운데이션 클래스 :
(적합하게 사용가능한 복합 양식 특징)
(분산될 때 CVM 조정에 대해)
1. Get_Yes/No
2. Get_a_date
3. Get_a_time
4. Get_a_natural_number
5. Get_a_currency
6. Get_a_telephone_number US or international, rules can be specified or any possibility
7. Get_digitstring
8. Get_alphanumeric
9. Get_spelling
10. Speech_biometrics_identify
11. Open_NL
12. Close_NL
13. Delete_NL
14. Save_NL
15. Select_NL
16. Mark_NL
etc.
중간 레벨 다이알로그 대화형 파운데이션 클래스 :
(적합하게 사용가능한 복합 양식 특징)
(분산될 때 CVM 조정에 대해)
1. Form_filling
2. Request_confirmation
3. Identify_user by dialog
4. Enrol_user by dialog
5. Speech_biometrics_identify
6. Verify_user by dialog
7. Correct_input
8. Speech_biometrics_identify
9. Speech_biometrics_verify
10. Speech_biometrics_enrol
11. Manage_table
12. Fill_free_field
13. Listen_to_TTS
14. Listen_to_playback
15. Simultaneous_form_filling
16. Simultaneous_classes_dialog
17. Summarize_dialog
etc.
하이 레벨 응용 프로그램 특수 파운데이션 클래스 :
(적합하게 사용가능한 복합 양식 특징)
(분산될 때 CVM 조정에 대해)
1. Manage_bank_account
2. Manage_portfolio
3. Request_travel_reservation
4. Manage_e-mail
5. Manage_calendar
6. Manage_addressbook/director
통신 대화 클래스
1. Get_list_of_CVM_devices
2. Get_capability_of_CVM_device
3. Send_capability_to_CVM_device
4. Request_device_with_given_capability
5. Get_handle_from_CVM_device
6. Mark_as_Master_CVM
7. Mark_as_active_CVM
8. Get_context
9. Send_context
10. Get_result
11. Send_result
12. Save_on_context
etc.
서비스 및 행동 대화형 파운데이션 클래스
(다시 이것은 분산될 때 CVM로 조정될 수 있다)
1. Get_meta-information
2. Set_meta-information
3. Register_category
4. Get_list_of_categories
5. Conversational_search(dialog or abstraction-based)
6. Conversational_selection(dialog or abstraction-based)
7. Accept_result
8. Reject_result
9. Arbitrate_result
etc.
다른 서비스
(복수 클래스에 대해)
Conversational security
Conversational customization
Conversational Help
Conversation prioritization
Resource management
Output formatting and presentation
I/O abstraction
Engine abstractions
Etc.
규칙
How complete get a name from a first name
How to get a phone number
How to get an address
How to undo a query
How to correct a query
etc.
CVM에 의해 제공된 개발 환경은 SPOKEN AGETM으로서 본 명세서에서 참조된다. 이 스포컨 에이지는 개발자가 CVM용 대화형 인식 응용 프로그램을 만들고, 시뮬레이션하며 디버깅하도록 허용한다. API 호출의 직접 실행을 제공하는 외에, 또 이것은 다수 개성을 갖는 개량 대화형 인터페이스를 만드는 툴, 사용자가 출력을 제공하는 음성 형태를 선택하도록 음성 폰트와 포스트립트 및 AFL(audio formatting languages)와 같은 대화형 표시를 만드는 대화형 포맷팅을 제공한다.
전술한 바와 같이, 대화형 응용 프로그램 API층(203)은 대화형 프로그래밍 언어를 포함하고, 보편적인 대화형 입력 및 출력, 대화형 로직 및 대화형 메타 정보 교환 프로토콜을 제공하도록 스크립트한다. 대화형 프로그래밍 언어/스크립트는 입력 또는 출력 스트림으로서 어떤 사용가능한 리소스를 사용하도록 허용한다. 후술하는 바와 같이, 대화형 엔진(208) 및 [대화 엔진 API(207)를 통해 CVM(202)에 의해 억세스된] 대화형 데이타 파일(209)을 사용하면, 각 입력은 이진 또는 ASCII 입력으로 전환되고, 고유의 객체로서 프로그래밍 언어에 의해 직접적으로 처리될 수 있다. 호출, 플래그 및 태그는 대화형 메타 정보가 다른 객체와 정확하게 인터페이스하도록 요구되는 객체와 프로세스 간에 전송하도록 자동적으로 포함될 수 있다. 또, 출력 스트림은 특히 응용 프로그램 또는 사용자의 요구에 따라 포맷될 수 있다. 이들 프로그래밍 툴은 복합 양식 화법 프로세싱으로 용이하게 만들 수 있다. 또, 로직 진술 스테이터스 및 조작자는 이들 ASCII 이진 내용에 기초하거나 NLU 전환 질의(종래 및 대화형 서브시스템의 입력/출력) 또는 FSG 본위 질의(시스템이 제한된 코맨드를 사용한다)의 기초에 비교될 수 있는 대화형 질의의 풍요함을 조정하기 위해 확장된다. 로직 조작자는 이러한 시스템을 검사하거나 변경하도록 실행될 수 있다. 대화형 로직값/조작자는 참, 거짓, 불완전, 모호, ASCII 관점용으로 상이/등가, NLU 관점으로부터의 상이/등가, 능동 질의 분야 관점으로부터 상이/등가, 미지수, 모순, 호환불가를 포함하도록 확장한다.
또, 대화형 응용 프로그램 API층(203)은 근본적인 OS 특징 및 상태의 확장을 제공하는 코드를 포함한다. 예를 들면, 이러한 확장은 파운데이션 클래스 라이브러리 뿐만 아니라 객체에 관련된 앱스트랙션 및 앱스트랙트 카테고리의 하이 레벨, 앱스트랙트 카테고리의 자체 등록 메카니즘, 암기, 요약, 대화 서치, 선택, 재지향, 사용자 맞춤, 트레인 능력, 도움말, 다수 사용자 및 보안 능력을 포함하고, 각각에 대해 더 상세히 후술한다.
도 2의 대화형 컴퓨터 시스템은 코어 엔진과 대화 엔진(208)(예를 들면, 음성 인식, NL 파싱, NLU, TTS 및 음성 압축/압축 해제 엔진)간의 인터페이스를 제공하는 대화형 엔진 API층(207) 및 이것을 사용하는 응용 프로그램을 포함한다. 또, 엔진 API층(207)은 로컬되거나 리모트되는 코어 엔진과 통신하도록 프로토콜을 제공한다. I/O API층(210)은 (복합 양식 대화 UI를 제공하기 위한) 키보드, 마우스,터치 스크린, 키패드 등과 같은 종래의 I/O 리소스(211)에 대한 인터페이스 및 음성 I/O(오디오 입력/오디오 출력)를 획득하는 오디오 서브시스템을 제공한다. I/O API층(210)은 장치 앱스트랙션, I/O 앱스트랙션 및 UI 앱스트랙션을 제공한다. I/O 리소스(211)는 I/O API층(210)을 통해 CVM 커널층(202)에 등록할 수 있다.
코어 CVM 커널층(202)은 대화형 응용 프로그램 & 행동/서비스 관리자층(215), 대화형 다이알로그 관리자(조정자)층(219), 대화형 리소스 관리자층(220), 작업/디스패처 관리자(221) 및 메타 정보 관리자(220)와 같은 프로그래밍층을 포함하고, CVM층(202)의 코어 기능을 제공한다. 대화형 응용 프로그램 및 행동/서비스 관리자층(215)은 종래 및 대화형 인식 응용 프로그램(200 및 201)을 관리하는 기능을 포함한다. 예를 들면, 관리 기능은 응용 프로그램이 (로컬 및 네트워크 분배) 등록되고, 응용 프로그램의 다이알로그 인터페이스이며(가능하면) , 각 응용 프로그램의 상태인 트랙을 유지하는 것을 포함한다. 또, 대화형 응용 프로그램 및 서비스/행동 관리자(20)는 CVM 시스템에 의해 제공된 어떤 특수한 서비스 또는 행동에 관련된 모든 작업을 시작한다. 이 대화형 서비스 및 행동은 응용 프로그램 개발자가 API(응용 프로그램 개발로 실행해야 함이 없이)를 통해 억세스하도록 기대할 수 있는 특징 뿐만 아니라 사용자가 응용 프로그램 및 상호 작용에서 발견하도록 기대할 수 있는 대화형 UI의 모든 행동 및 특징이다. CVM 커널(202)에 의해 제공된 대화형 서비스 및 행동의 예는 한정되지는 않지만 대화형 분류 및 메타 정보, 대화 객체, 리소스 및 파일 관리, 대화 서치, 대화 선택, 대화 맞춤, 대화 보안, 대화 도움말, 대화 우선 순위, 대화 리소스 관리, 출력 포맷팅 및 표시, 요약,대화 지연 작용/대리인/암기, 대화 로직 및 조정 인터페이스 및 장치(각각 후술된다)를 포함한다. 이러한 서비스는 대화형 응용 프로그램 API층(203)을 경유하여 API 호출을 통해 제공된다. 대화형 응용 프로그램 및 행동/서비스 관리자(215)는 UI를 장치, 응용 프로그램 및/또는 사용자 즐겨 찾기의 능력 및 제약에 제공하는데 필요한 모든 다른 기능을 실행할 수 있다.
대화형 다이알로그 관리자(219)는 모든 등록된 응용 프로그램 양단의 다이알로그(대화형 다이알로그는 음성 및 GUI 키보드, 포인터, 마우스, 비디오 입력 등과 같은 복합 양식 I/O를 포함한다)를 관리하는 기능을 포함한다. 특히, 대화형 다이알로그 관리자(219)는 사용자가 갖는 정보, 사용자가 표시하는 입력 및 사용자 입력을 조정할 수 있는 응용 프로그램을 결정한다.
대화형 리소스 관리자(220)는 [로컬 대화형(208) 및/또는 네트워크 분산 리소스에] 등록된 대화형 엔진(208), 각 등록된 리소스의 능력 및 각 등록된 리소스의 상태를 결정한다. 또, 대화형 리소스 관리자(220)는 능동 응용 프로그램(예를 들면, 현재 입력 또는 출력을 인식하거나 제어하기 위해 관계된 엔진은 우선 순위를 가짐)에 대한 흐름 다이알로그를 유지하도록 CPU 사이클 또는 입력/출력 우선 순위의 배당을 우선시한다. 마찬가지로, 분산 응용 프로그램에서, 능동 전면 처리에 대한 네트워크 지연을 최소화하는데 사용되도록 엔진 및 네트워크 경로를 라우트하여 선택한다.
작업 디스패처/관리자(221)는 로컬 및 네트워크된 종래 및 대화형 리소스(후술함)에 (사용자 및 기계에 의해) 생산된 다른 작업 및 프로세스를 디스패치하여조정한다. 메타 정보 관리자(222)는 메타 정보 저장소(218)를 경유하여 시스템에 관련된 메타 정보를 관리한다. 메타 정보 관리자(218) 및 저장소(218)는 현재 대화의 레벨에서 사용가능하지 않고 대화형 대화에 공지된 전통적으로 가정된 모든 정보를 수집한다. 그 예는 선험 지식: 문화, 교육적 가설 및 지속적인 정보: 사용자, 응용 프로그램, 뉴스 등에 대한 과거 요구, 참조, 정보가 있다. 이것은 전형적으로 대화형 히스토리/구문의 길이/라이프를 벗어나 보존되고 지속되는데 필요한 정보 및 대화를 위한 지식이 공통되도록 기대된 정보로, 현재 및 가능한 과거 대화형 상호 작용시 한정되지 않는다. 또, 후술한 바와 같이, 코맨드, 리소스 및 매크로 등에 대한 숏컷은 메타 정보 관리자(222)에 의해 관리되고 메타 정보 저장소(218)에 저장된다. 또, 메타 정보 저장소(21)는 사용자 신분에 기초한 사용자 사용법을 포함한다. CVM 시스템에 의해 제공된 소정의 다이알로그 프롬프트(소개, 질의, 피드백 등) 뿐만 아니라 대화 도움말 및 보증과 같은 서비스는 메타 정보 저장소(218)에 저장되고 응용 프로그램에 관련될 때 사용자의 사용법 히스토리에 기초하여 맞추어질 수 있다. 사용자가 주어진 응용 프로그램에 대해 미리 상호 작용할 경우, 설명은 사용자에 잘 알려져 있다고 가정하여 감소될 수 있다. 마찬가지로, 사용자가 많은 에러를 범할 경우, 설명은 다수 에러가 사용자 불확실성, 생소 또는 응용 프로그램 또는 기능의 이해력 부족/오해로서 설명될 때 더 복잡해질 수 있다.
구문 스택(217)은 다이알로그 관리자(219)에 의해 관리된다. 구문 스택(217)은 응용 프로그램에 관련된 모든 정보를 포함한다. 이러한 정보는 다이알로그의 구문에서 실행된 백엔드 및 다이알로그 중 발생하는 외래의 이벤트에 대한 도든 변화, 상태, 입력, 출력 및 질의를 포함한다. 후술하는 바와 같이, 구문 스택은 능동 다이알로그(또는 지체된 다이알로그-대리인/암기)에 해당하는 조직화된/저장된 구문에 관련된다. CVM 시스템에 포함된 글로벌 히스토리(216)는 각 응용 프로그램의 구문을 벗어나 저장된 정보를 포함한다. 예를 들면, 글로벌 히스토리는 대화형 세션[즉, 현행 세션용 사용자와 기계간(또는 기계가 작동될 때로부터)에 다이알로그의 히스토리]을 취급하는 모든 응용 프로그램 및 작동에 관련된 정보를 저장한다.
또, CVM 커널층(202)은 [다이알로그 관리자(219)를 바이패싱하기 보다] 다이알로그 관리자(219)를 경유하여 비지니스 로직(213)을 백엔드하도록 억세스를 허용하는 백엔드 앱스트랙션층(223)을 포함한다. 이것은 구문 스택(217) 및 글로벌 히스토리(216)에 추가되도록 이러한 억세스를 허용한다. 예를 들면, 백엔드 앱스트랙션층(223)은 다이알로그 관리자(219)에서/로부터의 입력 및 출력을 데이타베이스 질의로 해석한다. 이 층(223)은 규격화된 속성값 n-업레스를 데이타베이스 질의로 전환하고, 이러한 질의의 결과를 다이알로그 관리자(219)에 역행하는 테이블 또는 속성값 n-업레스 세트로 해석한다. 또, 대화형 트랜스코딩층(224)은 CVM 시스템을 실행하는 장치의 행동, UI 및 I/O 및 엔진 능력에 기초한 사용자에게 표시된 다이알로그를 적응시키기 위해 제공된다.
또, CVM 시스템은 OS(212)에 의해 제공된 근본적인 시스템 서비스의 일부로서 통신 스택(214 : 통신 엔진)을 포함한다. CVM 시스템은 대화형 통신을 제공하도록 종래의 통신 서비스를 확장한 대화형 프로토콜(204)을 경유하여 정보를 전송하기 위해 통신 스택을 사용한다. 통신 스택(214)은 대화형 장치간의 대화형 통신 교환을 제공하는 본 발명의 한 실시예에 따른 공지된 OSI(open system interconnection) 프로토콜층에 접속하여 실행될 수 있다. 이 기술에서 공지된 바와 같이, OSI는 각 층이 네트워크 접속된 장치의 네트워크 분산 대화형 응용 프로그램간의 통신을 제공하기 위해 각각의 기능을 수행하는 7개 층을 포함한다. 이 층(기능은 공지되어 있다)은 응용 프로그램층, 표시층, 세션층, 전송층, 네트워크층, 데이타 링크층 및 물리층을 포함한다. 응용 프로그램층은 대화형 프로토콜(204)을 경유하여 대화형 통신을 허용하도록 확장된다.
일반적으로, 대화형 프로토콜(204)은 리모트 응용 프로그램 및 리소스 등록, 이들 대화형 능력 및 프록시를 허용한다. 또, 이들 대화형 프로토콜(204)은 일반적으로 참조 문헌으로 지정되고 구체화된 명칭이 "네트워크 조정 대화형 서비스를 제공하는 시스템 및 방법"으로 출원된 특허 출원 IBM 문서 YO999-113P에 설명되어 있다(대화형 프로토콜은 CVM 시스템을 활용하지 않는 시스템에 활용된다). 특히, 도 3을 참조하면, 대화형 프로토콜(204 : 또는 방법)은 분산 대화형 프로토콜, 디스커버리, 등록 및 교섭 프로토콜(301) 및 음성 전송 프로토콜(302)을 포함한다. 분산 대화형 프로토콜(300)은 이들의 현재 대화 상태, 개요[데이타 파일(209)] 및 서로의 구문을 정보 레지스터에서 교환하기 위해 네트워크 대화형 응용 프로그램(200, 200a) 및 네트워크 접속된 장치(로컬 클라이언트 및 서버와 같은 다른 네트워크된 장치)를 허용한다. 분산 대화형 프로토콜(300)은 네트워크 접속 장치(예를 들면, 클라이언트/서버)간의 로컬 및 분산 대화형 엔진(208, 208a)의 공유를 허용한다. 또, 분산 대화형 프로토콜(300)은 다이알로그 관리자(DM) 프로토콜(후술함)을 포함한다. 분산 대화형 프로토콜은 매스터/슬레이브 대화형 네트워크, 동료 대화형 네트워크, 익명의 파트너를 포함하는 다수 장치 또는 응용 프로그램을 포함하는 대화를 조정하기 위해 정보의 교환을 허용한다. 분산 대화형 프로토콜을 사용하여 네트워크 장치간에 교환될 수 있는 정보는 데이타 파일(개요)에 대한 포인터, 데이타 파일 및 다른 대화 개요의 전송(필요한 경우), 입력, 출력 이벤트 및 인식 결과의 통지, 대화형 엔진 API 호출 및 결과, 상태 및 구문 변경 및 다른 시스템 이벤트의 통지, 등록 업데이트: 등록용 핸드셰이크, 협상 업데이트 처리: 협상용 핸드셰이크, 인식 업데이트 및 요구된 리소스가 손실될 때의 디스커버리 업데이트를 포함한다.
또, 분산 대화형 프로토콜(300)은 예를 들면 익명의 파트너를 포함하는 매스터/슬레이브 또는 P2P 대화형 네트워크 구성 및 네트워크에서 이러한 장치간의 대화를 조정하도록 장치 또는 관련된 응용 프로그램을 허용하는 애플릿, Active X 성분 및 다른 실행가능한 코드와 같은 다른 정보를 교환하기 위해 응용 프로그램 및 장치를 허용한다. 복수 개의 CVM 또는 대화형 인식 복수 개의 장치가 대화형으로 접속되고 조정될 때, 이것을 한개의 단일 인터페이스를 통해(즉, 단일 마이크로폰을 통해) 동시에 제어할 수 있다. 예를 들면, 음성은 유일한 조정 대화형 인터페이스, 스마트폰, 페이저, PDA, 네트워크 컴퓨터, IVR 및 컴퓨터 내장 자동차를 통해 자동적으로 제어할 수 있다. 익명의 파트너는 다른 대화형 장치로부터 대화형 인터페이스를 경유하여 제어될 수 있다. 익명의 파트너는 API/프로토콜을 경유하여 네트워크 접속된 CVM와 상호 작용할 수 있도록 대화형으로 인식된 시스템이다. 그러나, 익명의 파트너는 지정된 기능외에는 사용자에게 I/O를 표시하지 않는다. 예를 들면, 방 안의 램프는 CVM에 의해 발견되고, 대화 상태(예를 들면, 코맨드는 스위치 램프 온, 램프 스위치 오프임)를 등록할 수 있으며, CVM으로부터 전송된 코맨드를 실행할 수 있음으로써 대화형으로 인식될 수 있다. 이 형태에서, 본 명세서에서 UCRC(universal conversational remote control)로 칭해진 CVM 리모트 콘트롤은 모든 발견된 대화형 인식 응용 프로그램에 의해 지원된 코맨드를 다운로드할 수 있다. 사용자는 CVM 리모트 콘트롤은 다이알로그함으로써 간단히 음성에 의해 이들 응용 프로그램을 제어할 수 있다.
일례로, 분산 대화형 프로토콜(300)은 네트워크를 통해 응용 프로그램과 다른 대화형 엔진간에 호출을 실행하도록 RMI(remote method invocation) 또는 RPC(remote procedure call) 시스템을 경유하여 실행된다. 해당 기술 분야에서 공지된 바와 같이, RPC는 하나의 응용 프로그램이 네트워크 양단의 다른 응용 프로그램으로부터 서비스를 요구하도록 허용하는 프로토콜이다. 마찬가지로, RMI는 객체가 분산 네트워크에 상호 작용할 수 있는 방법이다. RMI는 요구에 따라 패스되도록 한개 이상의 객체를 허용한다.
또, 대화형 프로토콜(204)은 대화형 디스커버리(검출) 등록 및 협상 프로토콜(또는 방법 : 301)을 포함한다. 등록 프로토콜은 각 네트워크 장치 또는 응용 프로그램이 관련 정보에 대한 장치간에 데이타 전송을 한정하고 매스터/슬레이브 또는 동료 네트워킹을 협상하기 위해 이들 대화 능력, 상태/구문 및 개요에 관한 정보를 교환하고 등록하도록 허용한다. 익명의 대화 파트너(단지 대화형으로 인식된)는 유사하게 행동하고(즉, 이들 능력 등을 등록한다), 대화형 프록시 서버를 통하거나 CVM의 대화형 클라이언트로서 상호 작용할 수 있다(즉, 익명의 파트너는 CVM 장치에 대한 대화형 등록을 사용한다).
등록 프로토콜은 다음 정보가 변경되도록 : (1) 정의 및 업데이트 이벤트를 포함하는 능력 및 로드 메시지; (2) 엔진 리소스(소정의 장치가 NLU, DM, NLG, TTS, 화자 인식, 음성 인식 압축, 코딩, 저장 등을 포함한다); (3) I/O 능력; (4) CPU, 메모리 및 로드 능력; (5) 데이타 파일 형태(특정 도메인, 사전, 언어 모델, 언어 등); (6) 네트워크 어드레스 및 특징; (7) 사용자에 대한 정보(정의 및 업데이트 이벤트); (8) 장치, 응용 프로그램 또는 다이알로그용 사용자 즐겨 찾기; (9) 맞춤; (10) 사용자 경험; (11) 도움말; (12) 응용 프로그램(및 응용 프로그램 상태)(정의 및 업데이트 이벤트)당 능력 요구 사항; (13) CUI 서비스 및 행동의 메타 정보(도움말 파일, 카테고리, 대화형 우선 순위 등)(테이블에 대한 포인터를 경유한 정의 및 업데이트 이벤트); (14) 프로토콜 핸드셰이크; 및/또는 (15) 토폴러지 협상을 허용한다.
등록은 장치간의 TCP/IP, TCP/IP29, X-10 또는 CEBus 및 소켓 통신과 같은 전형적인 통신 프로토콜을 사용하여 실행될 수 있다. 이 장치는 이들 관련된 대화형 엔진 및 CVM 콘트롤러, 이들 대화형 개요(예를 들면, 액티브 어휘, 문법 및 언어 모델, 파싱 및 번역/태깅 모델, 음성 프린트, 합성법, 베이스폼(발음법) 및 음성 폰트)를 통신하도록 분산 대화형 아키텍쳐를 사용한다. 이 정보는 파일 또는 스트림으로서 또는 URL로서(또는 전술한 바와 같이, 장치: 객체 및 XML 구조간의 정보 변경 레벨에서 서술적이거나 절차적) CVM 콘트롤러 및 대화형 엔진에 통과된다. 등록 프로토콜을 실행하는 한 실시예에서, 접속할 때 장치는 플래그 세트 또는 장치 특성 객체를 변경시킴으로써 대체된 프로토콜(예를 들면, TTS 영어, 텍스트, 음성 인식, 500 어휘 및 FSG 문법, 화자 인식없음 등)에 대한 대화 능력에서 정보를 변경할 수 있다. 마찬가지로, 응용 프로그램은 엔진 요구 리스트를 변경할 수 있다. 매스터/슬레이브 네트워크 구성으로, 매스터 다이알로그 관리자는 모든 리스트를 편집할 수 있고, 대화 능력을 갖는 기능 및 필요성을 일치시킬 수 있다. 또, 구문 정보는 콘트롤러가 이 구문 스택에 억세스하고 부가될 수 있는 장치 또는 응용 프로그램의 구문 스택/히스토리에 대한 패싱 또는 포인팅은 표시함으로써 전송될 수 있다. 또, 장치는 이들 복합 양식 I/O 및 UI 능력(스크린/비스크린, 오디오 입력/출력 능력, 키보드 등)에 대한 정보를 통과시킨다. 대화형 개요는 다이알로그 엔진이 현행 상태 및 구문에 기초하여 NLU 엔진에 의한 새로운 질의의 관계를 추정하도록 허용한다.
대화형 디스커버리 프로토콜(301)은 로컬 또는 네트워크 대화형 인식 시스템을 자동적으로 발견하고 대화형 인식 시스템과 같은 네트워크 접속을 동적이고 자발적으로 발견하도록 장치의 자발적으로 네트워크된 대화형 클라이언트(230, 230a)에 의해 활용된다. 디스커버리 프로토콜을 경유하여 변경된 정보는 (1) 핸드셰이크용 방송 요구 또는 요구 청취; (2) 장치 식별기의 교환; (3) 초기 등록용 처리/포인터의 교환; 및 (4) 초기 협상용 처리의 교환을 포함한다.
또, 협상 프로토콜(301)은 동적 매스터/슬레이브 및 P2P 상호 작용에서 복수개의 CVM 시스템간의 적합한 조정을 제공하기 위해 매스터/슬레이브간의 협상 또는 동료 네트워킹을 허용한다. 특히, 등록시 복수 개의 CVM 장치는 대화형 등록 능력, 예를 들면 제어 능력에 관련하는 정보, 억세스되는 대화형 엔진 및 등록되고 제어되는 응용 프로그램 및 장치를 추가할 수 있다. 이들 UI, I/O 능력 및 액티브 I/O에 기초하여, 한개의 CVM 콘트롤러는 매스터가 되고, 다른 CVM 콘트롤러는 슬레이브로서 작용하며, 새로운 협상이 발생할 때까지 응용 프로그램이 등록됨에 따라 매스터에 대해 상대적으로 등가이다. 매스터 및 슬레이브의 법칙은 액티브 I/O 양식 또는 장치에 기초하거나 액티비 응용 프로그램에 기초하여 동적으로 스위치될 수 있다.
음성 전송 프로토콜(302 : 또는 대화형 코딩 프로토콜)은 음성 전송 클라이언트(38, 38a)에 의해 프로세스용 다른 네트워크 장치, 시스템 또는 응용 프로그램에서/로부터 전송/수신된 압축된 음성이 사용된다. 음성 전송 클라이언트(38, 38a)는 네트워크를 통해 전송된 음성을 처리하는 적합한 압축 하드웨어(235, 235a)를 사용하여, 압축, 압축 해제 및 재구성 엔진(234, 234a)과 병행하여 조작한다. 음성 코더(234, 234a)는 압축된 음성 및 최적화된 대화형 성능(예를 들면, 워드 에러 비율)의 감각적으로 수용가능하거나 알 수 있는 재구성을 제공한다. 음성은 음향 신호 처리 엔진(오디오 서브시스템 : 232, 232a) 및 적합한 오디오 하드웨어(233, 233a)를 사용하여 각각의 네트워크 장치에서 포착된다(및 특징으로 변형된다). 또, 압축된 음성 파일 포맷(303)은 음성을 처리하는 장치간에 송수신될 수 있다. 특히, 음성 전송 프로토콜(303)은 장치가 네트워크의 다른 장치 및 응용 프로그램에서/로부터 압축된 음성 또는 로컬 처리 결과를 송수신하도록 허용한다. 전술한 바와 같이, 대화형 엔진(208 : 도 2)은 로컬 프로세싱을 위한 다른 장치 또는 응용 프로그램으로부터 네트워크를 통해 얻어진 전송용 음성(또는 결과)을 압축하고 압축된 음성(또는 결과)을 압축 해제하는 압축/압축 해제 엔진(234)을 포함한다. 일례로, 전송 장치와 수신 장치간의 핸드셰이크 프로세스 후에, 데이타 스트림(패킷 본위)은 수신기로 전송된다. 패킷 헤더는 음성을 엔코딩하기 위해 사용하는 코딩 스킴 및 코딩 개요(즉, 상기 구체화된 특허 출원 IBM 문서 번호 YO999-113P에서 토론한 바와 같이 샘플링 주파수, 특징, 벡터 차원, 특징 변형/페밀리 등)를 규정하는 것이 바람직하다. 또, 에러 보정 정보는 (예를 들면, 이전 패킷이 손실되거나 지연될 경우 다른 디코더를 보정하기 위해 이전 패킷의 최종 특징 벡터) 또는 손실 패킷을 복귀(재전송)하기 위한 적합한 메시징을 도입할 수 있다.
도 9, 도 10 및 도 11에 도시한 바와 같이, 대화형 프로토콜(204)은 네트워크된 장치의 다이알로그 관리자(DMs : DMs는 상세히 후술함)간에 정보 교환용 프로토콜을 더 포함한다. 도 9에 도시한 바와 같이, 예를 들면 분산 응용 프로그램(분산 응용 프로그램(200a)에서, 다이알로그 관리 프로토콜은 주어진 기능을 실행할 수 있는 다이알로그 관리자(219 또는 219a)를 결정하기 위해 정보를 교환하는데 사용된다. 전형적으로, 다른 장치, CVM 또는 다른 응용 프로그램은 다이알로그 관리자, 구문 스택(217, 217a) 및 글로벌 히스토리(218, 218a)를 가질 수 있다. 분산 프로토콜(300 : 도 3)의 일부인 다이알로그 관리자 DM 프로토콜을 통해, 다른 다이알로그 관리자는 매스터 다이알로그 관리자 및 슬레이브 또는 동료간 다이알로그관리자를 갖는 토폴로지를 협상할 수 있다. 액티브 매스터 다이알로그 관리자[도 9에서 다이알로그 관리자(219)로서 도시한]는 액티브 다이알로그를 결정하도록 다른 관리자에 대한 I/O의 흐름을 관리할 수 있고, 질의를 적절히 실행하며, 구문 및 히스토리를 업데이트할 수 있다. 예를 들면, 이 정보는 (1) DM 아키텍쳐 등록(예를 들면, 각 DM은 로컬 DM의 수집일 수 있다); (2) 관련된 메타 정보에 대한 포인터(사용자, 장치 능력, 응용 프로그램 필요성 등); (3) DM 네트워크 토폴로지의 논의(예를 들면, 매스터/슬레이브, P2P); (4) 응용 프로그램할 수 있는 경우, 즉 엔진이 매스터 DM에 의해 제어되어 사용된 경우 데이타 파일(대화 개요); (5) 엔진에 대한 전송 및/또는 구문에 대해 추가용으로 사용자에 대한 사용자 입력, 출력과 같은 I/O 이벤트의 통지; (6) 인식 이벤트의 통지; (7) 엔진에서 매스터 DM까지 처리된 입력의 전송; (8) 등록된 DM의 매스터 DM 의무의 전송; (9) DM 처리 결과 이벤트; (10) DM 제외; (11) 신뢰 및 모호성 결과, 제안된 피드백 및 출력, 제안된 기대 상태, 제안된 작동, 제안된 구문 변경, 제안된 새로운 다이알로그 상태의 전송; (12) 결정 통지, 구문 업데이트, 작동 업데이트, 상태 업데이트 등; (13) 완벽하거나, 오류이거나 방해된 작동의 통지; (14) 구문 변경의 통지 및/또는 (15) 작동으로 인한 데이타 파일, 구문 및 상태 업데이트를 교환될 수 있다. 또, 작동, I/O 이벤트, 백엔드 억세스는 대화형 리소스 관리자 및 작업 디스패처 관리자로 공유된 정보이다.
도 10 및 도 11은 본 발명에 따른 다이알로그 관리용 시스템 및 방법을 도시한다. 특히, 도 10은 다양한 장치/응용 프로그램(l, k 및 N)의 다수 다이알로그 관리자(즉, 매스터 조정자 및 슬레이브 다이알로그 관리자 l, k 및 N)간의 계층 다이알로그를 도시한다. 도 10은 전형적인 매스터 슬레이브 토폴로지를 도시한다. 전술한 바와 같이, 도폴러지는 DM 프로토콜을 경유하여 관련된 정보를 교환함으로써 형성된다. 한편, 도 11은 단지 메인 루트(조정자) 다이알로그 관리자가 한개 이상의 응용 프로그램 또는 장치(l, k, N)용 다이알로그 관리자 작업을 실행하는 다른 매스터/슬레이브 구성을 도시한다. 이 예로, 매스터 다이알로그 관리자 조정자에는 다이알로그 관리자만이 표시되고, 글로벌 구문 및 히스토리(응용 프로그램 특정 구문 및 히스토리의 분류가능)를 보유한다. DM 프로토콜은 각 응용 프로그램 및 장치와 코어 루트 다이알로그 관리자간의 속성값 n-업레스를 교환하는 것을 포함한다.
다수의 장치/응용 프로그램이 포함될 때라도, 도 10에 도시한 바와 같은 실제 다이알로그 관리 프로세스는 단일 장치에 한개의 단일 아날로그 관리자와 시리얼로 실행될 수 있다. 이 2개 상황간의 차이는 사용자가 소정의 작업용으로 특정화된 한개의 실체당 한개의 대화로 다수의 대화를 전달하는 것과 달리, 다수 작업을 전달하는 실체를 갖는 대화를 전달하는 느낌을 갖는 것이다. 이들 토폴로지 각각은 DM 프로토콜을 경유하여 협상되거나, 사용자 즐겨 찾기, 응용 프로그램 기회 또는 CVM 디폴트 세팅에 의해 부과될 수 있다.
도 4를 참조하면, 다이아그램은 본 발명의 한 실시예에 따른 CVM 시스템의 대화형 커널의 대화형 시스템 및 중심 기능 모델의 상세한 구성을 도시한다. 도 4의 시스템 및 첨부하는 설명은 실행 예를 제공하기 위한 설명의 목적용이고, 기술의 일반적인 숙련자 중 한명은 본 발명의 정신에 따른 CVM를 실행하는 다른 부품또는 시스템 아키텍쳐를 계획할 수 있다. 또, 이들 요소 각각은 기존의 오퍼레이팅 시스템하에서 응용 프로그램 또는 플랫폼, 또는 이들 다른 새로운 요소 주위에 설치된 중심 커널에 대한 정확한 CVM 내의 독립 모드에 도입될 수 있다. 근본적인 오퍼레이팅 시스템에 대한 종래의 호출은 휴대할 수 있는 CVM으로 획득하여 실행될 수 있다. 이 예로, CVM은 기존의 플랫폼을 위해 독립형 플랫폼으로서 구성되어 있다.
도 4를 참조하면, 본 발명의 한 실시예에 따른 대화형 시스템(400)은 일반적으로 종래의 서브시스템 및 CVM(401)에 의해 실행되고 관리된 대화형 서브시스템의 결합을 포함한다. CVM(401)은 작업 디스패처/콘트롤러(402), 메타 정보 관리자(403), 다이알로그 콘트롤러(404 : 상기에 칭해진 다이알로그 관리자), 구문 스택(405) 및 대화형 서브시스템 서비스 관리자(406)를 포함한다. 항목 " CVM 콘트롤러가 작업 디스패처/콘트롤러(402) 및 다이알로그 콘트롤러(404)에 공통적으로 칭해지도록 본 명세서에 사용될 수 있다. 일반적으로, CVM(401)은 대화형 및 종래 입력 스트림을 다수 작동으로 전환함으로써 조작되고, 정렬된 출력을 대화형 및/또는 종래의 출력 스트림으로 통해 사용자에게 생성한다.
또, 대화형 시스템(400)은 예를 들면 음성 인식 시스템(408), 화자 인식 시스템(409), 자연어 인식 및 자연어 파싱 시스템(410) 및 텍스트-음성 합성(TTS) 시스템(411)을 포함하는 다수의 대화형 리소스 서브시스템(엔진 : 407)을 더 포함한다. 대화형 리소스(407)는 NLG(natural language generation) 엔진 및 오디오 서브시스템과 같은 다른 시스템을 사용할 수 있다. 전술한 바와 같이, 이들 대화형 서브시스템(407) 각각은 API 호출을 통해 CVM(401)에 억세스될 수 있다. CVM(401)은 [대화형 서브시스템 서비스 관리자(406)를 경유하여] 요구된 대화형 서브시스템(407)을 배치하고, 이 실행을 구동하며 적합하게 결과를 복귀할 수 있다. 이들 대화형 서브시스템(407)은 네트워크를 통해 로컬 또는 분산될 수 있고, 모든 대화형 서브시스템 호출은 [개발자가 엔진(407)의 특정한 행동을 실행하기를 원할 경우 엔진 API가 응용 프로그램에 항상 사용될 수 있을지라도] 응용 프로그램에 내장되어 있다.
서브시스템 서비스 관리자(406)는 CVM(401)에 의해 제공된 모든 서비스, UI 및 행동(본 명세서에 설명한 바와 같은)을 관리한다. 종래 서브시스템 서비스 관리자(412)는 근본적인 오퍼레이팅 시스템(또는 기본 OS의 결여시라도 종래의 I/O 시스템)에 의해 제공된 모든 서비스 및 UI를 관리한다.
CVM(401)의 중심은 다이알로그 콘트롤러(404)의 제어하에서 조작되고 관리된 구문 스택(405)이다[구문 스택(405)이 전술한 글로벌 히스토리 및 메타 정보 저장소에 직접적으로 관련되어 있다]. 일반적으로, 구문 스택(405)은 입력 인식[예를 들면, 엔진이 액티브 FSG, 토픽, 어휘, HMM(hidden markov models), 보이스프린트, 음성 입력용으로 가능한 언어 모델 또는 질의와 같은 이들 각각의 작업을 실행하기 위해 사용하는 파일 또는 개요]를 위해 필요해질 수 있는 다른 엔진용 임의의 데이타 파일(413 : 또는 적어도 이러한 대화 개요의 식별자)에 따라 활성화된 화법(즉, 주어진 작업/프로세스/스레드에 관련된 대화형 상호 작용)을 갖는 각 액티브 프로세스의 구문(즉, 속성값 n-업레스 및 상태/모드의 충분한 질의 개요 리스트)을 축적한다. 다시 말하면, 항목 "구문"은 화법의 과거 히스토리의 트랙, 이것의 현행 상태 및 특정한 특징을 유지하는 각 화법(활성적이거나 비활성적인)의 상태 및 입력 인식용으로 요구된 데이타에 따른 대응하는 작업(예를 들면, 각 활성 작업/프로세스의 어휘 파일, 언어 모델, 파싱, 태그, 보이스프린트, TTS 룰, 문법, NLU 등)의 전체 질의 개요라 칭한다. 분산 CVM(후술한 바와 같은)에서, 구문 스택(다른 CVM 부품 뿐만 아니라)은 네트워크된 서비스(즉, 네트워크에서 분산된)(구문 및 글로벌 히스토리에 관해 전술한 바와 같은)에 직접적으로 관련될 수 있다.
특히, 각 새로운 작업, 프로세스 또는 스레드는 새로운 스택 엔트리를 형성하고, 화법에 관련된다. 각 응용 프로그램은 다수의 화법(예를 들면, 응용 프로그램 관리 화법 및 응용 프로그램 내용 내비게이션 화법)에 관련될 수 있다. 소정의 화법에 관련된 각 구문은 최후 출력 뿐만 아니라 대응하는 프로세스/작업/스레드로 형성된 최종 요구를 포함한다. 소정의 화법의 구문은, 예를 들면 실제 질의를 만드는 어떤 활성 문법, 어휘 및 심볼 언어에 관련되어 있다. 다시, 최종 정보는 히스토리 및 구문 스택에 저장되어 있다. 과거 히스토리, 구문 및 다른 정보는 메타 정보 관리자(403)에 의해 관리되고, 메타 정보의 일부로서 저장된다.
다이알로그 콘트롤러(404)는 네트워크된 장치(후술한 바와 같은 작업 디스패처/콘트롤러(402)에 의해 제어된 작업 관리에 대한)로부터 로컬 또는 리모트로 생산된 새로운 작업/프로세스/스레드용 구문 스택(405)에서 새로운 스택 엔트리를 생성함으로써 구문 스택(405)을 관리한다. 각 활성 응용 프로그램은 다수 디스커서(예를 들면, 응용 프로그램 관리 화법 및 응용 프로그램 내용 내비게이션 화법)에관련될 수 있다. 전술한 바와 같이, 소정의 화법에 관련된 각 구문은 최종 출력 뿐만 아니라 대응하는 프로세스/작업/스레드에 형성된 최종 요구를 포함한다. 또, 소정의 화법의 구문은 실제 질의를 만드는, 예를 들면 어떤 활성 문법, 어휘 및 심볼 언어(속성값 n-업레스)에 관련된다. 구문 스택(405)은 사용자로부터의 어떤 새로운 입력을 위해, 다이알로그 콘트롤러(404)는 입력 구문이 적합하게 설정될 수 있을 때까지 구문 스택(405)을 횡단하도록 머신 상태 스택에 관련되어 있다. 이것은 본질적으로 최종 화법 및 과거 화법에서 사용자와 머신간의 활성 화법을 발견하고 선택한다.
작업 디스패처/콘트롤러(402)는 로컬 및 네트워크된 종래 및 대화형 리소스에서 (사용자 및 머신에 의해) 생산된 다른 작업 및 프로세스를 디스패치하고 조정한다. 작업 디스패처/콘트롤러(402)는 일반적으로 활성화된 작업(종래 작업인지 대화형 작업인지)를 디스패치하고, 모든 리소스의 로드 및 유효성을 모니터링함으로써 각 작업, 리소스 등의 상태를 제어하며, 다른 리소스에 대한 다양한 작업을 적합하게 할당하고 이동시키는 리소스 할당 메카니즘이다. 리소스 배당 기능은 각 리소스의 현행 로드, 각 서비스 및 응용 프로그램의 필요성을 결정하고, 모든 시스템 로드 및 대화 흐름을 최적화하기 위해 조정할 수 있는 리소스에 작업을 디스패치함으로써 모든 시스템을 조정하고/관리하는 것을 포함한다. 작업 디스패처/콘트롤러(402)는 (전술한 발견, 등록, 협상, 분산된 대화형 프로토콜을 경유하여) 다른 리소스에 의해 교환된 어떤 정보에 [종래 작업 관리자(417)를 경유하여] 종래 시스템 관리 절차를 추가한 것에 따른다. 작업 디스패처/콘트롤러(402)는 이들 리소스의 트랙을 유지하고, 종래의 서브시스템(예를 들면, GUI I/O 및 시스템, 비디오 인식 엔진 등) 및 구문 스택(405)의 다른 작업간의 대화형 시스템(407)을 공유한다. 또, 작업 디스패처/콘트롤러(402)는 종래의 작업 관리자(417)의 레벨에서 오퍼레이팅 시스템에 의해 제어될 수 있는 종래 작업을 관리하고 제어하도록 근본적인 오퍼레이팅 시스템의 서비스를 활용할 수 있다. 다시, 전술한 바와 같이, 종래 오퍼레이팅 시스템은 대화형 작업 디스패처 관리자/콘트롤러(402)의 지시하에서 작업 관리를 수행할 수 있다.
작업 디스패처/콘트롤러(402)는 [활성 구문을 선택하는 다이알로그 콘트롤러(404)를 경유하여] 종래 및 대화형 서브시스템 서비스(412, 416)에서 구문 스택(405)까지 입력을 공급하고, 다른 작업의 출력을 다른 서브시스템에 공급하여 이것을 우선시킨다. 또, 작업 디스패처/콘트롤러(402)는 구문 스택(405)에 따라 에이젼트/데몬(daemon) 및 암기의 형태로 대화형 보조를 삽입하고 관리한다. 작업 디스패처/콘트롤러(402)는 활성 대화 및 대화 히스토리, 지연된 복귀, 네트워크 리소스 및 작업 파견에 걸쳐 파견, 요약 및 암기(기능은 후술함)에 따른 출력 발생 및 우선 순위를 조정한다.
다이알로그 콘트롤러(404)는 [작업 디스패처/콘트롤러(402)로 등록된] 모든 대화형 응용 프로그램 및 종래 응용 프로그램 양단의 다이알로그(대화 = 음성 및 복합 양식; GUI, 키보드, 포인터, 마우스, 비디오 입력 등)를 관리한다. 전술한 바와 같이, 응용 프로그램은 어떻게 최종 입력을 번역하는지의 상태에 대한 정보 및 이러한 번역에 대한 신뢰 레벨을 API 호출 또는 협상 프로토콜을 경유하여 교환한다. 다이알로그 콘트롤러(404)는 활성 구문 및 응용 프로그램을 관리하고 결정한다. 또, 이것은 응용 프로그램이 다이알로그 콘트롤러(404)를 보조하도록 정보를 교환하는 대화형 프로토콜을 관리하여, 응용 프로그램이 활성화되거나, 이러한 결정을 형성할 수 없을 경우 모호성을 해결하기 위해 작은 다이알로그를 활성화시키도록 결정한다.
도 5는 다이알로그 관리자(404)의 기능을 설명한다. 도시한 바와 같이, 다른 작업(작업 1, 작업 N) 및 리소스(대화형 서브시스템 A-Z)는 CVM(401)에 의해 관리된다. CVM(401)은 응용 프로그램이 활동되고 있는지, 어떤 구문이 (다이알로그 관리자 및 대화형 프로토콜에 대해 전술한 바와 같이) 수정되는지를 결정한다. 분산 응용 프로그램에서, 이 기능은 전술한 다이알로그 관리자 프로토콜당 메시지를 전송함으로써 실행된다. 다이알로그 관리자 프로토콜이 로컬 패러럴 응용 프로그램간에 정보를 교환하는데 사용된다. 설계된 다이알로그 관리자 및 엔진에 알려지지 않은 다수(로컬 또는 네트워크) 다이알로그/응용 프로그램 양단의 다이알로그 및 구문을 관리하는 능력은 일반적인 NL 프로세싱 및 플래그가능한 다이알로그 관리자 및 NL 응용 프로그램으로서 칭해지는 것이다.
응용 프로그램은 (전술한 CVM API를 경유하여) 직접적으로 CVM(401) 또는 오퍼레이팅 시스템[또는 JVM(java virtual machine)과 같은 근본적인 시스템 또는 마이크로소프트 윈도우와 같은 오퍼레이팅 시스템]에 호출을 형성할 수 있다. 호출이 CVM(401)을 통해 형성될 때, 이것은 작업 디스패처/콘트롤러(402)를 통해 등록되고, 다이알로그(복합 양식일 수 있지만 음성 입력 또는 출력이 없음)는 다이알로그콘트롤러(404)에 의해 관리된다. 호출이 기본 오퍼레이팅 시스템에서 완료될 때, 다이알로그 콘트롤러(404)는 응용 프로그램에 간접적으로만 상호 작용할 수 있고, 즉 종래 호출은 종래의 작업 관리자(417)에 의해 관리되므로, 통과될 때 및/또는 작업 디스패처가 종래의 작업 관리자(417)를 협력/코맨드하기 때문에 작업 디스패처/콘트롤러(402)에 의해 고려된다. 후자는 다이알로그 콘트롤러(404)에 대한 응용 프로그램을 등록하고, 작업 디스패처/콘트롤러(402)가 인식되는 스테이터스 변경을 업데이트할 수 있다. 종래의 응용 프로그램이 C&C(command and control) 인터페이스(또는 어떤 다른 형태의 음성 인터페이스)로 관리되는 경우에, 응용 프로그램 다이알로그는 등록되고 다이알로그 콘트롤러(404)로 한 등록을 통해 다이알로그 콘트롤러(404)에 의해 제어된다. 이들은 특별한 경우임을 알게 된다. 그러나, 일반적으로, 역 호환성 또는 비대화형 응용 프로그램이 문제가 되지 않을 때, 다이알로그 콘트롤러(404)는 모든 응용 프로그램의 다이알로그를 제어하고, 구문 스택(405)을 통해 구문을 관리할 수 있다. CVM(401)는 모든 종래 기능, 서비스 및 행동을 재실행할 수 있다. 이 경우에, CVM(401)은 종래의 오퍼레이팅 시스템의 플랫폼으로서 실행되지 않고, 모든 종래 호출을 획득하는 자체 오퍼레이팅 시스템으로서 작용한다.
CVM(401)은 다른 리소스 또는 객체(로컬, 네트워크 등) 및 사용자에 대한 정보(즐겨 찾기, 보안 습성, 바이오메트릭스, 행동 등) 뿐만 아니라 CVM(401)에 관련된 파일(또는 기록 또는 성명 공간과 같은 장치에 적용된 다른 유사한 실체) 등록, 객체 및 응용 프로그램과 같은 요소를 관리하는 메타 정보 관리자(403)를 더 포함한다. 메타 정보 관리자(403)는 앱스트랙트 카테고리 및 메타 정보를 경유하여 이러한 요소 및 시스템 리소스를 대화형 앱스트랙션의 하이 레벨과 관련시킴으로써 이들 요소를 관리한다. 예를 들면, 객체 표시는 각 객체[예를 들면, 픽처, 드로윙, 이미지 등과 같은 앱스트랙트 개념을 갖는 파일에 관련되는 보안 특성(사용자 및 작자)]에 관련된 메타 정보를 구동한 내용과 같은 개량된 지식 표시를 포함하도록 확장된다. 이들 요소 각각은 다수의 메타 정보 카테고리 중 하나 이상에 관련된다. 이들 카테고리는 오퍼레이팅 시스템, 응용 프로그램 또는 사용자 중 하나에 한정된다. 각 파일, 디렉토리 객체 및 응용 프로그램은 카테고리 정의에 포인트함으로써 한정된 카테고리 중 하나 이상에 관련되고, 클래스에 등록함으로써 기능에 관련될 수 있다. 후술한 바와 같이, 앱스트랙트 메타 정보는 파일 시스템의 요소 또는 어떤 다른 객체, 리소스 또는 사용자를 자동적으로 요약하고 프로세스하도록 숏컷을 제공하는데 사용될 수 있다.
특히, 메타 정보 관리자(403)는 다수 카테고리를 가진 앱스트랙트 메타 정보 및 프로토콜을 사용하여 파일 시스템을 관리한다. 이들 카테고리는 리소스의 소유자/개발자 또는 리소스의 과거 사용자/응용 프로그램에 의해 한정될 수 있다. 이점으로, CVM(401)은 종래의 파일 관리 시스템과 달리 관련된 메모리 개념에 의존하고, 파일에 대한 정보는 3가지 주요 형태: (1) 파일 이름의 확장; (2) 파일 이름의 헤더; 및 (3) 파일 내용 형태(이진 대 ASCII)(본 명세서에 설명한 앱스트랙트 카테고리 개념이 이러한 종래 파일 시스템을 중요하게 향상시키더라도)에서 시스템을 조작함으로써 획득된다. 대화형 시스템에서, 앱스트랙션의 추가 레벨은 파일의 내용 또는 역할을 특징화시키기 위해 추가된다. 예를 들면, 각 파일은 파일(종래, 예를 들면 GIF 파일이 디폴트에 의해 파일을 오픈하거나 삭제하기 위해 소프트웨어 응용 프로그램에 관련된다)을 특성화하는 앱스트랙트 클래스 세트에 관련될 수 있다. 또, 다수 디렉토리/파일 시스템 디스플레이는 디스플레이된 정보로부터의 이들 확장을 디폴트함으로써 포함되거나 제외된다. 어떤 다른 이미지 형태의 파일은 응용 프로그램 레벨 및 순서대로 자동 조작 프로세스를 이용하기 위해 오퍼레이팅 시스템의 레벨에 등록될 수 있는 것이 바람직하다. 반대로, 부정확하거나 모호한 파일 확장은 부정확한 자동 작업이 될 수 있다. 한편, 헤더는 내용에 대한 더 상세한 정보 및 소정의 파일의 프로세싱 요구 사항을 전달한다. 그러나, 최근에 MIME 헤더와 같은 헤더는, 예를 들면 응용 프로그램 클래스 또는, 예를 들면 e-메일인 프로토콜 및 언어용, 예컨대 HTTP 및 HTML으로만 설계된다.
본 발명에 따라, 파일은 앱스트랙트 메타 정보에 관련된다. 이것은 토픽 또는 이미지 분류자에 대해서와 같이 자동적으로 행해지거나 응용 프로그램, 사용자, 플랫폼 등에 의해 행해질 수 있다. 예를 들면, 이미지, 픽처, 영화, 그림의 개념은 다양한 앱스트랙트 카테고리를 한정할 수 있다. 그러므로, 파일은 포맷, 확장 및/또는 파일의 사용법의 독립적으로 다른 항목에 의해 특정화된다. 또, CVM은 응용 개발자(그 다음에 등록됨) 또는 사용자(맞춤 또는 사용법) 중 하나에 의해 응용 프로그램 양단에 카테고리를 추가하기 위한 능력을 산출한다.
이 앱스트랙션은 디렉토리, 객체 및 응용 프로그램에 확장될 수 있고, 오직 파일은 아님이 평가된다. 예를 들면, 링크, 매크로스, 숏컷 및 북마크와 같은 개념은 특정 카테고리에 관련될 수 있다. 예를 들면, 이들 카테고리는 모든 그림 응용 프로그램 또는 모든 이미지 파일 대 모든 재무 응용 프로그램 또는 모든 재무 파일을 표시하도록 허용한다.
메타 정보 관리자(403)는 카테고리의 이중 링크된 리스트에 대한 CVM 플랫폼에 제공되거나 설치된 어떤 객체에 관련된다. 다른 실행은 동일 기능성을 실행하는 사용될 수 있음이 알 수 있다. CVM 플랫폼은 메타 정보 관리자(403)에 의해 관리된 모든 한정된 카테고리의 저장소 테이블을 포함한다. 일부 카테고리는 종속된 사용자 또는 응용 프로그램일 수 있다. CVM 플랫폼 시스템 호출을 사용하여, 사용자 또는 응용 프로그램은 새로운 카테고리 및 이들 카테고리에 대한 관련된 새로운 객체를 형성할 수 있다. 특히, 이것은 파일 시스템을 위한 진실이다. 또, 시스템 호출을 통한 CVM 플랫폼 또는 사용자/응용 프로그램에 의해 제공된 다이나믹 정보는 각 객체: 누가 사용하고, 언제 어떻게 사용하는지, 객체를 누가 형성하는지, 객체를 누가 편집하는지의 생성 날짜, 사용 날짜에 추가될 수 있다.
객체의 내용은 객체, 응용 프로그램, 사용자 또는 플랫폼에 의해 제공된 정보에 기초하여 인덱스될 수 있다. 이들 인덱스는 물체에 관련된 다이나믹 정보의 일부이다. 인덱싱 및/또는 주제 검출은 가능 모드 또는 배치 모드일 때 플라이에 행해질 수 있다.
또, 메타 정보가 사용가능한 리소스에 관련될 때에만, 메타 정보, 앱스트랙션 및 앱스트랙트 카테고리는 각 디스패치 작업 및 프로세스에 관련될 수 있음이 평가된다. 프로세스 및 로드 관리외에, 이것은 작업의 매우 특정한 선택이 가능하다. 예를 들면, 하나의 대화형 요구로, 사용자는 작업의 출력을 듣거나, 구문 스택을 다운한 작업용 입력(예를 들면, 마이크로폰)을 재청구하고, 입력 스트림에 부가하도록 웨이브 파일 또는 ASCII 파일을 관리한다. 마찬가지로, 예를 통해, 사용자는 단일 재지향 요구를 제공함으로써 파일이 전송된 프린터를 재지향할 수 있다.
파일 시스템의 레벨에서 앱스트랙트 카테고리를 사용하는 개념이 CVM 오퍼레이팅 시스템에 의해 사용가능해지거나 억세스할 수 있는 어떤 객체 및/또는 리소스로 확장되는 것이 바람직하다. 이와 같이 해서, 네트워크 및 분산 응용 프로그램에서, 메타 정보 관리자(403)는 리소스의 소유자/개발자 또는 리소스의 과거 사용자/응용 프로그램에 의해 한정된 비로컬 객체 또는 리소스(예를 들면, 파일, 디렉토리, 디스크, 객체, 주변기기, 응용 프로그램 등)에 관련된 다수의 메타 정보 카테고리를 관리할 수 있다. 실제로, 앱스트랙트 카테고리는 특정 리소스가 로컬인지 네트워크인지에 독립적이고, 억세스 또는 접속을 통한 리소스에 독립적이며, 리소스는 앱스트랙트 카테고리에 등록되거나 새로운 앱스트랙트 카테고리라도 형성할 수 있다. 특히, 아직 억세스되지 않았지만 억세스가능한 새로운 객체는 이들 메타 정보를 등록해야 하고, 등록 프로세스는 기계가 이것에 접속될 때 국부적으로 발생할 수 있고, 이것이 자체, 자체 내용 또는 자체 카테고리에 등록한 DNS 접근 또는 네임 공간 관리자에 유사한 서버일 수 있다. 이 프로토콜은 응용 프로그램 또는 객체가 머신(예를 들면, ActiveZ, 자바스크립트, 자바 애플릿, Vbscript)으로 다운로드되거나 전송될 때 국부적으로 사용되므로, 이것의 앱스트랙트 카테고리를 자동적으로 등록/활성화시키기 위해 응용 프로그램을 허용한다. 등록 프로토콜(전술한 바와 같은)은 원격 시스템에 접속하거나 객체 또는 이것의 내용에 관련된 앱스트랙트 카테고리의 리스트를 업데이트하는 메타 정보 서버(DNS 서버 또는 네임 공간 관리자)를 경유하여 비로컬 객체에 관련한 새로운 카테고리를 자동적으로 형성하도록 활용된다. 자체 등록 메카니즘은 관련된 메타 정보를 통신하고 동일 프로토콜을 사용하여 국부적으로 등록하도록 네트워크로부터 다운로드되거나 네트워크에 전송된 새로운 객체를 허용한다. 이중 링크된 리스트 및 저장소는 플랫폼 리스트에 부가될 수 있다. 리소스가 새로운 카테고리를 등록할 때마다, 새로운 카테고리는 이 리소스에 관련된 바와 같이 포인트된다. 리소스가 파괴될 때, 대응하는 카테고리는 제거된다.
로컬 객체에 관련된 메타 정보와 같이, 앱스트랙트 메타 정보는 네트워크의 비로컬 요소를 숏컷하거나 자동적으로 요약하거나 처리하는데 사용될 수 있다. 이들 리소스는 활성 앱스트랙트 카테고리 또는 등록된 리소스 내에서 잠시동안 적어도 기억될 수 있다. 각각 리모트로 억세스가능한 비로컬 객체 또는 리소스는 카테고리 한정 및 관련된 기능에 포인트하거나 적합한 클래스에 이것을 기록함으로써 다른 카테고리에 관련될 수 있다.
예를 들면, 이것은 watson.ibm.com 인트라넷의 일부인 모든 리소스 또는 방문한 모든 프린터 리소스 또는 모든 재무 홈 페이지로서 "왓슨" 리소스라 칭할 수 있다. 일반적으로, 종래의 브라우저(뷰어)에 대해, 페이지 또는 파일에 대한 URL은 저장된 다음, 사용자에 의해 수동으로 분류될 수 있다. 접근의 결과로서, 앱스트랙트 카테고리는 헤더 포맷 또는 HTML 내(예를 들면, 최근 HTML 규격에 대한 특정한코멘트 분야 내 또는 적합한 메타 태그 내 또는 추가 대화형 프로토콜 핸드셰이크로 인해)에 초기에 포함된 다른 메타 정보에 기초하여 자동적으로 생성되거나 신청될 수 있다. 그러므로, 북마크는 억세스되거나 추가될 때 자동적으로 카테고리될 수 있다.
메타 정보 관리자(403) 및 저장소는 최근 대화의 레벨에서 사용될 수 없는 대화형 상호 작용에 전형적으로 가정하여 공지된 모든 정보를 수집한다. 예로는 선험 지식,: 문화, 교육 가설 및 지속적인 정보: 과거 요구, 참조, 사용자에 대한 정보, 응용 프로그램, 뉴스 등이다. 이것은 대화형 히스토리/구문의 길이/라이프를 벗어나 유지되고 보존되는데 필요한 정보 및 대화용 지식이 공통되도록 기대된 정보이므로, 현재 및 가능한 과거 대화 상호 작용시에 한정되지 않는다.
데이타 스트림 프로세싱의 일치는 메타 정보를 경유하여 앱스트랙트 카테고리와를 간단히 하기 위한 중요한 방식이고, 로컬 또는 네트워크 리소스 뿐만 아니라 유사한 앱스트랙트 카테고리, 파일, 객체, 응용 프로그램하에서의 카테고리화를 허용한다.
프로세싱 입력 및 출력 데이타 스트림에서 CVM(401)의 작업 디스패처/콘트롤러(402), 다이알로그 콘트롤러(404) 및 구문 스택(405)간의 상호 작용에 대해 더 상세히 설명한다. 본 발명은 다수 작업(다수 도메인을 갖는) 양단에 정렬된 구문 및 혼합된 이니셔티브에 대한 NLU 인터페이스를 제공함이 평가된다. 특히, 본 발명은 다수의 도메인을 갖는 다수의 응용 프로그램 양단에 NLU, NLG 및 혼합된 이니셔티브를 갖는 자연 다이알로그를 갖기 위한 능력을 제공한다. 이것에 관해, 각 응용프로그램은 CVM(401), 자체 파싱 및 번역 개요를 제공할 수 있다. 더욱 상세히 후술한 바와 같이, NLU 엔진(410)은 연속적(파일링 형성)이거나 패러럴로(예를 들면, 절차식 스레드 또는 패러럴 대화형 객체/절치 또는 패러럴 형태)로 질의를 태그할 수 있다. 비모호한 질의를 발생함으로써 완료된 다이알로그를 갖는 초기 작업은 실행되고, 다른 응용 프로그램에 의해 번역된 대응하는 질의는 인식된 질의가 사용자에 의해 거절될 경우 활성화하기 위해 저장된다.
대화형 바이오매트릭스는 사용자 즐겨 찾기의 목적을 받아들이거나 적용되거나 질의를 위임할 뿐만 아니라 더 강건한 인식을 실행하기 위한 정보를 사용하도록 사용자의 구문 및 메타 정보를 수집하는데 사용될 수 있다. 따라서, 정보는 사용자를 인식하기 위해 축적될 수 있다. 즉, 질의의 일반적인 구절, 구절된 질의 형태, 코맨드 주파수(종종 사용하거나 종종 사용하지 않거나), 양호한 응용 프로그램, 시간 또는 사용법 등이 있다. 대화형 바이오메트릭스는 여기에 참조 문헌으로 양도되고 구체화되어 있는 명칭이 " 비음향 및/또는 음향 모델을 사용하는 화자 검사/확인/분류용 장치 및 방법"인 미합중국 특허 제 5,897,616에 설명된 방법을 사용하여 제기될 수 있다.
도 6을 참조하면, 도면은 본 발명의 한 실시예에 따른 대화형 입력/출력 인터페이스를 도시한다. 도시한 바와 같이, 본 발명에 따른 대화형 입력 인터페이스는 복합 양식 입력, 즉 자연 인터페이스를 포함하는 폰(600), 키보드(601), 포인팅 장치(602), 핸드라이팅 장치(603)를 경유한 파일/스트림/리소스, 음성을 처리할 수 있다. 이것은 모든 형식에 걸친 모든 입력 및 출력 이벤트는 다이알로그 관리자를포획하여 전달한다(또, 구문 스택에 적합하게 저장된다)것을 의미한다. 음성 클라이언트[예를 들면, 전화(600)]로부터의 구두 입력은 음성 인식 프로세스(604)에 종속되고, 다른 입력(예를 들면, 키보드, 마우스 클릭 등)은 NLU 프로세싱(605)에 종속된다. 각 입력은 속성 획득(401a)에 종속되고, 속성값 n-업레스는 입력으로부터 획득된다. 요약 프로세스(401b)는 실행되어, 속성값 n-업레스가 구문에 추가된 다음 질의가 완료되었는지 완료되지 않았는지 또는 모호한지를 백엔드 응용 프로그램(608)의 구문으로 인증한다. 또, 백엔드 억세스는 다이알로그 관리자 또는 구문 관리자에 의해 트랙된다. 이것은 때때로 백엔드에 대한 일부 명확성 능력(다이알로그관리자의 특징)을 로드함으로써 백엔드에 대한 일부 "정보"를 분산시킬 수 있다. 개별적으로, 각 입력 스트림은 종래와 같이 행동한다. 키 대화형 특징은 코맨드가 (입력 질의의 자연 언어 인식을 제공하기 위해) NLU에 참여하거나, (자유로운 자연 입력이 아니라 규칙: 문법 및 어휘에 따라 제한된 입력용) FSG 모드에 참여될 수 있다. 코맨드 또는 질의는 탈루 분야를 완료하거나 활성 작업용 부정확한 분야를 보정함으로써 완료되거나 보정될 수 있다. 이와 같이, CVM은 종래의 OS에서 나타나지 않은 새로운 이슈: 입력 모호성을 형성하도록 통합되는 동시 입력 스트림을 도입한다. 예를 들면, 입력은 재지향 스트림으로부터 가능한 입력을 언급하지 않고 키보드에 중요하고, 입력 및 음성 입력을 수기 입력을 결합할 수 있다. 그러므로, 본 발명은 모호성을 해결하기 위한 메카니즘을 제공한다. 이것은 상기 구체화된 출원 미합중국 번호 60/128,081에 설명된 바와 같이 실행될 수 있다.
본 발명에 따라, 입력 문제점은 다수 디코더의 출력의 통합, ASCII 전사 또는 속성값 n-업레스의 리스트로서 처리된다. 각 입력 스트림은 ASCII 전사로 전환되고, 음성 인식 프로세싱(604)을 경유하여 입력 타임마크와 정렬된다. 다른 입력 스트림이 동일 작업에 관련될 때, 전사는 다음과 같이 통합된다. 첫째, 코맨드 및 질의는 타임 마크에 기초하여 분류되고, 단일 데이타 스트림에 부가된다. 코맨드 공식화는 FSG 법칙과 대조하여 체크되고, 문법 규칙을 만족하도록 재분류된다. NLU 질의는 반드시 재분류를 필요로 하지 않는다. NLU 질의용으로, 심볼 분야는 각 스트림용으로 채워진 다음, 최종 입력 스트림의 레벨에서 혼합된다. 스펠링 및 알파 수 코드와 같은 개요는 순서 모호성을 해결하도록 문법 법칙 또는 NLU를 이용하지 않는다. 타임 마크는 유일한 스트림을 세우도록 유사하게 사용된다. 그러나, 입력은 확인을 위해 사용자에게 역으로 공급되어 응용 프로그램 의존인 사전 또는 FSG 규칙책을 사용하여 미리 필터링할 수 있다.
전술한 바와 같은 네트워크 본위 상호 작용에서, 각 기계는 네트워크에서 다른 장치의 작업 디스패처/콘트롤러에 등록하고, 이것의 대화 능력에 대한 정보를 제공한다. 즉, 일반적인 데스크탑은 충분한 대화 능력을 등록할 수 있지만, 전화는 (스마트 폰)을 등록할 수 있거나 (일반 전화인) 폰을 가질 수 있고, 디스플레이없는, 키보드 없는, 펜 없는, 포인터없는 장치로서 등록하며, PDA는 모노 윈도우 장치 등으로서 등록할 수 있다. 관련된 입력만은 시스템간에 교환된다.
요약해서, 입력 절차는 ASCII 코맨드, 질의 또는 속성값 n-업레스의 리스트로 각각 전사된 다수 모드 입력 스트림 세트를 제공한다. 각 입력 실체(코맨드, NLU 질의 분야 또는 개요 유닛(고립 문자, 워드 등)은 타임마크에 관련되고, 합성된 입력 스트림에 따라 부가된다. 2개 이상의 스트림이 정확히 동일 타임마크를 가질 경우, 이것은 각 입력 스트림이 미리 기여될 때에 기초하여 우선시된다. 합성된 입력은 가능한 FSG 및 사전과 대조하여 체크되고, 임의로 사용자에게 피드백된다. 각 리소스는 이들 대화 능력을 교환하고, 입력 스트림은 관련된 정보를 단지 교환하도록 변경된다.
대화형 출력 디스패처 및 인터페이스에 대해, CVM(401)은 파일/스트림/리소스에 대한 출력, 디스플레이(단일 또는 다수 윈도우, GUI, 칼라, 이미지, 영화), 오디오를 생성시킨다. 개별적으로, 각 출력 스트림은 종래에 따라 행동한다. 그러나, 구문 스택(405) 및 작업 디스패처/콘트롤러(402)에 따라, 다수 프로세스의 출력은 동일 출력 스트림(예를 들면, 텍스트 모드에서의 동일 디스플레이 또는 음성 분석기)에 동시에 충돌할 수 있다. 또, 한개의 작업의 출력은 몇몇 출력 스트림간에 다중화될 수 있다.
각 출력 스트림은 종래에 따라 행동할 수 있다. 다른 예로, 출력은 작업의 출력 또는 다이알로그 프로세스(예를 들면, 관리된 다이알로그 또는 혼합된 이니셔티브)의 발생 출력 중 하나일 수 있다. 출력 스트림의 다른 다이알로그는 존재한다. 예를 들면, 모노 채널에 대해[예를 들면, 더미 터미널(VT100 또는 팜파이럿 스크린) 또는 오디오 단독 출력]에 대해, 이들 리소스를 사용하는 모든 출력 메시지는 동일 채널을 사용한다(또는 때때로 동일 채널을 공유한다)(예를 들면, 음성 출력, 유일한 윈도우/스크린 및/또는 텍스트 출력). 다수 채널 출력에 대해, 단독 채널은 각 작업(예를 들면 윈도우 GUI)의 출력용으로 존재한다. 모노 채널 리소스에대한 다수 작업의 출력 스트림은 구문 스택(405)에 기초하여 대기되고, 우선 순위는 작업 디스패처(402)에 의해 할당된다. 모노 채널 출력이 사용자에게 제공될 때, 이벤트는 활성화되고, 구문 스택에 제기된다. 다수 채널 출력은 우선시되지 않고 비대칭적으로 업데이트되어, 스택까지 팝된 작업을 가질 수 없다.
각 작업로부터의 출력이 사용자에 의해 변경가능한 작업에 의해 할당된 출력 처리에 기초한 다수의 출력 스트림에 멀티플렉스될 수 있다. 네트워크 본위 상호 작용에서, 각 기계는 대화 능력에 관한 정보를 제공하도록 네트워크에서 다른 접속된 장치의 작업 디스패처/콘트롤러에 등록할 수 있다. 예를 들면, 전술한 바와 같이, 일반적인 데스크탑은 충분한 대화 능력을 등록할 수 있다. 전화는 (스마트 폰을) 등록하거나 표시없고 키보드없고 펜없고 포인터없는 장치로서 등록한 이것의 서버(일반적인 전화)를 가지거나 PDA는 모노 윈도우 장치(예를 들면, 팜 파이럿) 등으로 등록할 수 있다. 관련된 출력만은 시스템간에 교환된다.
모든 출력, 특히 음성 출력이 사용자에 의해 만들어지고 프로그램될 수 있다. 출력을 말하는 음성의 선택은 폰트와 같이 만들어질 수 있고, 텍스트 디스플레이용으로 선택될 수 있다. 이 경우에, 우리는 음성 폰트로 이야기한다. 더 복잡한 대화 표현은 대화형 포맷팅 언어를 사용하여 제작된다. 요약하면, CVM(401)은 멀티플렉스된 경우에서도 각 입력 스트림에 할당된 리소스를 고치거나 변경하기 위한 메카니즘 뿐만 아니라 구문 스택(405) 및 작업 디스패처(402)에 기초한 모노 채널 출력에 대한 다수 작업의 출력을 대기하는 메카니즘을 제공한다. 각 리소스는 이들 대화 능력을 교환하고, 출력 스트림은 출력 음성 폰트의 선택을 포함하고, GUI 이벤트를 포함하는 대화 표현을 포맷팅하는 관련 정보 및 다른 오디오 내용을 교환만하여 변경된다.
CVM(401)에 의해 처리하는 입력/출력에 대해 더 상세히 설명한다. 전술한 바와 같이, 다양한 활성화는 CVM(401)에 의해 적합하게 조직되어야 한다. 예를 들면, 기본 시스템 호출은 다른 서브시스템을 포함하는 다수 작동을 생산해야 한다. 이러한 작동은 작업을 실행하고, 새로운 입력을 청취하며 출력/피드백을 생성하는 것을 포함한다. 예에서, 작업 디스패처/콘트롤러(402)는 구문 스택(405)에 기초하여 활성화 구문을 확인하고 질의를 완성하도록 다이알로그 콘트롤러(404)의 질의를 조작해야 하는 다른 통계적 파서를 결정한다. 이들 작동은 예를 들면 완성된 질의를 실행하고 구문 스택(405)을 업데이트하고, 완성되지 않거나 모호한 질의/코맨드용으로 사용자에 대한 피드백을 제공하며, 구문 스택(405)을 디코드되고 찾아지도록 새로운 입력을 허용하고, 실행되거나 운영하는 프로세스의 출력을 복귀시키기 위해 적합하게 우선시되어야 한다.
작업 디스패처/콘트롤러(402)는 대화 개요에 대한 대화 엔진에 대해 각 작업 또는 장치를 관련시킨다. 응용 프로그램 또는 장치당 한개의 엔진이 있을 때, 각 응용 프로그램 또는 장치의 NLU 엔진은 패러럴(절차적 스레드) 또는 시리얼(필링 형성)(상술한 바와 같이)될 수 있다. 다수 장치/응용 프로그램이 동일 엔진을 공유할 때, NLU 엔진은 절차적 스레드와 패러럴될 필요가 있다. 새로운 질의의 거부 또는 가능성은 대화 개요에 기초한 각 활성화된 작업에 의해 관리된다. 거부되거나 정말같지 않은 질의는 다이알로그 콘트롤러(404)로 하여금 다음 사용가능한 구문을관찰하기 위해 구문 스택(405)을 숙독하게 한다. 각 복귀한 값/결과 뿐만 아니라 활성화 작업의 각 작동, 완성된 질의 및 대화 개요는 구문 스택(405)에 저장되어 있다. 또, 복귀한 값 및 결과는 적당할 때, 과거 구문을 활성화시킨다.
작업 디스패처/콘트롤러(402)는 각 코맨드/프로세스를 다수 작동으로 분할하고, 적합한 우선을 갖는 관련된 스레드/프로세스를 개시하며, 구문 스택(405) 내에서 이들을 관련시키고/삽입시킨다. 작업 디스패처(402)는 각 리소스를 할당하고 다른 생산된 작동간에 이것을 공유하며, 리소스에서/로부터 스트림을 제어 및 처리한다. 형식(포인터, 키보드, 파일, 음성)에 기초하여, 작업 디스패처(402)는 전사되고/인식된 음성 입력에 대한 적합한 대화형 서브시스템 또는 종래 서브시스템에 대한 스트림을 변경한다. 이들 서브시스템의 출력은 활성화 질의를 요약하고 이것을 완성하기 위해 구문 스택(405)에서 찾아진다. 한편, 출력은 각 작업의 우선 레벨에 기초하여 대기되고, 출력 리소스에 순차적으로 디스패치된다.
각 새로운(활성) 작업/프로세스/스레드는 활성화된 화법을 갖거나 갖지 않은 구문 스택(405)에서 새로운 스택 엔트리를 형성한다. 구문 스택(405)은 사용자로부터의 어떤 새로운 입력용으로, 입력 구문이 적합하게 설정될 때까지 구문 스택(405)이 이동될 수 있는 기계 상태 스택에 관계된다. 이것은 근본적으로 히스토리로 되돌아 갈 수 있는 최종 및 과거 화법 중에서 사용자와 기계간의 액티브 화법을 발견하고 선택한다. 이 선택 프로세스에 대해 더 상세히 설명하겠다. 또, 각 작업은 혼합된 이니셔티브층에 관계된다. 이 층은 종래 오퍼레이팅 시스템에서 코맨드 라인의 사용법 정보와 동등한 대화형으로서 간단히 될 수 있다. 다이알로그콘트롤러(404)는 코맨드 질의의 구문 레벨에서 완성 또는 모호성에 대한 사용자 코맨드 질의를 체크할 수 있다. 비완성이거나 모호하게 생각된 코맨드는 우선 레벨(포커스하에서 응용 프로그램을 위한 상부)에 대해 탈루 또는 모호한 정보용 (응답) 요구를 생성하고 (미싱 분야가 요구한) 구문을 업데이트할 수 있는 적합한 대화형 엔진(407)으로 유사하게 복귀될 수 있다. 또, 이것은 응답(예를 들면, 레거시 응용 프로그램)을 더 공식화할 수 없을 때 요구가 불완전하고 모호하다고 간단히 언급할 수 있다.
한편, 완성되고 비모호한 코맨드는 어떤 결과(예를 들면, 출력 또는 작동)를 초래할 수 있다. 이들 결과는 종래의 시스템에서와 같이 사용자에 의해 변경되지 않을 경우, 우선 레벨을 갖는 적합한 대화형 엔진(407)으로 복귀되고 구문을 업데이트한다. 그러나, 변경은 결과를 변경시키는 동안 특정한 혼합된 이니셔티브 통지를 포함할 수 있을 때 더 복잡해질 수 있다. 더 상세히 후술한 바와 같이, 이것은, 예를 들면 대화형 보조로 실행될 수 있다. 이것은 종래 시스템으로 달성하기에는 매우 복잡하고 특히 기록된 스크립트에 대해 출력을 변경시키는 것이 필요해진다. 또, 코맨드는 CVM 플랫폼, 응용 프로그램 또는 사용자 즐겨찾기로부터 발생한 즐겨찾기/세팅에 기초한 실행전에 사용자 확인을 요구할 수 있다.
활동 구문용 완성/서치는 구문에서 스택 아래의 구문까지 실행된다. 즉, 새로운 질의 또는 개요는 허용가능한 일치가 얻어지고 임의로 확인이 사용자로부터 얻어질 때까지 스택 아래로 진행함으로써 다이알로그 엔진에 의해 비교된다. 구문이 NLU 심볼 언어의 레벨에서 발음이 적합하다고 발견되자마자, 구문은 활동되고,대응하는 프로세스는 활동된다. 활동 코맨드가 완성될 때까지 또는 새로운 코맨드가 제공될 때까지, 선택된 구문은 활동적으로 표시되고 구문 스택(405)상에 푸쉬된다. 메시지가 사용자에게 복귀될 때, 구문은 업데이트된 후, 활동 구문하에서 구문 스택(405)에 푸쉬된다. 활동 구문은 복귀값의 존재를 통지하기 위해 업데이트된다. 또, 이것은 스택 아래로 진행하기 전에 스택 내이거나 스택옆에 있거나 구문 직후 검색되는 CVM 세션 화법을 대신하는 레벨에서 행해질 수 있다. 동시에 완성된 작업은 CVM 우선(예를 들면, FIFO 또는 FILO)에 따른 활동 구문하에서 정렬된 구문이 된다. 작업을 형성하도록 충분히 완성된 활동 구문은 다음 또는 모든 복귀 구문하에서 스택 아래로 푸쉬될 수 있다. 또는, 이것은 활동 화법이 될 수 있다. 이것은 사용자에 의해 코맨드될 때 자동적으로 행해질 수 있다. 이 스택 구조는 다수 작업, 스레드 또는 프로세스에 대한 비모호성 대화 상호 작용을 유지하도록 허용한다.
요구가 완성될 경우, 이것은 예를 들어 변경할 수 없을 때 사용자에 의한 확인용으로 미결정인 가능한 요구를 실행할 수 있다. 반면에, 혼합된 이니셔티브는 완성을 지속하고 질의/코맨드를 보정하는데 사용된다. 코맨드/요구가 진행될 때마다, 선택권은 사용자에 의한 화법의 거부용 구문에 오픈된다. 이것은 이전 스택 상태(및 프로그램 상태) 를 재저장하고, 스택 아래로 추구하는 것을 의미한다. 사용자는 스택을 지지하도록 명백하게 요구한다. 사용자가 사용자에 대한 실행 또는 실행 통지 이전에 입력을 거부하거나 동시에 완성할 경우, 새로운 입력은 활성 발음에 첨가되고, 서치는 스택의 상부로부터 재개된다. 활성 구문이 설치되기 전에, 사용자에 의해 제공된 다른 발언은 버퍼에 저장되고, 활성 발언(음성 발언 또는 입력의 어떤 다른 모드)에 첨가됨으로써 고려된다. 구문 스택은 음성, 키보드, 마우스 또는 어떤 다른 입력 또는 코맨드 및 응용 프로그램 출력에 펜딩하여 업데이트된다.
본 발명에 따라 CVM(401)에 의해 제공된 특별히 유용한 특징은 "대화형 암기"이다. 대화형 암기는 사용자, 플랫폼 또는 특정한 응용 프로그램 중 하나에 의해 할당된 작업 및 구문을 지연하여 복귀하는 능력이다. 일반적으로, 사용자에 의해 초기화된 명령/코맨드는 명백히 시스템의 배경으로 전송된다. 이러한 코맨드는 소정의 특정한 작업 또는 기능을 할당한 데몬 또는 에이전트를 시작하는 것을 포함할 수 있다. 또, 이것은 암기를 포함함으로써, CVM은 코맨드 또는 이벤트에 "주목하며", 이것을 보고하거나 실행하며, 사용자 또는 오류(예를 들면, 세션의 엔드에서)에 의해 선택된 특정 시간에서 사용자에게 복귀한다. 그러므로, 출력 또는 배경 작업은 후속 시간에서의 이들 결과를 표시하도록 변경될 수 있다. 종래 클라이언트는 활성화된다. 종래의 배경 작업 및 클라이언트의 차이에서, 나머지 또는 결과가 사용자에게 복귀될 때, 암기 요구 순간에서의 대화 구문은 재저장된다. 암기가 발생한 시간에서, 구문 스택(405)의 스냅샷은 암기된 작업에 관련된 메타 정보로서 형성되고 저장된다. 구문 스택(405)은 암기 작업이 사용자와 상호 작용하는 시간에 재배치된다. 최근 구문 스택은 저장되고, 오래된 구문 스택은 작업과 완성을 시작하는 사이에 구문 및 다이알로그의 전개로 인한 중간 변경에 기초한 사용자 또는 응용 프로그램 개발자에 의해 프로그램되거나 CVM에 의해 부과함으로써 업데이트될수 있는 스택의 상부에 추가된다. 사용자의 상호 작용 및 암기된 작업이 완성될 때, 이전 구문에 복귀함으로써, 이전 구문 스택은 스택의 상부에 추가된다. 구문 스택이 추가될 때, 어떤 중첩은 스택의 저부에서 제거될 수 있다. 사용자, 플랫폼 또는 응용 프로그램은 스택의 저장 부분을 유지하도록 고려될 수 있다. 대화형 보조는 이러한 작업을 실행한다. 이것은 자체에서 간단히 운영하는 클라이언트 및 데몬에 의해 실행되고, 출력을 형성할 때만 사용자와 재상호 작용될 수 있다. 이들 출력은 작업의 우선 레벨에 따라 사용자에게 전송된다. 활성될 때, 사용자는 클라이언트에 관련된 작업을 쉽게 업데이트할 수 있다. 대화형 암기는 스택의 저부에서 삽입되고, 스택이 세션 말단에 비어 있을 때에만 실행된 작업이다. 때때로, 이것은 스택보다 높게 삽입되거나 소정 순간에 스택의 상부에 푸쉬될 수 있다. 암기 작업은 활동일 때만 실행된다. 암기 특징은 과거 작동, 즐겨 찾기 및 명령을 암기하는 능력을 산출한다.
전술한 바와 같이, 암기는 나머지에 관련된 대화를 복원하기 위해 활동 구문에 대한 스냅샷을 저장한다. 그러나, 이것은 대화 및 구문을 이 순간에 사용자에게 요약될 수 있는 것이 중요하다. 이것을 실행하기 위해, 응용 프로그램의 응용 프로그램 개발자(및/또는 CVM 플랫폼에 의해 취해진 사용자 즐겨찾기 또는 소정의 결정)는 채워질 경우 사용자에게 요약하고 표시될 수 있는 분야(즉, 속성 항목)를 제공할 수 있다. 이것은 시스템의 각 가변/속성에 관련된 메타 정보에서 여분 분야로서 저장된다. 전형적으로, 응용 프로그램 개발자는 어떻게 각 분야가 실제 가변 이름 또는 속성 설계 대신에 어드레스(사용가능한 앱스트랙트 이름으로)되는지도 설명할 수 있다. 그 다음, 요약은 응용 프로그램(응용 프로그램의 재활성화), 사용자의 질의 또는 CVM에 의한 결정시 활성화될 수 있다. 이것은 활동 프로세스를 서치하고, 구문을 재구성하며, "질의에 관련된 속성 n-업레스의 충전 상태"를 요약할 수 있다. 요약 작업은 어떤 다른 응용 프로그램에 유사한 CVM의 서비스로, 사용자는 더 상세히 얻거나 요약 시간으로 돌아오도록 요약 응용 프로그램에 대해 다이알로그할 수 있다. 이것은 "응용 프로그램 X로 후퇴한다"라고 말하거나 "당신의 Y를 행하도록 나에게 말한다"라고 단언함으로써 간단해질 수 있거나 다이알로그의 히스토리를 통해 역추적되도록 더 복잡해질 수 있다.
CVM(401)에 의해 제공된 다른 특징은 대화형 재지향이다. 유닉스 프로세스의 입력 및 출력을 쉽게 재지향할 때, 예를 들면 대화형 재지향은 동일한 기능을 실행한다. 그러나, 재지향은 스트림을 재지향하는 동안 부분적으로 혼합된 이니셔티브 통지를 포함할 수 있을 때 더 복잡할 수 있다. 대화형 호출을 사용하여, 이것은 우선 레벨을 갖는 사용자에 대해 프로세스 결과와 통지간의 출력을 차별할 수 있다.
다시 전술한 바와 같이, 메타 정보, 앱스트랙션 및 앱스트랙트 카테고리는 작업의 특정 선택을 제공하는 각 디스패치된 작업 및 프로세스에 관련될 수 있다. 예를 들면, 한개의 대화형 요구에 대해(또는 키보드의 버튼을 프레스하거나 마우스를 클릭하거나 키를 제공함으로써), 사용자는 작업의 출력을 경청하거나, 구문 스택 아래의 작업용 입력(예를 들면, 마이크로폰)을 재청구하며, 입력 스트림에 첨가하기 위해 웨이브 파일 또는 ASCII 파일을 관리할 수 있다. 유사하게, 사용자는 파일이 단일 재지향하는 요구를 제공함으로써 전송되는 프린터를 재지향할 수 있다.
선택권/즐겨찾기의 구성, 시스템의 로드 또는 시스템의 능력에 기초하여, 작업 디스패처/콘트롤러(402)는 다른 프로세서가 입력을 인식하고 입력을 활성화시키며 이해할 수 있을 때까지 또는 이러한 작업을 실행할 수 있는 장치가 네트워크에 사용가능해질 때 소정의 작업을 지체하도록 결정할 수 있다. 전형적으로, 로우 엔드 핸드-헬드 장치의 연기된 구술은 이 모델을 따른다. 다시 작업은 서버측이 활동되고 전사를 실행할 수 있을 때까지 작업에 암기되고 세션에서 세션까지 암기된다. 유사하게, 로컬 기계와 서버 기계간의 공유한 인터페이스는 작업 디스패처/콘트롤러(402)에 의해 관리될 수 있다. 예를 들면, 네임 다이알러 응용 프로그램은 대화형 스마트 폰에 추가될 수 있다. 종종 사용된 네임은 국소적으로 저장되고 인식된다. 한편, 공지되지 않은 네임 또는 이전에 사용되지 않은 네임은 인식용으로 더 강력한 네트워크 기계로 전송된 다음, 업데이트된 정보(다이알에 대한 전화 번호 등)를 다운로드한다. 유사하게, 국소적으로 저장된 모든 정보는 전화 번호 정보를 업데이트하도록 주기적으로 동시에 발생될 수 있다. 로컬 대 서버 본위 인식의 프로세스는 작업 디스패처(402)에 의해 내장되어 있다. 네트워크되고 공유된 작업은 작업이 실행된 기계와는 별도로 몇개의 화법으로서 사용자에 의해 관리된다. 이것은 거래용 모든 플랫폼 양단의 균일 CVM API의 유용성에 대한 한 설명이다. 이것은 대화형 프로토콜을 사용하는 네트워크된 장치간의 대화형 서비스의 일치를 제공하기 위해 상기 구체화된 IBM 문서 번호 YO999-113P에 설명된 방법 및 시스템에 유사해진다. 또, 클라이언트와 서버간의 분산 구조 및 분산 프로세싱은 대화형 네트워킹의 새로운 요구 사항으로 인도한다. 이러한 요구는 네트워크 양단의 대화형 상호작용에 참여한 각 사용자의 적합한 다이알로그 흐름을 보장하도록 네트워크 양단에 분산된 트래픽 흐름 및 리소스의 관리를 포함한다. IBM 문서 번호 YO999-113P에 설명한 요소는 네트워크[예를 들면, 다이알로그 흐름을 유지하는 서버 로드 관리, 작업, 특징 및 능력 요구 사항에 기초한 엔진 서버 선택 및 대화형 개요 유효성(데이타 파일)에 기초한 엔진 서버 선택, 대화형 프로토콜, 녹음 재생 등의 재구성을 허용하는 피치로 코딩 프로토콜을 제공하는 오디오 Reco VC(인식 호환할 수 있는 VoCoder)] 양단의 대화형 상호 작용을 위해 여기에 설명될 수 있다.
작업 디스패처/콘트롤러(402)가 CVM에 의해 여기에 설명한 방법으로 대화형 및 종래 서브시스템을 공유하지 않는 종래의 OS에 관련된 근본적으로 새로운 디스패칭 행동을 표시함을 알게 된다. 실제로, 종래 시스템에 대해, 텍스트 입력은 윈도우 내에서 항상 순차적이고, 하나에만 관리되고 및 작업에만 관련된다. 유일한 윈도우에 표시된 키보드 및 텍스트를 갖는 다수의 동시 작업을 처리하는 능력은 여기에 설명한 바와 같이 대화형 디스패칭의 대부분의 원리를 사용하는데 필요하다. 작업 디스패처는 다이알로그 흐름의 유지하는 문제점을 처리하므로, 네트워크 및 CPU 로드로 인한 어떤 지연을 최소화한다. 다이알로그의 지연을 보장하는 CPU 사이클 및 사용가능한 네트워크 루트 및 리소스는 수락할 수 있는 레벨로 최소화됨이 우선시된다. 엔진이 장애가 될 때, 엔진은 많은 CPU 사이클(베이킹이 다시 흡입될 때까지, 높은 우선 순위)을 수신한다. 다시, 이것은 대화형 컴퓨터에 관련된다. 네트워크 루트가 너무 느릴 때, 이것은 지연을 최소화하기 위해 다른 루트 또는 다른 리소스를 발견할 수 있다. 한편, 이것은 응답에서 가능한 지연의 사용자를 경고할수 있다. 활동 다이알로그의 다이알로그 흐름은 CVM의 우선 순위이다. 다이알로그 흐름 및 모든 접속된 사용자의 활동 다이알로그용으로 최소화된 지연은 네트워크에서 라우터 게이트웨이 및 서버에 CVM에 의해 최적화하기 위한 기능이다.
대화형 CVM 시스템에 의해 제공된 다른 특징은 "대화형 보안"으로, 로컬 또는 리모트 파일, 특히 실행가능한 파일의 저자 및/또는 변경자에 관계하는 메타 정보는 보안 목적용으로 사용될 수 있다. 특히, 음성 기반 대화형 시스템에 대해, 각 코맨드가 질의의 공식화 뿐만 아니라 사용하는 사용자의 확증을 위한 충분한 정보이기 때문에, 텍스트 독립 화자 입증은 사용자를 동일시하고 변경하는데 사용될 수 있다. 이 방법에서, 제한된 리소스에 대한 질의가 리소스에 관련된 보안 메타 정보에 기초하여 형성될 때마다 사용자의 자동(및 명료한) 인증은 형성될 수 있다. 전술한 바와 같이, 사용자 질의 및 히스토리에 대해 수집된 모든 정보는 사용자의 인식(ID 또는 입증)에 기여하도록 사용될 수 있다.
인증은 요구시 직접적으로 실행되거나 만기되지 않은 정보를 사용하여 질의 전에 짧게 획득된다. 특히, 파일 또는 응용 프로그램을 위한 억세스용 인증은 질의별 베이시스일 수 있다. 예를 들면, 사용자가 제한된 서비스를 요구할 경우, 요구는 특정한 서비스를 억세스하도록 미리 인증된 사용자 세트에 대해 입증될 수 있다. 인증은 요구(예를 들면, 파일 억세스, 디렉토리 억세스, 응용 프로그램 오프닝, 실행가능한 접속, 암호화/암호 해독, 디지탈 인증/서명)에 실행된 오픈셋 화자 확인을 경유하여 실행될 수 있다. 유사한 사용자에 관련된 사용자 ID를 갖는 다른 패스워드 또는 리소스는 명백한 로그인 또는 패스워드 인증없이 완벽하게 억세스될수 있다. 이 경우에, 강요하지 않는 사용자 인증은 사용자 다이알로그를 통해 연속적으로 투명하게 실행될 수 있다.
대화형 VM이 음성 입력없이라도 실행될 수 있는 생각에 따라, 구문의 스택은 가장 최근에 인증된 식별로서 사용자의 식별을 포함할 수 있다. 또, 각 리소스는 소정의 보안 요구(예를 들면, 미음성 경우에서 최종 인증의 만기일) 뿐만 아니라 인증된 사용자 리스트를 포함할 수 있다. 물론, 인증에 기초한 키 스트로크 또는 펜은 고려될 수 있지만, 모두 의무적이지 않다.
또, 각 리소스는 억세스하도록 시도하는 각 사용자의 식별을 로그/캐쉬할 수 있다. 그 다음, 이들 로그는 암호화되고 이전에 억세스된 리소스에 대한 억세스 요구를 인식하는데 차후에 사용될 수 있다. 특히, 오퍼레이팅 시스템은 외부 소스로부터의 패스워드 요구를 방해하고, 사용자에 대한 명백한 로그를 사용하는 요구를 완성할 수 있다. 새로운 리소스는 로그인 요구를 전송함과 동시에 로그인 프로세스라도 사용자에 대해 완벽하게 명백해지도록 메타 정보를 등록한다. 이것은 단일 사인-온 또는 패스워드 볼트(vault) 개념의 확장이다.
CVM에 의해 제공된 다른 특징은 "대화형 맞춤화"로, 각 작업 또는 리소스에 대한 억세스는 사용자 요구기의 즐겨찾기에 개별적으로 맞추어질 수 있다. 예를 들면, CVM의 개성/행동(예를 들면, 분석된 음성-음성 폰트)은 식별된 사용자의 즐겨찾기에 자동적으로 맞추어질 수 있다. 사용자가 CVM 사례를 로그아웃(즉, 세션을 종료하나)할 때까지, 맞춤 및 즐겨찾기는 동결된다. 이러한 시스템 또는 응용 프로그램은 다수 사용자이지만, 동시에 한번에 한 사용자 및 다음 로그인때까지 모두이다.
대화형 보안에 대해 전술한 바와 같이, 사용자의 자동 식별은 리소스에 대한 질의가 형성될 때마다 실행될 수 있다. 인증은 질의전에 짧게 획득된 요구 또는 만기되지 않은 정보 중 하나에 직접적으로 실행될 수 있다. 작업 및 구문은 활동 사용자의 시퀀스에 따라 우선시되고, 각 사용자 변경에서 재우선시된다. 환경 가변 및 즐겨찾기는 전체 환경의 재설정을 요구하기 않고 사용자 확인의 변경에 기초한 "온 더 플라이"에 변경될 수 있다. 모호성은 사용자 확인을 사용하는 각 구문 또는 구문 스택의 레벨에서 해결될 수 있다. 분산 경우에, 사용자 또는 서버 변경에 대해, 구문은 이것이 클라이언트에서 서버까지의 구문을 로딩하는지, 서버에 보유된 구문을 재구성하는지 또는 서버간의 구문을 전달하는지 여부가 업데이트될 수 있다.
대화형 VM은 다수 사용자의 즐겨찾기 및 활동 구문에 동적으로 적응할 수 있다. 이것은 활동적으로 작동하는 동안 다수 사용자를 허용한다. 음성 본위 시스템에서, 각 코맨드는 텍스트 독립 화자 식별을 실행하는데 사용될 수 있다. 어떤 사용자의 변경은 새로운 활동 구문이 새로운 사용자 또는 활동 응용 프로그램에 의해 포기되지 않는 한 구문 스택 아래의 이전 구문을 푸쉬하는 새로운 활동 구문의 형성을 자동적으로 의미한다. 사용자 변경은 활성 사용자에 관련된 작업을 먼저 처리하기 위해 구문 스택에 따라 우선 순위을 자동적으로 변경한다.
사용자 식별이 각 화법의 구문에 관련될 수 있기 때문에, 코맨드 모호성은 즉시 및 명백하게 해결될 수 있다(나의 어머니로부터의 e-메일은 사용자에 독립으로 정확히 이해된다). 화법의 소유자, 관련된 응용 프로그램 또는 소정의 선택권에 의해 포기할 경우를 제외하고, 구문 스택(405)을 횡단하는 프로세스는 동일 사용자에 대해 관련된 화법에 의해 향상되는 이점이 있다. 구문 스택을 가로지르는 이 법칙에 대한 예외는 화법이 다수 사용자로서 플래그되는 것을 자동적으로 포함할 수 있다. 대화형 보안에 대해 전술한 바와 같이, 사용자 식별은 그 또는 그녀 식별의 사용자에 의한 수동 선택 또는 입력과 같은 선택적인 절차를 통해 얻어질 수 있다. 또, 활동 사용자 식별의 변경은 대화형 보안 서브시스템에 충격을 줄 수 있다. 각 리소스는 이것을 억세스하는 사용자의 식별을 로그할 수 있다.
요약하면, 대화형 다수 사용자 및 대화형 보안에 대해, 다이알로그, 카테고리, 메타 정보 및 리소스에 대한 억세스가 사용자의 식별 기능 및 이것에 관련된 메타 정보 히스토리일 수 있다. 반대로, 질의에 수집된 대화형 정보는 사용자를 인식하는데 사용될 수 있다. 각 객체에 관련된 메타 정보는 각 작동 또는 억세스 전 및 후에 고려되고 업데이트될 수 있다. 객체가 생성되거나 변경되거나 고려될 때, 사용자에 대한 정보는 메타 정보가 각 객체에 관련된 보안 및 즐겨찾기 분야를 포함하도록 이것의 메타 정보에 추가된다. 객체에 대한 억세스는 이것의 내용, 생성일, 억세스 및 변경의 히스토리 및 다른 메타 정보에 기초된다. 억세스는 사용자의 히스토리에 기초할 뿐만 아니라 날짜, 사용법 히스토리, 공개된 응용 프로그램 등과 같은 추가 메타 정보에 기초하여 제어되고 구성된다. 다시 말하면, 이것은 스크린 또는 녹음 재생기에 표시하도록 공개하여 제공된 파일 및 실행을 억세스하기 위해 사람에게 허용될 수 있다. 그러나, 사람은 다른 객체에 대한 내용을 복사하도록파일을 공개하는 억세스를 부인한다. 또, 메타 정보는 객체에 대한 소거하지 않은 형태에서 태그될 수 있다.
CVM에 의해 제공된 다른 특징은 " 대화형 서치"로, 서치 능력은 파일의 이름, 수정 또는 ASCII 내용 뿐만 아니라 오퍼레이팅 시스템에 의해 온 라인 또는 오프 라인 요약되거나, 객체가 억세스될 때 프로토콜을 경유하여 얻어진 토픽 뿐만 아니라 오퍼레이팅 시스템에 의해 한정된 앱스트랙트 카테고리, 응용 프로그램 또는 사용자에 기초된다. 또, 구문 서치 능력은 활동 질의를 완성하고 유사한 질의/구문을 요약하는데 사용될 수 있다.
특히, 리소스는 각 리소스에 관련된 앱스트랙트 카테고리에 기초하여 서치될 수 있다. 이들 카테고리는 메타 정보 개념의 구문에 미리 설명된 바와 같이 한정하거나 구문 조합에 기초를 둘 수 있다. 전술한 바와 같이 사전의 모든 이미지의 서치가 상대적으로 간단한 동안, "유사한 이미지"의 서치는 사전의 모든 이미지 사이에서 구문 조합이 의존하고, 이미지는 유사한 구문에서 사용된다(예를 들면, 현재 이미지를 편집하는데 사용된 응용 프로그램에 유사하게 카테고리된 리소스에 의한 공개, 편집 또는 포함 등). 이것은 각 리소스/객체 억세스의 구문 로깅/캐슁에 의해 실행될 수 있다. 또, 카테고리는 이들 자체에 대한 메타 정보를 포함할 수 있다. 또, 이것은 카테고리 또는 구문 카테고리에 의해 서치할 뿐만 아니라 사용자 억세스(및 종래 오퍼레이팅 시스템에 대해 수정하는 사용자의 식별에 의해)에 의해 서치할 수 있다.
결과적으로, ASCII, 오디오 및 다른 전사가능한 미디어는 워드 일부, 워드 ,워드 토픽 또는 구문에 기초하여 서치될 수 있다. 토픽은 토픽 텍스트를 식별하는 능력을 포함한다. 구문 서치는 활동 구문과 유사한 구문용 텍스트를 서치하거나, 현재 활동 질의/구문의 완성에 일치하는 능력을 포함한다. 예를 들면, 키보드 "화요일" 또는 실제 날짜 :("내일"을 언급하는 월요일의 캘린더 엔트리는 이들 항목을 복귀시킬 수 있다)용으로 명백하게 설치하는 동안, 제공된 화요일에 언급하는 모든 파일을 요약할 수 있다.
파일의 토픽 결정은 컴퓨터가 집중적으로 사용되지 않을 때 오프 라인이 행해질 수 있다. 새롭거나 최근에 수정된 파일만이 실험될 수 있다. 토픽은 각 리소스에 관련된 메타 정보에 자동적으로 추가된다. 구문 정보는 사용자의 명백한 요구에서만 행해지도록 매우 비싼 CPU 작업로 정의될 수 있다. 외부 객체용으로, 토픽은 리소스가 억세스(전술한 바와 같이)될 때 자동적으로 등록될 수 있다. 로컬 기계는 자체 내부 앱스트랙션(그들 자신에 대해 메타 정보를 통해 정의된)용 객체를 서치하는 것을 방해하지 않는다.
또, "대화형 선택"의 특징이 제공된다. 대화형 선택 능력은 기본적인 선택의 긴 시퀀스를 피하고, 자연 숏컷 및 선택의 보정을 제공하는 메타 정보, 앱스트랙션 및 대화형 질의/혼합된 이니셔티브/보정에 의존함으로써 리소스 관리자 레벨에서 또는 어떤 응용 프로그램 내에 제공된다. 다양한 메카니즘은 계층 구조를 갖는 객체의 윤곽을 동시에 억세스하고 나타내기 위해 제공된다.
특히, 대화형 선택이 활동 작업 또는 응용 프로그램 내로부터 복잡한 질의 능력(선택에 기초한 다이알로그) 뿐만 아니라 계층 서칭(선택에 기초한 앱스트랙션)을 사용하여 본 발명에 따라 실행될 수 있다. 대화형 선택은 종래 선택 방법에서 중요한 향상을 제공한다. 실제로, GUI 환경에서라도, 소정의 응용 프로그램 또는 질의용으로 사용가능한 리소스를 표시하는 것은 메타 정보 및 앱스트랙트 카테고리를 사용함으로써 크게 향상된다. 특히, 대화형 선택(앱스트랙션 및 숏컷을 사용하는)에 대해, 개인은 음성 질의(IVR에서)가 DTMF 인터페이스를 경유하여 메뉴의 페이지를 바이패스하는 방법과 유사한 방법에서 메뉴 및 계층 선택을 바이패스할 수 있다. 이것은 증가한 생산성의 항목에서 대화형 인터페이스에 의해 제공된 많은 장점 중 하나이다. 또, 이것은 인터페이스의 균일성을 설명하고, 동일 인터페이스 서비스(예를 들면, 데스크탑, PDA 또는 전화)(예를 들면, 상기 구체화된 IBM 문서 번호 YO998-392P에서 토론한 바와 같은 CML)를 억세스하는데 사용된 형식과 독립적으로 사용된다.
예를 들면, 데이타베이스로부터 정보를 검색하는 백엔드 서버를 참조하여, 웹 브라우징에 대한 HTML 포맷 뿐만 아니라 JSAPI 및 대화 확장을 사용하여 스킴된 대화 헤더에서 정보를 공급한다. 서버가 대화 브라우저 양식을 통해 억세스하는 경우, 사람은 정보를 표시하고 포인팅 또는 스피킹을 통해 목표한 정보를 선택할 수 있다. 사람이 전화 형식을 통해 서버에 억세스하는 경우, 사용자 선택은 URLs 및 앵커를 포함하는 내비게이션 메뉴를 통해 수행될 수 있다. 이들 내비게이션 메뉴는 웹 페이지가 대화 HTML을 통해 브라우저로 전송하는 메타 정보로부터 발생한다.
이러한 모든 경우에, 이 메뉴는 웹 페이저 또는 파일 시스템을 통해 선택함으로써 내비게이션에 대해 사용되거나 객체의 다른 계층 구조 및 리소스가 여러가지 보충 방법 중 하나에서 적절히 소개될 수 있다. 예를 들면, 네트워크된 객체의 등록 순간에, 메뉴는 그 구조에 대한 메타 정보를 전달할 수 있다. 또, 이 시스템은 구조의 구조(윤곽)의 각 객체에 관련하는 메타 정보에서 트랙을 국소적으로 유지할 수 있다(대화 구조 골격은 IBM 문서 번호 YO999-114P에 상세히 기재되고, "일반 계층 객체를 통한 효율적인 음성 내비게이션에 대한 구조 골격"이라는 명칭으로 특허 출원되었다. 또, 시스템은 CPU의 오프 피크 사용 동안, 스케톤 정보를 주기적으로 업데이트할 수 있다.
이 시스템은 임의의 로컬 또는 외부 리소스 및 계층 객체를 주기적으로 스파이더할 수 있다. 다른 예로, 특히 다이알로그 구조에서 각 시스템은 억세스할 수 있는 리소스를 응모할 수 있고, 주기적으로 또는 억세스할 때, 골격 메타 정보를 업데이트할 수 있다. 또, 메타 정보 서버는 스파이더링을 수행하고 메타 정보와 함께 골격 정보를 제공할 수 있다.
이 메타 정보는 어휘, FSG 및 NLU가 사용될 필요가 있는 메뉴(TTS)를 소개하는 방법을 설명하고 있다. 또, 혼합 이니셔티브 및 NLU는 백트래킹을 요구하지 않고 골격 또는 종래의 OS 및 GUI 본위 선택에 의해 부과된 새로운 골격을 완벽히 보정하는데 사용될 수 있다.
그러므로, 대화 탐색 및 선택에 대해, 객체는 종래의 구조(디렉토리를 가진 파일 시스템) 및 메타 정보, 플랫폼 응용 프로그램에 의해 객체에 관련된 앱스트랙트 카테고리 또는 사용자 뿐만 아니라 관련 다이나믹 정보의 기초를 기초로 탐색하거나 선택될 수 있다. 또한, 탐색 질의는 자연식으로 제공되고 혼합 이니셔티브를사용하여 좁혀질 수 있다. 질의는 NLU 기술을 사용하여 논리 조합의 질의로 디코드되고 분석되어 번역될 수 있다. 종래의 구조 및 카테고리와 다이나믹 정보는 기호 질의를 일치하도록 탐색될 수 있다. 혼합 이니셔티브는 탐색의 결과에 기초하여 좁혀지고 수정하도록 사용될 수 있다.
CVM에 의해 제공된 다른 특징은 대화 도움말, 메뉴얼 및 지원이 있다. 대화 인터페이스의 가장 강력한 특징은 이 시스템을 사용하여 곡선을 편평하게 할 능력이 있다. 실제로, NLU 및 혼합 이니셔티브는 사용자가 각 응용 프로그램을 사용하여 시스템을 제어하는데 도움을 줄 수 있다. 그러나, 그가 작업을 수행하는 동안 사용자에게 지원을 제공할 수 있다.
대화 지원은 사용자로부터 요구할 때 도움말 및 메뉴얼을 제공한다. 응용 프로그램의 사용자 용도 히스토리의 히스토리 및 카테고리된(메타 정보) 카테고리에 의존한다. 사용자의 사전 동작에 기초하여, 본 발명의 도움말 특성은 상세(예를 들면, 사용자가 작업을 결과 수행하지 않거나 최근에 작업을 수행하지 않거나 사용자가 이 작업을 수행할 때 항상 실패함)하거나 간단히 리마인더(사용자가 이것과 친숙할 때)이다. 사용자가 작업을 수행하는 동안, 지원 보조는 동시에 응용 프로그램 메뉴얼을 추적하다. 탈루 분야, 모호한 요구와 일련의 보정 및 거부 코맨드는 도움말 다이알로그와 함께 혼합 이니셔티브를 보강하도록 보조에 의해 추적되고 사용된다. 서비스, 예를 들면 대화 도움말 및 보조와 CVM 시스템에 의해 제공된 일부 다이알로그 프롬프트(도입, 질의, 피드백 등)는 메타 정보 저장소에 저장되고 응용 프로그램과 관련된 것처럼 사용자의 용도 히스토리에 기초할 수 있다. 사용자가 소정의 응용 프로그램과 사전에 상호 작용하는 경우, 설명은 사용자에게 친숙하다고 하여 축소될 수 있다. 마찬가지로, 사용자가 대다수 에러를 일으켰을 경우, 설명은 좀 더 복잡할 수 있다. 다수의 에러는 응용 프로그램 또는 기능의 사용자 불확실성, 비친숙성 또는 불이해/오해로서 설명된다.
도움말의 다른 정도 및 형식은 혼합 이니셔티브/용도 지원에서 NLU 요구 및 혼합된 이니셔티브, 토픽 본위 서치, 복합 양식 지침을 경유하여 메뉴얼(국소적이고 네트워크에서)에 대한 대화형 억세스까지의 범위에서 제공된다. 이것은 로컬 또는 리모트 클라이언트(예를 들면, 배경에서 응용 프로그램을 업그레이드 또는 재설치하기 위해)을 포함하는 대화형 기술 지원을 형성할 수 있다. 항상, 도움말 인터페이스의 균일성 및 일치는 가장 중요한다.
도움말 정보는 도움말 정보를 억세스하기 위해 NLU 질의를 사용하거나 현재 사용자에 관련된 메타 정보에 기초하고 혼합 이니셔티브를 사용하여 미싱 또는 수정된 개요에 기초하여 억세스될 수 있다. 각 응용 프로그램에 의해 제공된 다이알로그는 사용자의 즐겨찾기 또는 전문 지식 레벨과 조정된다.
요약하면, 도움말 및 지원은 요구를 완성하고, 절차를 통해 가이드하며, 정보용으로 서치하고 새로운 응용 프로그램을 업그레이드/인스톨하기 위해 로컬 및 리모트 리소스, 사용자의 용도 히스토리 및 클라이언트를 이용하여 널리 존재하는 조정된 대화형 인터페이스를 통해 제공된다.
다음은 전술한 바와 같이 CVM을 실행하기 위해 사용된 프로그래밍 언어/스크립트의 더 상세한 설명이다. 이러한 프로그래밍/스크립트 언어는 입력 또는 출력스트림으로서 어떤 사용가능한 리소스를 사용하는데 허용한다. CVM 플랫폼의 대화형 서브시스템을 사용하여, 각 입력은 고유의 객체로서 프로그래밍 언어에 의해 직접적으로 처리될 수 있는 이진 또는 ASCII 입력 또는 속성값 n-업레스(또는 서술적인 동등 바이트 또는 XML이다)으로 전환된다. 호출, 플래그 및 태그는 객체간에 전달하고 다른 객체를 갖는 인터페이스에 정확하게 요구된 대화형 메타 정보를 프로세스하는 것을 자동적으로 포함한다. 특히, 출력은 응용 프로그램 또는 사용자의 요구에 따라 포맷될 수 있다. 복합 양식 화법 프로세싱은 새로운 프로그래밍 툴을 사용하여 쉽게 만들어질 수 있다. 프로그래밍/스크립팅 언어는 대화형 시스템 구조: 음성 인식/화자 인식/대화형 시스템에 표시된 대화형 서브시스템의 입력 또는 출력에 파일 또는 스트림 처리와 유사한 처리를 제공한다. 이들 입력 스트림은 시스템 호출에 의해 실제로 실행된 라이브러리 호출로서 처리된다. CVM 관점으로부터, 상기 구체화된 IBM 문서 번호 YO999-392P에 전술한 바와 같은 대화형 브라우저는 대화형 응용 프로그램 또는 이것의 부품(예를 들면, XML 파서) 중 하나에 고려되고, 플러그 인은 대화형 응용 프로그램을 포함하는 대화형 엔진의 일부로 간주된다.
마이크로폰으로부터의 음성 입력(예를 들면, 기본 음성 입력)은 워드 시퀀스, 전화기 또는 사용자 식별 또는 질의(NLU에 의해 제공된 기호 언어 표현)를 갖는 기능 호출의 개요일 수 있다. 또, 입력은 육필에 의해서나 파일 등으로부터 제공될 수 있다. 각각의 결과 스트림은 객체 지향 구문에서 획득된 클래스로서 볼 수 있다.
플랫폼 스크립트의 경우에서, 발음은 대화형 서브시스템 중 하나에 의해 처리되고, 작동을 유도하기 전에 스크립트에 의해 처리된다. 종래 코맨드 및 제어 환경(예를 들면, ViaVoive의 음성 센터)은 대화형 스크립트로 생성된 상대적으로 간단한 대화형 플랫폼으로서 관찰될 수 있다. 스크립트를 수정함으로써, 플랫폼은 수정될 수 있다. 특히, 음성 센터는 코드, 입력 처리 및 코맨드 인식 및 실행에 깊게 내장된 종래 C/C++ 코드로 설립된다. 구문, 오디오 스테이터스 등은 환경 또는 글로벌 변수를 업데이트하기 위해 플랫폼 내에 설치될 수 있다. 다시, 전술한 바와 같이, 대화형 객체/부품 및 파운데이션 클래스는 절차식이거나 서술식일 수 있다.
본 발명에 따라 전술한 입력 프로세스는 음성 또는 어떤 다른 입력 스트림이 문자 또는 이진 입력용으로 전형적으로 보존된 모든 프로세싱 형태에 민감한 전형적인 입력/출력 스트림으로서 포함된다. 사용자 입력은 파싱 및 NLU 후의 기호 언어로 이들 전사 또는 이들 맵핑에 의해 표시될 수 있다. 또, 출력은 스크립트/프로그래밍 언어를 통해 완벽히 제어될 수 있다. 음성 폰트는 선택되거나 설계되어, 메시지에 의존하여 수정될 수 있다. 이러한 대화형 프로그래밍 언어 및 스크립트를 활용함으로써, 복잡한 재지향 및 대화형 프로세스 또는 복합 양식 화법 프로세서는 설립될 수 있다. 예를 들면, 이들은 대화형 워드 프로세서의 자연 복합 양식 확장 및 드로윙/사진/비디오 편집이다. CVM을 포함하는 파운데이션 클래스는 전술한다.
또, 다른 객체로 스트림을 교환할 때, 이것은 스트림을 내비게이트하거나 제어하거나 분석하기 위해 대화형 메타 정보로 데이타 스트림을 완벽하게 보충하는 것이 중요해진다. 다른 객체 또는 서브시스템과 통신할 때, 이것은 시스템 기능 호출을 통해 국소적으로 행해진다. 네트워크된 객체는 HTTP/HTML; TCP/IP 또는 숏컷 상호 작용의 다양한 형태를 통해 통신한다. 이들 프로토콜은 이 대화형 메타 정보를 교환할 수 있는 태그, 플래그 및 세마포어(semaphores)로 완성된다.
이러한 프로그래밍 언어는 구두 PERL 등으로 명명될 수 있는 PERL 및 Kshell, C및 C++, HTML, 자바스크립트, 베이직, 자바 등에 대한 새로운 스크립트 언어 및 확장의 형태하에서 행해질 수 있는 기본적으로 새로운 대화형 툴이다. 또, 언어는 해석되거나(스크립트/서술식) 편집되는(절차식)대화형 파운데이션 클래스 및 다이알로그 부품(절차식 또는 서술식)의 라이브러리를 갖는 CVM상에 실행을 최적화하기 위해 서치로부터 설립될 수 있다.
전술한 바와 같이, 프로그래밍 언어/스크립트는 대화형 응용 프로그램과 CVM간의 대화형 API를 포함한다. 또, 이것은 상기 구체화된 특허 출원 IBM 문서 번호 YO998-392P에 설명한 바와 같은 CLM(conversational markup language)을 포함한다. 이것은 절차식 API와 프로토콜 대 CLM(XML 및 HTTP)간의 구별 및 전달 프로토콜의 변화를 토론할 가치가 있다. 절차식 API는 대화형 인식 응용 프로그램에 대한 CVM을 공개한다. 절차식 API 및 프로토콜은 각 응용 프로그램 상태의 콘트롤러에 의한 빠른 결정 뿐만아니라 CVM, 응용 프로그램 및 장치간의 대화형 정보의 빠른 교환을 허용하고, 구문 스위치는 절차식 인터페이스를 요구한다. 한편 CML은 XML의 목적으로 라인 내에 있는 대화형 브라우저에 대한 소개 리소스/구문을 전달하는 이상적인 방법이고, 다이알로그를 개발하는데 필요한 프로그래밍 전문 지식을 감소시키는 장점을 갖는다.
전기 구체화된 응용 프로그램에서 전술한 바와 같은 인터페이스의 대화형 브라우저 형태에서, XML은 페이지간에 교환되지만, 페이지간의 구문 및 다수 동일 작업간의 구문은 API/프로토콜을 통해 브라우저에 의해 관리된다. 예를 들면, 연재한 객체(XML을 사용하는)의 교환에 기초한 HTTP에 기초한 순수한 소켓 본위 (RCP/IP) 코바/자바 RMI로 충족될 수 있다. 프로토콜은 절차식 통신 뿐만 아니라 XML(서술식)이 지원되도록 설계되는 것이 바람직하다.
대화형 스크립트에 의해 공개된 가능성에서, 대화형 로직은 가장 인상적이다. 새로운 대화형 프로그래밍 언어의 레벨에서, 종래 및 대화형 서브시스템에 문제시되고 제공된 스트림의 직접적인 프로세싱은 새로운 로직 상태 및 조작자를 포함한다.
로직 상태는 다음: (1) 참, (2) 거짓, (3) 복잡하지 않음, (4) 모호함, (5) ASCII 관점용 상이/동등, (6) NLU 관점으로부터의 상이/동등, (7) 활동 질의 분야 관점으로부터의 상이/동등, (8) 공지되어 있지 않음, (9) 비호환적 및/또는 (10) 비교할 수 없음일 수 있다. 대화형 로직 조작자는 이러한 상태를 테스트하거나 수정하도록 도입될 수 있다. 요약하면, 로직 서술분 스테이터스 및 조작자는 이들 ASCII/이진 내용 또는 이들 NLU 전환된 질의(종래 및 대화형 서브시스템의 입력/출력)에 기초하여 비교될 수 있는 대화형 질의의 풍요를 처리하기 위해 전개된다. 로직 오퍼레이터는 이러한 시스템을 테스트하거나 수정하기 위해 실행될 수 있다.
도 7을 참조하면, 도면은 본 발명의 한 특징에 따른 분산 CVM의 구조를 도시한다. 분산 시스템의 중심은 다수의 응용 프로그램(706), 장치(708 - 713), 다른CVM 응용 프로그램 또는 장치(707)와 대화형 리소스(705)간의 대화형 조정자로서 작용하는 CVM(704 : 서버, PC 등에 배치될 수 있다)이다. CVM(704)은 이러한 장치 및 응용 프로그램 양단에 조정된 균일 대화형 인터페이스를 제공하고, 다른 대화형 장치(708 - 713), 리소스(705) 및 응용 프로그램(706)은 대화형 프로토콜을 통해 접속할 수 있다. 조정한 인터페이스는 다수의 대화체로 접속된 장치/객체에 의해 표시된다. 객체의 수집은 CVM(704)의 집중되거나 분산된 구문 스택을 통해 사용자에 대한 단일 일치된 인터페이스를 표시한다. 대화형 장치는 다른 대화형 장치로부터 대화형 인터페이스를 경유하여 제어될 수 있는 익명의 파트너를 포함할 수 있다. 등록 페이스 동안, 이것은 지원된 구문의 요구 리스트를 교환시킬 수 있다. 접속에 의존하여, 구문은 장치 양단에 집중화되거나 분산된다(즉, 네트워크는 논의된다).
사용자가 장치의 수집과 상호 작용할 때, 상호 작용은 자동차에서 PVA(personal vehicle assistant : 710) 또는 음성 브라우저(713)와 같은 중심 유닛을 경유할 수 있다. 작업 디스패처 및 구문 스택은 모든 장치에 관련된 구문을 축적하고, 따라서 각 장치에 대한 코맨드를 파서하고 디스패치할 수 있다. 사용자가 장치의 전체 수집에 상호 작용할 경우, 장치는 항상 활동적이게 된다(최종 활성화된 구문이). 새로운 코맨드가 이 구문 스택을 적합하게 할 경우 이 장치는 체크된다. 그렇지 않으면, 이것은 활동하는 이웃하는 장치에 패스한다. 이 프로세스는 일치가 발견되고, 아마 사용자에 의해 확인될 때까지 반복되거나, 이들 요구는 제1 장치에 바운스백된다. 이 경우에, 에러 또는 혼란 메시지는 사용자에게 복귀된다.
전술한 바와 같이, CVM은 다수 화법을 관리하는 능력을 제공함으로써 시스템을 다이알로그하고, 구문을 사용하며, 앱스트랙션 및 메타 정보를 경유하여 객체를 언급하고, 작업, 앱스트랙션 및 구문을 할당하고 암기하며, 사용자를 맞추고, 요약하며, 친밀하지 않은 사용자라도 사용자를 돕고, 사용자를 인식하고 확증하며, 디스플레이, 키보드 또는 포인팅 장치를 갖거나 갖지 않는 모든 상호 적용을 통해 동일한 인터페이스를 나타내도록 사용자를 허용한다. 동일 상호 작용은 전화, 웹, PDA 데스크탑, 채널에 관련된 플러스 또는 마이너스 특징을 발생한다.
예를 들면, 그의 e-메일을 동시에 체킹하는 동안, 사용자는 스프레드시트의 요소에 대한 정보를 미미하게 억세스할 수 있고, 필요한 경우에 수정된다. 사용자는 종래에 따라 모든 이들 작업(그의 데스크탑 내에 있는 동안) 행하도록 선택하거나, e-메일의 타이핑을 종료하는 동안 이것을 관찰하지 않고 음성에 의해 스프레드시트 정보를 체크할 수 있다. 모든 경우에, 이들 인터페이스는 사용자에 대해 동일해진다.
다수 장치가 대화형으로 접속될 때, 이것은 모든 장치가 보편적인 CUI를 통해 제어될 수 있도록 이들 인터페이스를 조정시킬 수 있다. 이 개념은 다음의 예에 의해 설명될 수 있다. 당신은 9시에 집을 나온다고 가정하고 당신 배우자는 새로운 식료품 가게에서 어떤 물건을 사기 위해 당신에게 질의한다고 생각하자. 당신의 응답기의 메시지를 발견한 후, 당신은 이것을 음성 인식 소프트웨어를 사용하여 당신의 데스크탑의 메모로 녹음할 수 있다. 그러나, 당신은 이것을 프린트하거나 당신의 PDA에 이것을 전송하는 것을 잊어버린다. 이것은 당신의 차에서 당신이 대화형PDA, 대화형 차 PC(PVA : Personal Vehicle Assistant) 및 대화형 스마트폰을 가지고 있을 때, 당신의 데스크탑 PC가 CVM을 운영하는 경우에는 문제가 되지 않는다. 또, PVA가 내장된 CVM을 운영하고, 2개의 다른 응용 프로그램이 대화형으로 인식된다, 즉 당신은 PVA를 운영하는 CVM을 통해 그것을 제어할 수 있다고 가정한다.
당신은 전화를 사용하여 당신의 PC를 다이알하도록 PVA를 명령할 수 있다. 접속될 대, 당신은 음성으로 확인되고, 파일명 또는 사전을 기억하지 않고 미리 생성된 "식료품 리스트"를 간단히 요구하고 적합한 파일을 결과적으로 선택하기 위해 당신의 디렉토리를 통해 브라우즈함으로써 메모를 음성으로 발견한다. 당신은 당신의 PC CVM이 이것을 요구할 경우 선택을 확인할 필요가 있다. 당신은 다른 질의 - " 이것은 나의 PDA와 동기될 수 있다!"를 문제 삼을 수 있고, 파일은 다음 동기화에서 당신의 PDA로 전달되도록 적절하게 링크된다. 한개의 최종 코맨드 - "그렇게 하시오"- 및 당신의 PC는 단념하고, PDA로 모호한 질의를 처리한다. PVA는 당신의 이전 대화에 기초한 PDA 및 PC를 동기화시키기 위해 당신의 바람을 이해한다. 가능한 확인 후, 동기화는 실행되고, 식료품 리스트는 당신의 PDA에 저장되어 나중 사용을 위해 준비된다.
당신은 당신을 가게에서 차례로 가이드하도록 지금 PVA를 명령한다. 당신의 위치는 게산되고, 가게의 위치는 서버로부터 국소적으로 도달되며, 여정은 최종 여행 정보를 고려하도록 계산된다. 어떤 시간에서, 당신은 당신이 어디에 있는지, 다음에 무엇을 하는지, 어떻게 멀리 갈건지에 대한 내비게이션 정보를 요구할 수 있거나 다른 여정이라도 요구할 수 있다.
시간만큼 서두르면, 당신은 가게 드라이브스루 서버를 다이알하기 위해 PVA를 명령한다. 이것은 디렉토리 보장 원조 서비스 IVR에 대한 중간 다이알로그를 포함할 수 있다. 가게 IVR에 접속될 때, 작은 비지니스 또는 개인 소비자 IVR의 개념의 설명은 당신이 주문하는 대화형 인터페이스에 대한 다이알로그를 통해 현재 홈 페이지와 유사하게 설치된다. 이것을 위해, 당신은 식료품 리스트를 통해 느리게 브라우즈하고 항목별로 당신에게 낭독하도록 PVA를 필요로 한다. 그 다음, 당신은 IVR에 대한 요구를 고쳐 말하고, 각 주문이 적절히 취해질 때까지 다이알로그를 수행한다.
시간에 의해, 당신은 가게에 도착하고, 당신의 주문은 준비되어 있다. 당신의 e-메일을 조용히 듣고 운전하며, 뉴스 또는 주식 시세를 체크하는 동안 당신은 지금 집으로 운전할 수 있다. 필요한 경우, 당신은 소정의 스프레드시트 정보 : 당신의 메일을 처리하는 동안 당신의 데스크탑에 음성으로 이것을 논의할 수 있는 동일 방법을 논의하거나 수정하기 위해 당신의 PC에 다이알할 수 있다. 또, 당신은 나중에 업데이트되거나 상기되도록 요구하는 당신의 PVA 또는 데스크탑의 클라이언트에 대한 작업을 할당할 수 있다.
데스크탑 및 PVA를 운영하는 CVM에 대해, CVM는 스마트폰 및 PDA를 인식하고, 응용 프로그램 개발자는 CVM API에 걸려야만 한다. 이것은 모든 대화 능력 및 요구를 등록하는 것을 포함한다.
1. 응용 프로그램을 제어하는 활동 어휘, 유한 상태 문법 및 언어 모델;
2. NLU가 지원될 경우나 구문 상태 리스트에서 기호 맵핑;
3. 출력용 분류를 허용하기 위해 특히 관련된 메타 정보/카테고리;
4. 대화형 I/O 정보: 입력/출력을 직접 제어하거나 대화형 I/O 프로바이더에 대한 익명의 파트너 및 클라이언트임; 및
5. CVM 능력/상태: CVM을 운영하고; CVM 클라이언트이며, 매스터, 종속 또는 파트너 CVM임.
이전 예에서, PVA는 매스터 CVM이다. CVM이 장착된 경우, PDA 및 스마트폰은 종속 CVM 또는 간단히 CVM 인식이다. PVA가 PC에 대화체로 접속한 경우, 이것은 PVA가 매스터, 종속 또는 파트너로서 작용할 경우를 결정하도록 PVA의 응용 프로그램 개발자를 꾸밀 수 있다. 국소적이거나 전화를 통해 접속할 때, 장치는 API에 의해 전달된 필요한 정보를 교환하여 장치간의 일치를 완전하게 정의한다. 다시, CVM은 대화형 및 종래 서브시스템을 포함하는 모든 입력/출력 이슈를 자동적으로 처리한다. 다시, API는 질의를 응용 프로그램 호출로 변형하도록 CVM용 모든 정보를 전달하고, 역으로 출력을 사용자에게 제공되기 전에 적합하게 분류한 음성으로 전환한다.
개발 툴을 사용하여, 개발자는 대화형 API 및 CVM 주위의 응용 프로그램을 쉽게 설치할 수 있다. 이 개발 환경[여기에서 스포컨 에이지(Spoken Age)라 칭함]은 CVM을 모방하고, 응용 프로그램 및 네트워크된 프로토콜을 오류 수정하며 대화형 사용자 인터페이스를 빨리 개발하기 위해 프로그래머를 허용한다. 스포컨 에이지는 CVM용 CUI 및 응용 프로그램 개발을 포함한다. 또, 이것은 제공된 응용 프로그램을 위한 엔진의 데이타 파일(대화형 개요)을 수정하는 환경을 제공한다. 특히,이것은 툴의 레벨에서, 스포컨 에이지가 IBM ViaVoic 툴킷과 같은 SDK Toolkit와 같은 종래의 엔진 프론트엔드를 포함한다. 이것은 제공하는 툴킷 및 알고리즘이 제공된 작업용 데이타 파일을 재설치하거나 적용하거나 확장하기 위해 사용자를 허용함을 의미한다. 이것은 데이타 수집 룰에 이은 응용 프로그램 데이타를 수집하고 데이타 파일을 형성하고 성능을 테스트하기 위해 적합한 스크립트를 운영하는 것을 포함한다. 이것은 작업, 도메인 또는 음향 환경에 증정된 데이타 파일 또는 데이타 파일(CD ROM 또는 웹 사이트로부터의)읠 일부를 다운로딩하는 것을 포함할 수 있다. 또, 이것은 형태를 채우고 새로운 응용 프로그램/제공하는 데이타 예를 설명함으로써 데이타 파일 형성 서비스사에 만들어진 질의에 기초한 데이타를 업데이트하는 것을 포함할 수 있다.
응용 프로그램이 플랫폼에 특정한 채널용으로 개발될 때, 프로그래머는 이것을 어떤 다른 플랫폼 지원 CVM에서 확인하도록 스포컨 에이지에 의존할 수 있다. 또, 이것은 통신 채널 또는 새로운 플랫폼 또는 장치에 의해 강요된 UI 제약에 대한 대화 능력을 자동적으로 적용하도록 CVM에 의존할 수 있다. 다시 말하면, 데스크탑상의 음성 억세스용으로 기록된 스프레드시트는 지금 CVM의 전화 능력에 의존함으로써 전화상의 음성으로 억세스될 수 있다. 또, 스포컨 에이지로 기록된 자바, CUI 및 XML/HTML 본위 웹 사이트는 작게 내장된 대화형 브라우저와 억세스되는 전화 또는 제한된 음성 표시 언어를 통해 서비스를 제공하는 IVR로 전환될 수 있다.
또, 분산 시스템은 CVM으로 조작할 수 있는 응용 프로그램이 사용가능한 강력한 음성인 대화형 브라우저(713)를 포함한다. 대화형 브라우저는 CVM을 운영하고CML 페이지를 표시하는 동안 대화형 다이알로그를 만들기 위해 CML을 번역할 수 있다. 도 7에 도시한 바와 같이, 상기 구체화된 IBM 문서 번호 YO998-392P 특허 출원에서 설명한 바와 같이, 레거시 응용 프로그램(700)은 HTML 또는 DB2와 같은 종래의 포맷을 XML로 트랜스코드하기 위한 대화형 트랜스코더 에이젼트를 통해 억세스될 수 있다. 대화형 브라우저는 XML 명세서에 기초한 음성 표시 언어인 CML(conversational mark-up language)을 번역한다. 이것은 CVM을 운영하기 위해 가장 강력한 응용 프로그램 중 하나로서 관찰될 수 있다. 대화형 브라우저는 자체 CVM를 실행하는 독립 응용 프로그램일 수 있다. CML은 대화형 다이알로그를 신속하게 개발하기 위해 새로운 노련한 응용 프로그램 개발자를 허용한다. 또, HTML 및 월드 와이드 웹에 대한 유사성을 추구하기 위해, CML 및 대화형 브라우저는 레거시 사업 응용 프로그램 및 레거시 데이타베이스 주위에 대화형 사용자 인터페이스를 설치하기 위해 간단하고 조직적인 방법을 제공한다. 또, CVM상에 설치할 때, 메카니즘은 다수의 응용 프로그램(로컬 및 네트워크된) 및 장치(로컬 및 네트워크된) 양단에 전달할 수 있는 대화형에서의 이들 응용 프로그램, 서비스 및 거래를 포함할 수 있다. 또, 이것은 그 또는 그녀가 레거시 응용 프로그램, 대화형 브라우저를 운영하는 그 또는 그녀의 PC 또는 IVR의 대화형 응용 프로그램 또는 서버 사이드의 대화형 응용 프로그램을 억세스할 때 동일 사용자 인터페이스를 사용자에게 제공할 수 있다. HTML 다이알로그를 CML로 전환하는 대화형 대리인의 사용은 종래 또는 복합 양식 브라우저, PC 또는 내장된 장치의 대화형 브라우저 및 IVR 응용 프로그램을 구동하기 위해 동일 페이지를 허용한다. 전화 카드로 장착된 서버의 적절하게설계된 홈 페이지는 개인 IVR이 된다. 특히, 대화형 대리인은 HTML 페이지를 CML 페이지로 트랜스코드하도록 도입된다.
CVM이 API를 경유하여 공개되는 동안, CVM 및 분산 리소스는 API 및 절차식 프로토콜을 통해 가장 효과적으로 대화할 수 있고, 이것은 HTTP 및 XML/HTML 교환을 포함하기 위해 상호 작용 프로토콜을 확장하는 것이 중요해진다. 실제로, HTTP 및 XML 교환 또는 연재된 객체는 단일용 또는 축차 대화형 거래용으로 충분해질 수 있다. 최적의 프로토콜을 선택하고 XML 교환을 허용하는 옵션은 매우 작은 프로그래밍 지식을 갖는 다이알로그의 설계를 단순하게 한다. 한편, 절차식 호출은 다수 동기 대화형 응용 프로그램을 갖는 매우 효과적인 로컬 또는 분산 실행을 갖도록 허용한다. 효과적인 대화형 플랫폼 능력은 API 인터페이스를 요구한다. 다수 대화형 응용 프로그램 양단의 효과적인 다이알로그 관리자는 다른 서브시스템, 응용 프로그램 및 포함된 CVM 실체간의 절차식 객체의 교환을 요구한다.
다음은 도 8에 도시한 바와 같이 UCRC(Universal Conversational Remote Control)이라 칭해진 UCA(Universal Conversational Appliance)를 사용하여 본 발명의 응용 프로그램 예이다. UCA 또는 UCRC는 대화형 프로토콜의 다수 관점을 포함하는 CVM 장치의 예이다. UCRC는 자발적인 네트워킹 능력을 갖는 음성이 가능한 휴대용 PDA이다. 네트워킹 능력은 RF, ad hoc(예를 들면, 블루투스, 호핑 네트워킹) 또는 IR일수 있다. 홈 환경에서, 장치는 지금 대화체(그러나, 전형적으로서 익명의 파트너로서)로 인식된다. 이것은 다른 장치가 디스커버되고 대화체로 제어되도록 필요한 정보를 교환할 수 있음을 의미한다. 다른 장치는 유사한 네트워킹 능력을갖는다. 단순화된 경우에, 이것은 X10과 같은 영구 네트워크를 사용하여 인터페이스의 "홈 디렉터" 형태로 직접적으로 제어된다. 이 경우에, 그 다음 UCA는 홈 디렉터에 직접적으로 대화한다.
UCRC는 대화형 프로토콜(801 : 전술한 바와 같은)을 경유하여 핸드셰이크(디스커버리)용 요구를 주기적으로(매우 자주) 방송한다. 각 응용 프로그램(또는 홈 디렉터)는 이러한 요구를 검색할 때마다 응답한다. 어떤 새롭게 발견된 응용 프로그램은 그 자체를 식별한다. 또, UCRC는 그 자체를 식별한다. 결과적인 핸드셰이크는 등록된다. 등록은 응용 프로그램의 자연명(및 어떤 다른 메타 정보) 및 이것이 익명의 파트너인 사실을 식별하고, 논의하는 것을 포함한다.
이 예에서, 논의는 UCRC가 대화를 구동한다고 즉시 동의한다. 새롭게 발견된 응용 프로그램은 최근 상태 및 이것이 그 상태에서 지원되는 코맨드를 교환한다. 코맨드의 제한된 양을 지원할 때, 이것은 지원하는 다른 상태 및 이들 다른 상태에 관련된 코맨드를 전송할 수 있다. 이것은 동등하여 사전에 구조 골격을 보낸다. 상태의 구조가 너무 복잡할 때, 이 정보는 상태를 변경하는 시간마다 상태별 기준에 행해질 수 있다.
교환 프로세스는 모든 필요한 데이타 파일: 어휘, 베이스폼, 다이알로그용 프롬프트/음성 폰트, 문법, 가능한 파싱, 번역, 태킹, 기호 언어 및 NL 인터페이스의 언어 생성 법칙을 가능하게 더한 활성화용 응용 프로그램으로 복귀하도록 복귀 처리/이벤트를 갖는 코맨드의 리스트를 교환하는 것을 포함한다. 선택적으로, 정보는 대화형 엔진 작업을 실행할 수 있는 다른 엔진(예를 들면, 음성 인식 작업 등을실행할 수 있는 서버)의 어드레스를 포함할 수 있다. 사용자로부터의 활성화 및 입력시, UCRC CVM은 관련된 응용 프로그램을 결정한다. 이것은 다른 응용 프로그램(IBM 문서 번호 Y0999-113P에 설명한 바와 같이 국소적이거나 멀리)에 의해 지원된 코맨드에 따라 인식 결과에 기초가 될 수 있다.
결정시, 이벤트/복귀 처리는 활성화되고, 코맨드는 관련된 응용 프로그램에 실행된다. 이것은 상태를 변경시킨다. 새로운 상태는 UCRC로 통신된다. 또, UCRC의 구문은 업데이트된다. 코맨드는 업데이트된다(스케톤 또는 지원된 코맨드의 새로운 교환에 기초하여). 응용 프로그램이 네트워크로부터 일시적으로 사라질 때, 정보는 구문에 저장된다(응용 프로그램이 UCRC에 의해 아직 제어될 경우). 이것은 시간(그것을 마지막 본지가 얼마나 오래되었나) 또는 위치(메타 정보) 또는 메타 정보(활성을 잃게 된 경우)에 기초하여 될 수 있다. 재활성화시에, 대부분의 정보는 구문 또는 메타 정보로부터 재저장되고 프로토콜은 업데이트용으로만 체크한다.
응용 프로그램이 제어된 리스트로부터 명백히 제거되고 제어될 때, 사인-인 오프의 요구는 응용 프로그램 또는 UCRC로부터의 명백해질 수 있다. 응용 프로그램이 진부하게 제어될 때(TV의 종래 리모트 제어 또는 광 스위치 등), 이벤트는 구문, 데이타 파일 및 응용 프로그램 상태를 등록하고/재논의하거나 더 정확히 업데이트하기 위해 UCRC로 복귀된다.
홈 디렉터가 사용될 때, 프로토콜은 2개의 모델을 취할 수 있는 것을 제외하고는 정확히 동일하다:
1) 한개의 응용 프로그램만이 등록된다; 홈 디렉터. 어떤 응용 프로그램은변경되거나 어떤 코맨드는 모든 홈 디렉터의 상태로 변경된다;
2) 모든 개별 응용 프로그램은 UCRC로 등록된다. 홈 디렉터는 응용 프로그램과 UCRC간의 프로토콜을 전송하고 트랜스코드하는 수단으로서만 작용한다.
홈 디렉터 모델이 고려될 때, 이것은 UCRC에 의해 제공된 기능성을 연장시킬 수 있다. 자발적인 네트워킹 대신에, 이것은 일반적인 무선 LAN(홈 디렉터에 접속된 베이스 스테이션에 대한 이더넷, RF)일 수 있다. 영역 외일 때, 홈 디렉터 솔루션은 일반적인 전화(예를 들면, 모뎀형 접속)에 의해 불러질 수 있는 장점을 나타낸다. 이러한 경우에, 모든 프로토콜은 전화상에서 교환될 수 있다. 그러므로, 새로운 UCRC 토폴러지는 범위 내일 때 로컬 또는 자발적인 네트워크 능력을 갖고 홈으로부터 멀리서 제어하기 위한 영역외일 때 베이스 스테이션 능력에 대한 이진 접속을 갖는 호출 전화/UCRC이다.
선택적으로, UCRC 능력은 홈 디렉터 머신에 복사되거나 제한될 수 있다. 복사될 때, 머신이 전화 카드를 통한 음성 브라우징 능력 또는 로컬 홈 IVR 능력을 제공할 수 있을 경우, 홈 응용 프로그램은 전화(C를 통한 이진 접속 및 대화형 프로토콜을 교환하는 서버를 요구하지 않는)를 통해 어떤 곳으로부터 y 음성이 제어될 수 있다. UCRC 및 대화형 프로토콜은 약간 홈 디렉터와 응용 프로그램 사이이다. 어떤 일반 전화는 사용될 수 있다. 제2 경우에서, 일반적으로 서버는 홈일 때의 응용 프로그램을 제어하는데 사용될 수 있다. UCRC는 휴대가능한 I/O 시스템이다; 이것은 오디오를 획득하고, 홈 디렉터에 이것을(대화형 코딩) 압축하고 설비한다. 출력은 플레이백용 UCRC에 유사하게 설비된다. 모든 실제 CVM 프로세싱은 지금홈 디렉터 서버에서 행해진다.
도 12를 참조하면, 도면은 여기에서 설명한 부품 및 특징을 사용하여 구성될 수 있는 대화형 네트워크 시스템을 도시한다. 이것은 본 발명에 따른 대화형 컴퓨터가 다른 장치의 네트워킹 부분에서 새로운 요구를 포함함이 이해된다. 이것은 모든 프로토콜, 로드 및 트래픽 관리 및 네트워크 캐싱 및 저장에서의 주요한 고려가 로드 또는 트래픽의 밸런스를 보증하지 않고, 추가로 네트워크에 교신하거나 네트워크된 리소스를 사용하는 사용자 프리젠트의 모든 활동 다이알로그의 다이알로그 흐름을 최적화하기 위한 것을 의미한다. 다시 말하면, 대화형 분산 구조는 다이알로그의 지연 및 흐름, 전송된 오디오(대화형 코딩)에서의 지연, 동기하는 음성 및 GUI 성분(정말, GUI 입력은 이벤트 및 UI의 음성 성분 및 GUI 성분의 동기/일치된 행동이어야 한다) 및 근본적인 대화형 프로토콜(논의, 다이알로그 관리자 프로토콜 등)을 업데이팅 및 교환을 최적화하도록 새로운 추가 제한 또는 고려를 추가한다. 이러한 특징은 국소적 및/또는 네트워크 상의 틈이 있고 명료한 프로세싱이 바람직해진다. 서버, 띠폭, 최소 지연, 최소 패킷 손실 등의 품질은 VoIP용으로 중요하게 유지된다.
추가로, 적합한 엔진에 대한 특정 작업 및 도메인용으로 필요해진 데이타 파일의 적당한 이동의 문제가 있다. 다시, 이것은 네트워크상 여분 정밀 트래픽 관리 및 로드 관리에서 캐싱 또는 저장을 요구한다. 다시, VoIP도 나타내지 않고 센더와 수신기 문제간의 트래픽의 흐름만을 나타내는 개념이 있다. 또, 규칙적인 스케톤 정보(예를 들면, 다이알로그 로직)는 효율을 향상시키기 위해 네트워크에 적합하게미리저장되거나 캐시되거나 복사될 수 있다.
도 12에 도시한 시스템에서, 본 발명에 따른 클라이언트 장치(1000 : CVM 시스템 또는 다이알로그 관리자 능력에 장착된)는 라우터(1004)를 통해 PSTN(1002) 및 인터넷/인트라넷(1003) 네트워크를 경유하여 접속함으로써 서비스 네트워크 프로바이더 네트워크(1001)로부터의 원하는 정보를 억세스할 수 있다. 라우터(1004) 및 인터넷/인트라넷 네트워크(1003)는 분산 대화형 프로토콜(전술함), RecoVC(인식 호환성 VoCoder)를 통한 오디오 코딩, 응용 프로그램 및 메타 정보(분산 응용 프로그램 프로토콜), 디스커버리, 등록, 논의 프로토콜, 다이알로그 흐름을 유지하는 서버 로드 관리, 다이알로그 흐름을 유지하기 위해 일치하고 루팅하는 트래픽, 작업 특징 및 능력 요구에 기초한 엔진 서버 선택 및 대화형 개요 유효성(데이타 파일), 대화형 개요(분산;저장), 트래픽/루팅 및 캐싱을 포함하는 대화형 네트워크 서비스 확장 및 특징을 제공한다.
대화형 응용 프로그램 서비스 또는 내용 또는 거래 프로바이더의 인트라넷 뿐만 아니라 도 12에 도시한 바와 같은 어떤 네트워크(인터넷, 블루투스, 무선 네트워크 등)에서, 네트워크는 내용 서버 및 백엔드 로직 또는 비지니스 로직 서버, 대화형 엔진 서버, 수단, 라우터, 대리 및 IVR(예를 들면, 사운드 카드와 같은) 및 서버 브라우저를 가질 수 있고, 오디오 및 데이타 파일은 대화형 네트워킹 원리에 의해 부가된 최적화에 따라 리소스간에 연속적으로 교환된다.
따라서, CVM 성분 또는 대화형 서비스는 다른 기능의 대화형 네트워킹 측정, 전송, 관리 및 실행을 수행하도록 메시지를 교환하기 위해 모든 이들 실체(서버,클라이언트, 수단, 라우터 등)에 표시하도록 요구된다. 전형적으로, 이들 기능은 네트워크 등에서 로드 밸런싱, 트래픽 밸런싱, 저장 및 캐싱을 수행하도록 존재하는 프로토콜 및 시스템상에 실행된다.
전술한 실시예가 첨부하는 도면을 참조하여 여기에 설명되었을지라도, 본 시스템 및 방법이 이들 정확한 실시예에 한정되지 않고, 다양한 다른 변경 및 수정은 본 발명의 범위 또는 정신으로부터 빗나가지 않고 기술의 숙련자에 의해 여기에 영향을 미칠 수 있다고 이해된다. 모든 이러한 변경 및 수정은 첨부하는 청구항에 의해 한정될 때 본 발명의 범위 내에서 포함되도록 의도된다.

Claims (24)

  1. 대화형 컴퓨터 시스템으로서,
    입력 질의를 수신하기 위한 복합 양식의 대화형 사용자 인터페이스(CUI)와,
    상기 입력 질의에 응답하여 상기 입력 질의를 처리하고 다이알로그를 생성하기 위한 대화형 엔진과,
    상기 입력 질의에 기초하여 응용 프로그램과 관련된 다이알로그 및 구문을 관리하고, 상기 대화형 엔진을 관리하기 위한 대화형 커널과,
    상기 응용 프로그램 및 상기 대화형 커널 간에 인터페이스를 제공하기 위한 대화형 응용 프로그램 인터페이스(API)를 포함하는 대화형 컴퓨터 시스템.
  2. 제1항에 있어서,
    상기 대화형 API는 대화형 과정을 수행하는 것과 대화형 응용 프로그램을 만드는 것 중 하나에 대한 대화형 객체를 구성하기 위해 억세스할 수 있는 대화형 파운데이션 클래스 및 기초 다이알로그 성분의 라이브러리 기능들을 포함하는 것인 대화형 컴퓨터 시스템.
  3. 제2항에 있어서, 상기 대화형 파운데이션 클래스 및 기초 다이알로그 성분은 CUI 빌딩 블럭, 대화형 플랫폼 라이브러리, 다이알로그 모듈, 다이알로그 스크립츠, 빈즈, 대화형 제스쳐 및 그들의 조합 중 하나를 포함하는 것인 대화형 컴퓨터시스템.
  4. 제2항에 있어서, 상기 대화형 객체는 서술식 및 절차식 중 하나로 구현되는 것인 대화형 컴퓨터 시스템.
  5. 제1항에 있어서, 상기 대화형 커널은 오퍼레이팅 시스템 및 실시간 오퍼레이팅 시스템 중 하나에 더하여 플랫폼인 것인 대화형 컴퓨터 시스템.
  6. 제1항에 있어서, 상기 대화형 컴퓨터 시스템은 퍼스널 컴퓨터 플랫폼, 서버 플랫폼 및 내장 장치 플랫폼 중 하나에 실행하는 것인 대화형 컴퓨터 시스템.
  7. 제1항에 있어서, 상기 복합 양식의 CUI는 복수 개의 I/O 리소스와, 상기 복수 개의 I/O 리소스와 인터페이스하고 상기 복수 개의 I/O 리소스를 상기 대화형 커널과 함께 등록하기 위한 I/O API를 포함하는 것인 대화형 컴퓨터 시스템.
  8. 제7항에 있어서, 상기 I/O API층은 I/O 앱스트랙션, 사용자 인터페이스 앱스트랙션, 장치 앱스트랙션 및 그들의 조합을 포함하는 것인 대화형 컴퓨터 시스템.
  9. 제1항에 있어서, 상기 복합 양식의 CUI는 통상의 자연 언어 인식(NLU) 인터페이스 및 자연 언어 생성(NLG) 인터페이스 중 하나를 포함하는 것인 대화형 컴퓨터 시스템.
  10. 제9항에 있어서, 상기 NLU 및 NLG 인터페이스는 구문 및 혼합 이니셔티브를 제공하는 것인 대화형 컴퓨터 시스템.
  11. 제1항에 있어서, 상기 대화형 커널은,
    응용 프로그램에 걸친 다이알로그를 관리하고, 입력 질의에 기초하여 활성 다이알로그, 구문 및 응용 프로그램을 선택하기 위한 다이알로그 관리자와,
    대화형 작업을 위해 상기 대화형 엔진을 관리하고 배정하기 위한 리소스 관리자와,
    대화형 작업을 조정하고 디스패치하기 위한 대화형 작업 디스패쳐와,
    대화형 작업의 활성 화법 구문을 축적하기 위한 구문 스택을 포함하고,
    상기 구문은 질의 개요, 속성값 n-uples의 리스트 및 대화 상태를 구비하는 것인 대화형 컴퓨터 시스템.
  12. 제11항에 있어서, 상기 구문 스택은 구문의 글로벌 히스토리를 더 포함하는 것인 대화형 컴퓨터 시스템.
  13. 제11항에 있어서, 메타 정보에 대한 저장소를 관리하기 위한 메타 정보 관리자를 더 포함하고, 상기 메타 정보는 파일, 디렉토리, 객체, 데이타 스트림 처리기, 네트워크, 주변 장치, 하드웨어, 응용 프로그램, 네트워크 파일 시스템 및 그들의 조합 중 하나를 포함하는 요소와 관련된 복수 개의 앱스트랙트 카테고리를 포함하는 것인 대화형 컴퓨터 시스템.
  14. 제13항에 있어서, 상기 메타 정보는 숏컷을 요소로 제공하는데 사용되는 것인 대화형 컴퓨터 시스템.
  15. 제13항에 있어서, 상기 메타 정보는 즐겨찾기, 보안, 거주지, 바이오메트릭스, 행동 및 그들의 조합에 관한 사용자 정보를 더 제공하는 것인 대화형 컴퓨터 시스템.
  16. 제1항에 있어서, 상기 대화형 커널은 대화형 엔진 API를 통해 상기 대화형 엔진을 제어하고 억세스하는 것인 대화형 컴퓨터 시스템.
  17. 제11항에 있어서, 상기 대화형 커널은 다이알로그 관리자를 경유하여 백엔드 로직에 억세스하기 위한 백엔드 앱스트랙션층을 더 포함하는 것인 대화형 컴퓨터 시스템.
  18. 제7항에 있어서, 상기 대화형 커널은 상기 I/O 리소스 및 대화형 엔진의 성능에 기초하여 사용자에게 소개된 행동, CUI 및 다이알로그을 적응시키기 위한 대화형 트랜스코더를 포함하는 것인 대화형 컴퓨터 시스템.
  19. 제11항에 있어서, 리모트 응용 프로그램, 리모트 장치, 리모트 대화형 컴퓨터 시스템 및 그들의 조합 중 하나를 구비하는 대화형 인식 시스템과 정보를 교환하기 위한 대화형 프로토콜을 더 포함하는 것인 대화형 컴퓨터 시스템.
  20. 제19항에 있어서, 상기 대화형 프로토콜은 대화 상태, 대화 개요, 구문, 대화형 엔진 API 호출, 결과 및 그들의 조합 중 하나를 구비하는 정보를 교환하기 위한 분산 대화형 프로토콜을 포함하는 것인 대화형 컴퓨터 시스템.
  21. 제19항에 있어서, 상기 대화형 프로토콜은 대화형 인식 시스템을 자동적으로 발견하기 위한 대화형 디스커버리 프로토콜을 포함하고, 상기 대화형 프로토콜은 핸드셰이크용 방송 요구, 식별자 교환, 초기 등록을 위한 처리의 교환 및 초기 협상을 위한 처리를 교환을 구비하는 것인 대화형 컴퓨터 시스템.
  22. 제21항에 있어서, 상기 대화형 프로토콜은 시스템과 대화형 인식 시스템간에 네트워크 토폴러지를 협상하도록 정보를 교환하는 대화형 프로토콜을 포함하는 대화형 컴퓨터 시스템.
  23. 제22항에 있어서, 상기 대화형 프로토콜은 관련 정보에 대한 데이타 전송을제한하고, 네트워크 토폴로지를 협상하기 위해 대화 능력, 대화 상태 및 구문에 관한 정보를 교환하고 등록하기 위한 대화형 등록 프로토콜을 포함하는 것인 대화형 컴퓨터 시스템.
  24. 제11항에 있어서, 상기 대화형 커널층은 대화형 응용 프로그램 API를 경유하여 시스템 호출과 억세스할 수 있는 대화형 서비스 및 행동을 제공하는 것인 대화형 컴퓨터 시스템.
KR1020017004223A 1998-10-02 1999-10-01 대화형 컴퓨팅 시스템 및 방법, 대화형 가상 머신, 프로그램 저장 장치 및 트랜잭션 수행 방법 KR100620826B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US10295798P 1998-10-02 1998-10-02
US60/102,957 1998-10-02
US11759599P 1999-01-27 1999-01-27
US60/117,595 1999-01-27

Publications (2)

Publication Number Publication Date
KR20010085878A true KR20010085878A (ko) 2001-09-07
KR100620826B1 KR100620826B1 (ko) 2006-09-13

Family

ID=26799924

Family Applications (4)

Application Number Title Priority Date Filing Date
KR10-2001-7002798A KR100431972B1 (ko) 1998-10-02 1999-10-01 통상의 계층 오브젝트를 사용한 효과적인 음성네비게이션용 뼈대 구조 시스템
KR10-2001-7004228A KR100459299B1 (ko) 1998-10-02 1999-10-01 대화식 브라우저 및 대화식 시스템
KR1020017004223A KR100620826B1 (ko) 1998-10-02 1999-10-01 대화형 컴퓨팅 시스템 및 방법, 대화형 가상 머신, 프로그램 저장 장치 및 트랜잭션 수행 방법
KR10-2001-7004207A KR100430953B1 (ko) 1998-10-02 1999-10-01 네트워크 협동 대화 서비스를 제공하기 위한 시스템 및 방법

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR10-2001-7002798A KR100431972B1 (ko) 1998-10-02 1999-10-01 통상의 계층 오브젝트를 사용한 효과적인 음성네비게이션용 뼈대 구조 시스템
KR10-2001-7004228A KR100459299B1 (ko) 1998-10-02 1999-10-01 대화식 브라우저 및 대화식 시스템

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR10-2001-7004207A KR100430953B1 (ko) 1998-10-02 1999-10-01 네트워크 협동 대화 서비스를 제공하기 위한 시스템 및 방법

Country Status (10)

Country Link
US (4) US7418382B1 (ko)
EP (4) EP1163576A4 (ko)
JP (4) JP2002527800A (ko)
KR (4) KR100431972B1 (ko)
CN (4) CN1151488C (ko)
AT (1) ATE383640T1 (ko)
CA (4) CA2345660C (ko)
DE (1) DE69937962T2 (ko)
IL (5) IL142364A0 (ko)
WO (4) WO2000021232A2 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100746526B1 (ko) * 1999-12-28 2007-08-06 소니 가부시끼 가이샤 대화 프로세싱 장치 및 방법, 및 이를 위한 기록 매체
KR20140080717A (ko) * 2012-12-14 2014-07-01 한국전자통신연구원 태스크 그래프 기반 대화 처리 시스템의 태스크 그래프 구축 장치 및 방법
KR20200054338A (ko) * 2015-10-21 2020-05-19 구글 엘엘씨 다이얼로그 시스템들에서의 파라미터 수집 및 자동 다이얼로그 생성

Families Citing this family (694)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7003463B1 (en) 1998-10-02 2006-02-21 International Business Machines Corporation System and method for providing network coordinated conversational services
CN1151488C (zh) * 1998-10-02 2004-05-26 国际商业机器公司 通过一般分层对象进行有效语音导航的结构框架
US6163794A (en) * 1998-10-23 2000-12-19 General Magic Network system extensible by users
US6886047B2 (en) * 1998-11-13 2005-04-26 Jp Morgan Chase Bank System and method for managing information retrievals for integrated digital and analog archives on a global basis
FR2787902B1 (fr) * 1998-12-23 2004-07-30 France Telecom Modele et procede d'implementation d'un agent rationnel dialoguant, serveur et systeme multi-agent pour la mise en oeuvre
AU6630800A (en) 1999-08-13 2001-03-13 Pixo, Inc. Methods and apparatuses for display and traversing of links in page character array
US7330815B1 (en) * 1999-10-04 2008-02-12 Globalenglish Corporation Method and system for network-based speech recognition
US6665640B1 (en) 1999-11-12 2003-12-16 Phoenix Solutions, Inc. Interactive speech based learning/training system formulating search queries based on natural language parsing of recognized user queries
US6633846B1 (en) 1999-11-12 2003-10-14 Phoenix Solutions, Inc. Distributed realtime speech recognition system
US7725307B2 (en) 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
US9076448B2 (en) 1999-11-12 2015-07-07 Nuance Communications, Inc. Distributed real time speech recognition system
DE69942507D1 (de) 1999-12-06 2010-07-29 Ericsson Telefon Ab L M Intelligente Herstellung von Piconets
US20010043234A1 (en) * 2000-01-03 2001-11-22 Mallik Kotamarti Incorporating non-native user interface mechanisms into a user interface
CA2399720C (en) * 2000-02-11 2013-07-09 Convergent Networks, Inc. Service level executable environment for integrated pstn and ip networks and call processing language therefor
WO2003050799A1 (en) * 2001-12-12 2003-06-19 International Business Machines Corporation Method and system for non-intrusive speaker verification using behavior models
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
AU2001256902A1 (en) * 2000-05-05 2001-11-20 James Ewing A method and a system relating to protocol communications within a pre-existing www server framework
US6769010B1 (en) * 2000-05-11 2004-07-27 Howzone.Com Inc. Apparatus for distributing information over a network-based environment, method of distributing information to users, and method for associating content objects with a database wherein the content objects are accessible over a network communication medium by a user
FR2809204B1 (fr) * 2000-05-17 2003-09-19 Bull Sa Interface applicative multiprosseur, ne necessitant pas l'utilisation d'un systeme d'exploitation multiprocesseur
US7039951B1 (en) 2000-06-06 2006-05-02 International Business Machines Corporation System and method for confidence based incremental access authentication
US7047196B2 (en) 2000-06-08 2006-05-16 Agiletv Corporation System and method of voice recognition near a wireline node of a network supporting cable television and/or video delivery
CA2349021C (en) * 2000-06-16 2010-03-30 Bayer Corporation System, method and biosensor apparatus for data communications with a personal data assistant
US6654722B1 (en) * 2000-06-19 2003-11-25 International Business Machines Corporation Voice over IP protocol based speech system
US6788667B1 (en) * 2000-06-20 2004-09-07 Nokia Corporation Wireless access to wired network audio services using mobile voice call
WO2002005153A2 (en) * 2000-07-07 2002-01-17 2020Me Holdings Ltd. System, method and medium for facilitating transactions over a network
US7139709B2 (en) 2000-07-20 2006-11-21 Microsoft Corporation Middleware layer between speech related applications and engines
DE60125597T2 (de) * 2000-08-31 2007-05-03 Hitachi, Ltd. Vorrichtung für die Dienstleistungsvermittlung
US6785651B1 (en) * 2000-09-14 2004-08-31 Microsoft Corporation Method and apparatus for performing plan-based dialog
EP1332605A4 (en) * 2000-10-16 2004-10-06 Eliza Corp METHOD AND SYSTEM FOR PROVIDING ADAPTIVE RESPONDENT TRAINING IN A VOICE RECOGNITION APPLICATION
US7072982B2 (en) 2000-11-22 2006-07-04 Microsoft Corporation Universal naming scheme for peer to peer resources
US7594030B2 (en) 2000-11-22 2009-09-22 Microsoft Corporation Locator and tracking service for peer to peer resources
EP1211588B1 (de) * 2000-12-04 2005-09-21 Siemens Aktiengesellschaft Verfahren zum Nutzen einer Datenverarbeitungsanlage abhängig von einer Berechtigung, zugehörige Datenverarbeitungsanlage und zugehöriges Programm
US7016847B1 (en) * 2000-12-08 2006-03-21 Ben Franklin Patent Holdings L.L.C. Open architecture for a voice user interface
GB0030958D0 (en) * 2000-12-19 2001-01-31 Smart Card Solutions Ltd Compartmentalized micro-controller operating system architecture
DE10064661A1 (de) * 2000-12-22 2002-07-11 Siemens Ag Kommunikationsanordnung und Verfahren für Kommunikationssysteme mit interaktiver Sprachfunktion
JP3322262B2 (ja) 2000-12-22 2002-09-09 日本電気株式会社 無線携帯端末通信システム
FI20002860A (fi) * 2000-12-27 2002-06-28 Nokia Corp Laiteroolit ja pikoverkkoyhteydet
US6925645B2 (en) * 2000-12-29 2005-08-02 Webex Communications, Inc. Fault tolerant server architecture for collaborative computing
US6964023B2 (en) 2001-02-05 2005-11-08 International Business Machines Corporation System and method for multi-modal focus detection, referential ambiguity resolution and mood classification using multi-modal input
US7461148B1 (en) * 2001-02-16 2008-12-02 Swsoft Holdings, Ltd. Virtual private server with isolation of system components
EP1233590A1 (en) 2001-02-19 2002-08-21 Sun Microsystems, Inc. Content provider for a computer system
US7606909B1 (en) * 2001-02-20 2009-10-20 Michael Ely Method and apparatus for a business contact center
GB2372864B (en) * 2001-02-28 2005-09-07 Vox Generation Ltd Spoken language interface
JP4006338B2 (ja) 2001-03-22 2007-11-14 キヤノン株式会社 情報処理装置及びその方法、プログラム
US7174514B2 (en) * 2001-03-28 2007-02-06 Siebel Systems, Inc. Engine to present a user interface based on a logical structure, such as one for a customer relationship management system, across a web site
FR2822994B1 (fr) * 2001-03-30 2004-05-21 Bouygues Telecom Sa Assistance au conducteur d'un vehicule automobile
US6996531B2 (en) * 2001-03-30 2006-02-07 Comverse Ltd. Automated database assistance using a telephone for a speech based or text based multimedia communication mode
CA2344904A1 (en) * 2001-04-23 2002-10-23 Bruno Richard Preiss Interactive voice response system and method
US7437295B2 (en) * 2001-04-27 2008-10-14 Accenture Llp Natural language processing for a location-based services system
US7698228B2 (en) 2001-04-27 2010-04-13 Accenture Llp Tracking purchases in a location-based services system
US7610547B2 (en) 2001-05-04 2009-10-27 Microsoft Corporation Markup language extensions for web enabled recognition
US7020841B2 (en) 2001-06-07 2006-03-28 International Business Machines Corporation System and method for generating and presenting multi-modal applications from intent-based markup scripts
US7366673B2 (en) * 2001-06-15 2008-04-29 International Business Machines Corporation Selective enablement of speech recognition grammars
US7647597B2 (en) * 2001-06-28 2010-01-12 Microsoft Corporation Transparent and sub-classable proxies
US7606712B1 (en) * 2001-06-28 2009-10-20 At&T Intellectual Property Ii, L.P. Speech recognition interface for voice actuation of legacy systems
US6839896B2 (en) 2001-06-29 2005-01-04 International Business Machines Corporation System and method for providing dialog management and arbitration in a multi-modal environment
JP3997459B2 (ja) * 2001-10-02 2007-10-24 株式会社日立製作所 音声入力システムおよび音声ポータルサーバおよび音声入力端末
US7472091B2 (en) 2001-10-03 2008-12-30 Accenture Global Services Gmbh Virtual customer database
EP1708470B1 (en) * 2001-10-03 2012-05-16 Accenture Global Services Limited Multi-modal callback system
US7324947B2 (en) 2001-10-03 2008-01-29 Promptu Systems Corporation Global speech user interface
ATE335354T1 (de) * 2001-10-03 2006-08-15 Accenture Global Services Gmbh Mehrfachmodales nachrichtenübertragungsrückrufsystem mit dienstauthorisierer und virtueller kundendatenbank
US7441016B2 (en) 2001-10-03 2008-10-21 Accenture Global Services Gmbh Service authorizer
US7233655B2 (en) 2001-10-03 2007-06-19 Accenture Global Services Gmbh Multi-modal callback
ITFI20010199A1 (it) 2001-10-22 2003-04-22 Riccardo Vieri Sistema e metodo per trasformare in voce comunicazioni testuali ed inviarle con una connessione internet a qualsiasi apparato telefonico
US7222073B2 (en) 2001-10-24 2007-05-22 Agiletv Corporation System and method for speech activated navigation
US7133830B1 (en) 2001-11-13 2006-11-07 Sr2, Inc. System and method for supporting platform independent speech applications
US20030101054A1 (en) * 2001-11-27 2003-05-29 Ncc, Llc Integrated system and method for electronic speech recognition and transcription
US8498871B2 (en) * 2001-11-27 2013-07-30 Advanced Voice Recognition Systems, Inc. Dynamic speech recognition and transcription among users having heterogeneous protocols
GB2388209C (en) 2001-12-20 2005-08-23 Canon Kk Control apparatus
US7302394B1 (en) * 2001-12-20 2007-11-27 Ianywhere Solutions, Inc. Front-end device independence for natural interaction platform
WO2003063137A1 (en) * 2002-01-22 2003-07-31 V-Enable, Inc. Multi-modal information delivery system
US6990639B2 (en) 2002-02-07 2006-01-24 Microsoft Corporation System and process for controlling electronic components in a ubiquitous computing environment using multimodal integration
US6807529B2 (en) * 2002-02-27 2004-10-19 Motorola, Inc. System and method for concurrent multimodal communication
US20030187944A1 (en) * 2002-02-27 2003-10-02 Greg Johnson System and method for concurrent multimodal communication using concurrent multimodal tags
US6704396B2 (en) 2002-02-27 2004-03-09 Sbc Technology Resources, Inc. Multi-modal communications method
GB0204768D0 (en) * 2002-02-28 2002-04-17 Mitel Knowledge Corp Bimodal feature access for web applications
FR2840484B1 (fr) * 2002-05-28 2004-09-03 France Telecom Protocole de communication entre un module d'application vocale et une plate-forme vocale dans un serveur vocal
US7398209B2 (en) * 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7822609B2 (en) 2002-06-14 2010-10-26 Nuance Communications, Inc. Voice browser with integrated TCAP and ISUP interfaces
KR20040002031A (ko) * 2002-06-29 2004-01-07 주식회사 케이티 다수의 응용프로그램들간의 음성인식엔진 공유 방법
US7693720B2 (en) 2002-07-15 2010-04-06 Voicebox Technologies, Inc. Mobile systems and methods for responding to natural language speech utterance
WO2004008434A1 (en) * 2002-07-17 2004-01-22 Nokia Corporation Mobile device having voice user interface, and a methode for testing the compatibility of an application with the mobile device
US20040054757A1 (en) * 2002-09-14 2004-03-18 Akinobu Ueda System for remote control of computer resources from embedded handheld devices
US8959019B2 (en) 2002-10-31 2015-02-17 Promptu Systems Corporation Efficient empirical determination, computation, and use of acoustic confusability measures
US7519534B2 (en) 2002-10-31 2009-04-14 Agiletv Corporation Speech controlled access to content on a presentation medium
CN1720520B (zh) * 2002-12-02 2010-05-05 索尼株式会社 对话控制设备和方法,以及机器人设备
KR20040051285A (ko) * 2002-12-12 2004-06-18 삼성전자주식회사 애플릿이 링크된 마크업 문서의 디스플레이 방법 및 그시스템
US7822612B1 (en) * 2003-01-03 2010-10-26 Verizon Laboratories Inc. Methods of processing a voice command from a caller
US7673304B2 (en) 2003-02-18 2010-03-02 Microsoft Corporation Multithreaded kernel for graphics processing unit
US7669134B1 (en) 2003-05-02 2010-02-23 Apple Inc. Method and apparatus for displaying information during an instant messaging session
US7249025B2 (en) * 2003-05-09 2007-07-24 Matsushita Electric Industrial Co., Ltd. Portable device for enhanced security and accessibility
EP1631899A4 (en) * 2003-06-06 2007-07-18 Univ Columbia SYSTEM AND METHOD FOR LANGUAGE ACTIVATION OF WEB SITES
EP1654806A4 (en) 2003-06-26 2007-01-17 Agile Tv Corp NULL SEARCH, NULL MEMORY VECTOR QUANTIZATION
US7313528B1 (en) * 2003-07-31 2007-12-25 Sprint Communications Company L.P. Distributed network based message processing system for text-to-speech streaming data
US7383302B2 (en) * 2003-09-15 2008-06-03 International Business Machines Corporation Method and system for providing a common collaboration framework accessible from within multiple applications
US7428273B2 (en) 2003-09-18 2008-09-23 Promptu Systems Corporation Method and apparatus for efficient preamble detection in digital data receivers
US7249348B2 (en) * 2003-10-21 2007-07-24 Hewlett-Packard Development Company, L.P. Non-interfering status inquiry for user threads
US7199802B2 (en) * 2003-10-24 2007-04-03 Microsoft Corporation Multiple-mode window presentation system and process
US7856632B2 (en) * 2004-01-29 2010-12-21 Klingman Edwin E iMEM ASCII architecture for executing system operators and processing data operators
US20050229185A1 (en) * 2004-02-20 2005-10-13 Stoops Daniel S Method and system for navigating applications
WO2005094098A1 (en) * 2004-02-25 2005-10-06 Sk Telecom Co., Ltd. Method and mobile terminal for implementing vector animation interactive service on mobile phone browser
US7925510B2 (en) * 2004-04-28 2011-04-12 Nuance Communications, Inc. Componentized voice server with selectable internal and external speech detectors
US7596788B1 (en) * 2004-05-11 2009-09-29 Platform Computing Corporation Support of non-trivial scheduling policies along with topological properties
US20050289559A1 (en) * 2004-06-08 2005-12-29 Daniel Illowsky Method and system for vertical layering between levels in a processing unit facilitating direct event-structures and event-queues level-to-level communication without translation
US7814502B2 (en) * 2004-06-14 2010-10-12 Nokia Corporation Shared landmark user interfaces
KR100627228B1 (ko) * 2004-07-01 2006-09-25 에스케이 텔레콤주식회사 기업용 무선 어플리케이션 서비스를 위한 전용 브라우저시스템 및 그 운영방법
US7483968B1 (en) * 2004-07-29 2009-01-27 Emc Corporation System and method for configuring resource groups
FI20041075A0 (fi) 2004-08-12 2004-08-12 Nokia Corp Tiedon lähettäminen ryhmälle vastaanottolaitteita
US8744852B1 (en) * 2004-10-01 2014-06-03 Apple Inc. Spoken interfaces
US7693719B2 (en) * 2004-10-29 2010-04-06 Microsoft Corporation Providing personalized voice font for text-to-speech applications
US8706501B2 (en) * 2004-12-09 2014-04-22 Nuance Communications, Inc. Method and system for sharing speech processing resources over a communication network
US7640162B2 (en) * 2004-12-14 2009-12-29 Microsoft Corporation Semantic canvas
KR100654447B1 (ko) * 2004-12-15 2006-12-06 삼성전자주식회사 지역별로 존재하는 컨텐츠를 글로벌로 공유하고 거래하는방법 및 시스템
US7987244B1 (en) * 2004-12-30 2011-07-26 At&T Intellectual Property Ii, L.P. Network repository for voice fonts
KR100725719B1 (ko) * 2005-02-04 2007-06-08 주식회사 유진로봇 음성과 태스크 오브젝트 기반의 대화시스템
US7490042B2 (en) * 2005-03-29 2009-02-10 International Business Machines Corporation Methods and apparatus for adapting output speech in accordance with context of communication
US9111253B2 (en) * 2005-04-22 2015-08-18 Sap Se Groupware time tracking
US20060271520A1 (en) * 2005-05-27 2006-11-30 Ragan Gene Z Content-based implicit search query
WO2006133547A1 (en) 2005-06-13 2006-12-21 E-Lane Systems Inc. Vehicle immersive communication system
US8090084B2 (en) * 2005-06-30 2012-01-03 At&T Intellectual Property Ii, L.P. Automated call router for business directory using the world wide web
JP4667138B2 (ja) * 2005-06-30 2011-04-06 キヤノン株式会社 音声認識方法及び音声認識装置
US7640160B2 (en) * 2005-08-05 2009-12-29 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7620549B2 (en) 2005-08-10 2009-11-17 Voicebox Technologies, Inc. System and method of supporting adaptive misrecognition in conversational speech
US7949529B2 (en) 2005-08-29 2011-05-24 Voicebox Technologies, Inc. Mobile systems and methods of supporting natural language human-machine interactions
WO2007027989A2 (en) 2005-08-31 2007-03-08 Voicebox Technologies, Inc. Dynamic speech sharpening
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US8073700B2 (en) * 2005-09-12 2011-12-06 Nuance Communications, Inc. Retrieval and presentation of network service results for mobile device using a multimodal browser
US9009046B1 (en) * 2005-09-27 2015-04-14 At&T Intellectual Property Ii, L.P. System and method for disambiguating multiple intents in a natural language dialog system
US7633076B2 (en) 2005-09-30 2009-12-15 Apple Inc. Automated response to and sensing of user activity in portable devices
CN103824177B (zh) * 2005-10-05 2018-03-20 邓白氏公司 用于多个产品的模块化的基于Web的ASP应用
US8041800B2 (en) * 2005-11-08 2011-10-18 International Business Machines Corporation Automatic orchestration of dynamic multiple party, multiple media communications
US20070124142A1 (en) * 2005-11-25 2007-05-31 Mukherjee Santosh K Voice enabled knowledge system
US9215748B2 (en) 2005-11-28 2015-12-15 Canon Kabushiki Kaisha Communication apparatus, control method for communication apparatus, and communication system
JP4829600B2 (ja) * 2005-11-28 2011-12-07 キヤノン株式会社 通信装置及び通信装置の制御方法
JP2007164732A (ja) * 2005-12-16 2007-06-28 Crescent:Kk コンピュータ実行可能なプログラム、および情報処理装置
DE102005061365A1 (de) * 2005-12-21 2007-06-28 Siemens Ag Verfahren zur Ansteuerung zumindest einer ersten und zweiten Hintergrundapplikation über ein universelles Sprachdialogsystem
CN100382083C (zh) * 2005-12-23 2008-04-16 威盛电子股份有限公司 网络会话管理方法及系统
US7840964B2 (en) * 2005-12-30 2010-11-23 Intel Corporation Mechanism to transition control between components in a virtual machine environment
KR101204408B1 (ko) * 2006-01-19 2012-11-27 삼성전자주식회사 유니폼 객체 모델을 이용한 유비쿼터스 서비스/디바이스테스트 방법 및 장치
US20070180365A1 (en) * 2006-01-27 2007-08-02 Ashok Mitter Khosla Automated process and system for converting a flowchart into a speech mark-up language
US8078990B2 (en) 2006-02-01 2011-12-13 Research In Motion Limited Secure device sharing
US20070225983A1 (en) * 2006-03-23 2007-09-27 Theodore Maringo Worldwide time device
KR101264318B1 (ko) * 2006-07-07 2013-05-22 삼성전자주식회사 네트워크 환경에서의 서비스 메뉴 및 서비스 제공방법 및그 서비스 제공장치
KR100807307B1 (ko) * 2006-07-10 2008-02-28 한국전자통신연구원 대화형 음성 인터페이스 시스템 및 그 응답 방법
US9976865B2 (en) 2006-07-28 2018-05-22 Ridetones, Inc. Vehicle communication system with navigation
US20100030557A1 (en) 2006-07-31 2010-02-04 Stephen Molloy Voice and text communication system, method and apparatus
US8589869B2 (en) 2006-09-07 2013-11-19 Wolfram Alpha Llc Methods and systems for determining a formula
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US7957976B2 (en) 2006-09-12 2011-06-07 Nuance Communications, Inc. Establishing a multimodal advertising personality for a sponsor of a multimodal application
KR100832534B1 (ko) * 2006-09-28 2008-05-27 한국전자통신연구원 음성 인식을 통한 컨텐츠 정보 서비스 제공 장치 및 그방법
US8073681B2 (en) 2006-10-16 2011-12-06 Voicebox Technologies, Inc. System and method for a cooperative conversational voice user interface
US10803474B2 (en) 2006-11-22 2020-10-13 Qualtrics, Llc System for creating and distributing interactive advertisements to mobile devices
US11256386B2 (en) 2006-11-22 2022-02-22 Qualtrics, Llc Media management system supporting a plurality of mobile devices
US8478250B2 (en) 2007-07-30 2013-07-02 Bindu Rama Rao Interactive media management server
US8700014B2 (en) 2006-11-22 2014-04-15 Bindu Rama Rao Audio guided system for providing guidance to user of mobile device on multi-step activities
US7827033B2 (en) * 2006-12-06 2010-11-02 Nuance Communications, Inc. Enabling grammars in web page frames
US20080140390A1 (en) * 2006-12-11 2008-06-12 Motorola, Inc. Solution for sharing speech processing resources in a multitasking environment
CA2572116A1 (en) * 2006-12-27 2008-06-27 Ibm Canada Limited - Ibm Canada Limitee System and method for processing multi-modal communication within a workgroup
US7818176B2 (en) 2007-02-06 2010-10-19 Voicebox Technologies, Inc. System and method for selecting and presenting advertisements based on natural language processing of voice-based input
US8843376B2 (en) 2007-03-13 2014-09-23 Nuance Communications, Inc. Speech-enabled web content searching using a multimodal browser
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8788620B2 (en) * 2007-04-04 2014-07-22 International Business Machines Corporation Web service support for a multimodal client processing a multimodal application
US8131549B2 (en) * 2007-05-24 2012-03-06 Microsoft Corporation Personality-based device
AU2012244080B2 (en) * 2007-05-24 2014-04-17 Microsoft Technology Licensing, Llc Personality-based Device
US9794348B2 (en) * 2007-06-04 2017-10-17 Todd R. Smith Using voice commands from a mobile device to remotely access and control a computer
US8612972B2 (en) * 2007-06-27 2013-12-17 Microsoft Corporation Running add-on components in virtual environments
US20090018818A1 (en) * 2007-07-10 2009-01-15 Aibelive Co., Ltd. Operating device for natural language input
US9264483B2 (en) 2007-07-18 2016-02-16 Hammond Development International, Inc. Method and system for enabling a communication device to remotely execute an application
ITFI20070177A1 (it) 2007-07-26 2009-01-27 Riccardo Vieri Sistema per la creazione e impostazione di una campagna pubblicitaria derivante dall'inserimento di messaggi pubblicitari all'interno di uno scambio di messaggi e metodo per il suo funzionamento.
US9053089B2 (en) 2007-10-02 2015-06-09 Apple Inc. Part-of-speech tagging using latent analogy
US8165886B1 (en) 2007-10-04 2012-04-24 Great Northern Research LLC Speech interface system and method for control and interaction with applications on a computing system
US8595642B1 (en) 2007-10-04 2013-11-26 Great Northern Research, LLC Multiple shell multi faceted graphical user interface
US8364694B2 (en) 2007-10-26 2013-01-29 Apple Inc. Search assistant for digital media assets
US8620662B2 (en) 2007-11-20 2013-12-31 Apple Inc. Context-aware unit selection
US8472934B2 (en) * 2007-11-28 2013-06-25 Nokia Corporation Portable apparatus, method and user interface
JP2010020273A (ja) * 2007-12-07 2010-01-28 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US8140335B2 (en) 2007-12-11 2012-03-20 Voicebox Technologies, Inc. System and method for providing a natural language voice user interface in an integrated voice navigation services environment
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9703784B2 (en) * 2007-12-24 2017-07-11 Sandisk Il Ltd. Mobile device and method for concurrently processing content according to multiple playlists
US8219407B1 (en) 2007-12-27 2012-07-10 Great Northern Research, LLC Method for processing the output of a speech recognizer
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8327272B2 (en) 2008-01-06 2012-12-04 Apple Inc. Portable multifunction device, method, and graphical user interface for viewing and managing electronic calendars
US8086455B2 (en) * 2008-01-09 2011-12-27 Microsoft Corporation Model development authoring, generation and execution based on data and processor dependencies
US20090198496A1 (en) * 2008-01-31 2009-08-06 Matthias Denecke Aspect oriented programmable dialogue manager and apparatus operated thereby
US8065143B2 (en) 2008-02-22 2011-11-22 Apple Inc. Providing text input using speech data and non-speech data
US8289283B2 (en) 2008-03-04 2012-10-16 Apple Inc. Language input interface on a device
US8856009B2 (en) * 2008-03-25 2014-10-07 Intelligent Mechatronic Systems Inc. Multi-participant, mixed-initiative voice interaction system
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10496753B2 (en) * 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
WO2009143187A2 (en) * 2008-05-19 2009-11-26 Citrix Systems, Inc. Systems and methods for remoting multimedia plugin calls
US9305548B2 (en) 2008-05-27 2016-04-05 Voicebox Technologies Corporation System and method for an integrated, multi-modal, multi-device natural language voice services environment
US8589161B2 (en) 2008-05-27 2013-11-19 Voicebox Technologies, Inc. System and method for an integrated, multi-modal, multi-device natural language voice services environment
EP3249893A1 (en) * 2008-06-03 2017-11-29 Whirlpool Corporation Appliance development toolkit
US8464150B2 (en) 2008-06-07 2013-06-11 Apple Inc. Automatic language identification for dynamic text processing
CA2727951A1 (en) 2008-06-19 2009-12-23 E-Lane Systems Inc. Communication system with voice mail access and call by spelling functionality
US20090328062A1 (en) * 2008-06-25 2009-12-31 Microsoft Corporation Scalable and extensible communication framework
CN101621480B (zh) * 2008-06-30 2012-03-28 国际商业机器公司 呈现服务器和在其中使用的xsl文件处理方法
US9652023B2 (en) 2008-07-24 2017-05-16 Intelligent Mechatronic Systems Inc. Power management system
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8463053B1 (en) 2008-08-08 2013-06-11 The Research Foundation Of State University Of New York Enhanced max margin learning on multimodal data mining in a multimedia database
US8959053B2 (en) * 2008-08-13 2015-02-17 Alcatel Lucent Configuration file framework to support high availability schema based upon asynchronous checkpointing
JP5829000B2 (ja) * 2008-08-20 2015-12-09 株式会社ユニバーサルエンターテインメント 会話シナリオ編集装置
US8768702B2 (en) 2008-09-05 2014-07-01 Apple Inc. Multi-tiered voice feedback in an electronic device
US8898568B2 (en) 2008-09-09 2014-11-25 Apple Inc. Audio user interface
US8396714B2 (en) 2008-09-29 2013-03-12 Apple Inc. Systems and methods for concatenation of words in text to speech synthesis
US8712776B2 (en) 2008-09-29 2014-04-29 Apple Inc. Systems and methods for selective text to speech synthesis
US8583418B2 (en) 2008-09-29 2013-11-12 Apple Inc. Systems and methods of detecting language and natural language strings for text to speech synthesis
US8355919B2 (en) 2008-09-29 2013-01-15 Apple Inc. Systems and methods for text normalization for text to speech synthesis
US8352268B2 (en) 2008-09-29 2013-01-08 Apple Inc. Systems and methods for selective rate of speech and speech preferences for text to speech synthesis
US8352272B2 (en) 2008-09-29 2013-01-08 Apple Inc. Systems and methods for text to speech synthesis
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US9959870B2 (en) 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
US8121842B2 (en) * 2008-12-12 2012-02-21 Microsoft Corporation Audio output of a document from mobile device
US8914417B2 (en) 2009-01-07 2014-12-16 International Business Machines Corporation Apparatus, system, and method for maintaining a context stack
TW201027378A (en) * 2009-01-08 2010-07-16 Realtek Semiconductor Corp Virtual platform and related simulation method
US8364488B2 (en) * 2009-01-15 2013-01-29 K-Nfb Reading Technology, Inc. Voice models for document narration
WO2010084497A1 (en) * 2009-01-26 2010-07-29 Tomer London System and method for providing visual content and services to wireless terminal devices in response to a received voice call
US9529573B2 (en) * 2009-01-28 2016-12-27 Microsoft Technology Licensing, Llc Graphical user interface generation through use of a binary file
US8862252B2 (en) 2009-01-30 2014-10-14 Apple Inc. Audio user interface for displayless electronic device
US8326637B2 (en) 2009-02-20 2012-12-04 Voicebox Technologies, Inc. System and method for processing multi-modal device interactions in a natural language voice services environment
US8380507B2 (en) 2009-03-09 2013-02-19 Apple Inc. Systems and methods for determining the language to use for speech generated by a text to speech engine
CN101533409B (zh) * 2009-04-23 2011-03-02 何海群 一种网络浏览器系统和控制方法
US8601015B1 (en) 2009-05-15 2013-12-03 Wolfram Alpha Llc Dynamic example generation for queries
US9213768B1 (en) 2009-05-15 2015-12-15 Wolfram Alpha Llc Assumption mechanism for queries
WO2010135837A1 (en) * 2009-05-28 2010-12-02 Intelligent Mechatronic Systems Inc Communication system with personal information management and remote vehicle monitoring and control features
US10540976B2 (en) 2009-06-05 2020-01-21 Apple Inc. Contextual voice commands
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing task items that represent tasks to perform
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US9002713B2 (en) * 2009-06-09 2015-04-07 At&T Intellectual Property I, L.P. System and method for speech personalization by need
US8442189B2 (en) * 2009-06-22 2013-05-14 Avaya Inc. Unified communications appliance
US9055151B2 (en) * 2009-06-22 2015-06-09 Avaya Inc. Method to set the flag as replied or forwarded to all replied or forwarded voice messages
WO2010148518A1 (en) 2009-06-27 2010-12-29 Intelligent Mechatronic Systems Vehicle internet radio interface
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US9502025B2 (en) 2009-11-10 2016-11-22 Voicebox Technologies Corporation System and method for providing a natural language content dedication service
US9171541B2 (en) * 2009-11-10 2015-10-27 Voicebox Technologies Corporation System and method for hybrid processing in a natural language voice services environment
US8682649B2 (en) 2009-11-12 2014-03-25 Apple Inc. Sentiment prediction from textual data
US20110110534A1 (en) * 2009-11-12 2011-05-12 Apple Inc. Adjustable voice output based on device status
US9978272B2 (en) 2009-11-25 2018-05-22 Ridetones, Inc Vehicle to vehicle chatting and communication system
US20110125733A1 (en) * 2009-11-25 2011-05-26 Fish Nathan J Quick access utility
US20110144976A1 (en) * 2009-12-10 2011-06-16 Arun Jain Application user interface system and method
US8868427B2 (en) * 2009-12-11 2014-10-21 General Motors Llc System and method for updating information in electronic calendars
EP2339576B1 (en) * 2009-12-23 2019-08-07 Google LLC Multi-modal input on an electronic device
GB0922608D0 (en) * 2009-12-23 2010-02-10 Vratskides Alexios Message optimization
JP2011139303A (ja) * 2009-12-28 2011-07-14 Nec Corp 通信システム、制御装置、通信制御方法、およびプログラム
US8600743B2 (en) 2010-01-06 2013-12-03 Apple Inc. Noise profile determination for voice-related feature
US8381107B2 (en) 2010-01-13 2013-02-19 Apple Inc. Adaptive audio feedback system and method
US8311838B2 (en) 2010-01-13 2012-11-13 Apple Inc. Devices and methods for identifying a prompt corresponding to a voice input in a sequence of prompts
US9665620B2 (en) * 2010-01-15 2017-05-30 Ab Initio Technology Llc Managing data queries
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US8645914B2 (en) 2010-01-22 2014-02-04 AgentSheets, Inc. Conversational programming
DE202011111062U1 (de) 2010-01-25 2019-02-19 Newvaluexchange Ltd. Vorrichtung und System für eine Digitalkonversationsmanagementplattform
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8433828B2 (en) 2010-02-26 2013-04-30 Apple Inc. Accessory protocol for touch screen device accessibility
US8554948B2 (en) * 2010-03-03 2013-10-08 At&T Intellectual Property I, L.P. Methods, systems and computer program products for identifying traffic on the internet using communities of interest
JP5560814B2 (ja) * 2010-03-24 2014-07-30 日本電気株式会社 負荷分散システム、負荷分散サーバおよび負荷分散方法
US8612932B2 (en) * 2010-04-18 2013-12-17 Voxeo Corporation Unified framework and method for call control and media control
US8776091B2 (en) * 2010-04-30 2014-07-08 Microsoft Corporation Reducing feedback latency
US8484015B1 (en) 2010-05-14 2013-07-09 Wolfram Alpha Llc Entity pages
US8639516B2 (en) 2010-06-04 2014-01-28 Apple Inc. User-specific noise suppression for voice quality improvements
US8352908B2 (en) 2010-06-28 2013-01-08 International Business Machines Corporation Multi-modal conversion tool for form-type applications
US8713021B2 (en) 2010-07-07 2014-04-29 Apple Inc. Unsupervised document clustering using latent semantic density analysis
US9246914B2 (en) * 2010-07-16 2016-01-26 Nokia Technologies Oy Method and apparatus for processing biometric information using distributed computation
US9104670B2 (en) 2010-07-21 2015-08-11 Apple Inc. Customized search or acquisition of digital media assets
US8812298B1 (en) 2010-07-28 2014-08-19 Wolfram Alpha Llc Macro replacement of natural language input
US8775618B2 (en) * 2010-08-02 2014-07-08 Ebay Inc. Application platform with flexible permissioning
US8719006B2 (en) 2010-08-27 2014-05-06 Apple Inc. Combined statistical and rule-based part-of-speech tagging for text-to-speech synthesis
US8688435B2 (en) * 2010-09-22 2014-04-01 Voice On The Go Inc. Systems and methods for normalizing input media
US8719014B2 (en) 2010-09-27 2014-05-06 Apple Inc. Electronic device with text error correction based on voice recognition data
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US10515147B2 (en) 2010-12-22 2019-12-24 Apple Inc. Using statistical language models for contextual lookup
US20120173242A1 (en) * 2010-12-30 2012-07-05 Samsung Electronics Co., Ltd. System and method for exchange of scribble data between gsm devices along with voice
US9183843B2 (en) 2011-01-07 2015-11-10 Nuance Communications, Inc. Configurable speech recognition system using multiple recognizers
US8898065B2 (en) 2011-01-07 2014-11-25 Nuance Communications, Inc. Configurable speech recognition system using multiple recognizers
US8781836B2 (en) 2011-02-22 2014-07-15 Apple Inc. Hearing assistance system for providing consistent human speech
US9542657B2 (en) * 2011-02-23 2017-01-10 Avaya Inc. Method and system for optimizing contact center performance
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US9202465B2 (en) * 2011-03-25 2015-12-01 General Motors Llc Speech recognition dependent on text message content
US8171137B1 (en) * 2011-05-09 2012-05-01 Google Inc. Transferring application state across devices
CN103534697B (zh) * 2011-05-13 2017-11-21 微软技术许可有限责任公司 用于提供统计对话管理器训练的方法和系统
US20120317492A1 (en) * 2011-05-27 2012-12-13 Telefon Projekt LLC Providing Interactive and Personalized Multimedia Content from Remote Servers
US10672399B2 (en) 2011-06-03 2020-06-02 Apple Inc. Switching between text data and audio data based on a mapping
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8812294B2 (en) 2011-06-21 2014-08-19 Apple Inc. Translating phrases from one language into another using an order-based set of declarative rules
US9069814B2 (en) 2011-07-27 2015-06-30 Wolfram Alpha Llc Method and system for using natural language to generate widgets
US8706472B2 (en) 2011-08-11 2014-04-22 Apple Inc. Method for disambiguating multiple readings in language conversion
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US8645978B2 (en) * 2011-09-02 2014-02-04 Compuverde Ab Method for data maintenance
US9734252B2 (en) 2011-09-08 2017-08-15 Wolfram Alpha Llc Method and system for analyzing data using a query answering system
US8645532B2 (en) * 2011-09-13 2014-02-04 BlueStripe Software, Inc. Methods and computer program products for monitoring the contents of network traffic in a network device
US8762156B2 (en) 2011-09-28 2014-06-24 Apple Inc. Speech recognition repair using contextual information
US9851950B2 (en) 2011-11-15 2017-12-26 Wolfram Alpha Llc Programming in a precise syntax using natural language
US8595016B2 (en) * 2011-12-23 2013-11-26 Angle, Llc Accessing content using a source-specific content-adaptable dialogue
KR101962126B1 (ko) * 2012-02-24 2019-03-26 엘지전자 주식회사 음성 인식 결과에 따라 데이터베이스에 액세스하는 멀티미디어 디바이스 및 그 제어 방법
CN103295575B (zh) * 2012-02-27 2019-01-25 北京三星通信技术研究有限公司 一种语音识别方法和客户端
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US20240046928A1 (en) * 2012-04-13 2024-02-08 View, Inc. Controlling optically-switchable devices
US9552130B2 (en) * 2012-05-07 2017-01-24 Citrix Systems, Inc. Speech recognition support for remote applications and desktops
US20130304536A1 (en) * 2012-05-10 2013-11-14 Ebay, Inc. Harvest Customer Tracking Information
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US8775442B2 (en) 2012-05-15 2014-07-08 Apple Inc. Semantic search using a single-source semantic model
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US10395270B2 (en) 2012-05-17 2019-08-27 Persado Intellectual Property Limited System and method for recommending a grammar for a message campaign used by a message optimization system
WO2013185109A2 (en) 2012-06-08 2013-12-12 Apple Inc. Systems and methods for recognizing textual identifiers within a plurality of words
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9502029B1 (en) * 2012-06-25 2016-11-22 Amazon Technologies, Inc. Context-aware speech processing
US9495129B2 (en) * 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US20140006318A1 (en) * 2012-06-29 2014-01-02 Poe XING Collecting, discovering, and/or sharing media objects
US8880398B1 (en) * 2012-07-13 2014-11-04 Google Inc. Localized speech recognition with offload
US9710475B1 (en) 2012-07-16 2017-07-18 Tintri Inc. Synchronization of data
KR102122002B1 (ko) * 2012-07-19 2020-06-12 글랜스 네트웍스, 인크 다른 형태의 정보 공유를 통한 코브라우징의 통합
US8577671B1 (en) 2012-07-20 2013-11-05 Veveo, Inc. Method of and system for using conversation state information in a conversational interaction system
US9485330B2 (en) 2012-07-30 2016-11-01 Tencent Technology (Shenzhen) Company Limited Web browser operation method and system
CN103577444B (zh) * 2012-07-30 2017-04-05 腾讯科技(深圳)有限公司 一种操控浏览器的方法及系统
US9465833B2 (en) 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US9378073B2 (en) 2012-08-14 2016-06-28 International Business Machines Corporation Remote procedure call for a distributed system
US9384736B2 (en) * 2012-08-21 2016-07-05 Nuance Communications, Inc. Method to provide incremental UI response based on multiple asynchronous evidence about user input
US9405424B2 (en) 2012-08-29 2016-08-02 Wolfram Alpha, Llc Method and system for distributing and displaying graphical items
CN102831229A (zh) * 2012-08-30 2012-12-19 浙大网新科技股份有限公司 适合盲人使用的网页浏览方法
KR102150289B1 (ko) * 2012-08-30 2020-09-01 삼성전자주식회사 사용자 단말에서 사용자 인터페이스 장치 및 이를 지원하는 방법
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US8700396B1 (en) * 2012-09-11 2014-04-15 Google Inc. Generating speech data collection prompts
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US8935167B2 (en) 2012-09-25 2015-01-13 Apple Inc. Exemplar-based latent perceptual modeling for automatic speech recognition
US10276157B2 (en) * 2012-10-01 2019-04-30 Nuance Communications, Inc. Systems and methods for providing a voice agent user interface
US9886944B2 (en) 2012-10-04 2018-02-06 Nuance Communications, Inc. Hybrid controller for ASR
US8983849B2 (en) 2012-10-17 2015-03-17 Nuance Communications, Inc. Multiple device intelligent language model synchronization
WO2014073206A1 (ja) * 2012-11-07 2014-05-15 日本電気株式会社 情報処理装置、及び、情報処理方法
KR101980834B1 (ko) * 2012-11-28 2019-05-21 한국전자통신연구원 컨텍스트 정보 기반 응용프로그램 관리방법 및 그 장치
US9003039B2 (en) 2012-11-29 2015-04-07 Thales Canada Inc. Method and apparatus of resource allocation or resource release
CN103117058B (zh) * 2012-12-20 2015-12-09 四川长虹电器股份有限公司 基于智能电视平台的多语音引擎切换系统及方法
CN103020278A (zh) * 2012-12-28 2013-04-03 深圳创维数字技术股份有限公司 一种网页的控制方法及浏览器
US9430420B2 (en) 2013-01-07 2016-08-30 Telenav, Inc. Computing system with multimodal interaction mechanism and method of operation thereof
US9922639B1 (en) 2013-01-11 2018-03-20 Amazon Technologies, Inc. User feedback for speech interactions
CN103971687B (zh) * 2013-02-01 2016-06-29 腾讯科技(深圳)有限公司 一种语音识别系统中的负载均衡实现方法和装置
KR20150104615A (ko) 2013-02-07 2015-09-15 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US9817835B2 (en) * 2013-03-12 2017-11-14 Tintri Inc. Efficient data synchronization for storage containers
US9218052B2 (en) 2013-03-14 2015-12-22 Samsung Electronics Co., Ltd. Framework for voice controlling applications
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
US10572476B2 (en) 2013-03-14 2020-02-25 Apple Inc. Refining a search based on schedule items
US9733821B2 (en) 2013-03-14 2017-08-15 Apple Inc. Voice control to diagnose inadvertent activation of accessibility features
US9977779B2 (en) 2013-03-14 2018-05-22 Apple Inc. Automatic supplementation of word correction dictionaries
US10642574B2 (en) 2013-03-14 2020-05-05 Apple Inc. Device, method, and graphical user interface for outputting captions
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US9348555B2 (en) * 2013-03-15 2016-05-24 Volkswagen Ag In-vehicle access of mobile device functions
CN105027197B (zh) 2013-03-15 2018-12-14 苹果公司 训练至少部分语音命令系统
US9526120B2 (en) 2013-03-15 2016-12-20 Google Inc. Techniques for context-based application invocation for short-range wireless communication interactions
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
KR102057795B1 (ko) 2013-03-15 2019-12-19 애플 인크. 콘텍스트-민감성 방해 처리
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
CN105190607B (zh) 2013-03-15 2018-11-30 苹果公司 通过智能数字助理的用户培训
US9875494B2 (en) * 2013-04-16 2018-01-23 Sri International Using intents to analyze and personalize a user's dialog experience with a virtual personal assistant
WO2014183035A1 (en) 2013-05-10 2014-11-13 Veveo, Inc. Method and system for capturing and exploiting user intent in a conversational interaction based information retrieval system
US9431008B2 (en) 2013-05-29 2016-08-30 Nuance Communications, Inc. Multiple parallel dialogs in smart phone applications
US20160035348A1 (en) * 2013-06-07 2016-02-04 Nuance Communications, Inc. Speech-Based Search Using Descriptive Features of Surrounding Objects
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
CN105264524B (zh) 2013-06-09 2019-08-02 苹果公司 用于实现跨数字助理的两个或更多个实例的会话持续性的设备、方法、和图形用户界面
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
KR101809808B1 (ko) 2013-06-13 2017-12-15 애플 인크. 음성 명령에 의해 개시되는 긴급 전화를 걸기 위한 시스템 및 방법
US9311298B2 (en) * 2013-06-21 2016-04-12 Microsoft Technology Licensing, Llc Building conversational understanding systems using a toolset
KR102053820B1 (ko) 2013-07-02 2019-12-09 삼성전자주식회사 서버 및 그 제어방법과, 영상처리장치 및 그 제어방법
US10956433B2 (en) * 2013-07-15 2021-03-23 Microsoft Technology Licensing, Llc Performing an operation relative to tabular data based upon voice input
DE112014003653B4 (de) 2013-08-06 2024-04-18 Apple Inc. Automatisch aktivierende intelligente Antworten auf der Grundlage von Aktivitäten von entfernt angeordneten Vorrichtungen
US10109273B1 (en) 2013-08-29 2018-10-23 Amazon Technologies, Inc. Efficient generation of personalized spoken language understanding models
US9361289B1 (en) * 2013-08-30 2016-06-07 Amazon Technologies, Inc. Retrieval and management of spoken language understanding personalization data
US10628378B2 (en) 2013-09-03 2020-04-21 Tintri By Ddn, Inc. Replication of snapshots and clones
US9495965B2 (en) * 2013-09-20 2016-11-15 American Institutes For Research Synthesis and display of speech commands method and system
CN103474065A (zh) * 2013-09-24 2013-12-25 贵阳世纪恒通科技有限公司 基于自动分类技术的语音意图判定识别方法
WO2015050543A1 (en) * 2013-10-02 2015-04-09 Empire Technology Development, Llc Identification of distributed user interface (dui) elements
CN104598257B (zh) 2013-10-30 2019-01-18 华为技术有限公司 远程应用程序运行的方法和装置
KR101740332B1 (ko) * 2013-11-05 2017-06-08 한국전자통신연구원 자동 번역 장치 및 방법
US9754591B1 (en) * 2013-11-18 2017-09-05 Amazon Technologies, Inc. Dialog management context sharing
US9690854B2 (en) * 2013-11-27 2017-06-27 Nuance Communications, Inc. Voice-enabled dialog interaction with web pages
US9558176B2 (en) 2013-12-06 2017-01-31 Microsoft Technology Licensing, Llc Discriminating between natural language and keyword language items
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
KR101489826B1 (ko) * 2013-12-30 2015-02-04 유승우 더미 터미널 및 본체
EP3107274B1 (en) 2014-02-13 2020-12-16 Nec Corporation Communication device, communication system, and communication method
SG11201707861UA (en) * 2014-03-25 2017-10-30 Botanic Tech Inc Systems and methods for executing cryptographically secure transactions using voice and natural language processing
US20150278852A1 (en) * 2014-04-01 2015-10-01 DoubleVerify, Inc. System And Method For Identifying Online Advertisement Laundering And Online Advertisement Injection
JP2015207819A (ja) * 2014-04-17 2015-11-19 株式会社リコー 情報処理装置、情報処理システム、通信制御方法およびプログラム
US9514376B2 (en) * 2014-04-29 2016-12-06 Google Inc. Techniques for distributed optical character recognition and distributed machine language translation
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US11314826B2 (en) 2014-05-23 2022-04-26 Samsung Electronics Co., Ltd. Method for searching and device thereof
US9990433B2 (en) 2014-05-23 2018-06-05 Samsung Electronics Co., Ltd. Method for searching and device thereof
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
EP3149728B1 (en) 2014-05-30 2019-01-16 Apple Inc. Multi-command single utterance input method
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
JP2016024212A (ja) * 2014-07-16 2016-02-08 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
CN112270925B (zh) * 2014-09-14 2024-05-10 谷歌有限责任公司 用于创建可定制对话系统引擎的平台
CN107003996A (zh) 2014-09-16 2017-08-01 声钰科技 语音商务
US9898459B2 (en) 2014-09-16 2018-02-20 Voicebox Technologies Corporation Integration of domain information into state transitions of a finite state transducer for natural language processing
EP3195571B1 (en) * 2014-09-19 2021-05-05 Convida Wireless, LLC Service layer session migration and sharing
US9606986B2 (en) 2014-09-29 2017-03-28 Apple Inc. Integrated word N-gram and class M-gram language models
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
EP3207452A4 (en) * 2014-10-15 2018-06-20 Ayla Networks, Inc. Registration framework for connected consumer devices
WO2016061309A1 (en) 2014-10-15 2016-04-21 Voicebox Technologies Corporation System and method for providing follow-up responses to prior natural language inputs of a user
US9813505B2 (en) 2014-10-15 2017-11-07 Ayla Networks, Inc. Devices in a flexible registration framework
US9800619B2 (en) * 2014-10-15 2017-10-24 Ayla Networks, Inc. Registration framework for connected consumer devices
US9648055B2 (en) * 2014-10-15 2017-05-09 Ayla Networks, Inc. Applications in a flexible registration framework
EP3210096B1 (en) * 2014-10-21 2019-05-15 Robert Bosch GmbH Method and system for automation of response selection and composition in dialog systems
US10614799B2 (en) 2014-11-26 2020-04-07 Voicebox Technologies Corporation System and method of providing intent predictions for an utterance prior to a system detection of an end of the utterance
US10431214B2 (en) 2014-11-26 2019-10-01 Voicebox Technologies Corporation System and method of determining a domain and/or an action related to a natural language input
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9965464B2 (en) * 2014-12-05 2018-05-08 Microsoft Technology Licensing, Llc Automatic process guidance
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
US10154041B2 (en) * 2015-01-13 2018-12-11 Microsoft Technology Licensing, Llc Website access control
US9854049B2 (en) 2015-01-30 2017-12-26 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms in social chatter based on a user profile
US10180985B2 (en) * 2015-02-19 2019-01-15 At&T Intellectual Property I, L.P. Apparatus and method for automatically redirecting a search
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9672829B2 (en) * 2015-03-23 2017-06-06 International Business Machines Corporation Extracting and displaying key points of a video conference
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US20160321025A1 (en) * 2015-04-30 2016-11-03 Kabushiki Kaisha Toshiba Electronic apparatus and method
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
CN106302089B (zh) * 2015-05-21 2019-06-11 阿里巴巴集团控股有限公司 会话处理方法和系统
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9721569B2 (en) * 2015-05-27 2017-08-01 Intel Corporation Gaussian mixture model accelerator with direct memory access engines corresponding to individual data streams
US10110430B2 (en) * 2015-05-27 2018-10-23 Orion Labs Intelligent agent features for wearable personal communication nodes
US10387573B2 (en) 2015-06-01 2019-08-20 AffectLayer, Inc. Analyzing conversations to automatically identify customer pain points
US10360911B2 (en) 2015-06-01 2019-07-23 AffectLayer, Inc. Analyzing conversations to automatically identify product features that resonate with customers
US10324979B2 (en) 2015-06-01 2019-06-18 AffectLayer, Inc. Automatic generation of playlists from conversations
US10133999B2 (en) 2015-06-01 2018-11-20 AffectLayer, Inc. Analyzing conversations to automatically identify deals at risk
US10110743B2 (en) 2015-06-01 2018-10-23 AffectLayer, Inc. Automatic pattern recognition in conversations
US10679013B2 (en) 2015-06-01 2020-06-09 AffectLayer, Inc. IoT-based call assistant device
US10367940B2 (en) 2015-06-01 2019-07-30 AffectLayer, Inc. Analyzing conversations to automatically identify product feature requests
US10181326B2 (en) 2015-06-01 2019-01-15 AffectLayer, Inc. Analyzing conversations to automatically identify action items
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US9407989B1 (en) 2015-06-30 2016-08-02 Arthur Woodrow Closed audio circuit
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10504137B1 (en) 2015-10-08 2019-12-10 Persado Intellectual Property Limited System, method, and computer program product for monitoring and responding to the performance of an ad
US9688225B2 (en) * 2015-10-09 2017-06-27 Livio, Inc. Methods and systems for a mobile device to emulate a vehicle human-machine interface
CA3005710C (en) * 2015-10-15 2021-03-23 Interactive Intelligence Group, Inc. System and method for multi-language communication sequencing
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US11018888B2 (en) * 2015-12-03 2021-05-25 Whirlpool Corporation Methods of remote control of appliances
US10832283B1 (en) 2015-12-09 2020-11-10 Persado Intellectual Property Limited System, method, and computer program for providing an instance of a promotional message to a user based on a predicted emotional response corresponding to user characteristics
CN105551488A (zh) * 2015-12-15 2016-05-04 深圳Tcl数字技术有限公司 语音控制方法及系统
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10732783B2 (en) 2015-12-28 2020-08-04 Microsoft Technology Licensing, Llc Identifying image comments from similar images
US10417346B2 (en) * 2016-01-23 2019-09-17 Microsoft Technology Licensing, Llc Tool for facilitating the development of new language understanding scenarios
US9772817B2 (en) 2016-02-22 2017-09-26 Sonos, Inc. Room-corrected voice detection
US10264030B2 (en) 2016-02-22 2019-04-16 Sonos, Inc. Networked microphone device control
US10095470B2 (en) 2016-02-22 2018-10-09 Sonos, Inc. Audio response playback
US9811314B2 (en) 2016-02-22 2017-11-07 Sonos, Inc. Metadata exchange involving a networked playback system and a networked microphone system
US9947316B2 (en) 2016-02-22 2018-04-17 Sonos, Inc. Voice control of a media playback system
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US10224026B2 (en) * 2016-03-15 2019-03-05 Sony Corporation Electronic device, system, method and computer program
US10404835B2 (en) * 2016-03-17 2019-09-03 Google Llc Hybrid client-server data provision
US9996531B1 (en) * 2016-03-29 2018-06-12 Facebook, Inc. Conversational understanding
US10319371B2 (en) * 2016-05-04 2019-06-11 GM Global Technology Operations LLC Disambiguation of vehicle speech commands
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
CN106095593B (zh) * 2016-05-31 2019-04-16 Oppo广东移动通信有限公司 一种前、后景应用程序行为同步方法及装置
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
KR101995540B1 (ko) * 2016-06-03 2019-07-15 주식회사 허브케이 판독/입력 오류 단어 정정 장치 및 방법
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US9978390B2 (en) 2016-06-09 2018-05-22 Sonos, Inc. Dynamic player selection for audio signal processing
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
EP3437215A4 (en) * 2016-06-21 2019-11-27 Hewlett-Packard Development Company, L.P. COMMUNICATION USING MULTIPLE VIRTUAL ASSISTANCE SERVICES
US10134399B2 (en) 2016-07-15 2018-11-20 Sonos, Inc. Contextualization of voice inputs
US10331784B2 (en) 2016-07-29 2019-06-25 Voicebox Technologies Corporation System and method of disambiguating natural language processing requests
KR101827773B1 (ko) 2016-08-02 2018-02-09 주식회사 하이퍼커넥트 통역 장치 및 방법
US10115400B2 (en) 2016-08-05 2018-10-30 Sonos, Inc. Multiple voice services
KR102481881B1 (ko) * 2016-09-07 2022-12-27 삼성전자주식회사 외부 디바이스를 제어하는 서버 및 그 방법
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US9942678B1 (en) 2016-09-27 2018-04-10 Sonos, Inc. Audio playback settings for voice interaction
US10181323B2 (en) * 2016-10-19 2019-01-15 Sonos, Inc. Arbitration-based voice recognition
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
CN106847272A (zh) * 2016-12-12 2017-06-13 北京光年无限科技有限公司 与运行应用关联的智能机器人的数据交互方法
CN106844453B (zh) * 2016-12-20 2020-09-08 江苏瀚远科技股份有限公司 一种电子文件格式转换方法
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
KR102643501B1 (ko) * 2016-12-26 2024-03-06 현대자동차주식회사 대화 처리 장치, 이를 포함하는 차량 및 대화 처리 방법
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10971157B2 (en) 2017-01-11 2021-04-06 Nuance Communications, Inc. Methods and apparatus for hybrid speech recognition processing
US20180247644A1 (en) * 2017-02-27 2018-08-30 Intel Corporation Queueing spoken dialogue output
EP3392884A1 (en) * 2017-04-21 2018-10-24 audEERING GmbH A method for automatic affective state inference and an automated affective state inference system
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
US11436417B2 (en) 2017-05-15 2022-09-06 Google Llc Providing access to user-controlled resources by automated assistants
US10127227B1 (en) * 2017-05-15 2018-11-13 Google Llc Providing access to user-controlled resources by automated assistants
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US11048995B2 (en) * 2017-05-16 2021-06-29 Google Llc Delayed responses by computational assistant
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
CN107319857A (zh) * 2017-06-30 2017-11-07 广东工业大学 一种交互镜子及具有该交互镜子的智能家电系统
JP6777887B2 (ja) * 2017-06-30 2020-10-28 京セラドキュメントソリューションズ株式会社 リモート通信制御システム、セッション管理システムおよびセッション管理プログラム
US20190018545A1 (en) * 2017-07-13 2019-01-17 International Business Machines Corporation System and method for rapid financial app prototyping
US10503467B2 (en) * 2017-07-13 2019-12-10 International Business Machines Corporation User interface sound emanation activity classification
KR102419374B1 (ko) * 2017-07-21 2022-07-11 삼성전자주식회사 사용자 발화를 처리하는 전자 장치 및 그 전자 장치의 제어 방법
TWI646529B (zh) * 2017-07-25 2019-01-01 雲拓科技有限公司 主動聊天裝置
US10475449B2 (en) 2017-08-07 2019-11-12 Sonos, Inc. Wake-word detection suppression
CN109426530B (zh) * 2017-08-17 2022-04-05 阿里巴巴集团控股有限公司 页面确定方法、装置、服务器和存储介质
US10048930B1 (en) 2017-09-08 2018-08-14 Sonos, Inc. Dynamic computation of system response volume
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10957313B1 (en) 2017-09-22 2021-03-23 Amazon Technologies, Inc. System command processing
US10600419B1 (en) * 2017-09-22 2020-03-24 Amazon Technologies, Inc. System command processing
US10446165B2 (en) 2017-09-27 2019-10-15 Sonos, Inc. Robust short-time fourier transform acoustic echo cancellation during audio playback
US10482868B2 (en) 2017-09-28 2019-11-19 Sonos, Inc. Multi-channel acoustic echo cancellation
US10621981B2 (en) 2017-09-28 2020-04-14 Sonos, Inc. Tone interference cancellation
CN107479906A (zh) * 2017-09-28 2017-12-15 电子科技大学 基于Cordova的跨平台在线教育移动终端
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10466962B2 (en) 2017-09-29 2019-11-05 Sonos, Inc. Media playback system with voice assistance
US10453454B2 (en) * 2017-10-26 2019-10-22 Hitachi, Ltd. Dialog system with self-learning natural language understanding
CN107767856B (zh) * 2017-11-07 2021-11-19 中国银行股份有限公司 一种语音处理方法、装置及服务器
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
KR102100976B1 (ko) * 2017-12-08 2020-05-15 구글 엘엘씨 스택 데이터 구조 백그라운드의 디지털 어시스턴트 프로세싱
US20190180753A1 (en) * 2017-12-12 2019-06-13 Ca, Inc. Analysis of collaborative dialog data structures from speech processing computer system
CN108008728B (zh) * 2017-12-12 2020-01-17 深圳市银星智能科技股份有限公司 清洁机器人以及基于清洁机器人的最短路径规划方法
US11900928B2 (en) 2017-12-23 2024-02-13 Soundhound Ai Ip, Llc System and method for adapted interactive experiences
US10671251B2 (en) 2017-12-22 2020-06-02 Arbordale Publishing, LLC Interactive eReader interface generation based on synchronization of textual and audial descriptors
WO2019125486A1 (en) * 2017-12-22 2019-06-27 Soundhound, Inc. Natural language grammars adapted for interactive experiences
US11443646B2 (en) 2017-12-22 2022-09-13 Fathom Technologies, LLC E-Reader interface system with audio and highlighting synchronization for digital books
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
CN108256066B (zh) * 2018-01-16 2022-01-11 智言科技(深圳)有限公司 端到端层次解码任务型对话系统
CN108269205A (zh) * 2018-01-24 2018-07-10 成都安信思远信息技术有限公司 一种利用云平台的电子数据鉴定系统
CN108319912A (zh) * 2018-01-30 2018-07-24 歌尔科技有限公司 一种唇语识别方法、装置、系统和智能眼镜
WO2019152722A1 (en) 2018-01-31 2019-08-08 Sonos, Inc. Device designation of playback and network microphone device arrangements
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US20190236137A1 (en) * 2018-01-31 2019-08-01 Microsoft Technology Licensing, Llc Generating conversational representations of web content
CN108520748B (zh) * 2018-02-01 2020-03-03 百度在线网络技术(北京)有限公司 一种智能设备功能引导方法及系统
US10891430B2 (en) * 2018-02-02 2021-01-12 Fuji Xerox Co., Ltd. Semi-automated methods for translating structured document content to chat-based interaction
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
KR102507249B1 (ko) * 2018-03-08 2023-03-07 삼성전자주식회사 성능 모드 제어 방법 및 이를 지원하는 전자 장치
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US11056107B2 (en) * 2018-03-30 2021-07-06 International Business Machines Corporation Conversational framework
WO2019203859A1 (en) * 2018-04-19 2019-10-24 Google Llc Dependency graph conversation modeling for use in conducting human-to-computer dialog sessions with a computer-implemented automated assistant
CN108614773A (zh) * 2018-04-24 2018-10-02 广州链创信息科技有限公司 一种手机小程序用展示发布体验系统
US11094316B2 (en) * 2018-05-04 2021-08-17 Qualcomm Incorporated Audio analytics for natural language processing
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11175880B2 (en) 2018-05-10 2021-11-16 Sonos, Inc. Systems and methods for voice-assisted media content selection
EP3570189B1 (de) * 2018-05-14 2023-08-09 Siemens Aktiengesellschaft Computerimplementiertes verfahren zum bereitstellen eines adaptiven dialogsystems und ein adaptives dialogsystem
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10959029B2 (en) 2018-05-25 2021-03-23 Sonos, Inc. Determining and adapting to changes in microphone performance of playback devices
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US10776582B2 (en) * 2018-06-06 2020-09-15 International Business Machines Corporation Supporting combinations of intents in a conversation
US10811009B2 (en) 2018-06-27 2020-10-20 International Business Machines Corporation Automatic skill routing in conversational computing frameworks
US10681460B2 (en) 2018-06-28 2020-06-09 Sonos, Inc. Systems and methods for associating playback devices with voice assistant services
WO2020032927A1 (en) 2018-08-07 2020-02-13 Google Llc Assembling and evaluating automated assistant responses for privacy concerns
US11436215B2 (en) 2018-08-20 2022-09-06 Samsung Electronics Co., Ltd. Server and control method thereof
KR20230145521A (ko) * 2018-08-23 2023-10-17 구글 엘엘씨 멀티-어시스턴트 환경의 특성에 따른 어시스턴트 응답성 규정하기
US11076035B2 (en) 2018-08-28 2021-07-27 Sonos, Inc. Do not disturb feature for audio notifications
US10461710B1 (en) 2018-08-28 2019-10-29 Sonos, Inc. Media playback system with maximum volume setting
US10587430B1 (en) 2018-09-14 2020-03-10 Sonos, Inc. Networked devices, systems, and methods for associating playback devices based on sound codes
US11024331B2 (en) 2018-09-21 2021-06-01 Sonos, Inc. Voice detection optimization using sound metadata
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US10762893B2 (en) * 2018-09-28 2020-09-01 Comcast Cable Communications, Llc Monitoring of one or more audio/video collection devices
US11100923B2 (en) 2018-09-28 2021-08-24 Sonos, Inc. Systems and methods for selective wake word detection using neural network models
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11899519B2 (en) 2018-10-23 2024-02-13 Sonos, Inc. Multiple stage network microphone device with reduced power consumption and processing load
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US10594837B1 (en) 2018-11-02 2020-03-17 International Business Machines Corporation Predictive service scaling for conversational computing
EP3654249A1 (en) 2018-11-15 2020-05-20 Snips Dilated convolutions and gating for efficient keyword spotting
US11183183B2 (en) 2018-12-07 2021-11-23 Sonos, Inc. Systems and methods of operating media playback systems having multiple voice assistant services
US10770072B2 (en) 2018-12-10 2020-09-08 International Business Machines Corporation Cognitive triggering of human interaction strategies to facilitate collaboration, productivity, and learning
US11132989B2 (en) 2018-12-13 2021-09-28 Sonos, Inc. Networked microphone devices, systems, and methods of localized arbitration
US10602268B1 (en) 2018-12-20 2020-03-24 Sonos, Inc. Optimization of network microphone devices using noise classification
CN110021291B (zh) * 2018-12-26 2021-01-29 创新先进技术有限公司 一种语音合成文件的调用方法及装置
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US10867604B2 (en) 2019-02-08 2020-12-15 Sonos, Inc. Devices, systems, and methods for distributed voice processing
EP3703342B1 (en) * 2019-03-01 2023-07-26 ABB Schweiz AG Dynamic load balancing in network centric process control systems
WO2020185880A1 (en) * 2019-03-12 2020-09-17 Beguided, Inc. Conversational artificial intelligence for automated self-service account management
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
CN111800537B (zh) * 2019-04-09 2021-07-20 Oppo广东移动通信有限公司 终端使用状态的评估方法、装置、存储介质及电子设备
CN111857219B (zh) * 2019-04-25 2023-06-30 益逻触控系统公司 具有三层系统架构的自助服务装置
US11120794B2 (en) 2019-05-03 2021-09-14 Sonos, Inc. Voice assistant persistence across multiple network microphone devices
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11640504B2 (en) 2019-05-17 2023-05-02 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK201970510A1 (en) 2019-05-31 2021-02-11 Apple Inc Voice identification in digital assistant systems
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11200894B2 (en) 2019-06-12 2021-12-14 Sonos, Inc. Network microphone device with command keyword eventing
US10586540B1 (en) 2019-06-12 2020-03-10 Sonos, Inc. Network microphone device with command keyword conditioning
US11138975B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US10871943B1 (en) 2019-07-31 2020-12-22 Sonos, Inc. Noise classification for event detection
US11526780B2 (en) * 2019-08-05 2022-12-13 Microsoft Technology Licensing, Llc Converting nonnative skills for conversational computing interfaces
US10915227B1 (en) 2019-08-07 2021-02-09 Bank Of America Corporation System for adjustment of resource allocation based on multi-channel inputs
CN110647736A (zh) * 2019-08-13 2020-01-03 平安科技(深圳)有限公司 插件式坐席系统登录方法、装置、计算机设备及存储介质
CN110400564A (zh) * 2019-08-21 2019-11-01 科大国创软件股份有限公司 一种基于栈的聊天机器人对话管理方法
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
CN110647305B (zh) * 2019-09-29 2023-10-31 阿波罗智联(北京)科技有限公司 应用程序的语音交互方法、装置、设备和介质
US11062270B2 (en) * 2019-10-01 2021-07-13 Microsoft Technology Licensing, Llc Generating enriched action items
US11189286B2 (en) 2019-10-22 2021-11-30 Sonos, Inc. VAS toggle based on device orientation
JP7029434B2 (ja) * 2019-10-23 2022-03-03 サウンドハウンド,インコーポレイテッド コンピュータによって実行される方法、サーバ装置、情報処理システム、プログラム、およびクライアント端末
WO2021096382A2 (ru) * 2019-11-15 2021-05-20 Федеральное Государственное Автономное Образовательное Учреждение Высшего Образования "Московский Физико-Технический Институт" (Национальный Исследовательский Университет) (Мфти) Способ и система управления диалоговым агентом в канале взаимодействия с пользователем
CN111105289B (zh) * 2019-11-22 2023-05-05 北京云杉信息技术有限公司 一种基于aop方式的客户端订单取消判断方法及装置
US11664044B2 (en) 2019-11-25 2023-05-30 Qualcomm Incorporated Sound event detection learning
EP3836043A1 (en) 2019-12-11 2021-06-16 Carrier Corporation A method and an equipment for configuring a service
CN114787786A (zh) * 2019-12-13 2022-07-22 株式会社日立产机系统 通信模块、通信系统和通信方法
CN111223485A (zh) * 2019-12-19 2020-06-02 深圳壹账通智能科技有限公司 智能交互方法、装置、电子设备及存储介质
US11200900B2 (en) 2019-12-20 2021-12-14 Sonos, Inc. Offline voice control
CN113035226B (zh) * 2019-12-24 2024-04-23 中兴通讯股份有限公司 语音通话方法、通信终端和计算机可读介质
US11562740B2 (en) 2020-01-07 2023-01-24 Sonos, Inc. Voice verification for media playback
US11209573B2 (en) 2020-01-07 2021-12-28 Northrop Grumman Systems Corporation Radio occultation aircraft navigation aid system
US11308958B2 (en) 2020-02-07 2022-04-19 Sonos, Inc. Localized wakeword verification
US11550552B2 (en) * 2020-03-30 2023-01-10 Nuance Communications, Inc. Development system and method for a conversational application
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11482224B2 (en) 2020-05-20 2022-10-25 Sonos, Inc. Command keywords with input detection windowing
CN114095487B (zh) * 2020-07-30 2024-03-19 中移(苏州)软件技术有限公司 一种远程任务执行方法、装置及存储介质
US11698771B2 (en) 2020-08-25 2023-07-11 Sonos, Inc. Vocal guidance engines for playback devices
US11514799B2 (en) 2020-11-11 2022-11-29 Northrop Grumman Systems Corporation Systems and methods for maneuvering an aerial vehicle during adverse weather conditions
US11984123B2 (en) 2020-11-12 2024-05-14 Sonos, Inc. Network device interaction by range
US11410677B2 (en) 2020-11-24 2022-08-09 Qualcomm Incorporated Adaptive sound event classification
CN112527435B (zh) * 2020-12-08 2024-02-13 建信金融科技有限责任公司 浏览器操作方法及系统
US11329933B1 (en) 2020-12-28 2022-05-10 Drift.com, Inc. Persisting an AI-supported conversation across multiple channels
US20220415311A1 (en) * 2021-06-24 2022-12-29 Amazon Technologies, Inc. Early invocation for contextual data processing
US20230197072A1 (en) * 2021-12-17 2023-06-22 Google Llc Warm word arbitration between automated assistant devices
CN115064168B (zh) * 2022-08-17 2022-12-13 广州小鹏汽车科技有限公司 语音交互方法、服务器和存储介质
CN116719649A (zh) * 2022-09-01 2023-09-08 荣耀终端有限公司 会话通知的提示方法、电子设备及可读存储介质
CN116450383A (zh) * 2023-06-19 2023-07-18 合肥景云软件工程有限责任公司 一种通过网页调用操作系统的方法

Family Cites Families (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4787031A (en) * 1985-01-04 1988-11-22 Digital Equipment Corporation Computer with virtual machine mode and multiple protection rings
JPH0673135B2 (ja) * 1988-03-01 1994-09-14 工業技術院長 自然言語対話処理装置
US5282265A (en) * 1988-10-04 1994-01-25 Canon Kabushiki Kaisha Knowledge information processing system
JPH0384652A (ja) * 1989-08-29 1991-04-10 Personal Joho Kankyo Kyokai ヒューマンインタフェースのアーキテクチャモデル
US5333237A (en) * 1989-10-10 1994-07-26 Hughes Aircraft Company Hypermedia structured knowledge base system
JP3235728B2 (ja) * 1990-02-09 2001-12-04 沖ソフトウェア株式会社 会話制御方式
JPH05304567A (ja) * 1990-04-05 1993-11-16 Texas Instr Inc <Ti> 遠隔通信システムならびにその遠隔通信サービスプレゼンテーションインターフェース及び遠隔通信ネットワーク
JPH0410153A (ja) * 1990-04-27 1992-01-14 Nippon Telegr & Teleph Corp <Ntt> 情報検索システム
US5133004A (en) 1990-05-07 1992-07-21 Unisys Corporation Digital computer platform for supporting telephone network applications
US5255305A (en) 1990-11-01 1993-10-19 Voiceplex Corporation Integrated voice processing system
US5274695A (en) * 1991-01-11 1993-12-28 U.S. Sprint Communications Company Limited Partnership System for verifying the identity of a caller in a telecommunications network
JPH0792801B2 (ja) * 1991-08-02 1995-10-09 工業技術院長 非単調推論方法
US5283888A (en) 1991-08-27 1994-02-01 International Business Machines Corporation Voice processing interface unit employing virtual screen communications for accessing a plurality of primed applications
US6400996B1 (en) * 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
JP3213056B2 (ja) * 1992-06-19 2001-09-25 株式会社日立製作所 マルチメディア処理装置
US5384890A (en) * 1992-09-30 1995-01-24 Apple Computer, Inc. Method and apparatus for providing multiple clients simultaneous access to a sound data stream
FR2696574B1 (fr) * 1992-10-06 1994-11-18 Sextant Avionique Procédé et dispositif d'analyse d'un message fourni par des moyens d'interaction à un système de dialogue homme-machine.
JPH06131437A (ja) * 1992-10-20 1994-05-13 Hitachi Ltd 複合形態による操作指示方法
JPH06149534A (ja) * 1992-11-13 1994-05-27 Toshiba Corp 音声画面操作装置
US6029188A (en) * 1993-01-18 2000-02-22 Institute For Personalized Information Environment Information processing system for an architecture model capable of interfacing with humans and capable of being modified
US5544228A (en) * 1993-09-27 1996-08-06 The Walt Disney Company Method and apparatus for transmission of full frequency digital audio
US5509060A (en) * 1993-11-19 1996-04-16 At&T Corp. Network-accessible intelligent telephone service
US5748841A (en) * 1994-02-25 1998-05-05 Morin; Philippe Supervised contextual language acquisition system
US5644686A (en) * 1994-04-29 1997-07-01 International Business Machines Corporation Expert system and method employing hierarchical knowledge base, and interactive multimedia/hypermedia applications
JP3408332B2 (ja) * 1994-09-12 2003-05-19 富士通株式会社 ハイパーテキスト読上装置
US5682539A (en) * 1994-09-29 1997-10-28 Conrad; Donovan Anticipated meaning natural language interface
US5594789A (en) * 1994-10-13 1997-01-14 Bell Atlantic Network Services, Inc. Transaction implementation in video dial tone network
EP0792493B1 (en) * 1994-11-08 1999-08-11 Vermeer Technologies, Inc. An online service development tool with fee setting capabilities
JPH08137697A (ja) * 1994-11-15 1996-05-31 Kobe Steel Ltd 自律分散型システム
US6029195A (en) * 1994-11-29 2000-02-22 Herz; Frederick S. M. System for customized electronic identification of desirable objects
US5748974A (en) * 1994-12-13 1998-05-05 International Business Machines Corporation Multimodal natural language interface for cross-application tasks
JP2746218B2 (ja) * 1995-02-23 1998-05-06 富士ゼロックス株式会社 資源管理装置および資源管理方法
US5890123A (en) * 1995-06-05 1999-03-30 Lucent Technologies, Inc. System and method for voice controlled video screen display
US5742845A (en) * 1995-06-22 1998-04-21 Datascape, Inc. System for extending present open network communication protocols to communicate with non-standard I/O devices directly coupled to an open network
JP3729918B2 (ja) * 1995-07-19 2005-12-21 株式会社東芝 マルチモーダル対話装置及び対話方法
US5794205A (en) * 1995-10-19 1998-08-11 Voice It Worldwide, Inc. Voice recognition interface apparatus and method for interacting with a programmable timekeeping device
JPH10124378A (ja) 1995-12-01 1998-05-15 Zakuson R & D:Kk インターネットおよびイントラネット上におけるホームページ上の文書録画支援装置および文書録画支援システム
US6240448B1 (en) * 1995-12-22 2001-05-29 Rutgers, The State University Of New Jersey Method and system for audio access to information in a wide area computer network
US6101528A (en) * 1996-03-27 2000-08-08 Intel Corporation Method and apparatus for discovering server applications by a client application in a network of computer systems
US5884262A (en) * 1996-03-28 1999-03-16 Bell Atlantic Network Services, Inc. Computer network audio access and conversion system
KR19990028327A (ko) * 1996-04-22 1999-04-15 제프리 엠. 웨이닉 오디오 인터페이스를 이용한 정보 검색 방법 및 장치
US5956507A (en) * 1996-05-14 1999-09-21 Shearer, Jr.; Bennie L. Dynamic alteration of operating system kernel resource tables
JPH09319760A (ja) * 1996-05-30 1997-12-12 Nippon Telegr & Teleph Corp <Ntt> 情報検索運行システム
WO1997047122A2 (en) * 1996-06-03 1997-12-11 Worldvoice Inc. Telephonic voice message store and forward method having network address and voice authentication
JPH1078952A (ja) * 1996-07-29 1998-03-24 Internatl Business Mach Corp <Ibm> 音声合成方法、音声合成装置、ハイパーテキストの制御方法及び制御装置
US5799063A (en) * 1996-08-15 1998-08-25 Talk Web Inc. Communication system and method of providing access to pre-recorded audio messages via the Internet
JPH10124293A (ja) * 1996-08-23 1998-05-15 Osaka Gas Co Ltd 音声指令可能なコンピュータとそれ用の媒体
US5850629A (en) * 1996-09-09 1998-12-15 Matsushita Electric Industrial Co., Ltd. User interface controller for text-to-speech synthesizer
WO1998013771A1 (fr) * 1996-09-26 1998-04-02 Mitsubishi Denki Kabushiki Kaisha Processeur interactif
US5721827A (en) * 1996-10-02 1998-02-24 James Logan System for electrically distributing personalized information
US5915001A (en) * 1996-11-14 1999-06-22 Vois Corporation System and method for providing and using universally accessible voice and speech data files
US5774857A (en) * 1996-11-15 1998-06-30 Motorola, Inc. Conversion of communicated speech to text for tranmission as RF modulated base band video
JP3826239B2 (ja) * 1996-11-22 2006-09-27 日本電信電話株式会社 ハイパーテキスト中継方法及び装置
US6282511B1 (en) * 1996-12-04 2001-08-28 At&T Voiced interface with hyperlinked information
US5960399A (en) 1996-12-24 1999-09-28 Gte Internetworking Incorporated Client/server speech processor/recognizer
US6456974B1 (en) * 1997-01-06 2002-09-24 Texas Instruments Incorporated System and method for adding speech recognition capabilities to java
JP2907174B2 (ja) * 1997-02-04 1999-06-21 日本電気株式会社 監視制御システムのユーザインタフェースシステム
JPH10222342A (ja) * 1997-02-06 1998-08-21 Nippon Telegr & Teleph Corp <Ntt> ハイパーテキスト音声制御方法及び装置
JPH10222525A (ja) 1997-02-07 1998-08-21 Hitachi Ltd ナビゲーション方法
JPH10243048A (ja) * 1997-02-27 1998-09-11 Nippon Telegr & Teleph Corp <Ntt> 情報伝送方法及びシステム
US5987102A (en) * 1997-03-14 1999-11-16 Efusion, Inc. Method and apparatus for bridging a voice call including selective provision of information in non-audio to the caller
US5884266A (en) * 1997-04-02 1999-03-16 Motorola, Inc. Audio interface for document based information resource navigation and method therefor
JP3646471B2 (ja) * 1997-05-14 2005-05-11 日本電信電話株式会社 情報提供方法及び個人適応情報提供サーバ及び情報提供プログラムを格納した記憶媒体
US5897616A (en) * 1997-06-11 1999-04-27 International Business Machines Corporation Apparatus and methods for speaker verification/identification/classification employing non-acoustic and/or acoustic models and databases
US6044347A (en) * 1997-08-05 2000-03-28 Lucent Technologies Inc. Methods and apparatus object-oriented rule-based dialogue management
US6353824B1 (en) * 1997-11-18 2002-03-05 Apple Computer, Inc. Method for dynamic presentation of the contents topically rich capsule overviews corresponding to the plurality of documents, resolving co-referentiality in document segments
US6157705A (en) * 1997-12-05 2000-12-05 E*Trade Group, Inc. Voice control of a server
US6370508B2 (en) * 1998-09-11 2002-04-09 Genesys Telecommunications Laboratories, Inc. Interface engine for managing business processes within a multimedia communication-center
US6230197B1 (en) * 1998-09-11 2001-05-08 Genesys Telecommunications Laboratories, Inc. Method and apparatus for rules-based storage and retrieval of multimedia interactions within a communication center
AU3109399A (en) * 1998-03-23 1999-10-18 Claude Cajolet Application program interfaces in an operating system
US6859451B1 (en) * 1998-04-21 2005-02-22 Nortel Networks Limited Server for handling multimodal information
US6012030A (en) * 1998-04-21 2000-01-04 Nortel Networks Corporation Management of speech and audio prompts in multimodal interfaces
US6018711A (en) * 1998-04-21 2000-01-25 Nortel Networks Corporation Communication system user interface with animated representation of time remaining for input to recognizer
US6438523B1 (en) * 1998-05-20 2002-08-20 John A. Oberteuffer Processing handwritten and hand-drawn input and speech input
US6253326B1 (en) * 1998-05-29 2001-06-26 Palm, Inc. Method and system for secure communications
US6397259B1 (en) * 1998-05-29 2002-05-28 Palm, Inc. Method, system and apparatus for packet minimized communications
US6269366B1 (en) * 1998-06-24 2001-07-31 Eastman Kodak Company Method for randomly combining images with annotations
US6269336B1 (en) * 1998-07-24 2001-07-31 Motorola, Inc. Voice browser for interactive services and methods thereof
US6119147A (en) * 1998-07-28 2000-09-12 Fuji Xerox Co., Ltd. Method and system for computer-mediated, multi-modal, asynchronous meetings in a virtual space
EP1101160B1 (en) * 1998-08-05 2003-04-02 BRITISH TELECOMMUNICATIONS public limited company Multimodal user interface
US6195696B1 (en) * 1998-10-01 2001-02-27 International Business Machines Corporation Systems, methods and computer program products for assigning, generating and delivering content to intranet users
US6493671B1 (en) 1998-10-02 2002-12-10 Motorola, Inc. Markup language for interactive services to notify a user of an event and methods thereof
CN1151488C (zh) * 1998-10-02 2004-05-26 国际商业机器公司 通过一般分层对象进行有效语音导航的结构框架
US7003463B1 (en) * 1998-10-02 2006-02-21 International Business Machines Corporation System and method for providing network coordinated conversational services
US6615240B1 (en) * 1998-12-18 2003-09-02 Motive Communications, Inc. Technical support chain automation with guided self-help capability and option to escalate to live help
US6851115B1 (en) * 1999-01-05 2005-02-01 Sri International Software-based architecture for communication and cooperation among distributed electronic agents
US6523061B1 (en) * 1999-01-05 2003-02-18 Sri International, Inc. System, method, and article of manufacture for agent-based navigation in a speech-based data navigation system
US7216351B1 (en) * 1999-04-07 2007-05-08 International Business Machines Corporation Systems and methods for synchronizing multi-modal interactions
US6519617B1 (en) * 1999-04-08 2003-02-11 International Business Machines Corporation Automated creation of an XML dialect and dynamic generation of a corresponding DTD
US6636831B1 (en) * 1999-04-09 2003-10-21 Inroad, Inc. System and process for voice-controlled information retrieval
US6529889B1 (en) * 1999-07-27 2003-03-04 Acappella Software, Inc. System and method of knowledge architecture
US6377913B1 (en) * 1999-08-13 2002-04-23 International Business Machines Corporation Method and system for multi-client access to a dialog system
US7069220B2 (en) * 1999-08-13 2006-06-27 International Business Machines Corporation Method for determining and maintaining dialog focus in a conversational speech system
US6799169B1 (en) * 1999-08-13 2004-09-28 International Business Machines Corporation Method and system for modeless operation of a multi-modal user interface through implementation of independent decision networks
US6738803B1 (en) * 1999-09-03 2004-05-18 Cisco Technology, Inc. Proxy browser providing voice enabled web application audio control for telephony devices
US6615172B1 (en) * 1999-11-12 2003-09-02 Phoenix Solutions, Inc. Intelligent query engine for processing voice based queries
US6829603B1 (en) * 2000-02-02 2004-12-07 International Business Machines Corp. System, method and program product for interactive natural dialog
US7415537B1 (en) * 2000-04-07 2008-08-19 International Business Machines Corporation Conversational portal for providing conversational browsing and multimedia broadcast on demand
US6934756B2 (en) * 2000-11-01 2005-08-23 International Business Machines Corporation Conversational networking via transport, coding and control conversational protocols
US6970935B1 (en) * 2000-11-01 2005-11-29 International Business Machines Corporation Conversational networking via transport, coding and control conversational protocols
US6801604B2 (en) * 2001-06-25 2004-10-05 International Business Machines Corporation Universal IP-based and scalable architectures across conversational applications using web services for speech and audio processing resources
US6839896B2 (en) * 2001-06-29 2005-01-04 International Business Machines Corporation System and method for providing dialog management and arbitration in a multi-modal environment
US7398209B2 (en) * 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7349845B2 (en) * 2003-09-03 2008-03-25 International Business Machines Corporation Method and apparatus for dynamic modification of command weights in a natural language understanding system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100746526B1 (ko) * 1999-12-28 2007-08-06 소니 가부시끼 가이샤 대화 프로세싱 장치 및 방법, 및 이를 위한 기록 매체
KR20140080717A (ko) * 2012-12-14 2014-07-01 한국전자통신연구원 태스크 그래프 기반 대화 처리 시스템의 태스크 그래프 구축 장치 및 방법
KR20200054338A (ko) * 2015-10-21 2020-05-19 구글 엘엘씨 다이얼로그 시스템들에서의 파라미터 수집 및 자동 다이얼로그 생성
US10733983B2 (en) 2015-10-21 2020-08-04 Google Llc Parameter collection and automatic dialog generation in dialog systems

Also Published As

Publication number Publication date
EP1125277A1 (en) 2001-08-22
IL142366A0 (en) 2002-03-10
CA2345665A1 (en) 2000-04-13
JP3703082B2 (ja) 2005-10-05
KR100431972B1 (ko) 2004-05-22
EP1125279B1 (en) 2008-01-09
KR20020004931A (ko) 2002-01-16
IL142366A (en) 2008-11-26
CN1171200C (zh) 2004-10-13
WO2000020962A2 (en) 2000-04-13
KR100459299B1 (ko) 2004-12-03
CN1321296A (zh) 2001-11-07
CN1323435A (zh) 2001-11-21
EP1163576A2 (en) 2001-12-19
ATE383640T1 (de) 2008-01-15
EP1125279A1 (en) 2001-08-22
CN100472500C (zh) 2009-03-25
WO2000020962A3 (en) 2000-07-13
JP4171585B2 (ja) 2008-10-22
DE69937962T2 (de) 2008-12-24
CA2345660C (en) 2006-01-31
CA2345660A1 (en) 2000-04-13
WO2000021075A1 (en) 2000-04-13
EP1133734A4 (en) 2005-12-14
US8082153B2 (en) 2011-12-20
IL142364A0 (en) 2002-03-10
KR20010075552A (ko) 2001-08-09
EP1133734A2 (en) 2001-09-19
CN1160700C (zh) 2004-08-04
US7418382B1 (en) 2008-08-26
JP2002527800A (ja) 2002-08-27
EP1163576A4 (en) 2005-11-30
IL142363A0 (en) 2002-03-10
WO2000021075A9 (en) 2000-06-08
CA2345665C (en) 2011-02-08
US7137126B1 (en) 2006-11-14
JP2002527919A (ja) 2002-08-27
KR100430953B1 (ko) 2004-05-12
KR20010073105A (ko) 2001-07-31
CN1342290A (zh) 2002-03-27
US7729916B2 (en) 2010-06-01
CA2345661A1 (en) 2000-04-13
EP1125277A4 (en) 2002-02-20
EP1125279A4 (en) 2005-02-23
WO2000021232A3 (en) 2000-11-02
CA2345662A1 (en) 2000-04-13
WO2000021073A1 (en) 2000-04-13
CN1151488C (zh) 2004-05-26
WO2000021232A2 (en) 2000-04-13
KR100620826B1 (ko) 2006-09-13
DE69937962D1 (de) 2008-02-21
IL140805A0 (en) 2002-02-10
US20090313026A1 (en) 2009-12-17
CN1321295A (zh) 2001-11-07
JP2002526855A (ja) 2002-08-20
JP2003525477A (ja) 2003-08-26
US20070043574A1 (en) 2007-02-22

Similar Documents

Publication Publication Date Title
KR100620826B1 (ko) 대화형 컴퓨팅 시스템 및 방법, 대화형 가상 머신, 프로그램 저장 장치 및 트랜잭션 수행 방법
JP3943543B2 (ja) マルチモーダル環境における対話管理およびアービトレーションを提供するシステムおよび方法
US8499028B2 (en) Dynamic extensible lightweight access to web services for pervasive devices
EP3491533B1 (en) Providing command bundle suggestions for an automated assistant
US7036128B1 (en) Using a community of distributed electronic agents to support a highly mobile, ambient computing environment
US7680816B2 (en) Method, system, and computer program product providing for multimodal content management
JP5248964B2 (ja) ワイヤレス・アプリケーションのスクリーン・エレメント又はデータ・オブジェトを生成する方法及びシステム
US7406659B2 (en) Smart links
US7216351B1 (en) Systems and methods for synchronizing multi-modal interactions
US20220059091A1 (en) Voice assistant-enabled web application or web page
US20070168194A1 (en) Scheduling audio modalities for data management and data rendering
WO2002012982A2 (en) Guided natural language interface system and method
JP2007535767A (ja) コンピュータシステム、サーバー処理装置、端末装置及び方法
CN102792294A (zh) 自然语言语音服务环境中的混合处理的系统及方法
JP2005031995A (ja) ユーザインタフェース制御装置及びその方法
US20060020917A1 (en) Method for handling a multi-modal dialog
JP2004246865A (ja) 音声応答ウェブシステム及びその入出力制御方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120820

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130822

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140821

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150820

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160818

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170817

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190227

Year of fee payment: 13