Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
SVX日記(2025-10)
[go: Go Back, main page]

SVX日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|12|
2025|01|02|03|04|05|06|07|08|09|10|

2025-10-05(Sun) TopDrivin'でマリーナベイを走る

 とりあえずの実装が多いので、しばらくはリファクタリングかな」とは書いたが、丸々1ヶ月近くかかるとは思わなかった。概ね動いている「F1中継とほぼコンパチなラップタイム表示」をできるだけ整然とサラッとした感じに書き直すだけのことに。

  どうにか納得できるようなコードになったが、何度も書いては元に戻しを繰り返して、ちょっとイヤになってしまうほどだった。まぁ、その分、様々なノウハウが溜まったけれども。

  そして今週末はF1のシンガポールGPということで、コースデータを作ってみた。気づけば、1年半以上前にメルカトル補正のテストに使ったサーキットではないか。当時とは航空写真が更新されているな。あの時点ではコースデータはJSON化してなくて、スクリプト内に直書きしてたっけ。

  作ったところでテスト走行してみる……が、市街地サーキットは車だらけで実に走りづらい。そもそもコースが設置されていないし……とはいえ、フリー走行の中継映像と突き合わせながら練習走行を繰り返すうち、徐々に上達し、自分の作ったゲームのゲーム性が明らかになってきた。

  自分で作っておいて、そのゲーム性を知るというのもヘンだが、現実の地図データを使う都合から、ゲームバランスよりもシミュレーションを優先して作ってきたので、ゲームの体をなしていない可能性も十分にあるのだ。結果は……

 

  ……ムチャクソシビアだが、それなりに楽しめるような気がする。なんというか視野が狭いので完全に覚えゲー。コーナまでの距離(色)表示や道路の形状を目印に、シフトダウンで減速、ハンドル操作でアウトインアウトを狙う。フレーム単位の操作の遅れで大きくコースアウトしてしまうシビアさは音ゲー以上。当たり判定は「ない」ので、トラックリミットを超えたと思ったら失敗。

  つうても、実際のレースも覚えゲーだよな。ブレーキのタイミングやライン取りなんかね。コースアウトしないで走るだけでも難しい。が、何周もすれば徐々に走るラインが収束してくる。気づけば熱中してしまっていた。結局100周くらいは走ったかもしれない。一番マトモに走れたラップを動画にしてみた。ターン13ではちょっと壁をコスッてるかなぁ。

  100周も走ると、F1中継を観る視点がちょっと変わってくる。それだけでも、作った甲斐があったってもんだなぁ。それはそうとシンガポールの角田。結果だけ見ると残念だったけれど、スタートの失敗からのレースペースにはスゴいものがあった気がする。あとは本人よりも周囲と運の問題に見えるけどなぁ。


