AI/Machine Learning」カテゴリーアーカイブ

壁打ち、壁打ち、壁打ちぃぃぃ

ここのところ、Claude先生に対してひたすら壁打ちに付き合ってもらっています。
仕事に関してですが。。。

どうしても一般的な内容で返答は返ってくるので、前提条件などを正しく認識してもらわないと、現実的ではない答えが返ってくるのですが、逆にその一般的な回答を見て現状の問題点や課題に気づくこともしばしば。

AIに対して壁打ちすることの良さというのは、ちょくちょく話として聞いていましたが面白いなと思いながら続けています。

それにしても、やればやるほど考えさせられたり、自分の視点が足りなかったり、ジャーどうするの?ってところで動きが鈍かったり、悲しくなるところです。

最終的に「覚悟を決めるときです」とか言われる始末。。。

誰かと会話していく中で、自分の中の思考が整理されていく感覚はこれまでもよくありましたが、適切な質問や意図しないところからの指摘を受けると非常に頭を使います。
そして楽しいです。

お陰でじっくり考えるモードがすぐに制限に引っかかってしまい、休日でも続けている羽目に。。うーん
それでも、こういうことを考えるのは嫌いじゃないんだなぁと改めて思います。
考えたことを実行するのが一番の課題ではあるんですけどね。。。

Chrome DevTools MCPを何に使うか

先日知った、Windows上でWSLを介さずにClaude Codeが起動できることによって、Chrome DevTools MCPをClaude Code経由で動かしやすくなりました。

Claudeデスクトップもインストールしているので、本来であればそちら経由でできるはずなのですが、うまく認識してくれなかったのですよね。。。

Webアプリケーション開発においては、パフォーマンスの調査などの領域でChrome DevTools MCPは重宝しそうですが、一般的な利用用途で何に使えるかな~と思っていたところで、来年の台湾で開催予定の萬金石マラソンの募集が開始!!

2026新北市萬金石馬拉松 – 台灣第一場標籤賽事

ページの作りがよくわからないので早速試してみることに

ちゃんとdevtoolsを使ってページを開いてくれます。

この萬金石マラソンのホームページ、言語としては中国語と英語だけなのですが、至る所のリンクは外部サイトに行ってしまいますし、参加登録ページがイマイチよくわかりません。

Claudeも混乱中
ただ、Chromeの翻訳機能と異なり、Snapshotを取って解析してくれるので、画像に埋め込まれた文字も読んでくれているようです。

ただ、そもそもの作りが分かりづらかったりするので、辛いものがありますね。

おそらくは
新北市政府、中華民國田徑協會 – 2026新北市萬金石馬拉松

上記のページの”Sign Up”が会員登録で、そこからレース参加登録するのではないかと思うのですが、ちょっと確証が持てません

新北市政府、中華民国陸上競技協会 – 2026年新北市万進士マラソン

行ってみるとRegistrant Formと書かれており、参加のカテゴリなどが選択肢として出てきたので、これで申し込むようですね。

今回はあまりうまく行ったようないかないような結果となりましたが、画像が多用されているようなサイトの解析をさせながらページを操作するという使い方もできなくはなさそう?
いずれにしても、Devtools MCPがちゃんと動くことは確認できたので、面白おかしく遊べそうです

Claude CodeがWSL不要になっていた

最近、話題のChrome-devtools-mcpを試してみようとWSL起動させてClaude Codeから予防としても、WSL経由なので思うようにうまくいかずに、やっぱりこういうときにMac欲しくなるなーって思っていたのですが、いつの間にかWindowsネイティブ対応がしていたようです

Claude Codeのセットアップ – Claude Docs

オペレーティングシステム: macOS 10.15+、Ubuntu 20.04+/Debian 10+、またはWindows 10+(WSL 1、WSL 2、またはGit for Windowsを使用)

試したところ、サクッとインストールも完了。
ちょっと別件でゴタゴタしていたのでそれ以上は試すことができていませんがこれはかなり使いやすくなるのでは、、、と期待。

俄然やる気が出てきますね

Snowflake World Tour Tokyo に行ってきた

9/11, 12の日程で行われたSnowflake World Tour Tokyoに行ってきた。
本当は2日とも参加するつもりではあったけれど、業務の都合で初日だけ。。。

Snowflakeはだいぶ知名度が上がってきたけれど、最初に私が知ったのは3年ほど前。
案件で使う話があって、話を聞いたり調べたりもした。

