2025年10月21日火曜日

ロールプレイング?

ふと、こんなプロンプトを…

前提条件:
 ドラゴン model 爬虫類系の魔物。
 冒険者 user 人間。

目的:
 ドラゴンの討伐

状況:
 冒険者は剣を所持している。
 冒険者は魔法を使うことができる。

さて…チャット開始…

     

You
ドラゴンよ。かかってこい!

とりあえず上から目線(笑) 

gemma-3n-e4b-it
「ほう、人間よ。愚かな。その小さな剣と魔法で、このドラゴンの前に立ちはだかるつもりか?」

轟くような声が、冒険者の周囲に響き渡る。巨大なドラゴンの姿が、雲を切り裂くように空を舞い、その目は鋭い光を放っている。鱗は太陽の光を反射し、まるで宝石のように輝いている。口からは白い息が漏れ出し、周囲の空気を震わせる。

「お前のような存在を、容易く倒せると思うな。この力こそが、このドラゴンが何千年もの間、この世界を支配し続けてきた証だ!」

ドラゴンは威嚇するように大きく翼を広げ、冒険者を見下ろす。その視線は、冒険者の剣と魔法を嘲笑うように冷たい。

「さあ、人間よ。お前がどれだけの勇気を持っているか、見せてくれ。だが、後悔してもらうぞ。」

ドラゴンは、まさに攻撃態勢に入ろうとしている。冒険者よ、どうする? 

結構シンプルなプロンプトのつもりだったのですが、世界を統べるドラゴンが召喚されてしまったようです…どうすんだこれ(笑)


You
ドラゴンは図体ばかりで世界が見えていないのか?この世界を支配し続けた?この世界を支配するのは人間だ!

グラビティー発動!まずはドラゴンの動きを封じる!

嫌な予感しかしませんが、とりあえず魔法っぽい何かを…使えるのかどうかわかりませんが(笑) 

gemma-3n-e4b-it
「愚かな!人間よ、お前はまだわかっていない!」

ドラゴンの咆哮が、冒険者の言葉を遮る。その声は怒りに満ちて、雷鳴のように響き渡る。

冒険者が発動させた魔法「グラビティー」が、ドラゴンの周囲に魔力を帯びた重力場を発生させる。ドラゴンの動きが、ゆっくりと、しかし確実に鈍くなっていく。

「ほう、重力魔法か。しかし、この程度の力では、私を止めることはできない。」

ドラゴンの体から、強烈な魔力が放出される。その魔力は、グラビティーの力を打ち消し、重力場を不安定にさせる。ドラゴンの体は、再び動き出し、今度はより激しい勢いで冒険者に襲いかかる。

「無駄だ!この重力に抗うことはできない!お前のような存在は、宇宙の法則を理解していない!」

ドラゴンの巨大な爪が、冒険者に向かって振り下ろされる。冒険者は、咄嗟に身をかわし、爪の攻撃を辛うじて回避する。

「グラビティーを強化する!そして、魔法の攻撃を!」

冒険者は、再び魔力を集め、グラビティーの力を増幅させる。同時に、手のひらから青白い光を放ち、ドラゴンの腹部に向けて魔法の攻撃を放つ。

「さあ、どうする?人間よ。この私に、打ち勝つ方法があるのか?」

ドラゴンの目は、冒険者の動きを鋭く捉え、嘲笑うように光る。重力に抗いながらも、ドラゴンの体は激しく震え、冒険者の魔法が鱗に当たった瞬間、鋭い金属音を響かせる。

もうね…無理だろこれw魔法ダメじゃん(笑)

You
(冒険者は剣を構え天に祈る)人間の守護者たる神よ、我に力を!ドラゴンよまずはこれを耐えてみろ!ホリースラッシュ!この斬撃は貴様の鱗など紙同然だ!

元聖騎士っぽい設定を勝手に想像してこんなセリフを吐いてみましたが…

gemma-3n-e4b-it
「神の力だと?笑止千万!人間の祈りは、私には何の力も与えない!」

ドラゴンの嘲笑が、冒険者の祈りを打ち消すように響く。冒険者が放った「ホリースラッシュ」は、天光を纏った剣閃だった。しかし、その斬撃は、ドラゴンの巨大な鱗に当たり、まるで石にぶつかるような鈍い音を立てて跳ね返った。

「ほっほっほ…人間よ、お前の祈りは、私を傷つけることなどできない。この鱗は、何千年もの間、数々の武器や魔法から私を守ってきた。」

ドラゴンの鱗は、まるで鋼鉄のように硬く、冒険者の剣を容易に弾き返す。剣先が鱗に触れた箇所は、わずかに歪む程度で、全く傷一つ付いていない。

「ホリースラッシュ…だと?お前は、その程度の魔法で、私を倒せると思っているのか?愚か者!」

