ibm-ml 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 001b892689cf34e34855ffbfdf4da69806407c1b
4
- data.tar.gz: 2baafcd50a260b6b33422df2d3546cb32d450dd1
3
+ metadata.gz: 8043c7c62f75f733b6e6b714c9dd3cd9a231c418
4
+ data.tar.gz: 2e9cc28ef1ac51cb993785890ae4ebbf95e7e3c7
5
5
  SHA512:
6
- metadata.gz: 3d153e7975a5675844a4f8955d41086dcf316d2a11c31cea37e15d862369dd78202de4ebf877157b861c450a71443abfa3128cfd973296c8cdbe8e0adbcfc915
7
- data.tar.gz: c7a670045edb3cbe77725ba93907712edcfd581a9446b778b1fde1186241115abcf8da5727b19db8be71dc517a982151c04ed5d67e821cc23c5b05ad79155045
6
+ metadata.gz: 42bfc1730006f18327265ec024d5427edc895938d90a07c73c1c33353ea07fb2d88b31a937959df2b1bf1672c0f8bda867cb08b400f9317321a75cc423fdfa76
7
+ data.tar.gz: e13d5dfd1365ecae5acffdd8e2223abb07e876c7412206ffe8a63cab713d96bf5d93db0a72a0ffb84dd8d945111aa8ddc62c612150d6adcb1c60ee31581d293e
@@ -1,8 +1,14 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.4.0
5
- before_install: gem install bundler -v 1.14.3
4
+ - 2.4.0
5
+ - 2.0.0
6
+ cache: bundler
6
7
  script:
7
8
  - bundle exec rake
8
- - bundle exec rubocop
9
+ - bundle exec rubocop
10
+ deploy:
11
+ provider: rubygems
12
+ gem: ibm-ml
13
+ api_key:
14
+ secure: KrW9QsWC2deO9ubwZxQSRcbL8Azj4xkE0KpY30B564/o3qJOFZN98cevVJ7EujyxA+HVXWsdvEsr+PHk17fCSbSlbnmcRS0C7BSy7RCNWgHhDd2hiUG32QXszpr5ZFvXkzlZ9N5gNRzlIpOVckQS2swYCt20GNTn6XQ69a9j7wMER68bDT4gWCkq+xssioS5PaE1hFqOvPDXRltigIz3cZz8+8UDnPzprTyyJ235KNktEFs4OUWGrDwfbgoJs3K744+PvYyTxw+xenlZ6huZqEYmYAws/okIPKenQ/qiTBOx4RRRkVOXWzZ4kUexJiAdIoxKunZ1bPjTtip3AKa1nu3FdgJqq3DZxxX5wftKyeeZYyOoZs+e24Vi79JGXSRcHpMDi578nd5Fqu1UU6weTjS11DHhxX2rPNYRBcvCwXxKCnrw3IY8bzhQ2cF3K1PTV6g6RCXqEY/IKqex6RUw+dcPxqFNaH5VIgyDxs3TUUkEUmsGfHZmyz1MXNjnrLJRQki+H25LpHhOP/lcwJZuLjwNca5uBp01M0R89gsumLVvI5fxpteWjFMUTMZ397sC6Ve0/PmggYxuwLre1nT1N8MMVX79oHXwxeOHltw9lcR4wOc7oIPX8BzgtLvnCvsha9AHXP8F0n0u2F8UrJr25sBQ0CXLpTeTG+zG2t63L5s=
data/README.md CHANGED
@@ -1,4 +1,6 @@
1
1
  # IBM::ML
