Clean Web Clipper Chrome に追加(無料)

こんな人に

同じメニューをモデルに貼り付けるのはやめましょう

109 ページのコーパス(直接比較の測定)で、Clean Web Clipper が残した重複ナビゲーションの行は 102 行でした。ほかの 3 つの抽出エンジンは 282、478、491 行で、残った HTML タグは一つもありませんでした。モデルに届くのは記事と、出典の URL と公開日を示す frontmatter のヘッダーです。

貼り付けたページの本当のコスト

ドキュメントのページをブラウザからコピーしてチャットに貼ると、モデルには Cookie の通知、サイドバー、バージョンの切り替え、「このページの内容」のレール、4 列のフッターのリンク、「次に読む」の帯が送られます。その 1 行 1 行が支払うトークンで、読んでほしかった 2 つの段落とモデルの注意を奪い合います。

2 つ目のコストはもっと分かりにくく、繰り返されるナビゲーションは構造のように見えることです。ページの要約を頼まれたモデルはメニューの項目を話題として並べ、主張の出どころを聞かれるとリンクのラベルを指します。雑な変換ツールが残した divtable のマークアップは、モデルが文にたどり着く前に読み飛ばすべき層をもう一つ増やします。

コストが膨らみ始めるのは 2 回目の貼り付けです。会話が長くなって履歴が削られ、ページをもう一度貼る。ところがページは朝から変わっていて、モデルは少し違うテキストをもとに考え、そのことはスレッドのどこにも記録されません。毎回同じ URL を取得するエージェントにも同じ問題があり、さらにレート制限と、通れないログインが加わります。ディスク上のファイルは毎回同じ入力で、サイトが落ちていても読めます。

代わりにモデルが受け取るもの

モデルに渡るのはこれだけdocs.python.org/3/library/asyncio-task.html
---
title: "Coroutines and Tasks"
source: "https://docs.python.org/3/library/asyncio-task.html"
extraction: "dom"
---

## Awaitables

We say that an object is an *awaitable* object if it can be used in an
`await` expression. There are three main types: coroutines, Tasks and Futures.

```python
async def main():
    await asyncio.sleep(1)
    print("hello")
```

プロンプト向けの設定

設定の大半を共有する 2 つの構成があります。チャットに貼り付けるためのものと、エージェントが読むフォルダを満たすためのものです。どちらも 5 分ほどで済みます。

  1. アイコンを右クリックして オプション を開き、アイコンをクリックしたときを「Markdown をコピー」にします。これが最短の道です。クリックし、チャットに切り替え、貼り付ける。
  2. 画像を 含めない にします。CDN の画像の URL は 1 つでリサイズのパラメーターだけで 200 文字になることがあり、テキストのモデルにとってはどれも意味がありません。
  3. frontmatter の欄では sourcedate をオンのままにし、authorextraction をオフにします。モデルが主張の出典を示すにはヘッダー 2 行で十分で、残りはお金を払って送るヘッダーです。
  4. Alt+Shift+M でページをクリップして貼り付けます。拡張機能が「記事なし」と答えたら、それでも貼るのはやめてください。その答えはページの大半がリンクのラベルだったという意味で、まさにモデルにメニューの項目を話題として並べさせる入力です。
  5. チャットではなくエージェント向けなら、保存先をプロジェクト内の context/ のような、エージェントがすでに読んでいるフォルダにし、ファイル名のテンプレートを {domain}-{title} にします。
  6. タスクが実際に依存している 6〜8 ページを、そのフォルダにクリップします。エージェントはローカルのファイルを読むので、取得も、レート制限も、通れないログインもなく、毎回同じテキストになります。
  7. よくクリップするサイトにサイト別ルールを追加し、reddit.com を画像なしで専用のサブフォルダに入れます。考えなくてもフォルダが整理されたままになります。

文脈のコストを削る設定

どれも、モデルが読むことで課金されるものを減らします。間違えやすいのは frontmatter の行で、出典の表示に必要なのは 5 行ではなく 2 行です。

