銀河の歴史がまた1ページ(日記)

Last Update (2024/04/01 21:29:40)
1997.09.06から数えて counter 番目のアクセスです。

ミラーサイト [www.ceres.dti.ne.jp] [yk.rim.or.jp]

[ホームページ] [日記] [日記ファイル一覧] [読んでいる日記] [FreeBSD] [FreeBSD LINK] [検索]

ページ内目次


■ 宇宙暦 2023.08.03

http://www.ceres.dti.ne.jp/~george/jdiaryC30801.html#20230803

2023.08.03(木) 22:52:05 diffusers ライブラリで EasyNegativeV2 みたいな補正を読み込む場合

diffusers ライブラリで EasyNegativeV2 みたいな補正を読み込む場合

tag: diffusers

a1111形式のtextual inversionの場合は以下のように記述する模様。

from diffusers import StableDiffusionPipeline
import torch

model_id = "runwayml/stable-diffusion-v1-5"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16).to("cuda")

pipe.load_textual_inversion("./charturnerv2.pt", token="charturnerv2")

prompt = "charturnerv2, multiple views of the same character in the same outfit, a character turnaround of a woman wearing a black jacket and red shirt, best quality, intricate details."

image = pipe(prompt, num_inference_steps=50).images[0]
image.save("character.png")

EasyNegativeV2.safetensorsの場合は以下。

第1引数にディレクトリ名を指定。 weight_nameには拡張子safetensorsを残してファイル名を指定。 tokenにはプロンプトで使う文字列を指定。

pipe.load_textual_inversion("./embeddings", weight_name="EasyNegativeV2.safetensors", token="EasyNegativeV2")

一応 seed 固定で実験してみると、絵の形が変わるので効いているっぽい雰囲気はある。


■ 宇宙暦 2023.08.10

http://www.ceres.dti.ne.jp/~george/jdiaryC30801.html#20230810

2023.08.10(木) 08:33:02 Firefoxでキャッシュサイズを変更する方法

Firefoxでキャッシュサイズを変更する方法

tag: firefox


■ 宇宙暦 2023.08.11

http://www.ceres.dti.ne.jp/~george/jdiaryC30801.html#20230811

2023.08.11(金) 17:25:39 ChatGPTのopenaiライブラリでchatのstreamモードを実装する

ChatGPTのopenaiライブラリでchatのstreamモードを実装する

tag: chatgpt, openai

openai==0.27.8の話。

以前見た時よりストリームモード実装が簡単になっているような気がする...。

上に載っているサンプルコード。

# Example of an OpenAI ChatCompletion request with stream=True
# https://platform.openai.com/docs/guides/chat

# a ChatCompletion request
response = openai.ChatCompletion.create(
    model='gpt-3.5-turbo',
    messages=[
        {'role': 'user', 'content': "What's 1+1? Answer in one word."}
    ],
    temperature=0,
    stream=True  # this time, we set stream=True
)

for chunk in response:
    print(chunk)

for chunk in response のループにて、続々と到着するストリーミングモードのChatGPTの応答をchunkとして取り出して処理する形になっている。

日本語だとほぼ1文字ずつchunkとして送られてきててちょっとおもしろい。

2023.08.11(金) 17:40:02 NVIDIA GeForce Experience のオーバーレイ「alt + Z」のショートカットをオフにする方法

NVIDIA GeForce Experience のオーバーレイ「alt + Z」のショートカットをオフにする方法

tag: geforce, nvidia, vscode

alt + Z は vscode でよく使うのでこのショートカットをオフにする方法をメモ。


■ 宇宙暦 2023.08.13

http://www.ceres.dti.ne.jp/~george/jdiaryC30801.html#20230813

2023.08.13(日) 18:48:38 FreeBSD用のvagrant box イメージ(Hyper-V)が無いゾ → freebsd公式boxイメージを使う

FreeBSD用のvagrant box イメージ(Hyper-V)が無いゾ → freebsd公式boxイメージを使う

tag: vagrant, virtualbox, freebsd, freebsd-13.2, freebsd

genericさんの vagrant 用 box イメージ (Hyper-V) の更新が途絶えてしまったようだ。

