Process Explorerを起動しようとして「Not able to run on this version of Windows」エラーが表示された時の対処

今はもうほぼ使われていないとは思いますが、Windows 7、Windows Server 2008 R2でプロセス詳細を調べようとしたときに下記エラーが表示されることがあります。

Not able to run on this version of Windows: Missing function: winsta!WinStationConnectW
Not able to run on this version of Windows: Missing function: winsta!WinStationShadow
Not able to run on this version of Windows: Missing function: winsta!WinStationGetProcessSid

このエラーの後に下記「Sysinternals Process Explorer は動作を停止しました」と表示されます。

これは新しいProcess Explorerを起動しようとしており、OSにパッチが当たっていないためAPIが見当たらず起動できないという事象です。
解消するには、OSへパッチを2つ適用する必要があります。パッチ適用後、OS再起動が必要です。

Windows 7 for x64-based Systems (KB3033929)
https://www.microsoft.com/en-us/download/confirmation.aspx?id=46148
Windows 7 for x64-based Systems (KB2758857)
https://www.microsoft.com/en-US/download/confirmation.aspx?id=35936

パッチ適用後、Process Explorerが起動するようになりました。

Process Explorerでプロセスの詳細を調べたいのに、パッチが当たっていないとOS再起動が必要となりプロセスが初期化されてしまうという、本末転倒な事態になってしまいます。パッチは定期的に適用するか、もしくは古いProcess Explorerが必要です。

古いProcessExplorerはWebArchiveなどで入手できると思います。下手なところから落とさず下記こちらがおすすめです。
・Process Explorer v11.33
https://web.archive.org/web/20100103100904/https://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

FortiGateでerror sslvpn FortiSslvpnが出た時の対処

FortiGateを構築してSSL-VPNを設定した後、接続検証を行った際に3分程度で切断されてしまう事象が発生しました。クライアント側のFortiClient VPNには下記のログが記録されています。

これはセグメンテーションエラー(Segmentation Error)の時に記録されるエラーです。
クライアント側の設定を見ると、VPNオプションの「DTLSトンネル優先」にはチェックが入っておらず、UDPで通信したために断片化されてしまったというわけではなさそうでした。

そのためFortiGate側が通信するときに断片化していると思われるため、MTUを変更してみたところ改善しました。

実際にはpppoe1だけ、MTUではなくMSS長の値を変更しています。MSS値とは、MSS (Maximum Segment Size)の略で一度に伝送できるTCPの最大セグメントサイズになります。各インタフェースからパケットが送信されるとき、一番小さい値に変更されるためすべてのインターフェースに対する変更は不要です。

変更はFortiGateのコンソールへ接続するか、SSH接続、もしくはWebインターフェースからコンソールを開いて、下記のようなコマンドを実行することで実施できます。

WindowsにPythonを導入して生成AI「Llama 3 Youko」を実行してみた

最近、巷では生成AIが盛んだとか。いや、もうすでに乗り遅れている感じが満載ですが、まだいけるはず!ChatGPTが公開されてから盛んですよねー。
そんな訳で、生成AIをWindows 11のマシンで試してみました。

まず必要となるのは、GPUが搭載されたマシンだとか。でも手元にないので、テキトーな仮想マシンを立ち上げてからテスト的に実施してみます。
そう、私はまだスタートラインにすら立っていないという。ボーナスが入ればきっと。。。
セットアップしたのは、CPU:2core、メモリ:16GB、HDD:480GBな環境です。

最初に、基本となる Python の導入です。導入バージョンは古いほうがいろいろ組み合わせ上サポートがあるらしく、最新のものが良いというわけではないとか。
そのためPython 3.10.11をダウンロードしてインストールしてみました。

https://www.python.org/downloads/windows/
https://www.python.org/ftp/python/3.10.11/python-3.10.11-amd64.exe

インストールが完了した後、自動的に環境変数のパスにpythonインストールディレクトリが登録されます。ただ即座に反映はしないようなので、一度サインアウトをするか、PCの再起動を実施したほうがよさそうです。
ソフトウェア導入すると大体再起動すると思いますが。次に使うコマンドpipが実行できなくて焦ったのは私だけ・・・(笑)