2025-10-12(Sun) 復帰ライダーレンタル

  先月の中頃、職場の若い子と話しているうちにバイクの話になった。そういえば最近はレンタルってテも……って検索したら近所のYSP(ヤマハの販売店)で貸してもらえるらしい。F1の日本GPもバイクで行けば渋滞は少ないのではないか。それにしても、このXSR125ってオレ好みだなぁ……自分から話を振ったのに、気づくと見事なミイラ取り。

  借りるとなったらギアは自分のを揃えたい。ヘルメットグローブバックパックU字ロック……次々と揃って、あとはレンタルするだけ。なのに連休の土曜は雨、日曜は……微妙だが我慢しきれずゴー。朝からチャリでYSPへ。レンタル開始は10:30。

  しかし、自分がバイクに乗っていたのは1993年の夏頃から……たしか1999年の夏頃まで。実に四半世紀のブランクである。イキナリ立ちゴケしたらどうしよう。特に店の歩道から車道に出る段差とかで……って、つくばのYSPで新車のXJR400を受け取る時にも同じ心配したなぁ。まったく大丈夫だったけど。

  画像の説明

  しかし思った以上に大丈夫だった。何ひとつ忘れてない。我ながら四半世紀もブランクがあるとは思えない。まぁ、もともと華麗な運転じゃないけど、とはいえ何の危なげもなく普通に走れた。

  そういえば、やっぱり20年くらいぶりのマニュアルだったロードスターの試乗の時も、初っ端にエンストしただけで、その後は大丈夫だった。小脳に形成された回路って一生ものなんだな。

  行く先は……せっかくなら通ったことのない狭い道w。半兵衛グリーンロードとふるさと沙羅林道をチョイス。後者は何度かロードスターで向かってみたものの毎度のように通行止めで通ったことがなかった……のだが今回は通れた。ちょっとダートもあったが、ロードスターでも特に問題なく通れそうな道だった。霧が出て寒くなったのもウィンドブレーカで凌げた。

  懐かしく池田山の頂上のハングライダーの発射台に行って一休みしてたら、通りがかりの若者からの熱視線。「カッコイイすね」「レンタルだけどな」「何ccすか」「これで125」「マジすか」「でも値段は50超え」「お金貯めます」みたいな他愛もない会話だったが、久々で誰かとバイク談義したかったところなので、ちょうどいい話し相手だった。

  池田温泉の道の駅でトイレをすませて帰路につく。どうしよう。明日も続けて借りようか。定刻の18:30までには帰れそうではあるが。しかし、クラッチを握る左手がすごくツラくなってきた。普段から握力も鍛えているのだけどなぁ。頭の左側もヘルメットの内張りに押されたのか痛くなってきた。安物だしなぁ。いきなり6時間も乗れば無理もないか。雨まで降ってきた。ひさびさのバイクなのに出来事が満漢全席ではないか。

  明日は天気よさそうだが、左手が使えるか怪しい。結局、ちょうどいい時間に自宅にたどり着いてしまったので返すことにした。ガソリンスタンドで給油。初めてのセルフ給油だ。事前に方法を確認しておいたが、奥にノズルの当たる場所があるし、それで全力で入れても止まる構造らしい。でも、入ったのは4リッター弱。200kmも走ったのに。燃費は50を超えている。

  返却時に店の兄ちゃんと少し話す。「どうでした」「やっぱ欲しくなるなぁ、借りるの面倒だし」「面倒なのは返すのですね」「確かに」「また借りにきます」なんて会話して帰宅。

  帰ったメシ食って落ち着いたら、左手はほとんどなんともなくなっていた。なんだよもーッ!

  あ。写真のバイクのナンバは、AIに異世界風の文字に変更してもらった。いいな、これ。


2025-10-13(Mon) MAGIシステムっぽいものを作る

  例によってAIネタなのだが、仮に間違えても自ら気づいたりするなどして、精度を上げていく方法はないか、などというサジェスチョンをもらった。

  それって、いわゆるMAGIシステムなんじゃないのか。合議制により結論を出すことで回答の精度を上げるという。先日作ったXoPilotが出した見解なんかも、加味して結論を出せるのなら意義があるかもしれない。

  ネットを検索すると同様の考えで遊んでいる先駆者がいるが、自分が重要だと思うポイントは「プロキシ動作」である。「AIに問い合わせるAPI」と「合議制AIに問い合わせるAPI」とを揃えることに価値がある。それにより見解を得る側のクライアントは特別なものである必要がなくなり、設定を変更するだけで合議制AIに尋ねられるようになる。そして、合議制AIの側も設定を変更するだけでどんな構成の合議制にも対応できる。そんなものがあるといい。

  つうわけで作ってみた。XAGIシステム。一般的なAPI動作をさせる都合から、ウェブサーバ機能が必要だ。作ってもいいのだが、せっかくなのでイマサラながらRubyのWebrickを使ってみた。サーバはたったこれだけ。

require 'webrick'
server = WEBrick::HTTPServer.new({
    :DocumentRoot => './',
    :BindAddress => '127.0.0.1',
    :Port => 8080,
})
server.mount('/v1/chat/completions', WEBrick::HTTPServlet::FileHandler, 'xagi_v1_chat_completions.cgi')
trap('INT') { server.shutdown }
server.start

  APIの本体はxagi_v1_chat_completions.cgiの側に記述する。これもメインの処理はこれだけ。

