目次
TL;DR
- LLMへの依頼内容を明確に拡張するツール「Query Expander」を作った
- Claude Artifactとして動作するため、Claudeにログインしていればいつでも使える
- 3段階の詳細レベル(Concise / Standard / Detailed)で出力を調整可能
- 日本語・英語を自動判定して出力
作った経緯
Claude Codeで調査や実装を依頼するとき、依頼内容を明確にしておくと精度が上がります。
RAGの文脈では、ユーザーの曖昧なクエリを検索に適した形に変換することを「クエリ拡張(Query Expansion)」と呼びます。これと同じ発想で、LLMへのプロンプトも拡張できないかと考えました。
以前は、依頼内容を拡張するためのルールをClaudeに設定して使っていました。例えば「〇〇について調べて」という曖昧な指示を、目的・対象・期待するフォーマットを含んだ明確なプロンプトに変換してもらう、といった具合です。
ただ、この作業の頻度がかなり高かった。仕事中も頻繁に使うので、毎回チャットを開くのがめんどくさくなってきました。
そこで、Claude Artifactとして独立したツールにしてみました。Claudeにログインしていれば使えるので、いつでも気軽にプロンプトを拡張できます。自分のプラン内で動作するため、APIのトークン消費を気にする必要もありません。
UIデザインにはGoogleのStitchを使いました。プロンプトからUIを生成してくれるツールで、ベースのデザインを素早く作れます。
Query Expanderとは
Query Expanderは、曖昧なプロンプトを明確で構造化されたプロンプトに変換するツールです。
主な機能:
- 3段階の詳細レベル: Concise(簡潔)/ Standard(標準)/ Detailed(詳細)
- Refine Onlyモード: 元の構造を維持しつつ文章を洗練
- 言語自動判定: 入力が日本語なら日本語で、英語なら英語で出力
- Markdown保持: 見出しやリスト構造を維持したまま拡張
使い方
- テキストエリアに拡張したいプロンプトを入力
- 詳細レベル(Concise / Standard / Detailed)を選択
- 「ENHANCE QUERY」をクリック
- 拡張されたプロンプトをコピーして使用
詳細レベルの使い分け
| レベル | 出力量 | 用途 |
|---|---|---|
| Concise | 1〜2文 | 軽微な修正、誤字脱字の修正 |
| Standard | 2〜4文 | 一般的なプロンプト改善(デフォルト) |
| Detailed | 3〜5項目 | 複雑なタスク、詳細な指示が必要な場合 |
Refine Onlyモード
通常モードはプロンプトを「拡張」しますが、Refine Onlyモードは元の構造を維持したまま「洗練」します。
通常モードとの違い:
| モード | 動作 |
|---|---|
| 通常 | 目的・対象・フォーマットなどを追加して拡張 |
| Refine Only | 元の構造を維持しつつ、表現を洗練 |
Refine Onlyが向いているケース:
- 既に構造化されたプロンプトの文章を磨きたい
- 元のフォーマットを崩したくない
- トーンだけ調整したい(カジュアル→フォーマルなど)
使用例
入力:
Reactのstate管理について調べて
Standard出力(イメージ):
Reactにおけるstate管理の主要なアプローチについて調査してください。
対象として、useState、useReducer、Context API、および外部ライブラリ(Redux、Zustand、Jotai等)を含めてください。
それぞれの特徴、適切なユースケース、パフォーマンス面での考慮点を比較形式でまとめてください。
曖昧な「調べて」が、目的・対象・期待するフォーマットを含んだ明確なプロンプトに変換されます。
リンク
- Query Expander - Claude Artifactへのリンク
- ドキュメント - 詳細な使い方
まとめ
プロンプトを明確にする作業は地味ですが、LLMの出力精度に直結します。Query Expanderを使えば、この作業を手軽に行えます。
Claudeにログインしていれば無料で使えるので、日常的にLLMを使う方はぜひ試してみてください。