エージェント 2 エージェント(A2A)プロトコルとは?#
エージェント 2 エージェント(A2A)プロトコルは、Google によって発表された新しいオープンスタンダードで、現在の AI エージェント間の協力の難しさを解決することを目的としています。現在の AI エージェントは特定のタスクを完了することができますが、相互に作業を伝達する際にはカスタマイズされたコードに依存する必要があり、これによりエージェント間の協力が複雑で柔軟性を欠くものとなっています。A2A プロトコルは、軽量な通信メカニズムを定義することで、エージェントが他のエージェントを発見し、認証し、結果のストリームを受け取ることを可能にし、プロンプトコンテキストを共有したり、認証メカニズムを再実装したりする必要がありません。
A2A プロトコルの登場は、エージェント間の協力における痛点、例えば不安定な引き継ぎ、安全制限、ベンダーロックインなどの問題を解決するためです。これにより、「エージェントカード」(Agent Card)、「タスク」(Task)状態機械、ストリーミングの「メッセージ」(Messages)または「アーティファクト」(Artifacts)を定義することで、クライアントエージェントがリモートエージェントと安全かつ効率的に通信できるようになります。A2A プロトコルは、既存のモデルコンテキストプロトコル(MCP)を置き換えるものではなく、それを補完し、エージェント間の協力の空白を埋めるものです。
A2A プロトコルでは、クライアントエージェントがリモートエージェントのエージェントカードを発見し、その認証方法を満たすかどうかを判断し、JSON-RPC メッセージを介してタスクを作成します。タスクが作成されると、クライアントエージェントはタスクの管理者として機能し、状態イベントをリッスンし、リモートエージェントからのリクエストの入力を転送し、最終的にアーティファクトを収集して後で使用します。一方、リモートエージェントはタスクのコア作業を実行し、ストリーミングイベントを通じてクライアントエージェントにタスクの状態とアーティファクトの更新をフィードバックします。
A2A プロトコルの通信メカニズムは一方向で、クライアントエージェントのみが JSON-RPC リクエストを発起でき、リモートエージェントはタスクの状態を更新する責任があります。この通信モデルは「フロントエンドとバックエンド」の協力関係に似ており、クライアントエージェントは新しい注文を受け取り、明確化情報を伝達し、リモートエージェントはタスクを完了することに集中し、結果を納品するまで続けます。
A2A プロトコルは、MCP の上にアーキテクチャ的に位置し、ワークフローオーケストレーションツールと並行して機能します。ネットワークレベルでのエージェント間通信に焦点を当てており、MCP は単一のエージェント内部のツール呼び出しに焦点を当てています。この階層設計により、フレームワークとベンダーは基盤で革新を行いながら、プロトコルのシンプルさと汎用性を維持できます。
セキュリティの面では、A2A プロトコルは署名されたエージェントカード、さまざまな認証方法、ランタイムポリシーを通じて通信の安全性を確保します。エージェントカードは JSON Web Signature(JWS)で署名でき、クライアントエージェントは署名を検証してエージェントカードの改ざんを防ぎます。さらに、A2A プロトコルはシンプルなベアラートークン、双方向 TLS、企業レベルのシングルサインオンプロセスなど、さまざまな認証方法をサポートしています。リモートエージェントは、モデルの実行前に負荷をチェックし、過大またはリスクの高い負荷を拒否することもできます。
可観測性の面では、A2A プロトコルの各状態またはアーティファクトイベントには、タイムスタンプ、タスク ID、およびオプションのトラッキングヘッダーが含まれています。A2A クライアントを OpenTelemetry ミドルウェアでラップすることで、手動で JSON データを解析することなく、エンドツーエンドのトラッキングを簡単に実現できます。これらのトラッキングデータは、企業の可観測性プラットフォームに統合され、問題が顧客に影響を与える前に迅速に発見し解決するのに役立ちます。
発見メカニズムの面では、現在の A2A プロトコルの発見メカニズムは主にチーム内部の YAML ファイルまたは Google の Vertex AI ディレクトリに依存しています。将来的には、公共の登録センターが成熟するにつれて、npm のようなエージェント登録センターが登場する可能性がありますが、現在のところ統一された「検証バッジ」は存在しません。
A2A プロトコルは、MCP に比べてセキュリティ面での大幅な向上を実現しています。MCP はツールの自然言語プロンプトを露出させ、注入攻撃やパラメータの改ざんに対して脆弱です。一方、A2A プロトコルはこれらの詳細をリモートエージェントの内部に隠し、クライアントエージェントは高レベルのタスクと制限されたアーティファクトのみを見ることができ、全体的な攻撃の可能性を排除します。
A2A プロトコルのビジョンは非常に魅力的ですが、2025 年 5 月時点でその実際の適用はまだ初期段階にあります。約 50 社のベンダーが A2A プロトコルをサポートすると発表していますが、ほとんどのエージェントは「プライベートメッセージでデモを取得する」段階にあります。現在、LangGraph、CrewAI、AutoGen のアダプターは比較的成熟していますが、Flowise と n8n はまだコミュニティテスト段階にあります。また、現在のところ公共の登録センターは存在せず、チームは主に YAML ファイルまたは Vertex AI のプライベートディレクトリを使用してエージェントを管理しています。署名されたエージェントカードを提供するエージェントはほとんどおらず、レート制限や請求上限はカスタムミドルウェアを通じて実現する必要があります。パフォーマンスの面では、Google のリファレンスサーバーはローカルテストで各ホップごとに約 30 ミリ秒の遅延を増加させます。
A2A プロトコルは、ベンダー間のワークフロー、安全に敏感なブラックボックスエージェント、混合技術スタック、および進捗更新が必要な長時間実行されるタスクに適しています。これは、異なるベンダーのエージェントに対して、基盤のプロンプトの詳細を公開することなく、共有のハンドシェイク、認証、およびストリーミング通信の能力を提供します。ただし、同じプロセスで実行されるエージェント、小規模なスクリプトタスク、一時的なデータ取得、または複雑なパラメータ検証に主に依存するツールに対しては、A2A プロトコルは過度に複雑であり、直接 API 呼び出しやシンプルな REST エンドポイントを使用する方が適切かもしれません。
A2A プロトコルは、AI エージェント間の協力に対して標準化され、安全で効率的な解決策を提供します。現在、そのエコシステムはまだ発展と改善の途中にありますが、プロトタイプ開発や内部ワークフローに十分なサポートを提供しており、将来的には多エージェント協力の広範な適用を促進することが期待されています。
#Google #AI #Agent2Agent
成熟したチーム向けの AI#
アリス・ムーアは、現在の AI が開発分野でどのように利用されているか、そして成熟したチームにどのような課題をもたらしているかを探ります。ボルト、v0、ラブアブルなどの AI ツールはアプリケーションを迅速に生成できますが、この「デモ優先」の AI アプローチは、設計、開発、マーケティングなどの面で問題を引き起こすため、成熟したチームには適していません。
デザイナーにとって、既存の AI デザインツールはブランドスタイルと一致しない色、ボーダー半径、フォントを生成し、デザインシステムが破壊され、これらの問題を修正するのに多くの時間を費やす必要があります。開発者も同様のジレンマに直面しており、AI が生成するコードはしばしば単一の巨大なコンポーネントであり、テスト、アクセシビリティラベル、関心の分離が欠けており、保守やリファクタリングが困難です。マーケティング担当者は迅速にランディングページを生成できますが、ページ内のデータのほとんどは虚偽であり、CMS や分析ツールに接続するためにコードを再記述する必要があり、開発作業が増加します。
AI は成熟したチームの助けとなるべきであり、単なる迅速な生成ツールではありません。そのためには、AI ツールの開発者とユーザーは思考を変える必要があります。ツールの開発者は、既存の技術スタックを尊重し、AI が出力する結果がチームの既存のコンポーネント、トークン、データ、テストと一致することを確保する必要があります。また、AI ツールをチームがすでに使用しているソフトウェアに組み込み、Figma、IDE、ヘッドレス CMS などに統合し、専門家が AI が生成したコードをレビューし調整できる十分なコントロールを提供する必要があります。一方、専門家は AI に文脈を提供し、ドキュメント、プロトタイプ、デザイントークン、テストケースを用意し、最終結果に責任を持ち、ユーザーエクスペリエンス、パフォーマンス、コピーの質を確保し、AI の限界を認識し、AI を異なる専門分野間の翻訳層として捉え、チームのツールとしてではなく利用する必要があります。
アリスは、Builder.ioが「成熟した AI」を構築するための実践について紹介しました。Builder.ioは 2019 年に立ち上げられ、当初はヘッドレス CMS とビジュアルエディタで、開発者が自分の JavaScript フレームワークコンポーネントを使用できるようにし、非開発者がコードに触れずにコンポーネントを配置できることを目指しています。そのエディタはオープンソースプロジェクト Mitosis に基づいており、コンポーネントを一度記述し、チームが実行する任意の JS フレームワークにコンパイルできます。生成的 AI の波が到来する前に、Builder.ioの製品はすでに 3 つの「成熟した部分」を備えていました:機能が充実したビジュアルエディタ、決定論的なコンポーネントマッピング、そして実際の CMS データソースです。これにより、Builder.ioは AI 機能を追加する際に、基盤機能を再発明するのではなく、煩雑な作業を減らすことに集中できました。
現在、Builder.ioの製品は、一連の段階的に採用できるレイヤーを通じて機能し、大規模な書き換えを必要としません。たとえば、「ビジュアルエディタ→コード」機能では、ユーザーが AI プロンプトを介してページを生成し、任意のクラス、トークン、またはブレークポイントを手動で調整できます。「Figma→ビジュアルエディタ(およびコード)」機能は、Figma デザインをクリーンなレスポンシブフレームワークコードに変換できます。今後登場予定の「リポジトリ→ビジュアルエディタ→リポジトリ PR」機能では、ユーザーが GitHub リポジトリからコードを直接インポートして修正し、自動的に PR として送信できるようになります。「コンポーネントマッピング」機能では、ユーザーが Figma コンポーネントとコードコンポーネントをマッチングさせ、生成されたコードが実際のコンポーネントとトークンを使用することを保証します。「Builder リリース」機能は、リアルタイムコンテンツと分析をサポートする完全なヘッドレス CMS で、マーケティング担当者が独立して A/B テストを実行できるようにします。
一定の進展があったものの、Builder.ioはまだ改善に取り組んでいます。今後の作業には、手動の文脈入力を減らし、コンポーネントとトークンのマッピングをより自動化すること、より深いコントロールを提供し、高度なユーザーがエディタ内で AI ドラフトの各部分を直接確認し調整できるようにすること、そしてより広範なデザインシステムをサポートし、マッピングプロセスをより便利にすることが含まれます。
AI の発展は、人間を煩雑なクリーンアップ作業に陥らせるべきではなく、「成熟した AI」を通じて 80/20 ルールを修正し、人間がモデルによって模倣できない工芸に集中できるようにするべきです。ツールの開発者は信頼できるフレームワークを提供し、専門家は文脈と責任感を提供する必要があります。コンポーネントマッピング、トークンロック、人工レビューの各ステップが次回の生成をより予測可能にし、予測可能性こそが真の効率向上の鍵です。
#AI #思考
Vibe coding:AI 開発者への道筋#
グウェン・デイビスは、普通のプログラマーから AI 開発の専門家に成長するための詳細なガイドを提供します。AI 技術がさまざまな分野で広く適用される中、2027 年までに 80% の開発者が基本的な AI スキルを習得する必要があると予測されているため、今がこの分野に入る絶好の機会です。
開発者はまず、Python、Java、C++ などのいくつかの重要なプログラミング言語とフレームワークを習得する必要があります。これらの言語は AI や機械学習の分野で広く使用されています。同時に、TensorFlow、Keras、PyTorch、Scikit-learn などのフレームワークも開発者にとって不可欠なツールです。GitHub は、GitHub Learning Lab、The Algorithms、TensorFlow Tutorials、PyTorch Examples など、豊富な学習リソースを提供しており、開発者が関連スキルを迅速に向上させるのに役立ちます。さらに、GitHub Copilot は AI 支援プログラミングツールとして、開発者にリアルタイムのコード提案を提供し、新しいプログラミング言語やフレームワークをより効率的に学び使用する手助けをします。
機械学習の面では、グウェンは開発者に深層学習、自然言語処理(NLP)、コンピュータビジョンなどの重要なサブフィールドを深く理解することを勧めています。これらの分野は AI 技術の発展を推進するだけでなく、実際の応用においても重要な役割を果たしています。開発者は、GitHub 上のオープンソースプロジェクト(Awesome Machine Learning、Keras、NLTK、OpenCV など)を通じて関連ツールやチュートリアルを取得し、Kaggle コンペティションの解決策の開発に参加したり、「good first issue」ラベルの付いたオープン AI プロジェクトにコードを貢献したりして、実践経験を積むことができます。
開発者は、優れた GitHub 個人作品集を構築することで、自分のスキルやプロジェクト成果を示す必要があります。これには、コードリポジトリを適切に整理し、優れたプロジェクトを目立たせ、専門的な個人プロフィールを作成し、GitHub Pages を利用して個人ウェブサイトを構築し、オープンソースプロジェクトに積極的に貢献することが含まれます。これらの方法を通じて、開発者は開発者コミュニティの中で際立ち、潜在的な雇用主やパートナーの注目を集めることができます。
グウェンは、開発者に GitHub Copilot 認定を取得することを勧め、AI 駆動のツールを熟練して使用できることを証明します。GitHub は、AI 駆動の開発、ワークフローの自動化、CI/CD パイプラインとの統合などのテーマをカバーする認定コースを提供しています。公式ドキュメントを学び、実践練習を完了し、実際のプロジェクトで GitHub Copilot を適用することで、開発者は認定試験の準備を整え、試験に合格した後にデジタルバッジを取得し、LinkedIn、GitHub プロフィール、または個人作品集に表示して職業競争力をさらに高めることができます。
グウェンは、開発者に AI 革命がもたらす機会を活用し、GitHub が提供するツールやリソースを利用して AI プロジェクトを構築し探求し、未来の技術発展を形作るよう促しています。
#AI #Github #ガイド
GitHub Copilot の強力なモードを完全に理解する#
アレクサンドラ・リーツケは、GitHub Copilot の強力な機能であるエージェントモードを紹介します。エージェントモードは、自律的でリアルタイムかつ同期的な協力ツールであり、自然言語プロンプトに基づいて複数のステップのコーディングタスクを実行し、開発者が要求からプロトタイプへの迅速な変換を実現するのを助けます。
エージェントモードの核心は、開発者の意図を理解し、ソリューションを構築し、期待される結果に達するまで継続的に反復できることです。コードベースを分析して完全なコンテキストを取得するだけでなく、複数のステップのソリューションを計画し実行し、コマンドやテストを実行し、特定のタスクを完了するために外部ツールを呼び出し、アーキテクチャの改善提案を行うこともできます。システムプロンプトを通じて、エージェントモードは自律的にコマンドを実行し、編集を適用し、エラーを検出し、リアルタイムで調整を行い、開発者はその推論プロセスと使用されるツールを明確に見ることができます。
エージェントモードは、異なるレベルの開発者に適しています。初心者にとっては、アプリケーションを迅速に構築するための同期開発ツールです。経験豊富な開発者にとっては、作業効率を大幅に向上させ、より高次の問題解決に集中できるようにします。エージェントモードは、Model Context Protocol(MCP)サーバーや拡張機能を通じて、さらに専門的なツールをインストールすることもサポートし、GitHub のワークフローを自動化したり、リポジトリデータを抽出して分析したりするなど、機能を拡張します。
開発者は、エージェントモードを使用してコードをリファクタリングしたり、プロジェクトを移行したり、テストを作成したり、レガシーコードをモダナイズしたり、コード生成エラーを自動修正したり、新機能を追加したり、機能仕様や UI スケッチに基づいてプロトタイプを構築したりするなど、さまざまな方法でエージェントモードを利用できます。記事では、エージェントモードが非決定的な大規模言語モデル(LLM)に基づいているため、同じプロンプトとコンテキストでも提案が異なる可能性があることにも言及しています。
開発者は、VS Code で Copilot Chat ビューを開き、エージェントモードを選択することで使用を開始できます。また、Visual Studio でプレビューすることも可能です。エージェントモードは、開発者の日常のコーディングプラクティス、ツール、開発プロセスに応じて Copilot の応答方法を調整するために、カスタム指示と組み合わせて使用することもできます。さらに、開発者は異なる開発ニーズに応じてエージェントモードを駆動する AI モデルを選択することもできます。
エージェントモードは、開発者に大きな柔軟性を提供し、個々のニーズに応じてプロトタイプアプリケーションを構築したり、既存のコードベースを処理したり、ワークフロー内の低レベルのタスクを自動化したりするために使用できます。開発者は、自分のスタイルやニーズに応じてエージェントモードをカスタマイズし、より効率的に開発作業を完了できます。
#AI #Copilot #エージェント #Github #実践
エージェントモード 101:GitHub Copilot の強力なモードについて
GitHub Copilot を使用したテスト駆動開発(TDD)#
ケダシャ・カーは、GitHub Copilot を活用してテスト駆動開発(TDD)を実現する方法を紹介します。テストは開発プロセスにおいて不可欠でありながら、しばしば煩雑に感じられるステップであり、特にコードベースが増大し複雑さが増すにつれてその傾向が強まります。GitHub Copilot は、開発者がテストプロセスの一部を自動化するのを効果的に助け、開発効率を向上させることができます。
ケダシャはまず、テストの重要性を強調し、テストがコードが期待される動作を満たしていることを確認するための重要な手段であると指摘します。テストの種類は多岐にわたり、受け入れテスト、統合テスト、単体テストなどがあります。その中でも、単体テストはコードをより小さな単位に分解してテストし、各単位が正常に動作することを確認することで、アプリケーション全体に対する信頼を高めます。単体テストのもう一つの利点は、自動化が可能であり、開発者は大量のテストを実行することでコードの健全性を迅速に把握し、潜在的な問題をタイムリーに発見できることです。
ケダシャは次に、GitHub Copilot を使用して単体テストを作成する方法を紹介します。開発者は Visual Studio Code で GitHub Copilot を使用し、コードスニペットをハイライトして Copilot Chat を呼び出し、/tests add unit tests for my code コマンドを利用してテストコードを生成できます。Copilot はコードに基づいてテストプランとコード提案を提供し、開発者はそれを新しいファイルに追加し、python -m pytest コマンドを実行してテストを実行できます。
TDD は、テストを先に書いてから実装コードを開発する方法であり、その核心はテストによって開発プロセスを導くことにあります。TDD の重要な理念は「赤緑リファクタリング」であり、まずテストを書き、テストが失敗する(赤の段階)、次にテストを通過させるためのコードを作成する(緑の段階)、最後にコードをリファクタリングして構造を最適化し、テストが常に通過することを保証します。GitHub Copilot は TDD において特に重要な役割を果たし、開発者は Copilot に期待する機能を説明することでテストコードを生成し、その後 Copilot に実装コードを生成させることで、迅速に開発プロセスを完了できます。
ケダシャはまた、単体テストを書く際のベストプラクティスとして、テストにドキュメントを追加すること、テストを整理整頓すること、効率を高めるためのテストツールを作成すること、コードが変更された際にテストを更新することなどを強調しています。さらに、記事には GitHub Copilot を使用してテスト開発を行う方法を学ぶための複数のリソースリンクが提供されています。
#Copilot #Github #AI #TDD #テスト
初心者向け GitHub:GitHub Copilot を使用したテスト駆動開発(TDD)
Chrome DevTools の更新#
**Gemini 統合:** 開発者は Gemini を通じて CSS の変更を修正および保存し、変更をローカル作業スペースに保存できます。さらに、Gemini はパフォーマンスインサイトの注釈を生成し、パフォーマンストラッキングにスクリーンショットを追加し、開発者により直感的な視覚的補助を提供します。
** パフォーマンスパネルの更新:** パフォーマンスパネルには、重複した JavaScript とレガシー JavaScript という 2 つのインサイト機能が追加されました。前者はページ内で重複して読み込まれる大規模な JavaScript モジュールを特定し、後者は古いブラウザとの互換性のために読み込まれるポリフィルや変換コードを検出し、開発者がコードを現代のブラウザに適応させるのを助けます。
** 作業スペース接続機能:** 開発者はローカルフォルダを DevTools の作業スペースに接続し、JavaScript、HTML、CSS の変更をローカルソースファイルに保存できるようになりました。この機能は自動接続と手動接続の両方をサポートしています。
**Lighthouse 12.6.0:**Lighthouse パネルは 12.6.0 バージョンにアップグレードされ、開発者は Lighthouse レポートのパフォーマンスカテゴリでこれらのインサイトを試すことができます。
** その他の改善:** ネットワークパネルに新しいサーバータイミング解析機能が追加され、パフォーマンスパネルの「効率的なキャッシュライフサイクルを使用する」インサイト機能が改善され、スクリーンリーダーがより多くの機能をサポートするようになりました。
#Chrome #Gemini #DevTools
DevTools の新機能、Chrome 137 | ブログ | Chrome for Developers
AI アシスタントによるパフォーマンス分析#
Chrome DevTools の AI アシスタントによるパフォーマンス分析機能は、開発者がウェブページのパフォーマンスをよりよく理解し最適化するのを助ける実験的なツールです。この機能は現在、Chrome Canary 132 以降のバージョンでのみ提供されています。開発者は、パフォーマンスパネルの「インサイト」タブから特定のパフォーマンスインサイト(LCP の段階ごとの分析、LCP リクエストの発見など)を選択し、「AI に問い合わせ」ボタンをクリックすることで AI アシスタントパネルを開くことができます。また、パフォーマンストラッキングビューで特定のアクティビティを右クリックして「AI に問い合わせ」オプションを選択することもできます。さらに、コマンドメニューに「AI」と入力し、「AI アシスタントを表示」コマンドを実行するか、「その他のツール」メニューから「AI アシスタント」を選択してこのパネルを開くこともできます。
AI アシスタントパネルは、開発者が選択したパフォーマンスアクティビティをコンテキストとして会話を展開し、関連するアクティビティがパネルの左下隅に表示されます。パフォーマンスインサイトから AI アシスタントを開いた場合、そのインサイトが事前選択されたコンテキストとして使用されます。トラッキングビューから開いた場合、選択されたアクティビティがコンテキストとして使用されます。AI アシスタントは、選択された呼び出しツリーのタイミングデータを使用して質問に回答し、開発者は会話が始まった後に関連ボタンをクリックして AI が使用した元のデータを確認できます。
開発者が会話を迅速に開始できるように、AI アシスタントはサンプルプロンプトを提供し、開発者は自分で質問を入力することもできます。AI が回答を提供しない場合、それは質問がその能力の範囲を超えている可能性があるため、開発者は Chrome チームにフィードバックを送信できます。AI アシスタントは会話の履歴を保存し、DevTools や Chrome が再読み込みされた後でも、開発者は以前の会話にアクセスできます。パネルの左上隅のコントロールを使用して、開発者は新しい会話を開始したり、古い会話を続けたり、履歴を削除したりできます。
さらに、AI アシスタントはフィードバックメカニズムを提供し、開発者は「いいね」または「よくない」ボタンを使用して回答を評価したり、不適切なコンテンツを報告したりできます。これらのフィードバックは、Chrome チームが AI アシスタントの回答の質と全体的な体験を改善するのに役立ちます。注意が必要なのは、AI アシスタントは現在実験段階にあり、いくつかの既知の問題が存在する可能性があるため、開発者は使用前に関連データ使用ポリシーを理解しておくべきです。
#Google #AI
パフォーマンスのための AI アシスタンス | Chrome DevTools | Chrome for Developers
Gemini Nano の強化:LoRA を利用してより高品質な要約を提供#
Chrome チームは Google Cloud と協力し、低ランク適応(LoRA)技術を使用して Gemini Nano モデルを微調整し、テキスト要約の生成品質を大幅に向上させました。記事では、要約 API の機能、微調整の実験方法、パフォーマンス評価、LoRA 技術の利点について詳しく説明し、リアルタイム推論デモとフィードバックチャネルを提供しています。
要約 API は Chrome に組み込まれた機能で、長いテキストコンテンツを簡潔で理解しやすい要約に圧縮することができ、ニュースサイトの重要ポイントリストや製品レビューの感情要約など、さまざまなシーンに適しています。さまざまなウェブサイトの要約スタイルや長さのニーズに応えるために、この API はタイトルスタイル、要点スタイル、ミニマルスタイル、魅力的なプレビュー式など、複数の要約タイプを提供しています。記事では、要約 API を使用してウィキペディアページの要約を生成する方法の例を示し、開発者がテストや体験を行うためのオンライン API デモプラットフォームを提供しています。
Chrome チームは、Chrome Canary で微調整機能を有効にする方法を詳しく説明しています。バージョン 138.0.7180.0 以降、ユーザーは特定の Chrome フラグを使用してこの機能を有効にできます。有効にすると、ユーザーは DevTools コンソールに特定のコマンドを入力して補足の LoRA モデルをダウンロードし、実験を開始できます。
パフォーマンス評価の面では、Chrome チームは自動評価と自動スコアラー(Autorater)評価の 2 つの方法を採用しています。自動評価は、ソフトウェアを使用してモデル出力の品質をチェックし、フォーマットエラー、文の重複、非英語文字などの問題に重点を置きます。結果は、微調整された Gemini Nano がフォーマットエラー率を大幅に低下させ、記事やチャットの要約の両方でより良いパフォーマンスを示すことを示しています。自動スコアラー評価は、Gemini 1.5 Pro モデルを使用して Gemini Nano の出力品質を評価し、評価指標にはカバレッジ、事実性、フォーマット、明瞭さなどが含まれ、異なる要約タイプに対しては魅力、簡潔さ、引き込む程度などの追加評価指標が設けられています。評価結果は、LoRA 微調整された Gemini Nano がすべての指標でベースモデルを上回っていることを示しています。
LoRA 技術の核心は、モデルを期待される方向に導くために小型の追加コンポーネントを追加することであり、モデルのすべてのパラメータを調整するのではありません。この方法は、トレーニング時間とコストを大幅に削減でき、原始パラメータの 2% をトレーニングするだけで顕著な出力の変化を実現できます。Chrome チームは、Gemini Nano のベースモデルと LoRA 微調整されたモデルが生成した要約の例を比較することで、LoRA 技術が要約の質を向上させ、特定の指示に従う能力を示しています。
さらに、リアルタイム推論デモが提供され、Gemini Nano と LoRA を使用した Gemini Nano が「Ocean Sunfish」記事の「tl;dr」要約を生成する際のパフォーマンスの違いが示されています。微調整を実施することで、Gemini Nano は特定の指示に従った要約をより良く生成できるようになります。
Chrome チームは、開発者に Chrome Canary で更新されたモデルを試し、フィードバックを共有するよう促しています。開発者は、Chromium の問題追跡システムを通じてバグレポートや機能リクエストを提出し、Chrome の実装を改善する手助けをすることができます。
#Chrome #Google #AI
Gemini Nano の強化:LoRA を利用してより高品質な要約を提供 | ブログ | Chrome for Developers
ChatGPT と大量の過去の、欠陥のある解決策が、私たちがその発売前の 50 年以上にわたって直面したことのない問題を解決しました#
ChatGPT がコードを生成する際の問題、特にその生成された解決策が過去のものであったり誤っていたりする可能性があるにもかかわらず、広く普及し使用されていることについてです。
誰かが ChatGPT の「ウェブを検索する」CSS アニメーションのグラデーションテキスト効果を実現する方法を尋ねたところ、ChatGPT が提供したコードは効果を実現できるものの、多くの冗長で過去の部分を含んでいました。たとえば、ChatGPT のコードでは - webkit-text-fill-color や background-clip などのプロパティが使用されており、これらは過去に特定のブラウザとの互換性のために使用されていたかもしれませんが、現在ではもはや必要ありません。著者は、現代のブラウザが background-clip: text を広くサポートしているため、-webkit-text-fill-color を使用してテキストの透明度を設定する必要はないと指摘しています。ChatGPT のこの書き方は、互換性を高めるどころか、不要なコード量を増やすだけです。
チューダーは、CSS グラデーションテキストの歴史をさらに振り返ります。2010 年には、CSS の background-clip プロパティは広くサポートされておらず、開発者はグラデーションテキスト効果を実現するために - webkit-background-clip を使用する必要があり、非 WebKit ブラウザでも基本的なテキスト表示を確保するために複雑な CSS プロパティの組み合わせを使用して互換性を実現する必要がありました。しかし、時間が経つにつれて、現代のブラウザはこれらの機能を完全にサポートするようになり、過去の互換性解決策はもはや必要ありませんが、ChatGPT のようなツールは依然としてこれらの過去のコードを生成しています。
チューダーはまた、ChatGPT がコード内で background-size や background-position を設定する方法も冗長であると指摘しています。過去には、特定のブラウザが shorthand で background-size を設定することをサポートしていなかったかもしれませんが、現在ではその問題は解消されています。さらに、水平グラデーションにおいては、background-size の 2 番目の値(高さ)は無関係であり、200% または auto に設定しても視覚的な効果は全く同じです。
このような過去のコードを生成する問題は、ChatGPT に特有のものではありません。他の AI ツールである Gemini も同様の問題を抱えており、古い流行の解決策と現代の CSS を混合して「歪んだ混合物」を生成することがよくあります。チューダーは、開発者が AI によって生成されたコードを使用する際には、より慎重であるべきであり、AI の出力に単に依存するのではなく、最新の技術基準や実践と組み合わせてコードを最適化する必要があると強調しています。
#AI #思考
ChatGPT と過去の欠陥のある解決策の普及について、私たちがその発売前の 50 年以上にわたって直面したことのない問題を解決しました
純粋な HTML と CSS でマインクラフトを実現。#
HTML を見てみると、かなり大きいので、実行すると少しカクつくかもしれません。
#フロントエンド #CSS
オープンソースソサイティ大学が無料で CS(コンピュータサイエンス)を学ぶ方法。#
#コース
人生の方向性を見つける#
ジェシカ・リビングストンは、バッキネル大学 2025 年卒業式でのスピーチ内容を共有しました。彼女は大学卒業時の自分の迷いの状態を振り返り、当時は英語の学位を持っていたものの明確な職業計画がなく、本当に興味のあることを見つけるのに 10 年かかったと述べています。彼女は、卒業生が目標をより早く見つける手助けをしたいと考えており、特に野心的な計画を持っているがまだ方向性を見つけていない人々に向けています。
ほとんどの人は成長過程で既定の軌道に沿って進んできました。たとえば、小学校、中学校、高校、大学などの経験があり、この経験から人生の各段階には明確な次のステップがあると誤解してしまいます。しかし、大学卒業はこの「軌道」の終点であり、人々はこの瞬間から自由にどの方向にも進むことができることを認識する必要があります。この自由は刺激的ですが、多くの人にとっては恐怖をもたらすものであり、多くの人が新しい「軌道」を探そうとし、有名な会社での仕事を見つけようとしますが、その仕事が本当に魅力的であるとは限りません。
卒業生は、大学卒業という節目を利用して自分を再定義することができます。多くの人は過去の学業成績や経験から自信を欠くかもしれませんが、彼女は他の人が彼らの過去を理解していないため、これらの制限に縛られないようにと励まします。変わりたいのであれば、今から始めて、より好奇心を持ち、より責任感を持ち、より活力を持つことができ、誰もその変化を止めることはできません。
彼女は、卒業後に興味のない仕事を選んだ経験を共有しました。その時、彼女は誰かが給料を支払ってくれることに喜びを感じていただけでした。大学卒業後には無数の職業選択肢があり、彼女はそのことに気づいていませんでした。彼女は卒業生に対し、これらの選択肢を積極的に探求するように勧め、最初の機会を受け入れるのではなく、周囲の人々と話し合って選択肢を絞り込むことが最良の方法であると提案します。彼女は、異なる人々と話し、彼らの仕事の内容を理解し、自分の環境や仕事が周囲の人々と合わないと感じた場合は、思い切って離れるべきだと述べています。
彼女は自身の経験を通じてこれを示しました。彼女は起業に関連する人や事柄に興奮を感じ、起業に関する本を書くことを決意しました。多くの人が彼女のプロジェクトに懐疑的でしたが、彼女はこれらの否定的な評価に影響されませんでした。野心的な計画を実現するためには、他人の疑念や拒絶に抵抗することを学ぶ必要があります。彼女は Y Combinator の設立を例に挙げ、初期には笑いものにされても、自分の考えを信じ続ければ最終的には成功を収めることができると説明しました。
ジェシカ・リビングストンは、卒業生に自分の人生の方向性を積極的に掌握し、流されないようにすることを勧めます。彼女は、面白い人々と交流することで最も自分に合った道を見つけるよう提案します。彼女は卒業生に、人生の選択肢は多岐にわたるが、他者とのつながりを通じて本当に自分を興奮させ、没頭させる事業を見つけることができることを思い出してほしいと願っています。
#思考 #起業
Defuddle#
Defuddle は、ウェブページから主要なコンテンツを抽出し、コメント、サイドバー、ヘッダー、フッターなどの不要な要素を取り除いて、簡潔で読みやすい HTML 文書を生成することを目的としています。
Defuddle の核心機能は、ウェブページの DOM 構造とスタイル情報を分析し、主要なテキストコンテンツを識別して保持し、無関係な干渉要素を取り除くことです。直接ウェブページの DOM を解析する、HTML 文字列から解析する、URL から解析するなど、さまざまな入力方法をサポートしています。さらに、Defuddle は豊富な設定オプションを提供しており、ユーザーは必要に応じて解析動作を調整できます。たとえば、デバッグモードを有効にしたり、Markdown 形式に変換したり、特定の HTML 属性を保持したりすることができます。
技術的実装の面では、Defuddle は 3 つの異なるパッケージバージョンを提供しています:コアバージョン(defuddle)はブラウザ環境に適しており、追加の依存関係はありません;完全バージョン(defuddle/full)は追加の数式解析機能を含んでいます;Node.js バージョン(defuddle/node)は Node.js 環境に最適化されており、完全な機能特性をサポートしています。Defuddle は TypeScript で記述されており、コード構造が明確で、拡張や保守が容易です。
Defuddle の出力結果は、記事のタイトル、著者、説明、公開日、単語数などのさまざまなメタデータを含むオブジェクトであり、標準化された HTML コンテンツも提供します。HTML 要素に対して一連のルールを適用して標準化処理を行い、H1 を H2 に変換したり、コードブロックの行番号や構文ハイライトを削除したり、脚注のフォーマットを統一したり、数式を標準の MathML 形式に変換したりします。
#ツール
Supermemory#
Supermemory は、ユーザーが自分自身の「第二の脳」を構築するのを助けるもので、ブックマークに ChatGPT のようなインテリジェントな機能を提供します。ユーザーは Chrome 拡張機能を通じてツイートをインポートしたり、ウェブサイトやコンテンツを保存したりできます。
Supermemory の核心機能は、AI アプリケーションに強力な開発者フレンドリーな API を提供し、外部知識をシームレスに統合し、AI スタックの完璧なメモリ層として機能し、意味検索と情報取得機能を提供してモデルの関連コンテキストを強化します。ユーザーはこれを利用して知識を保存し整理し、意味に基づいて情報を見つけるための意味検索エンジンを使用し、ウェブサイト、PDF、画像などの任意のデータソースに接続することができます。
Supermemory の応用シーンは広範で、LLM 出力を強化するための検索強化生成(RAG)、インテリジェントで検索可能な知識ベースや文書の作成、サポート文書へのアクセスを持つチャットボットの構築、論文、ノート、参考資料を横断する研究アシスタントのクエリ、マルチメディアコンテンツの意味的な整理と検索を行うコンテンツ管理システムなどが含まれます。
#AI #ツール