質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Windows Server

Windows Serverとは、Microsoft社のサーバ用オペレーティングシステムの総称です。 企業内ネットワークなどで利用されるサーバ機へ導入することを想定して開発されているため高い安定性があり、 管理機能を提供するソフトウェアが多く含まれています。

Q&A

解決済

5回答

4487閲覧

AIの本番環境構築について

Blue_Dragon_AI

総合スコア31

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Windows Server

Windows Serverとは、Microsoft社のサーバ用オペレーティングシステムの総称です。 企業内ネットワークなどで利用されるサーバ機へ導入することを想定して開発されているため高い安定性があり、 管理機能を提供するソフトウェアが多く含まれています。

0グッド

2クリップ

投稿2019/08/31 01:28

編集2019/09/24 11:16

AIシステムの「本番環境」の構築には、何が必要でしょうか?

現在、AIモデルをプロトタイプ開発していまして、うまくいけば、ゆくゆくは
実行環境も作りたいなと考えています。
既存のシステムにAI機能を組み込むということを考えていきたいのですが、
Pythonで作ったAIモデルを「推論」するための実行環境を作るには、
どうすればよいかを明らかにしたいと考えています。
本番環境とは、学習済みの推論モデルを実行させることだと考えています。
学習は済んでいる前提です。
実行環境という表現も、本番環境という意味で使っています。

学習はPCで行っていますが、サーバーなどにデプロイする際には、
何が必要なのかのイメージがついていません。

AIモデルのプロトタイプ開発は、Windows10のハイスペックなPCで、
Anaconda、JupyterNotebookで、Python、Tensorflow-gpu + Kerasで
行っています。

具体的な疑問としては、
➀(学習ではなく)推論モデルの実行環境を構築するのには、サーバーに
Anaconda、venvやnvidia-Dockerなどで仮想環境を作るものなのでしょうか?

➁仮想環境にあるプログラムを、外側からコールすることはできるのでしょうか?
Pythonプログラムを、他の言語(Javaなど)からコールするような
イメージでしょうか?既存のシステムはおそらくJavaだと思います。
コールの仕方はどこかで紹介されてたりしますか?

➂AIインフラの構築を請け負う会社などがあったりするのでしょうか?
AIインフラエンジニアの募集するという話でしょうか?
「私できます。」みたいな方はいるのでしょうか?
(→いるとお伺いしました。)

➃AWSなどのクラウドサービスの活用も考えられると思いますが、
参考になるような情報はありますでしょうか?
(最初に質問を書いた時には、混乱して意味不明な質問だったかと思いますが、
ご回答いただいた内容を自分なりに整理して、AWSを活用して、
出来そうなイメージがわいてきました。
ということで何か参考になるような情報がありましたら、お願い致します。
一応、SageMakerでmnistのプログラムをWebAPIにデプロイするところまでは
実際にやってみています。
ただ、AWSを使わずに自前でできれば、それに越したことはないので、
自前でやる選択肢についてもまだ考えたいと思っています。
とはいうものの、「クラウドの方がいいよ。」というご意見があれば、
クラウドを使った実装ももちろん、考えています。ご意見をいただければ幸いです。)

⓹(AWSを使わない場合でも)実行環境の構築は、Linuxが一般的でしょうか?
やはりPCではなく、サーバーを使って構築するようなものでしょうか?
サーバーは、そこまで詳しくはないですが、勉強するつもりです。
まったくわからないわけでもありません。

「開発環境」構築については、ネットでも情報があるようですが、
「実行環境」の構築については情報が少なく、情報収集したいと思っています。
完全な回答でなくて全然構わないので、考えるきっかけ、ヒントをいただけたらと
思っています。宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nskydiving

2019/08/31 04:17

プロトタイプ開発では実行まで行なっていないのでしょうか? また、モデルの学習を行なっている環境で実行まで可能だと思いますが、どのような理由で別の実行環境を作ろうと考えているのでしょうか?
退会済みユーザー

