Qtブログ(日本語)

コンテキスト機能強化 – Qt AI Assistant v0.9.5 リリース

作成者: Qt Group 日本オフィス|Sep 16, 2025 2:13:11 AM
本稿は「Context, Context, Context – Qt AI Assistant v0.9.5 is out!」の抄訳です。

全体像が重要です!多数のご要望にお応えし、アクティブプロジェクトからLLMへ追加のコンテキストを提供する機能を追加しました。

Qt AI Assistant v0.9.5では、コード補完とプロンプトの事前構成済みLLMとして、Gemini 2.5 ProとDeepSeek v3.1もサポートしています。

プロジェクトコンテキストが重要な理由

プロジェクトコンテキストは、コーディングアシスタントがアプリケーションの全体的な目的と、コードベースの異なる部分がどのように連携するかを理解するために重要です。この知識により、コードオブジェクトの再利用時により適切に構文の問題を検出し、提案が既存の構造にスムーズに統合されることを保証できます。コンテキストはまた、アシスタントがプロジェクト固有のパターンと目標に合わせることを可能にし、汎用的または互換性のない応答のリスクを軽減します。

プロンプト用プロジェクトコンテキスト

Qt AI Assistantは、プロジェクト内の他のファイルをコンテキストとして使用してプロンプトに応答します。これにより、AI Assistantは以下が可能になります:

プロジェクト全体を簡潔に説明


 

依存関係を含むコードドキュメントの作成


カスタムQMLタイプなどのオブジェクトが使用されている場所の特定支援

 

カスタムQMLタイプとカスタムプロパティに関する構文問題の修正


 

プロジェクトコンテキストのスコープは、以下の補完的な方法で管理できます。

  • プロジェクトコンテキストで使用されるトークンの数を制限
  • プロジェクトコンテキストの範囲を、開いているファイルのみに限定
  • .aiignoreファイルを作成してプロジェクトコンテキストの範囲を制限

スクリーンキャプチャ: Qt AI Assistantのコンテキスト設定

 

Qt CreatorのファイルウィザードでAI Assistantテンプレートを使用して.aiignoreファイルを作成できます。初期のaiignoreファイルには、フォーマットの提案とバイナリなど一般的に除外されるファイルタイプのリストが含まれています。aiignoreドキュメントにリストされたファイルまたはファイルタイプは、プロジェクトコンテキストから除外されます。

スクリーンキャプチャ: Qt Creator の .aiignore ファイル作成ウィザード

 

残りのプロジェクトコンテキストから、対象ファイルとの近接性に基づいてコンテキストを優先順位付けします(同じサブフォルダー内のファイルが含まれる可能性が高くなります)。LLMの入力制限によりソースコードが適合しない場合や、画像やアイコンなどのバイナリコンテンツの場合は、コンテキストとしてファイルパスのリストを含めます。

注意: 他のプロジェクトファイルからのコンテキストを有効にすると、トークン消費が大幅に増加します。追加のコンテキストはコーディング支援を劇的に改善しますが、コストが発生します。各LLMのコンテキスト制限を設定することで、追加コンテキストの量と使用されるトークン数を制限できます。

関連するプロンプトを定義する複雑さのため、プロジェクトコンテキストはカスタムモデルとは共有されません。

Gemini 2.5 Proサポート

Gemini 2.5 ProはQML開発においてAnthropic Sonnet 4モデルの真の代替手段となりました。

Gemini 2.5 ProはQML100ベンチマークで58%のQMLコーディング性能を提供し、GPT4o(47%)およびDeepSeek R1モデル(57%)より優れていますが、Sonetモデル(最大77%)より低い性能です。この低い性能は、より新しいトレーニングデータによりQt 6構文を採用したSonnetモデルと比較して、Qt 5の非推奨QML構文を頻繁に提案することに基づいています。

Gemini 2.5 Proをコード補完に使用できますが、時々インデントと改行の指示に従わず、既存のコードの形式に適合しないコード提案につながることがあります。そのため、コード補完については「実験的」とラベル付けしています。

DeepSeek v3.1サポート

中国のお客様向けに、DeepSeekサポートをv3.1にアップグレードしました。DeepSeek v3.1は、自然言語プロンプトのQML100コーディングベンチマークでの評価を5%改善し、総合スコア62%を達成しています。コード補完スコアはQML100FIMベンチマークで87%の成功率で変わりません。最大コンテキストウィンドウは128kトークンに引き上げられました。

DeepSeek v3.1は不要なインポート、特にQt Quick Controlsを提案します。LLMはまた、多くの非修飾アクセスを含むコードを作成します。さらに、利用可能なQt Quick Controlsを使用する代わりに、アトミックコンポーネントからスピンボックス、ドロップダウン、プログレスバーなどのUIコントロールを作成することを好みます。

DeepSeek v3またはR1からDeepSeek v3.1にアップグレードするお客様は、既存のチャットAPIを介してQt AI Assistantの事前構成済みDeepSeekモデルサポートを使用できます。

インストール方法

Qt Creator 17.0.1以降のリリースのQt Creator拡張機能ビューからQt AI Assistant v0.9.5をインストール(またはアップグレード)できます。アプリケーションのサイズにより、インストールには少し時間がかかる場合があります。

Claude Sonnet 3.5廃止

高品質なLLMポートフォリオを維持するため、事前構成済みLLMとしてのClaude Sonnet 3.5のサポートを終了します。AnthropicからClaude Sonnet 3.7とClaude Sonnet 4が優れたコーディング支援モデルとして利用できます。 

その他の軽微な機能強化

  • 推論モードがClaudeモデルでサポートされるようになりました。詳細LLM設定から有効化できます。独自のプロンプト、/doc、/explain、/reviewの応答には、LLMが応答生成に従うロジックの透明性が向上しています。効率化のため、/inlinecomments、/fix、/qtestスマートコマンドでは推論が無効化されています。
  • Claude Sonnet 4のコンテキストウィンドウが100万トークンに引き上げられました。
  • 停止ボタンをクリックしてリクエストを停止できます(インラインプロンプトウィンドウの送信ボタンを一時的に置き換えます)。必ずしもLLMのトークン消費を停止するわけではありませんが、より迅速に次に進むことができます。
  • この機能をサポートするすべてのLLMでプロンプトキャッシングが使用されるようになり、特により多くのコンテキストがLLMに提供される際のトークン使用量が削減されます。