DEV Community

Cover image for J.A.R.V.I.S is now READY!
Gaurav Singh
Gaurav Singh

Posted on

J.A.R.V.I.S is now READY!

J.A.R.V.I.S

Python powered AI

Requirements:

  • datetime
  • os
  • pyttsx3
  • wikipedia
  • speech_recognition
  • webbrowser
  • sys
  • smtplib
  • requests
  • json
  • defflib
  • geocoder
  • urllib

What it does...

  • Send Gmail messages
  • Dynamic News Reporting at any time
  • Open any website with just a voice command
  • Plays Music
  • Tells time
  • Wikipedia powered AI
  • Dictionary with Intelligent Sensing i.e. auto checking if spell/typo mistake
  • Weather Report such as temp, wind speed, humidity, weather description
  • Latitude and longitude
  • Seaches Youtube, Google with search queries
  • Google Maps

Future Plans

Sky is limit. There are immense possibilities in this project. Will be integrating some very powerful commands soon..

GitHub Code
https://www.linkedin.com/pulse/jarvis-python-powered-ai-gaurav-singh

Top comments (21)

Collapse
 
j_mplourde profile image
Jean-Michel Plourde

in jarvis.py:65 there's you gmail credentials in plaintext. I really recommend moving that to your env variables and to change you gmail password.

Also it doesn't seem to use AI, but just if else, am I wrong?

Collapse
 
gauravsingh9356 profile image
Gaurav Singh

Yes, you are right, for conversation stuff I used it but all others like a dictionary, weather report, location, searching, email sending are dynamic and are fetched

Collapse
 
advyth profile image
Advyth Ashok

Hey, the creds are still exposed in your commit history.

Thread Thread
 
gauravsingh9356 profile image
Gaurav Singh

Yeah, now all cleared
Thanks

Collapse
 
muhimen123 profile image
Muhimen

No offense, but can we really call just a bunch of if-else statements with some simple implementation an AI? There is not a single neuron let alone hidden layers in your code.

You should(or must) call it personal assistant rather than ARTIFICIAL INTELLIGENCE.

Thank you

Collapse
 
maskedman99 profile image
Rohit Prasad

As machines become increasingly capable, tasks considered to require "intelligence" are often removed from the definition of AI, a phenomenon known as the AI effect. A quip in Tesler's Theorem says "AI is whatever hasn't been done yet." For instance, optical character recognition is frequently excluded from things considered to be AI, having become a routine technology. Modern machine capabilities generally classified as AI include successfully understanding human speech, competing at the highest level in strategic game systems (such as chess and Go), autonomously operating cars, intelligent routing in content delivery networks, and military simulations.
Source: en.wikipedia.org/wiki/Artificial_i...

Virtual P.A's doing the mentioned above jobs have been around for more than 6 years, hence we can all agree that this is no longer AI

Collapse
 
keyvan_m_sadeghi profile image
Keyvan M. Sadeghi

We definitely can and do call a bunch of if-else statements an AI, the specific field is called "Expert Systems". Whole programming languages dedicated to doing if-else more efficiently, e.g. prolog.

We also call a bunch of artificial neurons an AI, the subfield being "Deep Neural Networks".

AI is a scientific quality, not a religious belief.

Collapse
 
ehcio profile image
Eduardo C

Well put!

Collapse
 
vinicioslc profile image
Vinicios de Lima Clarindo

Keyvan you are absolutely right.

Collapse
 
muhimen123 profile image
Muhimen

Seems like you didn't get what I meant to say. Here is an example.

if status == "stupid":
    print("I am stupid")
else:
    print("I am still stupid")

Will you call this an AI?🙄 In that sense EVERY SINGLE PROGRAM EVER WRITTEN WITH IF ELSE IS AN ai. 😑

Does that sounds right? I don't think so. 😖

Thread Thread
 
drivedownhigh profile image
DriveDownHigh • Edited

I definitely understand your point but still when it does tasks, that a human would also do and seems in some sense human-like while doing so then it is a form of weak-AI, even if the code is as simpel as some if-else statements. See the code for ELIZA it is super simpel and still a form of AI.

Collapse
 
jdeepd profile image
JDeep

Agreed. An AI must make its own decision based on different datasets of decisions. Putting a binary question under if-else statement will always get you a correct answer because there is just no more answers to that question.
An AI must give you an answer from a vast majority of solution by using appropriate weights/biases

Collapse
 
markoshiva profile image
Marko Shiva

Man are you in some relation with another Singh Nihal who had the project with the same name like a 4 years ago.

I also recal that there was a project with the same name earlier then that like a 6 years ago. The Jarvis project dates more then 7 years ago.

Anyway I like the friday. :)

Collapse
 
thejamespinto profile image
James Pinto • Edited

I really think the choice of name and title is the real and only problem here.

We just released our Jarvis prototype in Python! Come help us make architectural choices and vote on the best AI implementations to use.

Now you're not claiming just to have helped the Ironman build time travel. See the difference? 😅😛

Collapse
 
markoshiva profile image
Marko Shiva

Nah in the development world I mean on github we had different projects.
I was making a Digital Intelligent Assistant some people ware making the spinoff of JARVIS as just a chatbot without any serious AI. Also there was a MyCroft AI and they tried to emulate work to some point of Google Assistant and Echo.

So what I am saying I see people rebooting that project over 7 years already. :) Different project with ame marketing name.

Collapse
 
rexgalilae profile image
RexGalilae

The whole "this isn't truly AI" point aside, I want to know why you chose python instead of other, more performant options, especially since you didn't quite take advantage of Python's ML and AI capabilities either.

Collapse
 
sispheor profile image
Nicolas Marcq

I hate to be that guy but... it looks like it's just a lot of poorly hard coded things.
You should take a look into kalliope or Mycroft project.

Collapse
 
gauravsingh9356 profile image
Gaurav Singh

Yeah, I admit it, these are the issues are raised in repo.
Well, we will surely integrate the code for all os, since it was merely project done by me to test and practice lib, hard coded things are there.

Collapse
 
gsmahajan profile image
Girish Mahajan • Edited

How do Jarvis replicates itself? If given day a timeseries data can it automatically identifies pattern, if yes then how. Say I am asking Jarvis to keep an eye on all icu beds heart meter how does it understand or generate doctor alarm in case heartbit goes beyond stroke ...

Try engaging
Snipply ifttt

Collapse
 
thisguymartin profile image
Martin

Bravo sir

Collapse
 
susmigo profile image
Govardhan Gautam

Will this compatible for termux