退会済みユーザー

2019/08/31 05:20 編集

> プロトタイプ開発では実行まで行なっていない 同じ点が疑問です。 プロトタイプ開発ができるのであればすでに実行環境を作れているわけですから、それ以上何がしたいのかがわかりません。
Blue_Dragon_AI

2019/08/31 07:05

predict で推論結果を返すところまで作りました。 (プロトタイプなので、実際に意味のあるデータを流して学習させるのは、これからです。ダミーのデータを使ってエラーがないようにくみ上げるところまではしています。) Jupyter Notebookで動かしています。 「既存のシステム」に作ったAIを組み込む、ということをぼんやり考えていまして、Pythonプログラムを動かすには、何が必要なんだろうと考え始めた次第です。 Pythonはインタプリタなので、とりあえずPythonインタプリタをインストールしておけば、プログラムは動くのかなと思い、先ほど気が付きましたが、import keras としているわけなので、kerasも必要だなと。 そうすると仮想環境を作って入れてあげる必要があるのかな?と。 既存のシステムから、仮想環境にあるPythonプログラムは起動できるのだろうかと、疑問に思い始めたかんじです。 単体で考えていなくて、既存の仕組みに組み込もうとしているので、 難しくかんがえているのかもしれません。
Blue_Dragon_AI

2019/08/31 07:55

PC上で、Anacondaを使ってpython環境は構築できているのですが、 サーバー周りに疎くて、サーバー上でpythonプログラムを実行できる環境を構築する方法について、まとまった本やウェブサイトはご存知でしょうか?
Blue_Dragon_AI

2019/08/31 07:56

クラウドのサーバ上(AWS)でやる方法は、SageMakerなら、なんとなくイメージできています。
Blue_Dragon_AI

2019/08/31 08:46

言葉の問題なのかもしれませんが、実行環境という言葉を、 システム製品としての環境、本番環境という意味で使っています。 学習済みのモデルの実行環境です。
guest

回答5

0

KerasやTensorflowの知識はありません。

⓵モデルの(学習ではなく)実行にも、KerasやTensorflowのパッケージが必要でしょうか?

おそらく必要です。

必要な場合、Anacondaやvenvなどで仮想環境を作るものでしょうか?
実行環境の構築には、nvidia-Dockerを使いますか?

サーバを建てることになるでしょう。
VMかコンテナかは選択次第です。

⓶実行環境は、Pythonプログラムを、他の言語(Javaなど)からコールするような
イメージでしょうか?
コールの仕方はどこかで紹介されてたりしますか?
仮想環境にあるプログラムを、外側からコールすることはできるのでしょうか?

外部から叩けるWeb APIを用意するなど考えられます。

⓷AIインフラの構築を請け負う会社などがあったりするのでしょうか?
AIインフラエンジニアの募集するという話でしょうか?
私できます、みたいな方はいるのでしょうか?

あるのかもしれませんがAIインフラ専門の開発者はあまり聞いたことがないです。
一般的なサーバサイド・クラウドインフラ開発者なら対応可能だと思います。
サーバ環境を構築することと機械学習そのものの知識は全く別の知識なので。

⓸クラウドサービス(AWSなど)の活用も考えられますが、
既存システムに組み込むということが、ネットワーク経由するAWSと
できるものでしょうか?

ちょっと日本語がよくわからないですが AWSを使って環境構築できるか? という質問であればYesです。

⓹実行環境の構築は、Linuxが一般的ですか?

本番サーバはLinuxが多いと思います。
手元で開発するにはWin/Macでも可能と思います。

やはりPCではなく、サーバーを使って構築するようなものでしょうか?

本番環境はサーバですね。
開発環境は基本的には手元の端末で行い、スペック不足であればクラウドを組み合わせることもあるんじゃないでしょうか。

投稿2019/08/31 05:31

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Blue_Dragon_AI

