極北別世界通信
技術書典14
Twitter側だけ投稿してて書いてなかった。。。
今更感溢れますが、備忘録的サムシングとして一応記載。
技術書典14参加してます。オンラインのみです。
https://techbookfest.org/organization/67530006
大したもんではないですが一応新刊3冊
とはいえメインのはずのマイナーOS本は今回途中までしか試験が完了してないので無料版です
mov2mov
Stable Diffusion
まぁあっちこっちで大量にブログ記事出てますし今更感もありますが、一応やったことは書き留めておこうの方針。
■ハードウェア
必須:nVidia製 VRAM 12GB以上のグラボ
厳密に言えばもっと低スペックのものでも動きますが、5万弱くらいですしさんざん遊び倒せるのでこのために購入するもアリかと
いまだとあっちこちで書かれてますが GeForce RTX3060 12GB (当方もこれ)が手ごろかと。
なおCPUは早ければ早いほど、メモリは多ければ多いいほどいいと思いますが、当方環境は
CPU:Core i3-4xxx(第4世代)
メモリ:16GB
でもなんとかなってるのでまぁ。
それよりもデスクトップPCを持ってない、あってもメインの1台、ケースが多いと思うので(複数台持ってるようは人はもうやってるでしょう)そこのほうがネックになるかもしれませんね。
可能ならこれ専用のマシンが1台あるほうがベターです。
中古型落ち品でCore5-7xxx以下の型番なら (Windows 11が確実に動かないので)今なら投げ売りしてる気がするのでなんとか準備してください。
■導入
・Python 3.10.6 のインストール https://www.python.org/downloads/release/python-3106/
※3.11が最新ですが、3.10.6でないと動きません。あと言うまでもないですが64bit版です。
インストールは普通にダブルクリックして進めればいいですが以下2点を注意
1.「Add Python 3.10 to PATHにチェック」
Pythonのインストーラの最初の画面では、左下に「Add Python 3.10 to PATH」というチェックボタンがあるのでチェックします。
その後、Install Nowを押してインストールを開始します。
2.パス最大260文字制限の解除
インストールが完了した後で「Disable path length limit」というボタンが見えますので、これを押します。
これを押すと、260文字までのパス長(フォルダ名などの長さ)の制限を解除するためのレジストリ変更処理が行われます。
なぜやるか?というと、Stable Diffusionなどの処理で、長いパス名を実行したりする際に260文字以上になる場合があり、エラーになってしまうことがあるからです。
コマンドプロンプトを起動して「python -V]
を実行してバージョンが表示されればOK
・git のインストール https://gitforwindows.org/
Git公式からWindows 64bit版をインストールします。基本的にデフォルトのままでいいはずですが
「Git bash here」というチェックだけは入れたほうがいい」
という記事もあるのでおこのみで。(Web UIのアップデートが楽になるそうですが未確認)
「git -v」を実行して、Gitのバージョンが表示されればOK
・Stable Diffusion WebUI
元々のStable Diffusionは(ざっくり言うと)pythonのコマンドラインで学習や生成を行うため、非常に面倒です。
それを楽に行うためのWeb UIがリリースされていますので、これを利用します。
わかる方はインストールしたGitでCloneしてもいいですし、
https://github.com/AUTOMATIC1111/stable-diffusion-webui
をZiPダウンロードして展開しても構いません。(sd.webui.zip というダウンロードリンクもあります)
ツールとして有効に使うならアップデートや他のツールインストールなども踏まえてCloneしたほうがいいようですが、ここでは体験することを優先するのでお好きなほうで。
ここではzipファイルを展開したパターンでのインストール説明をします。
展開先は任意のフォルダで大丈夫ですがパスは日本語を含めないほうが無難です。
なお、当方はFドライブに入れてますがアップデートやスクリプト等のgitでのインストールが上手くいくかどうかは不明です。
(のちに一部extensionのインストール時に権限周りでエラーが出たりしたので、使い続ける場合はgitでインストールしたほうがいいのかも)
※注意:当方が実施した順で記載してますが、update.bat -> run.bat の順序のほうが良いかもしれません。
フォルダ内の「run.bat」をダブルクリックして起動します。
自動でインストールが進みますので「続行するには何かキーを押してください」という表示が出るまで待ちましょう
上記インストールが完了後、「update.bat」も実行しておきましょう。
続いて「webui」フォルダの中にある「webui-user.bat」を「編集」します。
「set COMMANDLINE_ARGS=」の行を以下の通り書き換えます。
@echo off
set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=--autolaunch --xformers
call webui.bat
※なお、ここに以下に続く設定をすることで低スペックのグラフィックボードでも動くそうですが、試していません。
参考のために記載しておきますが自己責任でお願いします。
【ハイスペックGPU(VRAM12GB以上)】※上記で設定したのはこれ
--autolaunch --xformers
【ロースペックGPU(GTX10xxなど)】
--autolaunch --medvram --xformers
【GTX16xx専用】
--autolaunch --precision full --no-half --medvram --xformers
【VRAM4GBの超ロースペックGPU】
--autolaunch --lowvram --xformers
•autolaunch:
起動時にシステムのデフォルトブラウザで自動的にWebUIを開く。お好みで。
•precision full:
GTX16xxユーザー向け。起動時に画面が真っ黒になるのを防ぐ。
•no half:
GTX16xxユーザー向け。起動時に画面が真っ黒になるのを防ぐ。
•medvram:
生成速度を犠牲にVRAM消費量を節約する。
•lowvram:
medvramよりさらに生成速度を犠牲にしてVRAM消費量を大幅に節約する。
•xformers:
AIイラストの生成速度を高速化する
なお、VRAM6GB程度のGPUならlowvramではなくmedvramでもOKとのことです。(medvramにした方が、lowvramより2倍くらい生成時間が早くなるらしい)
VRAM4GBの場合はlowvramが必須のようです。
precision fullと no-halfに関しては、画面が真っ黒になる等のエラーが表示される場合に設定すると良いとのことです。
モデルデータの導入
AIによる画像生成はモデルデータと呼ばれる学習情報を元に行います。
色々な種類のモデルがありますが、これはもう各自の好みやどういったものを作りたいかということもあるので、最終的には各自で探してみてください。
ここでは、現在のStable Diffusionの前のバージョンのbaseモデルをバージョン2.1用に同じデータセットで調整したものということなので、以下をダウンロードしてセットします。
https://huggingface.co/stabilityai/stable-diffusion-2-1-base/resolve/main/v2-1_512-ema-pruned.ckpt
ダウンロードしたファイルを
【インストールフォルダ】\webui\models\Stable-diffusion
に配置します。
また、以下を取得して同じフォルダに置きます。
※上記の実施の内容については
https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Features#stable-diffusion-20
に説明があります。
これで準備が整ったので、「run.bat」を実行して起動します。
基本的には「prompt」にワードを入れて画像を生成しますが、単純な語句を入れただけだと思ったような画像にはなりません。あと語句は基本的に全て英語で入れます。
もちろん「dog」とか「cat」とか入れればそれらしい画像は生成されますが、細かいシチュエーション、背景、構図などの指定をしたり、逆に表示して欲しくないものは下の段の「negative prompt」に入れることでうまく生成されるようになります。
表示された画像に対して、細かな語句を調整したりすることでより生成したいイメージに合ったものにしていきます。
当サイトはセンシティブなネタは扱いませんが、おそらくニーズとしては現状、圧倒的に「そちら」方面な気はします。まぁこの手のテクノロジーの発展当初としてはある意味健全な気はしています(というかちょっと調べればわかりますが、そらまぁそういう用途に使うよね、としか思わない)
が、少し前のDeepFakeなどのように権利侵害などで問題になるようなケースが今後も出てくるものと思います。
折角の優れたテクノロジーも結局使うのは人間なので、どこまで行っても使う人間のリテラシー次第だなぁと思ったりします。
とりあえずインストールについて書いてみました。
時間があれば次回以降の同人誌の表紙くらいはこれで作ってみようかなぁと思っているのでその辺のことが書ける日が来たらまた。
年末年始
あけましておめでとうございます。
冬コミ前後は余裕が無くて何とか本は作ったもののそれ以外がさっぱりでした、、
マイナーOS本については、今回は珍しく?夏に向けてすでにネタを決めて進めているので、なるべく速やかに、なるべく内容も多くできればと思ったりしています。
現時点での計画は
・OpenVMS関連
冬コミ発行の号でも一応触れたんですが、
「Alpha Server DS10上で、OpenVMS Alpha 8.4(コミュニティライセンス)を動かしてみる」
のを中心にやれればと考えています。
どこまでやれるかはわかりませんが、せっかく所持しているハードウェアは有効に活用したいと思っています。
以下、未定な部分もありますが、夏向けの計画です。
・OpenVMS関連
Student KitでのOpenVMSの試用
Alpha Server DS10へのVersion8.4のインストール
VAXエミュレータ上へのOpenVMS7.3のインストール
※Itanium機も持っているので、こちらへのインストールまで手が延ばせればやりたいですが、現時点では未定です。
・ClearPath OS 2200 Express Editionの試用
メインフレーム系は当方はまったく現場を知らないというか通ってきていないので、もしかするとしんどい部分があるかもしれませんが、せっかく試用版があるなら触らせていただこうと思っています。
(まあそんなことを言ったらOpenVMSも全然通ってきてないんですが)
・その他
上記以外についての原稿も書きたいと思っていますが、まずは計画しているところまではしっかりやりたいと思っています。
いつもの駆け足レビュー的なものについてはネタがちゃんと集められればと思ってます。
技術書典13
オンラインだけですが参加予定です(イ18)
新刊なんとか準備したいが間に合うか微妙なこころもち
マイナーOS本改訂版の商業出版
8/12にマイナーOS本の大幅改定版が電子書籍メインで「技術の泉シリーズ」の1つとして商業出版されます。
この手の宣伝?って人のものをやるのは抵抗ないけど自分のものを宣伝するのに抵抗があるのは旧世代オタクだからなのでしょうか。
というわけで、「Operating System Maniacs -あなたの知らないマイナーOSの世界-」としてリリースされます。
とはいえ全体的に技術系の同人誌および商業化されたものって、ほんとに「技術書」系が多いんですよね。
当方の本は一応技術にかかわる内容もないわけではありませんが、やってることはひたすら「マイナーOSレビュー」にすぎないので、そのあたりは心配なところです。
コミックマーケット100
というわけでとりもとりあえず夏コミへの参加が確定しました。
場所とかは後で追記。
スペースは
「土曜日西地区 "す " 04b」
に配置されました。
コミケWebカタログもすでに公開されている模様。
https://webcatalog.circle.ms/Circle/Map/16217185/1 #C100WebCatalog
さすがにコミケ100には本を間に合わせないといけませんな
技術書典12参加予定
とりあえず申し込みました。
まだネタが出切ってませんが、、、直近でやってるNetFlowをElastiFlowで監視するとかでしょうか。
Operatign System Maniacs
というわけで、一応技術書典11用の新刊?をアップロードしました。
まだ審査中ですが。
今回は内容の薄さもあり無料配布です。
さすがにWindows 11の本を作るのもなんですしね。。。
ほんとに一応作った、というレベルではありますが、ご興味あれば是非。
審査完了したら直リンクも貼ろうかな。
Windows 11
というわけでWindows 11 のインストールをしたという夢を見たよ。。。
まぁOSマニア(マイナーOSじゃなくてもOSマニアなのは変わらんので)としては興味のあるところです。
どうなんでしょうね。どういう経緯で流出したのか、、、話題作りにわざと流出させたなんて陰謀論もあるみたいですが。
インストール部分はまぁWindows10と大差ないように見えますね。ほぼ全エディションが入っているようです。
実際のところは正直何とも言えませんが、そもそもWindows10で終わりってのは無かったことになってるんですかね?
まぁ実際のところリリースされたらAzure OSみたいな名前になるんじゃないかといった記事もチラ見しましたが、正直元々そんなに興味を持って動向を見守ってたわけではないので(ぶっちゃけ今回の流出騒ぎで、野次馬的にどれどれ?と興味を持っただけ)あとは25日の「what's next for Windows」を待つくらいでしょうか。
実際の感じは以下のようですよ?あくまで参考まで。
・前述しましたがインストール自体は現状のWindows10と大差ないように見えます。
実際にはリリースされた後はまぁオンラインでどうこうあるでしょうから何ともですが。
・流出してから時間が経ってますので、現状のISOイメージではインストールはできるように見えても何らかの制限をMS側でかけてくるかもしれませんね。
・実機の、ある程度新しいPCでやればまた違うのかもしれませんが、当方の夢の中ではリソースはあっても古いCPUのマシン上で動かしたせいかインストール完了までも相当にもっさりしていました。まぁ夢の話なのでどうでもいいですが。
2回ほどの再起動を挟んだ後の設定も、画面のイメージは変わっているものの、設定する内容はほぼ同じのようです。
起動直後はこんな感じになっているようですよ
そして書いたページをWindows 11から見るという妄想。
なんかで見た通り、スタートメニューが真ん中にあるのがヘンな感じ。ただUIやアイコンは変わってますがそれほど(現在のところは)極端に変更があるようには見えません。
Settings⇒Language⇒Add a LanguageでJapaneseを追加してみました。
いったんサインアウトを要求されたのでサインアウト。
ログインパネルはこんな感じ
さすがにIMEはまだ準備できていないようですね。
というわけで前のサイトの時に見たVMWareへのMacOSのインストール以来の謎の夢ですが、まぁ面白いっちゃ面白いですね。一過性のもんではありますが。
あれあれあれれ
グーグルの新OS「Fuchsia」、初代「Nest Hub」に提供開始
ってもうマイナーOSじゃないなぁ。。。
技術書典11 出展予定
というわけで、技術書典11 のオンライン出展に申し込みしました。
が、現状異常に忙しいので正直どこまでできるか不安があります。
参加するからには何かしら新しいものは出したいと思っていますが。。。
今のところは前回予告していたFuchia の実機動作を出せればと思っていますので、なんとか間に合わせたいです。
技術書典の無料配布本
技術書典の無料配布本については、無期限で
https://www.fnow.org/cabinets/cabinet_files/index/22/77112207056b57b3289031ccc6090fc0?frame_id=46
にてダウンロード配布中ですので、ご興味ありましたら是非ダウンロードしてご覧いただければと思います。
なお無料本2の内容は技術書典9で発行した有料本の補足みたいな内容になってしまっていますのでその点はご了承下さい。。。
技術書典 10 開催と月次映画祭
日記的な
明日から技術書典開幕。
本は入稿済み&無料本を一応作成済み。
基本は夏コミに向けてになりますが、Fuchsia OS のGUIインストールに向けて、
NUCの購入も完了済み。
明日の夜は月イチのプライベート地味目映画祭開催日
そんなかんじ。
Todo覚書
・既存リモート環境にシングルサインオンの導入
→Rocketchatのみ完了 原稿化予定
・その他のシステム
→架空の会社の社内システムを全部OSSで作るという
試験を1年ほどかけてやろうと思っています。
なので普段使いしているApache Guacamoleとインフラ系のDNSとかを除いて
まるっと構築しなおそうと考えています。
・Dockerプライベートレジストリをjenkinsとgitlab使って構築
→ネタとして面白そうと思ったのですが、当方がDockerを普段使いしてないので
イマイチ着手に至っていません。
・Snipe IT使って資産管理システム
→どちらかというとシステムより実際の登録と運用が肝。
導入自体は割と容易だったのですが、今回の架空の会社システム構築の際に
やり直す予定
・Exmentの活用の具体例
→こちらも同上。設計の大切さが身に沁みますな
・Zabbixでの監視と、各種ログのとりまとめ、可視化
→監視自体は設定してますが、細かい通知とかログのとりまとめはできてません。
ただそもそも監視に何を使うかの選定を優先する予定
(その上で架空の会社のシステム構築を行う方向)
・ヘルプデスクシステムをオープンソースで何とかする
→まだまだ調査段階。3つくらい候補がありますが、これも架空の会社の
システム構築で対応する予定。
■その他
・というわけで、いまのところは現行で使ってるもののうち残すものと新しい企画のために
いったんまっさらにするものに分けて対応する予定です。
まぁ自分向けのTodoなんですが。
技術書典とコミックマーケットとエアコミケ
技術書典が12/26~1/6
エアコミケが12/30、31
コミケ99が2021年5/2~5/5
なかなかハードですな。
どこまで達成可能かわかりませんが一応、原稿は以下の方針で進めてます。
■技術書典
OSM 2nd Version3 マイナーOS駆け足レビュー
dabble in... Vol.3 KeyCloakで既存環境にSSO導入(のさわり)
■エアコミケ
多分同時期なので基本は技術書典と同じ。
dabble in... のExtra Editionは作ろうと思っています。
ネタはアセットマネジメントのSNIPE ITか多目的CMSのodooか…
■コミケ99
OSM 2nd Version4 いまさらOS/2 WARPをVirtual Boxで動かしてみる(仮)
dabble in... Vol.4 Docker+gitlab+jenkinsでプライベートDocker Hub構築(仮)
ただコミケ99のネタは少し前に検討したけど自身の環境でそれほどDockerを現状は使っていないのでどうなるか未定。
それ以外に「架空の会社の社内システムを全部OSSで作ってみる」という演習を1年間かけてやってみる予定なので、その途中経過とかの本になるかもしれません。
Windowsの特殊フォルダ
当方の自宅のマシンにはドライブが18個くらいあるんですが、うっかり特殊フォルダを移動したのを忘れていて、デフォルトフォルダがユーザーのTempフォルダにされる事件があったので、その解消法を簡単に。
当方が被害?にあったのはCapturesフォルダでした。マイナーOSの挙動をWindowsのデフォルトのキャプチャ機能でキャプチャしておこうとしたら、キャプチャデータがどっか行ってしまいました。
設定を見たら(スタート⇒設定⇒ゲーム⇒キャプチャ)、なぜかユーザーのTempフォルダになってる。はて?
こういう時はレジストリだ!というわけでregeditを起動。
Win+Rキーから「regedit」とタイプしてEnter。
コンピューター\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
に、たくさんフォルダに指定が並んでますが、Capturesフォルダが存在しなくなったドライブに指定されてました。
フォルダが見当たらないとユーザーのTempフォルダにされちゃうんですね。
なお、名前は
{EDC0FE71-98D8-4F4A-B920-C8DC133CB165}
で、データの値を移動したいフォルダにすると、そこがキャプチャフォルダになります。
スタート⇒設定⇒ゲーム⇒キャプチャ
のフォルダもちゃんとそこに変更されます。
でもこういうのは簡単に設定できるようにしてほしいなぁ。なんかこうブラックボックスにしたい意地?みたいのを感じますな。
仮想マシンイメージの変換
覚書に近いですが。
VirtualBoxのVBoxManageコマンドを使って実施します。対象ファイルは全部同フォルダ/ディレクトリにある前提です。
前提:C:\Program Files\Oracle\VirtualBox
を
「コントロールパネル」⇒「システム」⇒「システムの詳細設定」⇒「詳細設定」タブ⇒「環境変数」⇒「Path」に追加
※当方はユーザー環境変数に入れてますがお好みで。
sd★はもちろん例です。
■物理HDD ⇒ RAW
sudo dd if=/dev/sd★ of=./sd★.img ※Linuxでやるほうが楽なのでこうしてます。Windowsでもできるツールはあります
■RAW ⇒ VDI
VBoxManage convertfromraw sd★.img sd★.vdi --format VDI
■RAW ⇒ VMDK
VBoxManage convertfromraw sd★.img sd★.vmdk --format VMDK
■VDI ⇒ VMDK
VBoxManage clonehd sd★.vdi sd★.vmdk --format VMDK
■VMDK ⇒ VDI
VBoxManage clonehd sd★.vmdk sd★.vdi --format VDI
■VDI ⇒ RAW
VBoxManage clonehd sd★.vdi sd★.img --format RAW
■RAW ⇒ 物理HDD
sudo dd if=./sd★.img of=/dev/sd★ ※最初の物理 ⇒ RAWと同様Linuxで実施
主にダウンロードしたマイナーOSのHDDイメージを変換する際に利用してます。
覚書更新
・オープンソースHCI
→オール仮想マシンでやろうとして失敗中
・既存リモート環境にシングルサインオンの導入
→Rocketchatのみ完了
→NextCloudはできるらしいが若干不安あり
→その他はまだ厳しそう
・Dockerプライベートレジストリをjenkinsとgitlab使って構築 →未着手
・Snipe IT使って資産管理システム
→どちらかというとシステムより実際の登録と運用が肝。少しずつやってるがあまり進捗なし
・Exmentの活用の具体例
→わりと同上。インストールやら構築よりその先のほうが肝心
・Zabbixでの監視と、各種ログのとりまとめ、可視化
→進んでない。他の機能の方を優先してる感じ
・ヘルプデスクシステムをオープンソースで何とかする
→まだまだ調査段階
■その他
・GoogleのSearch consoleやらは放置しすぎてたのとodooで構築してたサイトが度々接続切れてたせいかGoogle八分食らってて草生える。ちゃんとしないと。
・コソコソいろんな仕事の対応したりしてたら異常にいそがしく
・技術書典10に申し込んだがなにやろう。
・とりあえず自分で使ってて最も有用なApacheGuacamoleは押し続けたい所存。ログ取りやら解析やらそのあたりももう少し踏み込んでやりたい
・今更シェルスクリプト書いたりしてるけどなんというかコードがきったねぇ。エレガントに?書く訓練もしとらんからあれだが