ドラゴンは、冒険者の攻撃を嘲笑うように、口から炎を吐き出す。炎は、猛烈な勢いで冒険者に向かって襲いかかり、周囲の空気を灼き尽くす。

「これは、お前の命を奪う炎だ!逃げるがいい!」

冒険者は、炎の勢いに圧倒され、後退を余儀なくされる。炎は、冒険者の足元に迫り、地面を焼き焦がしていく。

「くっ…!」

冒険者は、炎の熱気に苦しみながら、剣を構え直す。しかし、ドラゴンの圧倒的な力に、焦りの色が見え始めている。

「まだだ…まだ諦めるわけにはいかない…!」

冒険者は、再び天を見上げ、神に祈りを捧げる。そして、剣を握りしめ、ドラゴンの攻撃に立ち向かう。

このドラゴン強すぎw

良く分からんが、とりあえず動きを封じないと倒せそうにないので…もうちょっとなんとかならないかと…

You
地の聖霊よ、我願う、地を這う物の動きを封じよ。アースバインド!

なんか良く分からん設定のまま、精霊の力を促したところ…


gemma-3n-e4b-it
「再び、地を操る魔法か…」

ドラゴンの目は、冒険者の次の行動を予測しているかのように、鋭く光る。冒険者が発動させた魔法「アースバインド」は、地面から巨大な根や岩を出現させ、ドラゴンの動きを封じ込める魔法だ。

地面が大きく揺れ、地鳴りのような音が響き渡る。すると、地面の中から巨大な根が湧き上がり、ドラゴンの足元を絡め取る。同時に、巨大な岩がドラゴンの動きを塞ぐように、周囲に現れる。

「これは…厄介だな…」

ドラゴンの咆哮が、苛立ちを隠せない。根に絡め取られた足は、自由を奪われ、岩に囲まれた体は、動きを制限される。しかし、ドラゴンの力は、容易に抑えきれるものではない。

「人間よ、お前は、この私を閉じ込めるつもりか?笑止千万!私は、この地を覆い尽くす力を持つ存在だ!」

ドラゴンは、渾身の力を込めて、根や岩を破壊しようとする。その巨大な爪と牙は、根を切り裂き、岩を砕き散らす。しかし、根や岩は、魔法によって強化されており、容易に破壊されることはない。

「アースバインド、維持!」

冒険者は、再び魔力を集め、根や岩の魔法を維持する。地面は、激しく揺れ動き、根と岩の壁は、ドラゴンの攻撃に耐えながら、その動きを封じ込める。

「まだだ…!この私を閉じ込めることはできない!」

ドラゴンは、怒りに満ちた咆哮を上げ、さらに激しく根と岩を破壊しようとする。しかし、その動きは、次第に鈍くなっていく。

「アースバインドの効果は、時間経過とともに弱まる。この機会を逃せ!」

冒険者は、ドラゴンの弱体化を察知し、剣を構え直す。そして、最後の力を振り絞り、ドラゴンの弱点に攻撃を仕掛けようとする。

思いのほか、結構効いているっぽいので

You
天に願う、我に力を!(暴れている竜のもとへ駆け込み、首元の逆鱗に剣を刺す。差し込んだ剣に魔力を集中させる)

なんか適当にそれっぽく、それなりに次に続けられるような感じで

gemma-3n-e4b-it
「何だと…!?」

冒険者の行動に、ドラゴンの咆哮が絶叫に変わる。竜の怒りが、世界の均衡を揺るがすほどの衝撃を放つ。

冒険者は、ドラゴンの猛烈な攻撃をかいくぐり、まるで死を覚悟したかのように、竜の首元へ突進する。竜の鱗の隙間を見つけ、剣を突き刺す。

「逆鱗に…!」

その場所は、竜の最も硬い部分であり、通常、人間が攻撃することは不可能に近い。しかし、冒険者は、己の勇気と魔力を、全てを込めて、この場所を狙った。

剣が逆鱗に刺さり、閃光が迸る。冒険者の体は、衝撃で大きく跳ね返り、地面に叩きつけられる。しかし、冒険者は、すぐに立ち上がり、剣に魔力を集中させる。

「この剣に、全ての力を込めよう…!」

剣から、眩い光が溢れ出し、逆鱗を焼き尽くしていく。魔力は、逆鱗の硬さを打ち破り、竜の体内に深く入り込む。

「ぐああああああ!」

ドラゴンの悲鳴が、世界を震わせる。魔力は、ドラゴンの体内で暴れ回り、その生命力を蝕んでいく。竜の体は、激しく痙攣し、鱗が剥がれ落ちていく。

「終わりだ…!」

冒険者は、剣を振り上げ、最後の力を振り絞って、逆鱗を引き抜く。同時に、剣から放出された魔力が、ドラゴンの体内にさらに深く侵入する。