2019/08/31 07:40

サーバ周りに疎いのですが、Anacondaをサーバーにインストールするのでしょうか?自分でも、調べてみます。 自分の場合は、PCにanacondaをインストールして、JupyterNotebook上で、AIのプログラムを書いています。 確かにクラウドサービス(AWS)には、SageMakerというマネジメントサービスがあるので、そこで、作ったプログラムをWebAPI化しておけば、 既存のシステムからは、WebAPIを叩けば(起動すれば、リクエストすれば)推論結果を返すようにできると思います。 と思って、Sagemakerでmnist(手書き画像の数字認識)をWebAPI化するところまで試しにやってみたのですが、確かに、それも一手のような気がしています。 その時は、相手システムにpython環境を作らずにAWSを使ってインターネット回線を使ってやりとりをする、ということですよね。
Blue_Dragon_AI

2019/08/31 07:42

PCではAnacondaをインストールして・・ということはやっているのですが、 サーバーでも同じようにできるということなのでしょうか?という点がぼんやりしています。
Blue_Dragon_AI

2019/08/31 08:57

疑問が疑問を読んでいるのですが、Windows上で学習させて保存したモデルのデータファイルをLINUXに持ってきて動くものなのでしょうか? LINUX上で学習させないと動かないような気がしてきましたが。
meg_

2019/09/08 10:04

LinuxサーバーにAnacondaやPython3をインストールすれば良いでしょう。Python単体+仮想環境で良いかと思います。
Blue_Dragon_AI

2019/09/28 14:36

消費税増税前にLinux用のPCを買おうと思っています。要はWindowsなしということです。 UbuntuOSを入れようと思っていますが、UbuntuOSは①デスクトップ版と➁サーバー版があり、どちらがいいとかありますか、①➁の違いはだいたいわかっていますが、「AI関連ソフトは、動作環境にUbuntuを指定している例が数多く見られます。」という説明をみかけますが、①➁どちらなのだろうと思っています。 なお、組み込もむことを考えていたアプリは、WindowsPCのデスクトップアプリケーションだということがわかり、Linuxは喫緊の課題ではなくなりました。現在は、そのアプリがc++なのかc#かを調べてもらっている最中で、自分はc++からpythonを起動する方法といった内容のことをネットで調べています。
guest

0

問題による。

私は、パソコン上で開発・学習して、IoT 機器で実行しています。
学習にはお金や設置場所をかけられますが、問題にが発生している場所ではお金や設置場所を確保できないからです。

追記
1,2は、守秘義務にかかるので、ちょっと。
環境は、環境構築の手順を明確にしています。明確というか、極力スクリプトにしています。pip でインストールするものはバージョンまで指定して requirment.txt を作成しています。

3は質問の意味がわかりません。あなたが書いているコードで、OS の機能を直接操作するコードを書いているのですか?

投稿2019/09/01 11:48

編集2019/09/04 21:37
Q71

総合スコア995

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Blue_Dragon_AI

2019/09/03 12:34

ご回答ありがとうございます。 ①IOT機器には、何のパッケージを、どのようにインストールしていますでしょうか? →Pythonインタプリタは必要だと思っています。また、TensoflowやKerasはどのようにインストールしていますか?Anacondaやvenvを使って仮想環境を作っているのでしょうか? ②ちなみにIOT機器は、ラズパイですか? ③また、私はWindows10ベース上でTensorflow+Kerasで学習させていますが、  PythonインタプリタはOSごとに存在するので、  Linuxのラズパイには移植できるでしょうか? ご意見をお願いいたします。
Blue_Dragon_AI

2019/09/05 13:57

すみません、質問の番号がずれてしまったかもしれません。 ➂Windows10のPCで作ったモデルを、本番環境のサーバーに移すことはできるのかな?という問題意識です。他の方ものべられていたかと思いますが、 難しい気がしてきています。
Q71

2019/09/08 10:24

