このページでは、いくつかの言語からPrediction APIを使うためのヘルパーライブラリを紹介します。
また、よくあるシナリオでAPIを使用するアプリケーションのサンプルを提示します。
Generic Google API Client Libraries
ここでは、Google Prediction APIにアクセスするための一般的なREST形式のAPIを紹介します。
以下の表で、1列目に現在の開発段階を示しています。アルファ版のものもあることに注意してください。
各言語のサンプルも提示していますが、中にはまだサンプルがないものもあります。
必要に応じて他の言語のサンプルを参考にしてください。
Client library | Public repository | All client library samples |
---|---|---|
Google APIs Client Library for .NET (alpha) | google-api-dotnet-client/ | .NET samples |
Google API Libraries for Google Web Toolkit (alpha) | gwt-google-apis/ | GWT samples |
Google APIs Client Library for Java (beta) | google-api-java-client/ | Java samples |
Google APIs Client Library for PHP (alpha) | google-api-php-client/ | PHP samples |
Google APIs Client Library for Python (beta) | google-api-python-client/ | Python samples |
Google APIs Client Library for Ruby (alpha) | google-api-ruby-client/ | Ruby samples |
Specialized Google Prediction API Client Libraries
ここでは、Google Prediction API用に作られたAPIについて紹介します。
Language | Library Name | Link to the Repository |
---|---|---|
.NET | .NET Prediction API library | http://gpapi.codeplex.com/ |
BASH script | oacurl | See the scripts below |
Java | Prediction API Java library | http://code.google.com/p/google-api-java-client/wiki/APILibraries#Prediction_API |
JavaScript (Experimental) | Google Prediction API Javascript Library | Library source is available at https://ajax.googleapis.com/ajax/libs/googleapis/prediction-0.0.1/prediction.js. See information below. |
PHP | PHP Prediction API library | http://code.google.com/p/predictionapiphpwrapper/source/browse/trunk/GooglePredictionWrapper.php |
R | Google Prediction Client Library for R | http://code.google.com/p/google-prediction-api-r-client/ |
Ruby | Open-source Prediction API client | http://code.google.com/p/ruby-google-prediction-api/ |
Ruby | RubyForge Prediction API client | http://rubyforge.org/projects/google-predict/ |
JavaScript Library (Experimental) --省略--
BASH Using oacurl
注意:oacurlは、現在、OAuth1.0のみサポートしています。
oacurlは、OAuth認証に対応したHTTPリクエストをサポートする、オープンソースのコマンドラインツールです。
製品として販売するようなコードでoacurlを使用することは勧められませんが、
テストやデバックを手っ取り早く実行するときは便利です。
このセクションでは、Predicton APIのREST呼び出しにoacurlを使用したスクリプトを紹介します。
ここから最新バージョンのoacurlを入手してください。
認証トークンの取得
Prediction APIの最初のステップは、OAuth認証トークンの取得です。
以下のスクリプトは認証トークンを要求するリクエストを生成します。
このスクリプトはブラウザを立ち上げ、Googleの認証ページを開きます。
ブラウザに表示されたページで、GoogleアカウントのIDとパスワードを入力します。
するとブラウザは、oacurlにあなたのPrediction APIアカウントにアクセスするための認証トークンを返します。
oacurlがあなたのIDとパスワードを見たり受け取ったりすることはありません。
上記の認証プロセスを実行する際に、oacurlにブラウザを起動させるかそれとも自分でブラウザを立ち上げるか選択することができます。
もし自分で立ち上げることを選んだ場合、Googleアカウントのログインページを開くためのURLを受け取ります。
自分で立ち上げる場合は、 --nobrowser フラグをつけてコマンドを実行してください。
以下のコマンドは、oacurlを使ってOAuth認証を行うコマンドです。
oacurlのJARファイルは、ダウンロードしたローカルファイルを指すように変更してください。
$ java -cp oacurl-1.2.0.jar com.google.oacurl.Login --scope https://www.googleapis.com/auth/prediction認証トークンの有効期限は長いので、認証は一度行えばOKです。
認証後は、oacurlはトークンを見つけると自動的にそれをリクエストに含めますので、
認証について特に気にする必要はありません。
学習
oauth-train.sh
#!/bin/bash # Train a prediction model. # Usage: oauth-train.sh MODEL_NAME ID=$1 KEY=`cat googlekey` post_data="{\"id\":\"$ID\"}" # Train the model. java -cp ./oacurl-1.2.0.jar com.google.oacurl.Fetch -X POST \ -t JSON \ "https://www.googleapis.com/prediction/v1.3/training?key=$KEY" <<< $post_data echoこのスクリプトは、Google Storageにアップロードした学習データを使っての学習を行います。
注意:このスクリプトを実行する際には、Google Storageのアクセスキーを"googlekey"という名前のファイルに保存して、スクリプトからアクセス可能な場所に置いておく必要があります。 「アクセスキー」は、Google APIs Consoleから取得できます。
このスクリプトは、以下のように使用します。
$ oauth-train.sh mybucket/myobject
学習状態の取得
oauth-check-training.sh
#!/bin/bash # Check training status of a prediction model. # Usage: oauth-training.sh MODEL_NAME DATA=$1 KEY=`cat googlekey` # Encode the model name. MODEL=`echo $DATA | perl -pe 's:/:%2F:g'` # Check training status. java -cp ./oacurl-1.2.0.jar com.google.oacurl.Fetch -X GET \ "https://www.googleapis.com/prediction/v1.3/training/$MODEL?key=$KEY" echo
このスクリプトは、モデルの学習状態をチェックします。
このスクリプトも、Google Storageのアクセスキーを"googlekey"という名前のファイルに保存して、アクセス可能な場所に置いておく必要があります。
問い合わせの実行
oauth-predict.sh
#!/bin/bash # Run a prediction against a model. # Usage: oauth-predict.sh MODEL_NAME DATA DATA=$1 INPUT="$2" KEY=`cat googlekey` MODEL=`echo $DATA | perl -pe 's:/:%2F:g'` data="{\"input\" : { \"csvInstance\" : [ $INPUT ]}}" java -cp ./oacurl-1.2.0.jar com.google.oacurl.Fetch -X POST \ -t JSON \ "https://www.googleapis.com/prediction/v1.3/training/$MODEL/predict?key=$KEY" <<< $data echoこのスクリプトは判断のリクエストを送信します。 このスクリプトは、複数のテキストや数値の列を処理します。 このスクリプトも、Google Storageのアクセスキーを"googlekey"という名前のファイルに保存して、アクセス可能な場所に置いておく必要があります。
$ oauth-predict.sh mybucket/myobject "col1, col2 ..."データリストは、全体をダブルクォーテーション(")で囲む必要があります。 そして、カラムごとにカンマで区切ります。 カラムが文字列データの場合、さらにシングルクォーテンション(')で囲む必要があります。 カラムが数値データの場合は、クォーテーションは不要です。 以下にいくつか例を示します。
oauth-predict.sh example/bucket "'some string data', 'singleval', 123 " oauth-predict.sh example/bucket "1234, 'Man\'s best friend' " oauth-predict.sh example/bucket "1234, 3345" # Numerical data does not need additional quotes.
0 件のコメント:
コメントを投稿