久しぶりに FreeBSD 公式の virtualbox イメージを使う。

■環境

普通は Windows 上で VirtualBox を動かす場合は Hyper-V をOFFにしないといけない。

ただ VirtualBox も改良が進んでいて、Hyper-Vを有効にしたままでも一応 Guest OS が起動するくらいはするようになっているようだ。

仮想マシンの動作が遅くなるのでオススメはできないけど。

特に、ssh の X11Forwarding yes を使って Firefox とか Thunderbird を使おうとすると起動中にハングするほど重くなるので注意。 emacsならX11Forwarding経由で起動できるけど。

■Vagrantfile

boxイメージのディスク容量が足りないので追加ディスクを指定している。

Vagrant.configure("2") do |config|
  config.vm.box = "freebsd/FreeBSD-13.2-RELEASE"
  config.vm.box_version = "2023.04.07"
  # Disable automatic box update checking. If you disable this, then
  # boxes will only be checked for updates when the user runs
  # `vagrant box outdated`. This is not recommended.
  config.vm.box_check_update = false

  config.vm.synced_folder ".", "/vagrant", type: "rsync", rsync__exclude: [ ".git/" ]
  config.vm.boot_timeout = 800
  config.ssh.shell = "sh"


  # freebsd64
  config.vm.define "freebsd64" do |master1|
    master1.vm.hostname = "freebsd64.area54.local"

    master1.vm.provider "virtualbox" do |vb|
      vb.customize ["modifyvm", :id, "--memory", "6000"]
      vb.customize ["modifyvm", :id, "--cpus", "2"]

      # add storage /dev/ada1
      file_to_disk = "../vagranthdd/64-freebsd-ada1.vdi"
      unless File.exist?(file_to_disk)
        vb.customize ['createhd', '--filename', file_to_disk, '--size', 100 * 1024, '--format', 'VDI'] # 100GB
      end
      vb.customize ['storageattach', :id, '--storagectl', 'IDE Controller', '--port', 0, '--device', 1, '--type', 'hdd', '--medium', file_to_disk]

      # add storage /dev/ada2
      file_to_disk = "../vagranthdd/64-freebsd-ada2.vdi"
      unless File.exist?(file_to_disk)
        vb.customize ['createhd', '--filename', file_to_disk, '--size', 100 * 1024, '--format', 'VDI'] # 100GB
      end
      vb.customize ['storageattach', :id, '--storagectl', 'IDE Controller', '--port', 1, '--device', 0, '--type', 'hdd', '--medium', file_to_disk]
    end

    # PROXY設定を環境変数PROXY_SERV_PORT,PROXY_USER,PROXY_PASSから読み込んでVM側に持ち込む
    # https://qiita.com/hakomikan/items/860bb960699889849933 Vagrantfile をコミットするために - Qiita
    master1.vm.provision "export env",
    type: "shell",
    run: "always",
    privileged: true,
    inline: <<-SHELL
        mkdir -p /etc/profile.d
        echo "# vagrant script for every boot" > /etc/profile.d/vagrant.sh
        echo export VBOX_HOST_NAME=freebsd64 >> /etc/profile.d/vagrant.sh
        echo export VBOX_FIXED_IP_ADDR=192.168.54.64 >> /etc/profile.d/vagrant.sh
        echo export PROXY_SERV_PORT=#{ENV['PROXY_SERV_PORT']} >> /etc/profile.d/vagrant.sh
        echo export PROXY_USER=#{ENV['PROXY_USER']} >> /etc/profile.d/vagrant.sh
        echo export PROXY_PASS=#{ENV['PROXY_PASS']} >> /etc/profile.d/vagrant.sh
        echo export PROXY_SKIP=#{ENV['PROXY_SKIP']} >> /etc/profile.d/vagrant.sh
        echo export http_proxy=#{ENV['http_proxy']} >> /etc/profile.d/vagrant.sh
        echo export https_proxy=#{ENV['https_proxy']} >> /etc/profile.d/vagrant.sh
        echo export no_proxy=#{ENV['no_proxy']} >> /etc/profile.d/vagrant.sh
        echo "export ADDITIONAL_ETC_HOSTS_1=\\"#{ENV['ADDITIONAL_ETC_HOSTS_1']}\\"" >> /etc/profile.d/vagrant.sh
        echo "export ADDITIONAL_ETC_HOSTS_2=\\"#{ENV['ADDITIONAL_ETC_HOSTS_2']}\\"" >> /etc/profile.d/vagrant.sh
        echo "export ADDITIONAL_ETC_HOSTS_3=\\"#{ENV['ADDITIONAL_ETC_HOSTS_3']}\\"" >> /etc/profile.d/vagrant.sh
        chmod +x /etc/profile.d/vagrant.sh
    SHELL

    # shell provisioner
    master1.vm.provision "shell", path: "setupscripts.sh"

  end