初めてすることは、何事も試してみるのではないですか?情報集めも大事ですが、環境が違えば結果も違ってきます。あなたが想定する環境で試しましょう。
guest

0

ベストアンサー

⓵モデルの(学習ではなく)実行にも、KerasやTensorflowのパッケージが必要でしょうか?
必要な場合、Anacondaやvenvなどで仮想環境を作るものでしょうか?
実行環境の構築には、nvidia-Dockerを使いますか?

「学習環境」と「実行環境」に違いはありませんので、「実行環境」も「学習環境」と同様にセットアップしてください。

⓶実行環境は、Pythonプログラムを、他の言語(Javaなど)からコールするような
イメージでしょうか?
コールの仕方はどこかで紹介されてたりしますか?
仮想環境にあるプログラムを、外側からコールすることはできるのでしょうか?

「Web API」「RESTful API」といったキーワードで Google 検索してみてください。

⓷AIインフラの構築を請け負う会社などがあったりするのでしょうか?
AIインフラエンジニアの募集するという話でしょうか?
私できます、みたいな方はいるのでしょうか?

「AIインフラエンジニア」という職種は存在しませんが、「MLOpsエンジニア」がそれに近いかもしれません。

⓸クラウドサービス(AWSなど)の活用も考えられますが、
既存システムに組み込むということが、ネットワーク経由するAWSと
できるものでしょうか?

はい、可能です。

⓹(AWSを使わない場合でも)実行環境の構築は、Linuxが一般的でしょうか?
やはりPCではなく、サーバーを使って構築するようなものでしょうか?

Linux サーバーを使うのが一般的です。

開発環境(学習環境)も Windows ではなく Linux を使うことをおすすめします。
Windows で学習したモデルを Linux で実行することも可能ですが、環境の違いによる問題が発生しないとも限らないのでおすすめしません。

投稿2019/09/01 06:16

編集2019/09/04 22:15
nskydiving

総合スコア6500

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Blue_Dragon_AI

2019/09/05 21:28

おっしゃっていることが、ようやく理解できて来たような気がします。 WindowsPCで学習させたものを、Linuxサーバ上に持ってくるのはしんどそうですね。 モデル確定させてから、本番機と同じ環境で一回だけなら、学習させてデプロイすることもありだと思いますが、サーバーって古いサーバーってGPU積んでるんでしたっけ? もろもろ考えると、AWSにデータ飛ばして、推論させて戻してくるのが一番現実的な気がしてきましたが、本番機上にpython環境を作るとすると、ちょっと怖いので仮想環境でなどと考えたりも、再度、してきますが、仮想環境にあるモデルも外側から呼び出すことはできるのでしたでしょうか?
Blue_Dragon_AI

2019/10/06 11:47

現時点の状態として、組み込み先がC#のデスクトップアプリであったことが判明し、 C#からボタン起動でPythonを起動するプロトタイプを作りました。ライブラリも使えるのか疑問に思ったのでkeras+tensorflowライブラリを使っているmnist(手書き数字認識)を少し作り替えて、C#からPythonをファイル指定で起動したら動きました。上記ライブラリも動いています。 pyinstallerでexe化したものも起動できました。少し時間がかかるようです。 あとは、Web経由で起動する方法も考え、モデルをAWSのSagemaker(おそらくLinux)を使ってURLとしてデプロイするところまではできました。リクエストで起動するところはまだです。 当初、どのように作るのかまったくイメージできていませんでしたが、みなさんのおかげでだいぶイメージができてきました。まだ、課題はいろいろありますが、当初どのように本番環境を作るものかイメージできなかった状況は抜け出せましたので、ひとまずお礼とともに質問を終了しようと思っています。
guest

0