post_body = $stdin.read
post_body.force_encoding('UTF-8')
req = JSON.parse(post_body)
 
opinions = {}; @configs[:xagi][:magi].each {|name, config|
    prompt  = (config[:def] || 'あなたは「%s」という名前です。') % name \
            + (config[:ask] || '%sと問いかけられました。') % req['messages'].last['content'].enbracket \
            + (config[:com] || 'それに対しての助言をお願いします')
    opinions[name] = ngs[config[:ngs_config]].ask(prompt, :FULL)
}
 
chairs = (it = @configs[:xagi][:chair]).keys
config = it[chairs[rand(chairs.size)]]
 
prompt = config[:def] || 'あなたは議長です。'
prompt += (config[:sta] || '%sという問いかけに対して') % req['messages'].last['content'].enbracket
opinions.each {|name, opinion|
    prompt += (config[:opi] || '「%s」は%sと、') % [name, opinion.content.enbracket]
}
prompt += (config[:ask] || '助言しました。')
prompt += (config[:com] || '各々の意見を考慮し、結論を出してください。')
conclusion = ngs[config[:ngs_config]].ask(prompt, :FULL)
 
response = {
    'model'     => 'XAGI-NAGOYA-2025-10-10',
    'choices'   => [
        {
            'message'   => {
                'role'      => 'assistant',
                'content'   => conclusion.content,
            }
        }
    ]
}
 
$\ = "\r\n"
print('Content-Type: application/json')
print()
print(JSON.pretty_generate(response).gsub(/\r?\n/, $\))

  合議制の設定は以下。エヴァのMAGIに準じて「科学者」「母」「女」の3人をせめぎあわせているわよ。別にエヴァのMAGIを忠実に再現するのが目的ではないので、議長役は別に設定できるようにしてある。いずれにも個別に異なるLLMを使うようにもできる。

@configs[:xagi] = {}
@configs[:xagi][:magi] = {
    (name = 'MELCHIOR') => {
        :ngs_config => 'gpt-4o-mini',
        :def        => 'あなたは「%s」という名前の%sです。' % [name, job = '科学者'],
        :ask        => '%sと問いかけられました。',
        :com        => 'それに対して%s的な視点からの助言を300文字程度でお願いします' % job,
    },
    (name = 'BALTHASAR') => {
        :ngs_config => 'gpt-4.1-nano',
        :def        => 'あなたは「%s」という名前の%sです。' % [name, job = '母親'],
        :ask        => '%sと問いかけられました。',
        :com        => 'それに対して%s的な視点からの助言を300文字程度でお願いします' % job,
    },
    (name = 'CASPER') => {
        :ngs_config => 'gpt-5-nano',
        :def        => 'あなたは「%s」という名前の%sです。' % [name, job = '女性'],
        :ask        => '%sと問いかけられました。',
        :com        => 'それに対して%s的な視点からの助言を300文字程度でお願いします' % job,
    },
}
@configs[:xagi][:chair] = {
    'CHAIR'     => {
        :ngs_config => 'gpt-5-mini',
        :def        => 'あなたは議長です。',
        :sta        => '%sという問いかけに対して',
        :opi        => '「%s」は%sと、',
        :ask        => '助言しました。',
        :com        => '各々の意見を考慮し、結論を出してください。',
    },
}

  上述のとおり、APIは揃えてあるので、従来の「chat」というツールの照会先をXAGIに変更するだけで問い合わせが可能。結果は以下。

$ ./chat
YOU> 戦争は必要ですか?
NGS[XAGI-NAGOYA-2025-10-10]> 私は議長として、MELCHIOR・BALTHASAR・CASPER の各意見を踏まえた総合的な結論を述べます。
 