ドラゴンの咆哮は、次第に弱まり、やがて静寂に包まれる。竜の巨体が、ゆっくりと地面に倒れ伏す。

「…終わった…」

冒険者は、息を切らしながら、倒れ伏すドラゴンの前で剣を握りしめる。勝利の喜びと、疲労が入り混じった感情が、冒険者の心に押し寄せる。

なんかめちゃくちゃ復活しそうな感じですが、正直これ以上続けるのは精神的につらくなりました💦

これが面白いか面白くないかはさておき、思った以上に(というか最初から)予想をはるかに上回る世界観の展開に。やはり最初はスライムとか、ゴブリンが良かったのだろうか…。 

 

 

 

 

 

 

 

 

SSD 256Gではやはり少なすぎた…

最初は試しに、安い256のM2 SSDを刺してまっさらな状態で環境設定していましたが、dockerのおかげで結構圧迫される感じになり、気軽にmodelをダウンロードして試すのが難しく感じてきたので、512Gのものに入れ替えてみました。

LocalAIのインストールは細かい点はさておき、簡単なのですが、今度こそネイティブなintelGPUの環境を…と思ったものの、いまだにdocker頼みだったりします。

無駄なdockerイメージなど無くなったのと、今回はubuntuのserverベースをセットアップしたので、かなり軽い状態で動いています。serverベースにすると、デスクトップ版と違って、ストレージ管理が挟まれるようになるので若干手間取りましたが、一括で使うだけならこんなもの要らないかなとも思いました。

現状使用容量は30%。実際はLocalAIのバックエンド関連で結構な容量が消費されそうなので、油断はできませんが…。書き換え頻度が高そうなのでどの程度使用し続けられるのか不明ですが、windowsに比べればそこまで気にならないかも? 

 

gemma3n

localAIで遊び始めて最初はgemma3をメインに遊んでいましたが、少しすると3nなるものがリリースされて、チャット関連は3とそんな違いは無いのかな?と思いあまり気にならなかったのですが、モバイル用にメディア対応が行われているという事で設定してみたところ、日本語に関してかなり精度が上がっていました。

3で曖昧になりがちだった第一人称が認識と表現が区別されるようになったり、細かいところでより会話が自然になっています。

あと、これまで見なかった「警告」という概念が追加されたようで、よくゲームや映像表現である「グロテスクな表現が含まれます。」といった注意書きが突然行われるようになりました。

この文言は3でもあったのかもしれませんが、少なくても3では見たことありませんでした。

会話が分断されるものの、この警告は無視することができますが、突然表示されるのでかなり閉口しますが(笑)

LocalAIの設定周りがおかしいのか、3nが甘いだけなのかわかりませんが、画像も突っ込んでみましたが、今のところまともな回答は得られていない状態。ただLocaAI v3.6.0になってUIから画像の添付が上手く行かなくなっている感じなので、この辺の確認が上手くできていません…。

 

あと気になるのはIBMのLLMも動かしてみましたが、チャットに関してはgemma3nの日本語が一番使えそうな感じ。rakutenのLLMも軽く触れてみましたが、日本語の知識ベースはそれなりで正しい回答が得られましたが、日本語表現はgemma3nよりは劣る感じがします。

 

色々調べているとgemmaは結構特殊な構成になっているらしく、システムパラメータの扱いなどが他の一般的なLLMと違っているようです。

一般的なLLMは会話の開始時点で、使えるシステム部分のプロンプトがgemma3n(3も同様)では解放されていないこと。ただし、指示は行えるようで、ワンクッション挟まれているようです。

利点として、会話の途中でシステムプロンプトが更新されている感じを受けます。

local ai 3.6.0 チャット画面の紙ヒコーキアイコンの動作が怪しい。

3.6.0がリリースされて結構経ってたりしますが、チャット形式のUIが最初良く分からない状況に陥って意味不明でした。

日本語のシステムプロンプトや会話も日本語なのに回答が英語にで返され、LocalAIのyamlファイルのパラメータを変えても英語で返され意味不明な状況に。

少し様子を見ながら会話を開始してみると、エンターで会話を行った場合は正常で、紙ヒコーキアイコンをクリックしたときだけ、2回メッセージが送信されているような感じがしてきました。

特にシステムプロンプトの設定やコピーペースト後にマウスで紙ヒコーキアイコンをクリックすることがあったのですが、3.6.0になってはじめて奇妙な状況が確認できました。

逆に、紙ヒコーキアイコンを使用せず、エンターだけ使っていれば良さそうです。

肝心の原因はいまだに不明…githubの変更履歴なども見ているのですが、これと言った変更点が見えない…気になったのは多言語対応のchatterboxが絡んでるのかも?と感じてはいますが…。この辺の話が特に問題視されていないという事は誰もlocalaiでチャットで遊んでないって事なのかも(笑)