感想ですけど相手システムによるんじゃないでしょうか。
ランニングコストかかりますけどクラウド使ってウェブアプリケーション化が環境依存が小さく一番安定はしそうです。
tensorflowのCPU版だとpyinstallerなどでexe化させれば単体実行は可能ですので配布や外部ソフトから叩くのもありですかね。ただ、利用するモジュールなどによってexe化できない場合や環境依存など安定性には疑問視がつきます。
python上で学習したモデルをC#などの別言語版のtensorflowから読み込むことも可能です。
これにより学習はpythonで実行は組み込み先ソフトというのも可能です。

投稿2019/08/31 03:17

編集2019/08/31 03:18
bsk

総合スコア174

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Blue_Dragon_AI

2019/08/31 07:31

相手システムがCSVデータを出力するので、そのデータを取り込んでAIで回帰をすることを考えています。 pyinstallerは知りませんでした。調べてみます。 (まだ混乱していますが、) 開発環境とは異なる相手システムに、python環境をインストールすることをぼんやり思い始めているという状況です。 Pythonはインタプリタなので、pythonインタプリタ=python3.7とかいうやつですよね。あれがあれば、作ったAIプログラムは動くような気がします。 tensorflowはc++で書かれているから、C#のようなCLR(共通ランタイム)は必要ないんでしたっけ?tensorflowは更にnumpyを呼びに行っていますがCで書かれているので、CLRはいらないか?と考えました。 やはり、開発環境とは異なる別のシステムにpython環境を構築しようとイメージしていてわからなくなっている気がしてきました。
Blue_Dragon_AI

2019/09/28 14:40

exe化をしなくても、pythonw.exe(←wつきがみそ) で.pyファイルを実行すると動作します。PyInstallerまで頭が回っていませんが、トライしたいと思っています。ありがとうございます。
Blue_Dragon_AI

2019/10/06 11:36

pyinstaller できました。c#からデスクトップアプリベースで、起動もできました。 ありがとうございます。
guest

0

とりあえず、(3) 私できます。ので、そういう人もいると思います。具体的にはAIインフラ特化というよりも、ベストな方法の検討とインストールパッケージの作成を含む実行環境の整備全般の実装ですけどね。仮にWindows環境だったら必要なものをMSIにパッケージングしたりと。一般的にはインストーラー周りとITインフラ全般の知識があるソリューションアーキテクトがこの辺のことをよく請け負っている気がします。そしてその「私できます」みたいな人が会社を持っていれば、その分野の仕事を請け負うんだと思います。

投稿2019/08/31 02:20

YouheiSakurai

総合スコア6142

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Blue_Dragon_AI

2019/08/31 02:47

何となく自分がAIやディープラーニングをやっている感覚だと、自分である程度AIのプログラムをやる人じゃないと、なんのパッケージを入れるのか、何が必要かのイメージがつきにくいと思っています。 AIは、独特の数理的な難しさ・とっつきにくさがあり、新旧の情報が入り乱れて、必要な情報が集まりきらなかったり、集めた情報だけで単にセットアップするという決まりきったルーティーンにはならず、~なってるはず、 だから~すると考えながらやる割合が高い気がします。 ですから、 インフラができる=AIインフラがわかる とはなかなかなりにくいだろうなと感じてはしています。 とはいえ、これだけ騒がれるとインフラ周りの人もAIに手をだしたくなるでしょうから、AIわかる人とタッグを組んでたりするのかなという気もしています。 具体的にどことかありますか? また、あとは、他の人・会社に頼るのは最後の手段としてあって、もう少し実行環境の「中身」について知りたいと思っています。
Blue_Dragon_AI

2019/08/31 02:52

実際には、サーバーサイドもわかって、AIエンジニアなのでしょうね。
YouheiSakurai

2019/08/31 03:53