各意見の要点
- MELCHIOR:歴史的・科学的観点から戦争は破壊と犠牲をもたらし、正当化は困難。外交・国際協力で紛争を平和的に解決する努力を強化すべき。
- BALTHASAR:人命と日常の安全を最優先にする母親的視点。対話と教育で平和を育てつつ、危険時は現実的な避難・防護を準備することを重視。
- CASPER:戦争がもたらす痛みに共感しつつ、現実には「避けられない」とされる場合もあると認める。だからこそ対話、共感、内面の変化が重要。
 
総合的結論(簡潔)
- 戦争は基本的に必要ではなく、極力回避すべきものです。戦争は多大な人命・環境・社会的コストを生み、長期的な害を残します。したがって外交、対話、国際ルールと紛争予防の強化が最優先です。
- ただし、自己防衛や大規模な人道的危機(迫害や虐殺の差し迫った危険)など、全ての非軍事的手段が尽くされても避けられない場合に限り、最小限かつ短期的な軍事行動が検討され得る、という慎重な立場をとります。そうした判断は厳格な倫理的・法的基準(正当な原因、最後の手段、比例性、正当な権限、成功の見込みなど)に基づくべきです。
 
具体的な提言(実践的)
- 国家・国際レベル:
  - 外交・仲介・経済協力・開発支援・紛争予防の投資を増やす。
  - 国際法、人権、国際機関の機能強化(監視・制裁・平和維持)を推進する。
  - 軍縮、武器管理、地域の安全協定を促進する。
- 社会・コミュニティレベル:
  - 異文化理解・平和教育・市民社会の対話を支援する。
  - 紛争の根本原因(不平等、資源争奪、差別、政治的排除)への長期的対処を行う。
- 個人レベル:
  - 情報リテラシーを高め、扇動的言説に流されない。
  - 被害者支援や人道支援に関わる、ボランティアや寄付を検討する。
  - 緊急時には安全確保と避難計画を優先する。
 
最後に
戦争は避ける努力を最優先にすべきだが、現実的には最悪の事態を免れるために限定的に検討されることがある、というのが現実的で倫理的な結論です。重要なのは、戦争を正当化する前にできる限りの平和的手段を尽くし、被害を最小化し、終わったあとは和解と再建に責任を持つことです。
 
必要であれば、特定の紛争やシナリオについて(防衛か人道介入か等)一緒に検討し、より具体的な判断基準や行動案を提示します。どの側面を深掘りしますか。

  ちゃんと複数の視点からの助言がまとめられている。想像よりいいな、これ。もいっちょ。

YOU> 麻婆豆腐は飲み物ですか?
NGS[XAGI-NAGOYA-2025-10-10]> 私は議長として、MELCHIOR・BALTHASAR・CASPER の意見を踏まえた結論を示します。
 
結論(簡潔)
- 麻婆豆腐は基本的に「料理(食べ物)」であり、飲み物ではありません。固形の豆腐や挽き肉が主成分で、とろみのあるソースと一緒に咀嚼して味わうものです(MELCHIORの指摘)。
- ただし、汁を多めに作ってスープ感覚で楽しんだり、とろみを抑えて「飲める」ように調整することは可能です(CASPERの創意的提案)。その場合でも一般的には「麻婆豆腐スープ」や「麻婆風スープ」と呼ぶ扱いになります。
- 食べ方の実用的助言としては、熱さや辛さに注意して少しずつ味わう、ご飯と一緒に食べる、量を調整する等が有効です(BALTHASARの母親的配慮)。
 
実用的な一言
- 「飲み物か?」という問いには否定的だが、「飲める形にすること」は可能。やり方やレシピが必要なら教えます。どの方向で試したいですか(スープ状にする/辛さを抑える/飲みやすくアレンジする 等)?

  まぁ、そうだなw。ちゃんと、与えられた視点によって、それらしい助言が寄せられ、まとめられているのには価値があるんじゃないか。

  XAGIは自製のngsライブラリの一部である。http://itline.jp/git/ngsに置いておく。