end

■setupscripts.sh

セットアップスクリプトの中では追加ディスクをnewfsしたりzfs作ったりしている。

root(/)の容量が足りないので /usr とか /home とかは追加ディスクの中にコピーして使う。

#!/bin/sh

set -e

f_log() {
    echo "■ $(date) $@"
}

f_cmd_no_err() {
    if "$@" ; then
        echo -n ""
    else
        echo -n ""
    fi
}

f_log "環境変数読み込み"
if [ -r /etc/profile.d/vagrant.sh ]; then
    . /etc/profile.d/vagrant.sh
fi

# IPアドレスのaliasを追加。
f_log "IPアドレスのaliasを追加"
ifconfig em0 inet ${VBOX_FIXED_IP_ADDR}/24 alias

# /etc/hosts設定
f_log "/etc/hosts設定"
cat /etc/hosts | grep -v ${VBOX_HOST_NAME} > /etc/hosts.2
mv /etc/hosts.2 /etc/hosts
echo "${VBOX_FIXED_IP_ADDR}  ${VBOX_HOST_NAME}.hyperv.local   ${VBOX_HOST_NAME}" >> /etc/hosts
if [ ! -z "$ADDITIONAL_ETC_HOSTS_1" ]; then
    echo "$ADDITIONAL_ETC_HOSTS_1" >> /etc/hosts
fi
if [ ! -z "$ADDITIONAL_ETC_HOSTS_2" ]; then
    echo "$ADDITIONAL_ETC_HOSTS_2" >> /etc/hosts
fi
if [ ! -z "$ADDITIONAL_ETC_HOSTS_3" ]; then
    echo "$ADDITIONAL_ETC_HOSTS_3" >> /etc/hosts
fi

f_log "pkg アップデート"
pkg update

f_log "pkg アップグレード"
pkg upgrade -y

f_log "bashインストール"
pkg install -y bash

f_log "ansibleインストール  py39-ansible"
pkg install -y py39-ansible



# ada1をufsでディスクをフォーマットして/newdiskとして使う(ada1)
if true ; then
    if [ ! -d /newdisk ]; then
        f_log "fpart ada1 チェック"
        if gpart show ada1 | grep freebsd-ufs ; then
            f_log "gpart ada1 パーティション設定済み"
        else
            f_log "gpartディスク追加 ada1"
            # GPTを作成
            gpart create -s GPT ada1
            gpart show ada1
            # ada1のほぼ全部をfreebsd-ufsで確保する
            gpart add -t freebsd-ufs -a 1M ada1
            gpart show ada1
            # ファイルシステムを作る
            newfs -U /dev/ada1p1
        fi
        # マウントポイント作成
        mkdir /newdisk
        # fstabに追記
        echo "/dev/ada1p1    /newdisk    ufs    rw   2  2" >> /etc/fstab
        # マウント実行
        mount /newdisk
        df -h
    fi
fi

# newdiskの中に /usr 以下と /home 以下をコピーしてそこを使う
if true ; then
    if [ ! -d /newdisk/usr ] ; then
        mkdir -p /newdisk/usr
        OLD_PWD=$PWD
        cd /newdisk
        ( cd / ; tar cpf - usr ) | tar xpf -
        cd /
        /bin/mv /usr /usr.orig
        /bin/ln -sf /newdisk/usr /usr
        cd $OLD_PWD
    fi
    if [ ! -d /newdisk/home ] ; then
        mkdir -p /newdisk/home
        OLD_PWD=$PWD
        cd /newdisk
        ( cd / ; tar cpf - home ) | tar xpf -
        cd /
        /bin/mv /home /home.orig
        /bin/ln -sf /newdisk/home /home
        cd $OLD_PWD
    fi