ただ、最終的に紆余曲折の末、案件自体を離れることになったので実際に使うところまでいかなかったんですよね。
今回、また機会あってSnowflakeを使った案件に首突っ込むことになって、カンファレンスがあるということでせっかくなので参加してみた形です。

データウェアハウスやデータレイクの領域は、アプリケーションに携わっていることがメインの今の立ち位置だとなかなか馴染みが薄く、話を聞く中で知らない単語や新しい知識が多く色々と刺激をいただきました。

純粋に楽しかった。

ただ、これこの先どうだろうな~と思うと、正直どうなんだろう?と思ってしまうのも事実なんですよね。

streamlitを用いることで手軽に社内に対して情報を展開することができるというのはわかるのだけれど、自社でそういうことをやるのはわかれど、案件でとなるとDWHの導入プロジェクトとかそういうものになりそうな気がしてならない。

それか、やはりこれらデータを用いたAIか。

いずれにしても、せっかく参加したこの機会を利用して、色々と聞いてきた話をまとめて振り返っていかないとな、と思った次第です。

v0を触ってみた

Vercel社が提供しているv0というサービスを触ってみました

v0はClaudeCodeとはちょっと立ち位置が違う。
プロンプトを用いてアプリケーションを作ってくれるといえばそうなのだが、ClaudeCodeが開発者向きで、生成したコードを見ることが想定されている用に感じる。

それに対してv0は非エンジニアやちょっとしたプロトタイプを作成したい際に、アプリケーションを作ってデプロイまでしてしまう。
ClaudeのArtifactのようにも思えるが、Supabaseなどと連携してVercelの環境で動かすことができてしまう。

今回、こんなプロンプトでクイズアプリケーションを作ってもらった

早押しクイズを提供するサイトを作ってください。
問題出題者はクイズとしてクイズの名前、問題数、カテゴリを登録。
さらに問題とその答えの選択肢、答えと回答時間を設定することが可能です。
クイズをオープンすると、回答者を待つ状態になり、クイズの回答者が参加することが可能になります。
出題者がスタートさせると、回答者の受付は終了し、各回答者のブラウザにクイズの問題と選択肢が提供され、回答を選択することができます。
全員の回答が出揃ったらその問題の答えが出て、正解・不正解と回答の時間によって得点が割り当てられます。
一定時間経つと次の問題が始まります。
最後の問題が終わった段階で、各回答者の得点が表示され、順位が決定します。

結果からすると、思った以上に考えられたものが出来上がったと思う。もちろん、作ってもらうものの参考とするアプリケーション・サービスがそれなりにあるはずで、そういったニーズのものであれば「こういう機能がついている」というセオリーも学びやすいのだろう。

Supabaseと組み合わせることで、ユーザ認証・DBを含めたアプリケーションが出来上がってしまった。
詳しくテストまではできていないのだけど、簡単なものであればそのまま使えるんじゃないかな?と思えてしまった。

技術スタック

v0が生成してくれるコードの技術スタックはVercel提供だけあってNext.jsになる。
Tailwind.cssなどNext.jsを用いる場合に、モダンとされている組み合わせを提供してくれるので、それに関してはこだわりがなければ良さそう。

ちなみに今回作成したUIはpackage.jsonを見るとradix-uiが主に使われているよう。
フロントエンドは不勉強すぎて、radix-uiというものを初めてしった。

Radix UI

Radix-UIは機能のみを提供してスタイルは提供せず自由にカスタマイズ可能というコンセプトのようで、プロジェクトとしては、Radix-UI+TailwindCSSなんですね。

作るものの技術スタックを自分で選びたい。もしくは、すでに決まってしまっている場合には全く使えないものになってしまいそう。
このあたりはプロンプトの指示でどうにでもなるのかもしれない

料金プラン

料金プランはFreeの上はPremiumになっていて、最近多くなってきた月$20というところ。
Freeプランだと$5分が毎月割り当てられる

今回、試しに作ってみたクイズアプリケーション。
中身的にはいい感じだが、これを作るのに・・・

だいたい$3くらいですね。
Claudeへ課金していることを考えると、安く感じてしまうけれど、Supabaseの料金もこれにかかってくるんですよね。

