手元で動くアシスタントを作りたいとぼんやりと長く考えていた
chatGPT-4oが動く精度のコードを吐くので、環境構築を含めて作り始めればよいのではないかと思うに至った
GPTでスタンドアロンで動く環境を壁打ちしていたが、Electronにした
Electronはリリース当初から気に放っていたが、環境構築さえできないポンコツであったのでなかなか触れなかった
しかしGPTによって導入が簡単になり、とりあえずの起動まではすっと終わるようになったため選定した
今回の成果物のリポジトリ
https://github.com/pxrllc/imagethinker/tree/master
動きません
必要なもの
・googleカスタム検索API
・googleVisionAPI
なしたいことが多い
アシスタントだしアバターを動かしたいと考えていたが、要件を絞るのとアシスタント然とした挙動を作るのに大変な思いをしそうだったのでやめた
代わりに盛り込みたい機能のプロトタイプを作ってみるかと考えた
イメージボード作成アシスタント
GPTによって何でも自動化されそうな勢いではある
しかし現代においてまだイメージボードや、アートの指示書を作るのはかなり人間の領域が大きい
プロトタイプ当初は、PintarestAPIをつかって画像検索をしようと思っていたが、触れば触るほどにどう使うのかわからなくて、更に文献もない
諦めてAPIを読むと、画像を取得したりはできないようだ
ボードの管理などに使うための機能と理解した
ピンタレストを活用してイメージボードにほしいリファレンスを集めるつもりだったが、このへんは考えないといけない課題になった
もっと細かく考える
イメージボードアシスタントでやりたいこと
・テーマに沿った画像が並んでいる
・ある画像からコンセプトとなるテキストを作成したい
自分の使い方では初期は上記2つが達成できればプロトタイプとしては日常的に使うかもしれないと考えた
キーワードから画像を引っ張ってくるのは、GCPのAPIの無料枠があることを知っていたので、画像検索を使うことににした
使う際にはgoogleカスタム検索が必要ということで申請をした
これはただの画像検索である
検索窓を作って、アプリ上で好きに動かせるようにするところまではできた
選択した画像についての情報をテキストにする
これはgoogleVisionAPIを使うことにした
本当はローカルのLLMを使いたかったのだけど、いろいろと知らないことが起きそうだったため、GCPを使用することにした
これは1日あたり1000件まで使用できるらしい
残念なことがおきた
画像の検索ができ、自由に配置ができるようになった、その中で気になった画像を選択肢してvisionAPIに引き渡せば、というところまでできたが、VisionAPIは課金設定をしないと使えないということがわかった
課金設定をすると少しの時間使えないということになったので、読み込んだ画像を散らすように実装をしようとし始めたところで、Electronのえらーがでて、結局6時間ほどかかったが、ビルドできるところまで復旧したが、結局visionAPIを使う事はできなかった
ローカルのjs
ローカルの環境ではファイルの読み書きを含めてかなり自由な権限をもたせる必要がある
そのためにかなり多くの設定があるのだが、そのうちの何処かが失敗しており、今も謎のままだ
リポジトリをおいておくので、興味のある人は見ていただきたい
どこから直したらいいのかわからないので、もう一度ゼロから作るか?と思っている
今回の学び
正直動いたのは嬉しかったが、ほとんど自分でコードを書かなかった
GPT-4oの凄さはわかった
ただ自分でコードを書いていないためにどこでなんの処理があるのかを把握する事ができずかなり困った
当初はなぜそれが必要なのかとか、丁寧に読みながら作っていこうとは思っていたのだが、動くのが楽しくてコードベースがかなり複雑になってから、読めなくなったことに気がついた
もとのプロダクトを疎にする必要があるなと思った
次にやりたいこと
次はどうやるかは考えている最中だが、異なるフォーマットのスケジュールをぶち込むと一つのガントチャートになるというものにチャレンジしようと思っているどうやってやるのかは考えている最中だ
識者の方、なんで動かないのか教えてもらえると嬉しいです
現状の動かないスクショを貼っておきます
functions.jsはあるんだよ
Mac買うか…