fi

# ada2全体をzfsとして使用 (ada2)
if true ; then
    if [ ! -d /zpool/rsync ]; then
        # zfs 有効化
        echo 'zfs_enable="YES"' >> /etc/rc.conf
        # zfs service 開始
        service zfs start
        # zpoolで1台のディスク ada2 全体を使用する
        echo "zpool create zpool /dev/ada2"
        zpool create zpool /dev/ada2
        df -k
        zfs create zpool/vm
        zfs create zpool/rootdisk
    fi
fi

f_log "セットアップ完了"
exit 0


■ 宇宙暦 2023.08.15

http://www.ceres.dti.ne.jp/~george/jdiaryC30801.html#20230815

2023.08.15(火) 18:23:29 emacs と wanderlust でメールを表示する

emacs と wanderlust でメールを表示する

tag: emacs, wanderlust, mail, freebsd-13.2, freebsd

■ WanderLust のインストール

(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))

■ WanderLust の設定

(autoload 'wl "wl" "Wanderlust" t)
#
# Folder definition file
#

# IMAP folder
%INBOX
%INBOX.inbox2
%INBOX.trash

# end of file.
(setq wl-from "Jun Obama <george@yk.rim.or.jp>")

;; デフォルトの接続先サーバを指定。
(setq elmo-imap4-default-server "localhost")
(setq elmo-pop3-default-server "localhost")
(setq wl-smtp-posting-server "localhost")
(setq elmo-nntp-default-server "localhost")
(setq wl-nntp-posting-server elmo-nntp-default-server)

;; 認証時の暗号化を設定。ここでは生パスワードを指定。
(setq elmo-imap4-default-authenticate-type 'clear) ; 生パスワード

;; aliasファイルの指定
(setq wl-alias-file "~/aliases")

■ WanderLust の起動

■ 参考文献


■ 宇宙暦 2023.08.16

http://www.ceres.dti.ne.jp/~george/jdiaryC30801.html#20230816

2023.08.16(水) 13:29:19 HashiCorp (terraformなど) 今後リリースする全製品のライセンスをBSL 1.1 に変更

HashiCorp (terraformなど) 今後リリースする全製品のライセンスをBSL 1.1 に変更

tag: terraform, vagrant

MongoDBと同じライセンスにするようだ。


■ 宇宙暦 2023.08.26

http://www.ceres.dti.ne.jp/~george/jdiaryC30801.html#20230826

2023.08.26(土) 06:42:25 ARMORED CORE VI 購入

ARMORED CORE VI 購入

tag: game, armored-core-6

10年ぶりの祭りらしいので購入。

この手の難しいゲームはすぐ投げちゃうんだけどw

過去シリーズはやったことないけどゲームパッド(箱コン)でできるのだろうか? → パッドも選択できる様子。

今回はキーボードとマウスで遊んでみる。

チュートリアルのヘリってこれかw 10回近くやられたゾww

本編が始まってからのミッション2個くらいはボスとかでてこなくて普通。 ミッションクリア後、もう1回やってみたら報酬も出た。(無限に金策はできないだろうが...。→できるらしい) これでやっとパーツが買える。

p.s.

まだ1章の壁超えを通過したあたり。


日記ファイルリスト最新100件


Copyright(c) 1996-2024 George(小濱 純). All rights reserved.
私の作成したページへのリンクはご自由にどうぞ。
このページに間違いや要望などがありましたら george@yk.rim.or.jp まで御連絡ください。
メール本文に 6020-5440-3372 とか私の 本名 を漢字で書いて頂くと、ウチのSPAMフィルタを通過できます。

[ホームページ] [日記] [日記ファイル一覧] [読んでいる日記] [FreeBSD] [FreeBSD LINK] [検索]

home: <george@yk.rim.or.jp> or <george@ceres.dti.ne.jp>
(I am using white list SPAM filter. To avoid it, please write 6020-5440-3372 in mail body. This key word is valid since 2009-06-14 until 2024-12-31.)