①Codexを使って大学の研究室で使う解析ソフトを内製した話
はじめに
OriginLabって知ってますか?
グラフ作成・データ解析ができる、Originっていうソフトウェアを開発している会社です。
そんなところが、2003年にリリースしたソフトウェアが、Origin 7.0Jです。
かれこれ四半世紀前に発売されたソフトウェアですね。
とっくにサポートも終わっているし、最新のWindowsでも動かしづらいし、こんなもの誰も使ってないですよね!
...
...
使ってます!バリバリ現役です!
うちの研究室では、学部生のパソコンにこれを入れて使ってもらってます。


流石に20年物のソフトウェアが、普通に最新のWindows11で動くのはすごいですね。
Microsoftの後方互換性へのこだわりは変態レベルですね。(褒め言葉)
とはいえ。
ところどころ使いにくいところもあるし、いつまでWindowsで動くかも未知数です。
なによりMacで動かない!Arm版Windowsにはインストールできない!私はとっても不便!
なので自作することにしました。(!?)
どうやってつくろうか?
ChatGPTにおまかせしちゃいましょう。
課金しているのでCodexが使えます。
Codexとはなんぞやというと。
らしいです。
要するに、適当に私が日本語で指示したことを、実際にファイルを編集したり、ブラウザを操作したり、ソフトウェアを操作したりして実現してくれるすごいやつってことです。
SFの世界だなぁ。
どんな構成にする?
とはいっても、指示が曖昧だったらなんか微妙なものができかねません。
なのでチャッピーと話し合って、次のような骨格を作りました。
| 質問 | アンサー |
|---|---|
| 何が欲しい? | Origin 7Jで使っている機能だけ抜き出した、研究室に最適化されたグラフ作成・解析ソフト |
| 誰が使う? | 研究室の人。おもにOriginProライセンスを買わない学部生向け。あとMacで作業している人(私)。 |
| どんな機能が必須条件? | DATファイルを読み込む。線グラフを作る。2次元カラーマップを生成する。 |
| 対応OSは? | Windows10以降、MacOS(Intel Macを除く)、Linux。 |
| 主に使う言語は? | Python。理由はNumpy+Matplotlibでグラフを作ったことがあったから。 |
| GUIはどうする? | つける。PySide6ってのがいいらしい。 |
| どうやって配布する? | しばらくはインストーラーを共有Sambaに入れておく。そのうちGithubに。 |
こんなざっくりで良いんですかね…。
さっそくCodexに依頼しちゃおう
まず準備段階として、Codexに作業してもらうフォルダを作りました。
このフォルダなら自由にアクセス・改変していいよ~って場所です。
ChatGPTのアプリで、プロジェクトを作成し、フォルダをくっつけます。
次のステップは、ChatGPTのChatでCodexの作業用のプロンプトを作る、です。
プロンプトって結構しっかり具体的に書かないと、なんか生成の質が落ちるらしいです。(脳内ソース)
でも長々と文章考えるの大変で面倒じゃないですか。
なのでプロンプトの作成にもチャッピーを酷使します。
最初のプロンプトは「Origin7Jの一部の機能のみを、PythonのMatplotlib、Numpyで再現した新しい軽量ソフトを開発したい。以下が欲しい機能。」って感じでした。うーんざっくり。
そして4日が経った
そして、形になったものがこちらになります。

じゃーん!
えっ、これすごくないですか!
私、Windowsのインストーラー作れるようになっちゃったんですか!

…はい。AIってほんとにすごいですね。
ソフトウェアの名前は、Pyrigin (パリジン)にしました。(こんなの読めないだろ。)
由来は、「Python」で作った「Origin」互換品って意味です!
(パチモンのOriginっていうダブルミーニングでもある)

いや~恐ろしい時代ですよ。
私のようなド素人でも、1週間かからずに見た目はほぼ既存のソフトと遜色ないレベル(?)の物ができちゃうんですから。
目的とした機能は完璧に実装できていました!


所感
SaaSの死だとか、AGIかもうすぐやってくるだとかいう言説も、こうやって自分で触ってみるとわかる気がしますね。
でもでも、1回で完璧なソフトができたわけではなく、最終的な使い勝手は何度も自分がCodexに指摘して修正していたので、まだまだなんじゃないかなぁと。
(消費者向けでこのレベルなのだから、表に出ていないモデルはこれをはるかに超えるのかもしれないが)
今後はとりあえず作ってみたPyriginを、研究室の人達に使ってもらってフィードバックしてもらうつもりです。
PyriginのGithubは公開するかも?
次回に続く。
コメント 0
コメントを書く
コメントには会員ログインが必要です。 ログイン