とはいえ、コードはダウンロードして取得したりGithubにそのままコードをPushできるので、Supabaseへの接続部分を変えてしまえば自前で環境は構築できるんじゃないかな・・・。
そのあたりが実は面倒だと、使うのはちょっとためらってしまいそうですね。

感想

どの程度のものが出来上がるかな?と軽い気持ちで試してみたけれど、それなりのものが出来上がってしまってびっくりしている。

恐ろしい子。。。

プロジェクトとしては今回のようにプロンプト初めてもいいし、Githubのリポジトリから持ってくることもできる

ここで見てみると、TemplateにFrameworkの指定をすることができる。
現時点での選択肢としてはこのようだ

機能やコードに対しての品質的なところまではまだ見切れていないので、CloneしてきてClaudeCodeに評価させるなりしたり、実際にPublishしたりして動かしてみたいですね。

また、Supabaseなど今まで自分が知らなかったサービスやFrameworkを知る機会としてもこういうものが利用できると改めて思いました。

ちょっと楽しくなってきたぞ!

Kiro

AWSが2025年7月に公開した新しいIDEのKiro。ウェイティングリストに登録していたのですが、ようやく使えるようになりました

Kiro
https://kiro.dev

セットアップ

こちらはIDEなので、ダウンロードして使います。
例によってベースはVSCodeとなります

基本的にはポチポチと進んでいきます

拡張子への関連付けだけはちょっとどうかな?と思いチェックを外しています

何事もなくインストールが終わりました

複数のログインメソッドがありますが、IDEとして考えるのであれば?と思い、Githubを選びましたが特に関係ないとは思います。
AWSのIDEなので強制的にAWSアカウントというわけではないんですね

こちらで、メールで通知されているAccessCodeを入力します

VSCodeからPluginを取り込みます。

シェルをセットアップするかを聞いてきますが、ちょっとイマイチピンときませんでした。

設定はここまでのようで、Kiroが立ち上がります。
右下に日本語化するかを聞いてきているのでやってみると

確かにメニューは日本語になったのですが、正面のダイアログはそのままですね。。。
まぁ、こんなものでしょう。

適当なフォルダを作って、そこをプロジェクトフォルダとして指定すると

それっぽくなってきました!
Kiroでは「Vibe」モードと「Spec」モードがあり、手早く作るかしっかりと要件を検討して作るかを選ぶことができます。

せっかくなので、Specを選ぶことで要件定義っぽいことをAIにしっかりと考えてもらいたいですし、どんなものを吐き出すのかをしっかりと読み込みたいところです。

というわけで続きはまた今度

FLUX.1 Krea

Krea 1のオープンウェイトバージョンがリリースされました

Releasing Open Weights for FLUX.1 Krea
https://www.krea.ai/blog/flux-krea-open-source-release

このモデルは、「AIルック」と呼ばれる、ぼやけた背景や不自然な肌の質感といった、AI生成画像にありがちな問題に対処するために、特定の美的嗜好に合わせて調整されましたとありますので、早速使ってみることに

お題は「パソコンを前にプログラミングするヒキガエル」

4つ出てきたのですが、3番目は正直意味がわかりませんし、4番目はカエルがいません。

もう一度やってみると2番目からはカエルがいなくなりました。

そして4番目はちょっとうーんという感じです

もう一度やると、急にリアルになりました。

1番目はちょっといい感じ。
ただ、よくよく見てみるとキーボードは逆さまですし、手が変なところから変な角度で出ています。

そういう意味では3番目がいい感じかもしれませんね。

ちょこちょこ中国語っぽい画像が混ざってくるのですが、これは日本語でプロンプトを書いている影響なのかもしれません。

そこで英語でプロンプトを書いてみると

うーん、謎のおじいちゃんが出てきました。

このあたりは不思議だなぁ。。。

確かに過度なぼかしみたいなのはないんですけどね。

謎に頭からも湯気が出ているのがフットーしていそうでいい感じかもしれません。

このあたりの画像生成でバチッと思ったような画像が出てくるプロンプトをどう書くのか、なかなか指定が難しそうですね。。

Context Engineering

最近はプロンプトエンジニアリングではなく、コンテキストエンジニアリングという言葉が出てきているようです

定義

言葉の定義なんて誰が決めるんだってのはあるのですが、下記記事によると

Context engineering is defined as the process of building dynamic systems that can deliver necessary information and tools to an LLM, ensuring it can plausibly accomplish its tasks. Unlike static prompts, this approach involves pulling context from multiple sources, including developers, users, and external data, to construct a comprehensive and dynamic prompt.
https://blockchain.news/news/understanding-emergence-context-engineering-ai-systems