2
+ [![Gem Version](https://badge.fury.io/rb/ibm-ml.svg)](https://badge.fury.io/rb/ibm-ml)
3
+ [![Build Status](https://travis-ci.org/IBM-ATAT/ibm-ml-ruby.svg?branch=master)](https://travis-ci.org/IBM-ATAT/ibm-ml-ruby)
2
4
 
3
5
  A Ruby gem to invoke the IBM Machine Learning service REST API.
4
6
 
@@ -8,6 +10,14 @@ Currently supports:
8
10
 
9
11
  ## Installation
10
12
 
13
+ #### With Gem
14
+ After [installing Ruby](https://www.ruby-lang.org/en/documentation/installation/) >= 2.0:
15
+
16
+ ```bash
17
+ $ gem install ibm-ml
18
+ ```
19
+
20
+ #### With Bundler
11
21
  Add this line to your application's Gemfile:
12
22
 
13
23
  ```ruby
@@ -16,28 +26,54 @@ gem 'ibm-ml'
16
26
 
17
27
  And then execute:
18
28
 
19
- $ bundle
20
-
21
- Or install it yourself as:
22
-
23
- $ gem install ibm-ml
29
+ ```bash
30
+ $ bundle install
31
+ ```
24
32
 
25
33
  ## Usage
26
34
 
35
+ #### Setup
36
+ ```ruby
37
+ require 'ibm/ml'
38
+ require 'pp'
39
+
40
+ # example input record to score
41
+ record = {
42
+ GENDER: 'M',
43
+ AGEGROUP: '45-54',
44
+ EDUCATION: 'Doctorate',
45
+ PROFESSION: 'Executive',
46
+ INCOME: 200000,
47
+ SWITCHER: 0,
48
+ LASTPURCHASE: 3,
49
+ ANNUAL_SPEND: 1200
50
+ }
51
+ ```
52
+
27
53
  #### Cloud
28
54
  ```ruby
29
- service = IBM::ML::Cloud.new('<ML_SERVICE_USERNAME>', '<ML_SERVICE_PASSWORD>')
30
- p service.fetch_token
31
- p service.published_models
32
- p service.deployments
33
- p service.get_score('<model_guid>', '<deployment_guid>', ['record', 'input', 'values'])
55
+ USERNAME = # ML service username
56
+ PASSWORD = # ML service password
57
+ MODEL_ID = # model ID
58
+ DEPLOYMENT_ID = # deployment ID
59
+
60
+ service = IBM::ML::Cloud.new(USERNAME, PASSWORD)
61
+ pp service.fetch_token
62
+ pp service.published_models
63
+ pp service.deployments
64
+ pp service.get_score(MODEL_ID, DEPLOYMENT_ID, record)
34
65
  ```
35
66
 
36
67
  #### Local
37
68
  ```ruby
38
- service = IBM::ML::Local.new('<DSX_LOCAL_HOST>', '<DSX_LOCAL_USERNAME>', '<DSX_LOCAL_PASSWORD>')
39
- p service.fetch_token
40
- p service.get_score('<deployment_guid>', ['record', 'input', 'values'])
69
+ HOST = # DSX Local hostname / IP address
70
+ USERNAME = # DSX Local username
71
+ PASSWORD = # DSX Local password
72
+ DEPLOYMENT_ID = # deployment ID
73
+
74
+ service = IBM::ML::Local.new(HOST, USERNAME, PASSWORD)
75
+ pp service.fetch_token
76
+ pp service.get_score(DEPLOYMENT_ID, record)
41
77
  ```
42
78
 
43
79
  ## Development
@@ -1,4 +1,3 @@
1
- # coding: utf-8
2
1
 
3
2
  lib = File.expand_path('../lib', __FILE__)
4
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
@@ -32,7 +32,7 @@ module IBM
32
32
 
33
33
  def get_request(addr, top_key)
34
34
  url = URI(addr)
35
- header = { authorization: "Bearer #{fetch_token}" }
35
+ header = { 'authorization' => "Bearer #{fetch_token}" }
36
36
  request = Net::HTTP::Get.new url, header
37
37
 
38
38
  response = @http.request(request)
@@ -35,7 +35,7 @@ module IBM
35
35
  request = Net::HTTP::Post.new(url, header)
36
36
  request.body = {
37
37
  fields: model_fields.map { |field| field['name'] },
38
- values: [record]
38
+ values: [record.values]
39
39
  }.to_json
40
40
 
41
41
  response = @http.request(request)
@@ -29,7 +29,7 @@ module IBM
29
29
  begin
30
30
  body = JSON.parse(response.read_body)
31
31
  body.key?('records') ? body : raise(ScoringError, response.read_body)
32
- rescue JSON::ParserError => e
32
+ rescue JSON::ParserError
33
33
  raise(ScoringError, response.read_body)
34
34
  end
35
35
  end
@@ -1,5 +1,5 @@
1
1
  module IBM
2
2
  module ML
3
- VERSION = '0.1.1'.freeze
3
+ VERSION = '0.2.0'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ibm-ml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Thomason
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-09-27 00:00:00.000000000 Z
11
+ date: 2017-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -110,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
110
  version: '0'
111
111
  requirements: []
112
112
  rubyforge_project:
113
- rubygems_version: 2.6.12
113
+ rubygems_version: 2.6.13
114
114
  signing_key:
115
115
  specification_version: 4
116
116
  summary: Client library for calling IBM Machine Learning API