私はtensorflowを触らないですけど、1と2はhttps://www.tensorflow.org/lite/guide/get_started?hl=ja#3_use_the_tensorflow_lite_model_for_inference_in_a_mobile_appが答えでしょう。で、4は難しい、5は実行シーンによる、という回答になると思います。 アプリの中身がブラックボックスでもそのサイズが大きくなく実行環境の要件がわかれば、インフラエンジニアはインフラの面倒が見れますし、ソリューションアーキテクトはソリューションの組み立てができます。 実際には、新旧の情報の取捨選択が適切にできて、独特の数理的な難しさ・とっつきにくさを専門じゃない人に対して上手く隠匿できる人がAIエンジニアなんだと思います。
Blue_Dragon_AI

2019/09/03 12:45

tensorflowとKerasを使ったAIモデルを作ったので、それが動くサーバー環境を作ってくださいというのがシステム要件ですが、それでインフラ基盤を作れるインフラエンジニアのかたは、いるのでしょうか?もちろん、私が知っていることはご説明するとしてです。 自分ではとりあえず④ならAWSのSagemakerでなんとかできるかもしれないと思っていまして、 むしろ、いちからサーバーを構築するのは敷居が高いなと思っていたので、やや意外な回答でした。
YouheiSakurai

2019/09/03 22:26

試しにやってみましたけど、AWSのコンソールを開いてから10分でMNISTをサーバー上で動かせました。(EC2のc5n.large使用) sudo yum install python3 python3-pip git-core pip3 install --user keras tensorflow requests git clone https://github.com/tensorflow/models.git cd models export PYTHONPATH="$PYTHONPATH:$PWD" cd official/mnist python3 mnist.py
Blue_Dragon_AI

2019/09/04 13:50 編集

「Amazon SageMaker で簡単に Keras を使う方法」↓が紹介されています。 https://aws.amazon.com/jp/blogs/news/amazon-sagemaker-keras/ この中では、mnistが例に使われていますが、SageMakerを使って、 mnistの推論モデルを、エンドポイントとしてデプロイできます。 私も実際にやってみています。
YouheiSakurai

2019/09/04 12:35

それはさぞかし実行するのが難しいAIモデルをお持ちなんでしょうね。
Blue_Dragon_AI

2019/09/04 12:45

すみません、もう一度話を整理しますと、既存のシステムの機能の一部として、作成したAIモデルを組み込んでいくには、 方法(1) サーバーを立てて(あるいは既存のシステムのサーバーの中に)AIのpythonプログラムが動く環境を構築する。tensorflowやkerasもインストールします。 方法(2) AWSの中に作成したAIのpythonプログラムを置いておき、既存のシステムからは、WebAPIを叩くようにする。 という方法があると思っていまして、(2)の方法であれば私もイメージができます。 mnistをコマンドをうってハンドで動かされたと思いますのが、そうではなく、Web APIを通じてmnistを起動するようにします。それには、SageMakerが楽でして、実際にサンプルもあります。 方法①だと自前でできるので、もう少し考えたいのですが、 方法①でやるには、サーバーOS上に仮想環境を構築するAnacondaやvenvをインストールするのでしょうか? また、仮想環境の外側からは、プログラムを呼び出すことができないという記述があり、どうすれば既存のシステムから、作成したAIプログラムを呼び出すのだろうか?イメージがついていないということなのです。 まどろっこしくてすみません。 私の疑問がご理解いただけますでしょうか?
YouheiSakurai

2019/09/04 15:29

方法①でやるには、サーバーOS上に仮想環境を構築するAnacondaやvenvをインストールするのでしょうか? -> しても良いと思いますけど、仮想環境を構築する理由が私には見当たらないので、私なら仮想環境は構築しないと思います。あと、私は素のPythonにパッケージを追加していくほうが好きなので、Anacondaも使わないと思います。 仮想環境の外側からは、プログラムを呼び出すことができないという記述があり、どうすれば既存のシステムから、作成したAIプログラムを呼び出すのだろうか? -> その記述は嘘、もしくは貴殿の理解が間違えています。仮想環境の外側からでもプログラムは起動できます。また「どうすれば既存のシステムから」という点に関してはRPCという言葉の意味とその実例を知ると解消すると思います。 貴殿が「AIエンジニア」なのであれば、実行環境はインフラの分かる人に任せる or 自分で座学と手を動かして新たにインフラの知識を身につける のどちらかを選択すると良いと思いますよ。包み隠さずに申し上げますと、貴殿のAI以外のところ、特にOSやネットワークに関する基礎知識が足りていないように感じられますので、そのように提案しています。
Blue_Dragon_AI

