rye のインストール その 2

rye のバージョンが更新されて、インストール手順がだいぶ変ったので、 ここで再度まとめる。 なお、ここで扱う rye のバージョンは以下の通り。 $ rye 0.34.0 インストール 既に rye をインストール済みの場合は、 次のコマンドで一旦 rye をアンインストールしてから実行する。 $ rye self uninstall 次の URL から、環境にあったバイナリをダウンロードする。 <https://github.com/astral-sh/rye/releases> ダウンロードしたバイナリを実行すると、次のインストールステップが始まる。 パッケージインストール方式 uv pip

gymnasium と Stable-Baselines3 を使って機械学習で自前の環境を作成する

趣味で検討している DL モデルの loss 値が全く収束しないので、 DL 処理一発で問題を解くのを諦めて、 DL 処理と強化学習を組合せて対応するように方針を変えた。 そんな訳で、強化学習のフレームワークをいくつか調べ、 gymnasium を使うことにしてみた。 gymnasium は、 元々は OpenAI が開発していた gym が開発終了したことを機に gym から分岐して開発されているフレームワーク。 強化学習の要素 強化学習は、ある環境下で出来るだけ良い行動を取れるように学習する方法。

ブラウザの Ctrl-N ショートカットを変更する

emacs 使いとしては、ブラウザ内の textarea も emacs のキーバインドで操作をしたい。 しかし、 emacs の超基本的なキーバインドの一つ Ctrl-n は ブラウザのデフォル機能の「あたらしいウィンドウを開く」に バインドされていて、クライアントサイドの JavaScript では どうしても上書きできないっぽい。 そこで今回は、ブラウザの Ctrl-n の動作を変更する方法について話をしていく。 結論を最初に書いてしまうと、 限定的な変更はできたが、汎用的ではないので使い勝手が悪くオスス

Android 版 Firefox のアプリ切り替え時の処理

Android 版 Firefox は、 バックグラウンドに切り替えると android の省電力機能によって、 Web ページの状態が保持されず、 アプリをフォアクラウンドに切り替えた際に Web ページがリロードされることがあります。 静的な Web ページであれば、リロードするだけで画面を再構成されます。 セッション管理が必要な Web ページであれば、 Cookie を利用してセッションを復元できます。 Web Extension の場合、通常の Web ページとは異なる制御が必要になります。 省電力機能によって Web Extension のペー

Firefox の File System API (オリジンプライベートファイルシステム)

ブラウザ上で動作するウェブアプリ内のデータは、 基本的に RAM 上で管理されるだけで不揮発には保持されない。 不揮発にデータを保持するには、次の 3 つの方法がある。 Cookie データの本体をサーバ側で記録しておき、 サーバ側で管理しているデータへのアクセスキーをブラウザ側で不揮発に管理する方法。 Web Storage API Key-value 方式の簡易的な DB で、 比較的に小さいサイズのデータをブラウザ側で不揮発に管理する方法。 File System API ブラウザ側のファイルシステムを

ブラウザ(Firefox)の拡張機能で「出来ること」と「出来ないこと」

ブラウザ(Firefox)の拡張機能は、 通常の Web のクライアントサイドプログラム(JavaScript + wasm) では出来ないことが 実現可能になっている。 例えば、拡張機能は表示中の全てのタブ内の情報にアクセスできる。 とはいえ、何でも出来てしまうと、それはそれでセキュリティ上問題になる。 そのため、セキュリティ問題となるようなことはそもそも実現できない。 例えば、ブラウザを実行している環境内のネットワークへの TCP,UDP で

Firefox の拡張機能で additional review が必要な manifest.json の項目

Firefox の拡張機能をインストール可能な状態にするには署名が必要で、 この署名には addons.mozilla.org のレビューが必要になる。 レビューとはいえ基本的には機械的に処理され、 署名処理自体は数分程度で終了する。 しかし中には例外があり、機械的なレビューではなく、 追加レビュー(additional review)が必要なケースが存在する。 では、どんなときに additional review が必要になるか? それは、 manifest.json の項目に依存するらしい。 manifest.json の項目だけでなく、 JS コード

Android 版 Firefox で動かす拡張機能を Wireless debug する

昨年終盤から Firefox の拡張機能開発に手を出し始めた。 折角作った拡張機能なので PC 版だけでなく、 android 版 Firefox でも動かそうと思い Android 版 Firefox でのデバッグ方法を調べたので、 備忘録として載せておく。 なお、基本は次の公式ドキュメント通りだが、 躓いたところもあるので改めてここに設定手順を残す。 <https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#connecting-to-android-over-wi-fi> Wireless debug Android 版 Firefox の拡張機能のデバッグを行なうには、 Android 版 Firefox とそれをデバッグする PC 版 Firefox を接続する必要がある。 そしてその接続方法には、次の 2 つある。

YouTube2ppt (YouTube 動画から powerpoint のスライドを生成) ブラウザ拡張機能

最近 ML(Machine Learning)を勉強しています。 その勉強でよく参考にするのが、 YouTube の解説動画です。 解説動画をパワポにまとめる この解説動画は、スライドを再生しながら内容を解説する動画になっています。 動画での解説は文字よりも情報が頭に入ってくる、というメリットはありますが、 動画を後で見返すのは時間がかかるし、 どの再生時間だったかを探すのも面倒です。 そのため、自分の理解を深めるため & 後で見返したときに確認したい

rye と jupyter notebook

前回は、ML 勉強環境を構築するための rye セットアップ方法についてでした。 今回は、 rye で jupyter notebook をセットアップするところです。 rye をセットアップしておけば、あとは普通にコマンドを叩くだけで、 特に躓くところはないです。 jupyter notebook セットアップ 以下を実行します。 1 2 3 4 5 6 7 # project 作成 $ rye init ntbk # ここで指定する project 名は、 pypi でインストールするパッケージ名と被らないようにする $ cd ntbk # project 設定 $ rye pin 3.10 $ rye add notebook $ rye sync 上記コメントに書いて