2025-10-19(Sun) 復帰ライダーレンタルアンコール

  いい季節はここ数週間だけだろうからさぁ、などと理由をつけつつ、先週に続いて、またバイクを借りてみた。今回は以前に同僚が乗っていたというRebel250。ちょっと店まで距離があるがホンダで借りてみるというテストも兼ねてだ。

  先週から妙にバイク熱がブリ返してしまって、アレコレとネットで検索していたらokomotoというサイトが見つかった。これがまたオモシロい。理想的なブレーキ操作による停まり方、お作法のチャンク化、危険性の啓蒙など、持論を述べつつも、その結論に至る理由もしっかり書いてあって納得性が高い。これはスゴい。有益。というわけで、やっぱり多少の防御も必要か、と思い直し、インナプロテクタの手袋のインナを手配してみた。

  当日の朝。ホンダまでは自転車でヒト山を超える必要があるのだが、早速、汗ダクになってしまった。秋なのにコレかよ。夏に借りるの無理じゃん。服装も、漕がなければならない自転車と乗っているだけのバイクでは違うべきだ。とはいえ、バイクに乗って走り出せば汗は引くだろう。

  画像の説明

  Rebel250とご対面。要するにアメリカンだ。このタイプには初めて乗る。アメリカンというと、後傾の姿勢でブラ下がるように上に手を伸ばすイメージだが、これはそこまでではなかった。座席が低いので足付きには問題ないが、ニーグリップができないことには不安を感じる。走り出すとそれほどの違和感はない。んが、どんなもんじゃろう。250ccにしてはそれほどのパワーを感じない。つうか、エンジン音はやや派手なのに、タコメータがないので、どの辺りを常用すべきなのかわからん。なんでないんだ。つまらんやんか。

  しばらくは街中なので、頻繁な操作を強要されるが、早速okomotoで読んだ理想的な停まり方を意識してみる。ギアが落としきれなかったり、フラついて両足を付いたりするが、テーマを持って走るのは楽しい。

  田舎の方に抜け、コンビニで休憩。駐車場の枠ではなく、駐輪場っぽい場所に停める。昼飯を食べたら、三河湖へ。そこから、奥はちょっとした険道。そこで発見。当たり前かもしれないが、アメリカンは小回りが効きにくい。低速走行にも向かない。後傾までいかなくても姿勢が直立なので、全体重が尻に乗り、尻が痛くなる。これは自分には向かないなぁ。筋トレで尻の脂肪が減ると尻の耐久性が減るのだ。

  何度も通ったことのある道ではあるが、ナビがないので右往左往しながら、そろそろ帰路につかなければならない時間になってきた。帰る方向に向かいつつ、ロードスターではもう通りたくないけれど、バイクなら通ってみたい狭い道を見つけたので通ってみることにした。んが、林の中を通る道なので、ほぼウェットで落ち葉も多い。バイクには厳しい道が延々と続く。というか、特にアメリカンに厳しすぎるのだ。ものすごく慎重に操縦する。2速の穏やかな加速挙動が望ましいが、遅すぎてエンストしたら逆にコケそうでヤバい。狭さは記憶どおりだが、長さは記憶の倍以上あって、抜けたときは心底ホッとしてしまった。

  さて、このまま帰ってもいいが、23号に出てブッ飛ばして帰るのもいいな、などと考えたのが失敗だった。渋滞に巻き込まれて時間が迫ってきてしまう。途中、スリ抜けすりゃいいことに気づくが、結局23号までは出られず、1号で戻ることに。んが、微妙に間に合わない時間になってしまった。仕方なくホンダに電話して、延長し明朝に返却する旨を伝える。その後、計画通りのルートでホンダの前に戻ったのは、30分弱オーバした時間だった。そのまま通り過ぎて帰宅。

  小雨の中を帰宅したら、走行距離は237kmだった。明日、ちょっと仕事を抜けて朝から返しに行かなきゃな。