設定ここでこの値にする理由
アイコンをクリックしたときMarkdown をコピークリック、切り替え、貼り付け。ファイルもウィンドウもダイアログもない
画像含めない画像の URL は長く、テキストのモデルには無意味で、隣の段落より長いことも多い
frontmatter`source` と `date` をオン、`author` と `extraction` をオフ主張の出典を示すには十分で、モデルが使わない欄にコストをかけない
保存先(エージェント)プロジェクト内のフォルダ `context/`ローカルのファイルなら取得もレート制限もなく、毎回同じ入力になる
ファイル名のテンプレート`{domain}-{title}`フォルダを grep するエージェントが、2 つの「Overview」を区別できる
選択範囲ページではなく選択範囲をクリップ1 つのセクションが質問に答えるなら、残りの 9 つは純粋なコスト
サイト別ルール`reddit.com` → サブフォルダ、画像なしスレッドとリファレンスは別の山にしておく価値がある
フィードのページでは、リンク 300 件の代わりにこう返るカテゴリ一覧ページでのクリップウィンドウ
このページには記事がありません。

抽出したテキストの 4 分の 1 を超える部分がリンクのラベルの中にありました。
これはフィード、ストアのトップ、検索結果の特徴です。
クリップボードには何も書き込んでいません。

  調べたブロック       41
  選んだブロック       <section class="cards">
  リンクの割合         0.71
  実際のテキスト       740 文字

3 つの使われ方

1 ページに 1 つの質問

仕様書を読んでいて、あるセクションの自分の解釈をモデルに確かめてほしいとします。セクションを選択し、Alt+Shift+M を押して貼り付けます。届くのはそのセクションと source の行と date の行だけです。Cookie の通知も、バージョンの切り替えも、「このページの内容」のレールも、8 列のフッターもありません。

違いが表れるのは請求額より答えのほうです。貼り付けたページの要約を頼まれると、ナビゲーションを渡されたモデルはメニューの項目を話題に含めます。各セクションで繰り返される語句は、本当に構造のように見えるからです。それを取り除けば、間違いの元がなくなります。

取得の代わりにエージェントが読むフォルダ

コーディングエージェントに SDK の API リファレンスが必要です。8 ページを context/ にクリップし、それぞれドメインとタイトルから名前を付けます。エージェントはローカルのファイルを読むので、何も取得されず、レート制限もかからず、ログイン済みのセッションの内側にあるページも公開ページと同じように読めます。

しかも内容が動きません。取得したページは同じタスクの 2 回の実行のあいだに変わることがあり、そのことはトランスクリプトのどこにも書かれません。クリップしたファイルが変わるのはもう一度クリップしたときだけで、差分を取るための古いファイルも残っています。

モデルがまったく届かないページ

文書がシングルサインオンの内側にある社内 wiki や、有料で購読しているサービスにあります。その URL の取得を頼まれたモデルはログイン画面を受け取り、検索ツールを持つモデルはボット向けの版を受け取ります。拡張機能は、あなたのセッションでブラウザがすでに描画したページを読むので、見えているテキストがそのまま貼り付けられるテキストです。

その途中でページの本文があなたのパソコンを離れることはなく、クリップ自体もどこにもアップロードされません。クリップはクリップボードに行き、「AI チャットへ」ボタンは自分で何かを送信するのではなく、コピーしてタブを開くだけです。

ページを渡すほかの方法との比較

ウェブページをモデルの前に置くために実際に使われている 5 つの経路です。下の各列は、得られるものとそのコストで、この拡張機能も含みます。

今のやり方得られるものコスト
URL を貼るプロンプトに 1 行取得できないモデルが多く、できてもボット向けの版を受け取ることがある
ページをコピー&ペースト付属物も含めてすべて同等の出力で重複したメニューの行は 282〜491、こちらは 102
スクリーンショットをマルチモーダルモデルに見たとおりのページ画像のトークン、出典の行なし、日付なし、あとで grep できるものもない
ページを HTML として保存ディスク上の忠実なコピーファイルの大半はマークアップで、送る中身のうち記事はごく一部
リーダーモードからコピーときには、よりきれいなテキスト動くページと動かないページがあり、出典や日付のヘッダーもない
Clean Web Clipper2 行のヘッダー付きの記事のテキスト1 回に 1 ページ。要約も分割も埋め込みもしない

答えがおかしく返ってきたとき

モデルが記事ではなくナビゲーションを要約した