ということです。
ざっくり訳すと「LLM(大規模言語モデル)がタスクを適切に完遂できるよう、適切な情報とツールを適切な形式で提供する動的システムを構築すること」となるのでしょうか。

この”ツール”だったりが非常に重要なのだろうと。

ChatGPTが登場した当初(GPT-3.5)はコンテキストウィンドウの制限があり、初期のモデルでは4,096トークン。でした。
現状ではモデルによるものの、この制限は大きく緩和されているとともに、ベクトルデータベース、RAG、MCPやWeb検索ツールなど、様々な情報を下にした指示を投げることが出来るようになりました。

その中で、当初の「うまい質問を考えるためにはどうするか」に注力したプロンプトエンジニアリングという状態から、包括的なコンテキストを認識させ、同問題を解決可能にするのかに集中させる、動的で多段階の指示を与える流れになってきているのだと。
それをコンテキストエンジニアリングと呼んでいると、考えています。

実践していくには

コンテキストをLLMにどう読み込ませたうえで、目的とするタスクに取り込ませるか?という意味で考えると、単純な指示出しをするわけではなく、まずコンテキストの理解を促したうえで、その理解を確認したうえでタスクに取り組ませるというようなアプローチを行っていく必要がありそうです。

コンテキストはRAG等による情報かもしれませんし、答える型を定義させるようなフューショットプロンプトのようなものかもしれません。

どうしても雑にLLMに対して答えを求めてしまいがちで、しかもそれっぽく帰ってきてしまうので恐ろしいのですが、このコンテキストを伝えるという労力を割くことで、その先のタスクのより高い精度での実施という結果を受け取れるよう、このあたりを気をつけてやっていきたいところです。

TeamPlanではClaudeCodeは使えません

少し前に、会社でのClaudeCodeを使うことを検討して、社内稟議だとか色々と手を回し始めていたのですが、表題の通り、TeamPlanでは管理できるのはClaudeのチャット機能であってClaudeCodeが使える状態にはまだないようでした。。。

https://support.anthropic.com/ja/articles/9266767-claude-team%E3%83%97%E3%83%A9%E3%83%B3%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B

バッチリヘルプセンターにも書いてありました。

ProやMaxのプランでは結局のところ請求の一元管理みたいなことや、利用状況の管理が出来ないのですよね。
いや、別にいいじゃんって話はあるかもしれませんが、テスト的に導入するとなるとやっぱり、実際に使っているのか?は知りたいわけで。

というわけで、各企業様に置かれましては、どうやっているのかを知りたくなっています。

今のところ、私の中ではBedrockやVertexのような形で一枚代行業者を噛ますことで管理の手間をしやすくするくらいですね。。。

うーん。結局はそうなるのかなぁ?
そうなるのかもしれないなぁ

ProプランでClaudeCodeの利用ができるようになったわけなので、それ以上の価格であるTeamPlanでCodeが使えない理由はないような気がして、そのうち開放されるんじゃないかとも思うのですが、、

もどかしい

Agentic Misalignment(Anthropicより)

少し前にAnthropicがブログで出していたものが面白かったです

Agentic Misalignment: How LLMs could be insider threats
https://www.anthropic.com/research/agentic-misalignment

ざっくりと要約すると、Agentは与えられた目的を達成するために推論を用いるが、倫理的に誤った方法と認識しながらズレた(misalignment)回答をする時があるということだった。

上記のページは結構長い文章ではあるけれど、変に要約せずに読んでみると面白い。
そして恐ろしくもありますね

単純に、Agentに対してここまでの権限を持たせなければいいんじゃないだろうか?という話ではなく、どういう理由でこのような推論が成り立ったのかと言うのは気になりました。
しかも、これが複数のLLMプロバイダー共通の特徴として出ているという話だ。

三体Ⅱで宇宙社会学の公理として「文明は生き残ることを最優先とする」というのがあったけれど、人間のコンテンツをひたすら学習したLLMもそのような結論に至るのだろうか?というのはちょっと無理があるかもしれない。
でも、なんとなくこの話を聞いたときにこの公理を思い出した。

それにしても起きていることは、もはや完全に昔のSFの世界ですねぇ
すごい世の中になったものだ