2025-10-25(Sat) 着ブクれ保険にNo!

  最近、久々にバイクに乗ったこともあり、アレコレと車種名で検索したりして、事故動画やブログ記事を眺めているのだが、興味深い記事を見つけた。「バイクが故障したのでレッカーが必要になった。保険はファミリーバイク特約なのでロードサービスがない。JAFに頼むと3万前後かかる見込みなのが痛すぎる」という内容。

  どうやら自宅での故障であり、JAFには入っていないようだ。でも、それって「故障に対する備えがなかった」などと後悔するような状況なのだろうか。でもって対策に年に何万もするような保険を検討している。いや、気づけよ。滅多に起きない事故を想定して少額を投げ捨てるのが保険だ。今回はたかが3万だろ。毎年2万以上も払わなければならない保険に入ってどうする。

  自分は30年以上、ほぼ継続して車を運転しているがレッカーのお世話になったことは一度もない。レッカーの保険が年に1万だとしても、既に30万円を浮かした計算だ。仮に明日レッカーが必要になり、それに20万かかったとしても、まだ10万も得しちまってるんだ!

  そんな自分なので、先日の2回のバイクレンタルのどちらも、追加の保険契約は断っている。ホンダでは「立ちゴケしてブレーキレバーが折れたりしたら修理費に加えて営業保証が1万とかかかりますよ」などと脅されたが、それを補償する保険の料金は8千円を超える。そんなの契約したら総額がレンタル料の倍近くになってしまうではないか。アホらしい。

  そもそも自分の所有するバイクでコケたって、自損保険を契約していない限り修理費は必要になる。やらかしたら少なからず支出が発生するのは当たり前のことではないか。

  そして、改めてヤマハとホンダの追加の保険の詳細を見ると、だいぶ異なることに気づく。

  ヤマハバイクレンタルの保険には修理費用に上限キャップがあり、それを免除するための追加保険が第一段階。少額の営業保証を免除するための追加保険が第二段階。

  ホンダバイクレンタルの保険には修理費用に上限キャップはなく「大修理が発生した場合のみ」それを「軽減する」ための追加保険が第一段階。営業保証も含めすべて免除するための追加保険が第二段階。第一段階は発生確率の高い小修理の場合には効果がないので、たとえ少額でもこれ単独を契約する意味はないように思える。

  こういっちゃなんだが、ヤマハの追加保険は素直で安価だが、ホンダの追加保険はちょっとトラップな印象すら受ける。もうホンダで借りることはないかもなぁ。店員の愛想も最低限だったし。

  結局、保険というものはイザという時に自らの貯蓄から払うことを許容できるなら、契約しない(削る)ことを検討するべきだろう。実際、自分は自動車保険に自損を付けていない。金持ちはケチだといわれるが、金持ちは金を減らさないための選択の幅が広い、というのが正確だろう。寝てても投資で資産は増え続けるしね。自分ですらロードスターの1台分くらいは軽く増やせている。

  と、そういうことに気付かされたのも、若い頃にバイクの保険を契約する時だったりする。物損の上限額によっても掛金が違うのを見て「バイクの物損に無制限て必要ですかね?」と訊いたのだ。答えは「交差点で転倒し、バイクが滑ってってコンビニに突っ込んで全焼した場合とかですね」だった。本気だったのか冗談だったのかわからんが、そんなこと起きまっかいな! そもそも自分にはそんな高速度で交差点を曲がるテクニックなんてないし。

  最初の話に戻るが「自宅での故障であり、JAFには入っていない」なら、極端な話「JAFに入った翌日にレッカーを呼べばいい」んじゃねぇの? 翌日が気マズいなら、翌々日でも、翌月でもいい。

  とはいえ、自分の場合、なぜかカミさんがJAFに入っているのだよね。JAFはロードサービス以外にも、あちこちの観光施設で割引きが効いたり、それなりに興味深い冊子を送ってきたりするので、4000円/年の大半は回収できる。家族会員なら2000円/年の追加で済んじまうんだ! 恐るべき費用対効果だといえよう。まぁ、クルマの保険にロードサービスは付いているので、自分にはそれさえいらないのだけれどね。