フィードのページをプロンプトに入れるとそうなります。クリップウィンドウの表示を確認してください。「記事なし」と報告していたなら、抽出した文字の約 4 分の 1 を超える部分がリンクのラベルの中にあったということで、それはカテゴリページ、検索結果、ストアのトップの特徴です。記事そのもののページを探してクリップしてください。プロンプトの言い回しをどう変えるより、答えが大きく変わります。

クリップが、見た目のページよりずっと短い

よくある原因は 2 つです。スクロールに合わせて本文を読み込むページで、クリップした時点では描画済みの部分しかなかった場合は、先に最後までスクロールしてからクリップします。あるいは、閉じたアコーディオンや開いていないタブの中にセクションがあり、開くまで DOM にない場合です。ブラウザが描画していないものは、どの拡張機能にも読めません。

モデルが引用できる日付がない

ページが日付を示していませんでした。欄は今日の日付で埋めずに空のままにしています。モデルの文脈では、自信のある間違った日付は日付がないより悪いからです。それは事実としてあなたに引用されます。日付を持つ頻度はコーパスによって大きく違い、トルコとチェコの上位 50 サイトでは公開日が本当にまれです。これは抽出ではなく、そうしたサイトの性質です。

画像のリンクがまだ文脈を食っている

画像は初期設定でリンクとして残ります。読むには正しく、プロンプトには不向きです。画像を「含めない」に、全体またはサイト別ルールで設定すると、Markdown には画像への参照が一切含まれなくなります。プレースホルダーも空の括弧も、何もありません。

しないこと

どの AI サービスとも通信しません。クリップはどこにも送られず、クリップボードかディスクに行くだけで、「AI チャットへ」ボタンもコピーしてタブを開くだけです。テキストの要約、分割、埋め込みはしません。それはクリッパーではなくモデルの仕事です。クローラーはなく、1 回に 1 ページ、開いているページだけをクリップします。そしてページが一度も描画しなかったものは取り込めません。

Chrome に追加(無料)すべて無料。アカウントも登録も制限もありません。

よくある質問

モデルに URL を渡すだけではだめなのですか?
多くのモデルはそもそもページに届かず、届くモデルも、あなたが読んでいる版ではなくボット向けの版を受け取ることがよくあります。クリップなら、すでに使っていたログインの内側にあるページも含め、画面にあったものをそのまま取り込めます。
拡張機能は AI サービスに何か送信しますか?
そうするボタンを押したときだけで、それもクリップボードにコピーしてチャットのタブを開くだけです。拡張機能自体は、ページについて何もアップロードしません。
実際にどのくらい文脈を節約できますか?
測定できる部分は重複したナビゲーションです。109 ページで繰り返されたメニューの行は 102 行で、比較したエンジンは 282、478、491 行を残しました。各セクションでメニューが繰り返されるページでは、それがノイズの大半です。
トークンを節約するために画像を外せますか?
はい。画像を「含めない」に設定すると、Markdown には画像のリンクが一切含まれません。
ログインの内側にあるページでも使えますか?
はい。ブラウザがすでに描画したページを読むので、社内 wiki や購読している記事もほかのページと同じようにクリップできます。
ローカルモデルでも使えますか?
はい。そうでないことを前提にしている部分は何もありません。クリップはアップロードされないので、クリップボードかディスク上のフォルダに行き、そのあと何に読ませるかは完全にあなた次第です。
テキストを分割、埋め込み、要約しますか?
いいえ。ページを変換して止まります。分割と埋め込みはあなたが作るパイプラインの役目で、要約するクリッパーは、元の文章のどの部分をモデルに見せないかをあなたの代わりに決めることになります。
同じページから明日も同じテキストが得られますか?
ページが同じならです。それがファイルを残す理由で、クリップは書き込まれた時点で固定されるので、1 か月後にタスクを再実行しても同じ入力を読み、以前の取得も比較のためにディスクに残っています。
コード例はモデルが読めるくらいきちんと残りますか?
はい、言語タグ付きで残ります。9 ページの技術系コーパスでは、156 個のコードブロックのうち 73 個でタグが残り、比較したエンジンは 20 個と 0 個でした。タグはサイト自身のハイライターが残したクラスから取るので、推測になることはありません。
複数のタブを一度に 1 つのプロンプトへクリップできますか?
いいえ。一括モードもクローラーもなく、開いているページをクリップします。複数のページなら、1 つずつフォルダにクリップし、モデルやエージェントにそのフォルダを指定してください。