Giter Site home page Giter Site logo

ejhfast / iris-agent Goto Github PK

View Code? Open in Web Editor NEW
123.0 16.0 20.0 154.41 MB

A extensible conversational agent for data science tasks

JavaScript 2.49% HTML 0.01% CSS 0.29% Python 29.61% TeX 34.00% Shell 0.04% C 1.80% Makefile 2.30% Tcl 29.22% DTrace 0.23%

iris-agent's Introduction

Iris: A Conversational Agent for Data Science

interface

Read more about the system in this article.

Command DSL

You can add commands to Iris using an in-editor GUI or work directly with the Python DSL. For example:

from iris import state_types as t
from iris import IrisCommand

class GenerateArray(IrisCommand):
    # what iris will call the command + how it will appear in a hint
    title = "generate a random array of {n} numbers"
    
    # give an example for iris to recognize the command
    examples = ["generate numpy array of size {n}"]
    
    # type annotations for each command argument, to help Iris collect missing values from a user
    argument_types = {"n":t.Int("Please enter size of array:")}
    
    # core logic of the command
    def command(self, n):
        import numpy
        return numpy.random.randint(100, size=n)
        
    # wrap the output of a command to display to user
    # by default this will be an identity function
    # each element of the list defines a separate chat bubble
    def explanation(self, result):
        return ["Here are the numbers", result]

Installation guide

Warning! The current version of Iris is an alpha release. We are still adding many new commands to the system and fixing bugs. A production-ready beta release will be out later this summer. Use at your own risk!

These are instructions to install and run Iris in debugging mode. A self-contained Electron app for OSX will be released later this summer.

You will first need to install anaconda. (Make sure to run source ~/.bash_profile after you have installed Anaconda, if it is not appearing in your path.)

Install and run the Python components:

cd iris-agent/backend
# create new conda env called iris with necessary packages
conda create --name iris --file packages.txt
# enter the conda env
source activate iris
# install the remaining pip packages
pip install -r requirements.txt
cd app/
# run the backend application
python app.py

Install and run the Javascript components. If you do not already have webpack, run npm install webpack -g:

cd iris-agent
npm install
# build JS app with webpack (can also run webpack --watch in seperate command window)
webpack
# start electron (this will open the application automatically)
npm start

Both the backend and frontend must be running for Iris to work!

Tests

To verify the backend is working:

cd iris-agent/backend/test
python test.py

iris-agent's People

Contributors

binbineow avatar ejhfast avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iris-agent's Issues

webpack doesnt compile because of missing files

ERROR in ./app/index.js
Module not found: Error: Cannot resolve module 'history/lib/createHashHistory' in /Users/preddy5/Work/nnet_work/iris2/iris-agent/app
 @ ./app/index.js 48:24-64

ERROR in ./app/components/CommandEdit.js
Module not found: Error: Cannot resolve module 'brace/mode/python' in /Users/preddy5/Work/nnet_work/iris2/iris-agent/app/components
 @ ./app/components/CommandEdit.js 37:0-28

ERROR in ./app/components/CommandEdit.js
Module not found: Error: Cannot resolve module 'brace/theme/github' in /Users/preddy5/Work/nnet_work/iris2/iris-agent/app/components
 @ ./app/components/CommandEdit.js 39:0-29

ERROR in ./app/components/CommandEdit.js
Module not found: Error: Cannot resolve module 'brace' in /Users/preddy5/Work/nnet_work/iris2/iris-agent/app/components
 @ ./app/components/CommandEdit.js 15:13-29
Child html-webpack-plugin for "index.html":
        + 3 hidden modules

ran into this problem trying to install on macosx

I get this error after running "pip install -r requirements.txt". It installs many of the packages successfully until this point. Looks like the tensorflow version doesn't exist. I'm going to try with some different versions.

Requirement already satisfied: six==1.10.0 in /Users/jloverich/miniconda3/lib/python3.6/site-packages (from -r requirements.txt (line 60))
Collecting tensorflow==0.12.0rc1 (from -r requirements.txt (line 61))
Could not find a version that satisfies the requirement tensorflow==0.12.0rc1 (from -r requirements.txt (line 61)) (from versions: 0.12.1, 1.0.0, 1.1.0rc0, 1.1.0rc1, 1.1.0rc2, 1.1.0, 1.2.0rc0, 1.2.0rc1, 1.2.0rc2, 1.2.0, 1.2.1, 1.3.0rc0, 1.3.0rc1, 1.3.0rc2)
No matching distribution found for tensorflow==0.12.0rc1 (from -r requirements.txt (line 61))

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.