そのあとに、Pythonで使用するパッケージのインストールを、コマンドプロンプトを起動させて実行します。

今回は仮想なので実施しませんが、GPUがある場合はドライバ最新化とかも必要なようです。
nVIDIAなどの場合は、下記からcuDNN for CUDAも導入するとか。
https://developer.nvidia.com/cudnn-downloads?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exe_local

導入したら、スタートメニューからpythonをクリックして実行させます。
今回実施してみる生成AIは、FacebookのMetaが開発したLlama-3に、昔Microsoftでよく見た女子高生bot「りんな」の学習を追加したLlama 3 Youko 8B Instructというものです。
https://huggingface.co/rinna/llama-3-youko-8b-instruct

何かよくわかりませんが、量子化というのがされているらしく、GPUのメモリが少なくても動作するようになっているらしいです。
今回の環境はGPUがないので、それでどこまで動くかがポイントでしょうか。

Llama 3 Youkoは、サイトに記載されているサンプルそのままを、起動したpythonへ貼り付けて実行です。
貼り付けした時に複数行の警告が出ますが、そのまま貼り付けさせました。

そうすると下記のような、良くわからない警告が表示されます。今回は実行できているので無視しましたが、eos_token_idというのを指定してあげないとだめって感じのことが書かれてます。そのうち調べる(たぶんやらない)リストへ追加です。

The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input’s attention_mask to obtain reliable results.
Setting pad_token_id to eos_token_id:128001 for open-end generation.
The attention mask is not set and cannot be inferred from input because pad token is same as eos token. As a consequence, you may observe unexpected behavior. Please pass your input’s attention_mask to obtain reliable results.

実行結果ですが、1時間20分ほどかかり、下記が出力されました。めちゃくちゃ時間がかかりますが、CPUだけでも文字生成できるのはすごいですね!

西田幾多郎(にしだきわたろう、1870年 – 1945年)は、日本の哲学者であり、京都大学教授を務めた人物です。
彼は「純粋経験」という概念を提唱し、現代日本哲学において最も重要な思想家の一人とされています。西田は、知識や認識が外部世界に基づくものではなく、むしろ主体的な経験によって生じるという考え方を示しました。この考え方は、現代の認知科学や脳神経科学にも影響を与えていると言われています。
また、西田は倫理学においても独自の立場を確立し、「善」の概念を再定義したことで知られています。彼の哲学は、戦後の日本哲学界に大きな影響を与えたと評価されており、その業績は現在でも広く研究され続けています。

ちなみにノートパソコンでも実行してみました。
CPU:Intel Core i5-1135G7 (4c/8T)、メモリ:23.7GB(24GB)な環境で、同じコマンドを実行すると10分程度で完了します。CPUだけでも、coreがたくさんある環境であればそこそこ動きそうです。

普通に安いグラフィックカードを使ったほうが、もっと早いんでしょうけどねー(笑)
自分でやるのは楽しいけど、普通にChatGPTなどのサービス利用していたほうが、日々進歩していくので楽かもです。

Google PlayでAndroidアプリを収益化すると個人情報が全世界に公開されるらしい

Qiitaトレンドで下記記事が上がってました。

こどおじがAndroidアプリ作ってたらGoogleに子供部屋を追い出された話
要約すると、新しい規約で収益化しているアカウントについては住所と氏名がGoogle Playで公開されるとのこと。記事の人はそのため、実家ではなく賃貸を別途契約して住み始めたって事みたいです。

そういえば、私もGoogle Playに登録していたなぁと思ってしばらく使ってないGmailを開いてみると。。。下記メッセージが届いておりすでに削除されていました!(笑)

[ご対応のお願い] デベロッパー アカウント(yamahide.biz)に問題があります
デベロッパー アカウントは使用されていないため、閉鎖される可能性があります

[最終通知] yamahide.biz 様、Google Play Console デベロッパー アカウントが閉鎖されました
デベロッパー アカウントは使用されていなかったため閉鎖されました

つかっていないアカウントだったのでショウガナイという気持ちと、25ドルがモッタイナイという気持ちとがせめぎあっています。まぁ、残っていてもAndroidアプリを公開する可能性は低いので、不要なアカウントは消していくっていう方針自体には同意です。

教訓としては、定期的にメール確認しましょうって事ですね!