はじめに
前回はAndroidでLinux環境を実現するTermux上でflaskを用いてWebサーバーを動作させた。
この記事では、langchainライブラリを使ったchatgptとのチャットサーバーを構築し動作させる。
Termuxでチャットサーバを構築する
シンプルなチャットサーバgithubに用意しておいた。
Gitのインストール
チャットサーバのソースコードをgithubからダウンロードするためにgit
コマンドをインストールする
$ pkg install git
このコマンドにより、GitがAndroidデバイス上のTermux環境にインストールされる。
作業フォルダの作成
プロジェクト管理のための作業フォルダを作成し、そこに移動する。
$ mkdir work
$ cd work
プロジェクトのクローン
サンプルプロジェクトtest_langchain
をGitHubからクローンする。このプロジェクトには、OpenAIのAPIを利用したサンプルアプリケーションが含まれている。
$ git clone https://github.com/aRaikoFunakami/test_langchain.git
$ cd test_langchain/
ライブラリのインストール
プロジェクトに必要なライブラリのインストールは、poetry
を使用して行われる。Rustでのコンパイルが必要なためAndroidのSoCの種類にもよるがインストールには結構な時間が掛かる。気長に待つ。
$ pkg install -y rust
$ pkg install -y binutils
$ poetry install
設定ファイルの作成
OpenAI APIを利用するためには、自分のAPIキーをconfig.py
に設定する。
cp config_sample.py config.py
vi config.py
config.py
には以下のように記述する。
keys = {
"openai_api_key": "<YOUR OPENAI ID>",
"model_name": "gpt-3.5-turbo",
}
<YOUR OPENAI ID>
の部分にOpenAIのAPIキーを設定する。
チャットサーバの実行
設定が完了したら、チャットサーバapp.py
を実行する。
$ poetry run python app.py
実行後、AndroidのChromeブラウザから http://localhost:8080/?text=mt.fuji でチャットサーバーにアクセスするとChatGPTからの回答を確認できる。
まとめ
Androidデバイス上で完結する開発環境の構築が可能となった。
これでクライアントアプリとWebサーバーを組み合わせたサービスのデモ環境をAndroid単体で準備することができそうだ。