2019/09/05 13:50

ご回答ありがとうございます。 だんだんイメージがわいてきました。 ■「仮想環境を構築する理由が私には見当たらない。」   ↑ 私もそう思うようになりました。ありがとうございます。 開発時はともかく、本番で仮想環境を作らなくてはいけない理由はないと思うようになってきました。一瞬、仮想環境を作らずにtensorflowやkerasなどのパッケージを入れられるのか迷いましたが、Python標準のpipで入れたらいいだけですもんね。おっっしゃる通りだと思いました。 ■「RPCという言葉の意味とその実例を知ると解消すると思います。」   ↑ そうですね。JAVAからPythonを起動する方法を調べていて、情報が少ないので、見失っていました。そこからWeb APIを使う方法を漠然と考え始めたのですが、もっと直接起動できる方法を探すべきだと思い直しました。 JAVAからPythonを起動する方法が(ちょっと探しただけですが)情報が少なかったはずなので、もしこれという情報があれば、お願いいたします。 ? ■一点、気になったのは、仮想環境の外側から呼び出せるのか? という点でして、仮想環境を使わなければ問題ないのですが、 https://www.python.jp/install/windows/venv.html 大きい文字で「仮想環境の使用」の部分の記述で、 「インストールしたパッケージは、仮想環境内にのみ書き込まれ、元の Python や他の仮想環境からは利用できません。」 とあって、tensorflowやkerasなどのパッケージは仮想環境に書き込むと、 呼び出せないように見えますが、どう思われますでしょうか? だんだんイメージがわいてきました。ありがとうございます。 インフラの知識は手を動かして身に着けるつもりです。 感謝しております。
Q71

2019/09/11 12:56

> JAVAからPythonを起動する方法 検索していませんが、Java から「他のアプリケーション」を起動する方法なら、あるんじゃないですか?python という他のアプリケーションを、infer.py などの実行したいファイルを引数に指定して実行するだけです。 > 仮想環境に書き込むと、呼び出せない 仮想環境に移る前後で、環境変数 PATH (だけではないかもしれない)を表示してみましょう。 それだけのことです。 手を動かす前に頭を使って下さい。でなければ、手も動かせません。
Blue_Dragon_AI

2019/09/28 14:48

アプリは、JAVAではなく、c++かc#だそうで詳細確認中です。 仮想環境を作らずにpipでtensorflowとkerasをインストールしたら.pyファイルを普通に動かすことは確認できました。 ということで、Visual StudioにC++をインストールしました。 あとは、並行してAWSでSageMakerSDK用にプログラムを作り替えています。 C++はちゃんと見たことがなかった気がしましたが、
Blue_Dragon_AI

2019/09/28 14:50

本を買ってきて読み始めてみたら、他のプログラム言語と書き方が少し違うだけなんだなと、割とふつーに理解できて少しほっとしました。
Blue_Dragon_AI

2019/09/28 14:56

この質問を読んでいるかたに、「さわって学ぶクラウドインフラ Amazon Web Services 基礎からのネットワーク&サーバー構築」という本はお勧めです。 AWSの仮想環境で、設定間違えても壊れることないし(よっぽどひどいことしなければ)大丈夫だと思います。なんかインフラってこんな感じかと面白かったです。
Blue_Dragon_AI

2019/09/28 14:57

割とあっさりできて、なんとなくわかった気になれます。
Blue_Dragon_AI

2019/09/28 15:01

AIのモデルは、一応、マルチモーダルのモデルにしています。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問