Está en la página 1de 7

Jarvis

Celibi 4.2

@raftalks
@whsajid
ecnedive
marcurio
johnstone
pe2dite

All Frameworks, Celibi


Concepts Framework, Jarvis, Celibi
All Frameworks, Celibi
All Frameworks
Voice Recognition Framework, Celibi
Jarvis

Simple ideas brought to life, through passion

Jarvis
Celibi 2.4

Thank you Rohan Jolly, for your priceless assistance in turning


Jarvis into a reality. Could not have done it without you. Cheers
to fun stuff.
fb.com/rohan.jolly.economist

@raftalks | @whsajid | ecnedive | marcurio | johnstone | pe2dite

Jarvis
Celibi 2.4

Whats The Idea?


The idea is simple. Creating a program to simulate an artificially
intelligent computer capable of carrying out simple task. Jarvis Celibi
4.2 is not artificial intelligence. It is not machine learning. It is not a
neural network.
For all intents and purposes of this documentation Jarvis Celibi is a
digital assistant. The Jarvis interface will be referred to as Jarvis and
the processing program on the server will be referred to as Celibi.
Since theres been some confusion regarding frameworks, it is just a
term we use for our libraries.

How Does It Work?


The Jarvis interface communicates with an online server by sending
and receiving commands and actions back and forth from your
computer.
The Jarvis interface interprets voice commands and converts them to
text. The command is then sent to the server where it is processed
and the required response or action is sent back to the Jarvis
interface. The interface then converts those responses into speech,
macros, clicks and touch or key press events as required.
For speech recognition and synthesis, Jarvis uses the Speech APIs
included in the .NET framework 4.5. The interface was coded using
vb.NET and Celibi was coded using C++.

@raftalks | @whsajid | ecnedive | marcurio | johnstone | pe2dite

Jarvis
Celibi 2.4

What Can Jarvis Do?


Jarvis can carry out any action that you can carry out on a computer
including and not limited to manipulating external applications,
communicating with the windows shell, and interacting with web
servers and services. However all online actions such as Searching
Google for something, processing text and interacting with web
services are carried out by Celibi.
Jarvis can also understand Basic English, phrases and expressions.
Most of the responses to your input are not hard coded into the
program and are continuously evolving as Celibi learns from the
experiences of Jarvis. The experiences or information gathered by
Jarvis are stored in Celibi and compartmentalized into what we like to
call frameworks.

@raftalks | @whsajid | ecnedive | marcurio | johnstone | pe2dite

Jarvis
Celibi 2.4

What Is The Concept Of Frameworks?


The Language Framework
The heaviest and the most advanced framework the language framework,
is a collection of smaller frameworks, and is made up of a dictionary of
words, their usage, their meaning, etc. This is considered as the base layer,
the next layer of frameworks such as expressions and phrases would come
on top of that layer. Celibi uses this framework to understand a
sentence or phrase, and to produce a natural result. Phrases can be used
to override responses and to control how Jarvis responds with sentences.
A word can also be overridden by another word. For example Internet
can become Sky Net and madam can become maam.
The Web Framework
The web framework is a collection of smaller frameworks that tell Celibi
how to interact with and process information from certain websites and
services. For example the google framework tells Celibi how to search
google, apply filters, scrap results, and process image results. The Agoda
framework tells Celibi how to query the website and retrieve results
among others.
The Windows Framework
The windows framework is a collection of commands and actions. This
framework is constantly updated as Jarvis learns how to carry out more
tasks on a windows operating system. The framework contains
information such as macros, click and key press sequences and window
states.
The Voice Recognition Framework
The second most advanced framework of Celibi, the voice recognition
framework tells Celibi how to process voice samples. When a voice is
detected by Jarvis as different from the voice used before that, he sends a
sample to Celibi, and Celibi processes the sample to find a match among

@raftalks | @whsajid | ecnedive | marcurio | johnstone | pe2dite

Jarvis
Celibi 2.4

stored samples. When a match is found it is connected to a user object


which is stored in the objectify framework. This data is then sent to Jarvis
and stored in that session until it ends.
Objectify Framework
The objectify framework contains objects and is divided into many sub
frameworks such as users, people, places, hotels etc. for each object this
framework stores huge amounts of data and details including and not
limited to location and properties. This is how Jarvis understands the
difference between a cat and a dog. The objectify framework is
continuously accessed by all the other frameworks and is so far the
second largest framework
Temporary Framework
The temporary framework is used to store new experiences and data
which is processed by Celibi during a single session. Once the session
closes the data is merged with the remaining frameworks by default. This
framework ensures that Jarvis learns new experiences and that Celibi
does not contain duplicate or erroneous data.
The Concepts Framework
The concepts framework is a tiny framework that is separate from the
language framework. However the concept framework is required by the
language framework and is used to communicate between frameworks. It
controls and maintains the flow of data to and from the remaining
frameworks. This framework does not change and Celibi cannot modify or
directly interact with this this framework. This is to ensure that Celibi does
not attempt to in anyway change its programming. It is also used to assign
and maintain permissions to users.
Visuals Framework
As of right now Jarvis is blind, and needs a visuals framework to process
visual media such as images and videos. Unfortunately this framework is
still under development.

@raftalks | @whsajid | ecnedive | marcurio | johnstone | pe2dite

Jarvis
Celibi 2.4

Supported Operating Systems


Celibi supports and accepts both text and audio input. Jarvis is
currently used as the main input mechanism, however you can
interact with Celibi via a web browser, mobile app or command line
interface.
The interface does not necessarily need a speech to text or text to
speech conversion engine. However for voice recognition, the
interface should be able to send audio samples to Celibi.

Development
Jarvis Celibi is a concept designed and developed by WHSajid. The
project is currently under development. The latest stable version is
Jarvis v1.2 and Celibi v4.2. Stated below are the key developers of
Jarvis and Celibi.
@raftalks

All Frameworks, Celibi

@whsajid

Concepts Framework, Jarvis, Celibi

ecnedive

All Frameworks, Celibi

marcurio

All Frameworks

johnstone

Voice Recognition Framework, Celibi

pe2dite

Jarvis

Find Jarvis at http://youtu.be/ORzXuNWfOQo

@raftalks | @whsajid | ecnedive | marcurio | johnstone | pe2dite

También podría gustarte