2 ポイント 投稿者 GN⁺ 2024-07-31 | 1件のコメント | WhatsAppで共有
  • OpenStreetMapの運営側は、AI企業がこっそりスクレイピングで負荷をかける代わりに1万ドルを寄付しろと皮肉を交えつつ、データアクセスのコストとインフラ負担を示した
  • 5万ドルの寄付には、OpenStreetMap.orgから直接受け取る分単位のライブストリーミング更新まで提供できる、という提案も添えられた
  • スクレイピングのトラフィックはまれな例外ではなく、高コストなAPIエンドポイントに毎秒数百件のリクエストが複数のIPと偽装されたUser-Agentで飛んでくるレベルにまで達している
  • すでに planet.osm の完全データと差分、大陸別データがあるため、遅いWebスクレイピングより公式データセットを使うほうが適切である
  • User-Agentの偽装やIP変更のため遮断は難しいが、大規模なAIクローラーの遮断と十分に緩いレート制限(rate limit) は、実際の被害を減らす対策になりうる

OpenStreetMapデータをスクレイピングする代わりに寄付せよという提案

  • AI企業に対し、OpenStreetMapをこっそりスクレイピングせず1万ドルを寄付しろというメッセージが出た
  • 5万ドルを寄付すれば、OpenStreetMap.orgから直接分単位のライブストリーミング更新も提供できると付け加えられた
  • コメントでは、OpenStreetMapのデータはすでにより適切な方法で提供されている点が繰り返し指摘されている
    • 完全な planet.osm データがある
    • 差分更新がある
    • 大陸別データもある
  • Webサイトを直接スクレイピングする方法は、すでに提供されている完全データより遅く非効率だという反応が続いた

スクレイピングトラフィックが生む運用負担

  • OpenStreetMapのスクレイピングは「見たことのない組み合わせ」ではなく、非常によくあることとして受け止められている
    • 高コストなAPIエンドポイントに毎秒数百件のリクエストが入ることがある
    • 複数のIPを使う
    • User-Agentを偽装する
  • User-Agentベースの遮断には明確な限界がある
    • python-requests/2.26.0 のようなライブラリのデフォルトUser-Agentが使われる
    • ブラウザや googlebot のように偽装する場合がある
    • robots.txt の順守が任意事項のように扱われる
    • 遮断されるとIPやUser-Agentを変える
  • それでも一部のAIクローラーは独自のUser-Agentを持っており、大きな加害者を見分けて止めることはできる
    • 例として Bytespyder が挙げられている
    • 過去のすべてのデータマイニングIPを遮断しようという話ではなく、実害を与える側を止めようという趣旨である
    • 非常に緩いレート制限を設ければ、問題を起こすほどのトラフィックだけが制限対象になりうる

1件のコメント

 
GN⁺ 2024-07-31
Hacker News の意見
  • 影響を受ける企業は、AI クローラー軍団にますます苛立ちを募らせている。これらのクローラーは、robots.txt の遵守、公開 API の利用、ピーク時間帯の回避といったスクレイピングのベストプラクティスを守っていない
    著作権だけの問題ではなく、過剰なスクレイピングのトラフィックによってインフラコストも増えている。最終的にはどうなるのだろうか。AI はすでに CAPTCHA も解けるので、ボット対策の軍拡競争は実質的に負けたように思える

    • 目的はスクレイピングを不可能にすることではなく、高くつくものにすることだ。人間はボットのように高速にリクエストしないので、人間のふりをするボットも結局はレート制限に引っかかる
      最終的にはアカウントが必要になり、そのアカウントも追跡され、特定のパターンに合うアカウントは削除される、という流れになる。スクレイピングを止めることはできないが、要点は止めることではなく、遅く高くつくようにすることだ。ある時点で、人間のふりをするよりライセンス料を払うほうがよくなれば、軍拡競争も消える
      防御を十分に高めて、そもそも戦わないほうがましだと思わせられるかどうかは、ランダムなボットが人間のふりをして何度かリクエストできるかどうかより、はるかに難しい問題だ
    • 最終的には API アクセスのようなものが許可リストベースになる地点に到達しそうだ。ボットではないことを検証するには、企業の実在する人と実際の関係を築く必要が出てくるかもしれない
      ほかの方法はすべて偽装できるので、対面ミーティングまで含まれる可能性がある。結局、1960年代型のビジネスの世界に戻るわけだ。技術者たちが皆の足元からじゅうたんを引き剥がしてしまったおかげだ
    • AI たちが最終目標を念頭に置いているのかは分からない。人間側では、ダークフォレストに合わせたインターネットになると思う
      もはや大半は善で、悪性の部分だけを追跡して遮断すればよい、とは仮定しなくなる。代わりに、明示的に信頼する仲間集団が承認した部分だけが善で、それ以外はすべて悪性だと仮定するようになる。信頼によって被害を受ければその信頼関係を切り、こうした信頼の衛生管理が機能するように促す方法を探すことになる
      現在のインターネットと比べて最初に思うのは、「それは地球全体の規模には拡張できないだろう」ということだ。だが、その必要はない。コンピュータに解決してほしい問題は、どうせすべてローカルな問題なのだから
    • 答えは認証付き API ベースの相互作用
      以前のウェブサイトは、リクエストしてくる誰にでもコンテンツを自由に渡す独自 API を内部的に持っていた。これからのウェブサイトは、外部 API と通信して表示するユーザー向けの単純なインターフェースになるべきで、API アクセス権はユーザーの責任であるべきだ
      持っていく価値のある情報は認証の後ろに閉じ込めるべきだ。主要プロバイダー経由の OAuth のおかげで、認証はばかげているほど簡単になった
      お金を払って人間や有料サービスを使いコンテンツを抽出しようとする人たちは、むしろきちんとパッケージ化され、妥当な価格が付いた API を使うほうが正しい
      最後に、robots.txt は法律で強制されるべきだ。店で商品を盗むことと、ウェブサイトからコンテンツを盗むことの間に違いはない
      AI と強欲が、インターネットの開かれた自由を殺した
    • 信頼ベースの招待制の認証島が生まれそうだ。インターネットの無分別な中央集権化が最終的にもたらす結果のように見える
  • OpenStreetMap Foundation の会長だ
    OpenStreetMap のデータは https://planet.openstreetmap.org で大量に無料提供されている。サイトをスクレイピングする代わりに、こちらを使うことを勧める
    スクレイピングは寄付されたリソースに大きな負荷をかける。スクレイピング元の IP はブロックしているが、それすら作業と時間がかかる
    私たちの時間とリソースを尊重してくれれば、サービスをすべての人に無料でアクセス可能な状態に保つ助けになる

    • スクレイピング元の IP を具体的にどうブロックしているのか気になる。一部のスクレイパーは単に混乱していて、OSM データを入手するより良い方法を知らないだけのように思える
      403 エラーコードで応答すると、IP アドレスを変えるだけになる
      より効果的なアプローチは、大量ダウンロードの場所の案内や OSM ダンプの処理ガイドへのリンクを含むレスポンスを提供することかもしれない
  • OpenStreetMap のインスタンスは、文字どおり10分あれば自分で立ち上げられる。単純な docker run コマンドで済む
    もちろんインデックス作成には少し時間がかかるだろうが、向こうのリソースを考えれば長くかかるはずもない。これは単なる途方もない強欲

    • 以前、好奇心から Headway をごく短時間使ってみた。「フルスタック」向けの Docker ベースの選択肢の中ではかなり簡単な部類だ
      しかしすぐには動作せず、問題が起きた。可動部分がものすごく多いので驚きではない。回避策は大したことではないかもしれないが、すべてを安定して動かすのに10分で済むという話は非常に疑わしい
    • いや、かなり苦痛だ
    • リンクが必要だ。最後に試したときは、それよりずっと複雑だった
  • かつて OSMデータ が必要だったが、結局、正しい方法を把握できなかった
    必要なデータを得るには、曖昧な形式の巨大な100GBファイルをダウンロードし、見慣れないライブラリを使う必要があった。情報は散在していて、HTTP APIもあるが制限があったりレート制限がかかっていたりして、これを使ってよいのか明確ではなかった
    自分が無知なのは分かっているし、プロジェクトが存在することには感謝しているが、開発者が洗練されたAPIを期待する時代の基準では、使い勝手は良くない
    結局、必要な形にあらかじめ変換されたOSMデータを提供する無料プロジェクトを使った

    • ある程度は意図された設計だ。洗練されたAPIを提供するには、そのAPIをホスティングし保守する 運用人員 を雇うための資金モデルが必要になる
      OSM Foundationは意図的に小さく保たれており、そうしたことはしない。代わりに、誰でもデータを持っていき、その上にサービスを作れる分散型エコシステムを促進している。商用のものも趣味のものもあり、有料も無料もある
      この方式は非常にうまく機能していて、個人的にはWikimedia Foundationの大きな予算を中心にした最大主義的アプローチより良いと思う
    • 比較的最近の protobuf形式のデータダンプ のことを言っているなら、これは非常に最適化されたバイナリ形式だ
      OrganicMapsはこれらのファイルを直接使って、国全体をローカルに保存し検索できる。この形式では、執筆時点でフランスのダンプはわずか4.3GBだ
      また、地図全体をダウンロードする代わりに、Geofabrikのような多数のミラーの1つを使って、関心のある部分だけを取得できる
      [0] https://download.geofabrik.de/
    • 惑星規模の地理データに対して、どんな、より馴染みやすい形式やライブラリを提案できるのか気になる
      自分も以前 planet.osm をダウンロードし、デスクトップ上でおそらく osmosis でパースしたことがある。その形式やツールを他の場所で使ったことはないが、OSMのように大量の地理空間データを自由に使える形で提供する競合が多いわけでもない。こういう場合、確立された方式と言えそうなものが何なのか気になる
    • https://www.openstreetmap.org/ で左上の「Export」を押せばよい。小さな矩形領域を選べるし、「Manually select a different area」を押せばよい
      ブラウザから直接 .osm ファイルを取得できる
      文字通り単一地点だけが必要なら、右側の地図アイコンのうち、疑問符付きの矢印である「Query features」がある。これで個別の地物をクリックしてデータを取得できる
    • 必要な形にあらかじめ変換されたOSMデータを提供する無料プロジェクトを使ったというのは、「正しい方法」に十分近いように見える
      OSMのコア開発者は、既存のOSMフロントエンドが最適化された形式でデータを提供することに集中できる。他の人気形式に変換されたものが必要なら、すでにエコシステム内にそれを無料でやってくれるプロジェクトがあるのは良いことだ
  • 元の投稿者です。そのトゥートは、ウェブサイトと地図APIを攻撃的に叩く別の 悪質なスクレイパー 群にレート制限とブロックをかけた後に残した皮肉な反応だった。robots.txt は無視された
    OpenStreetMapのデータは無料でダウンロードできる。私たちは https://planet.openstreetmap.org/ に分単位で公開しており、AWS S3とTorrentでもデータを提供している
    始めたばかりなら、より小さな地域の抽出データから始めるのがよい: https://wiki.openstreetmap.org/wiki/Planet.osm

  • 私の圧縮済みリポジトリを単にクローンすれば数秒で終わるのに、AIスクレイパー たちはウェブインターフェース経由で、すべての .c ファイルのすべてのリビジョンを1つずつリクエストする方を好む
    彼らには役に立たない装飾機能まで全部含めて持っていく
    そのウェブインターフェースは cgi で設定してあるので、スクレイピングが終わるまでには宇宙の年齢より長くかかるだろう。だがその間、私の電力とリソースを浪費する

  • 最近誰かが指摘していたように、Aaron Swartzはスクレイピングのせいで収監される可能性があると脅されていた。ところが今では、スクレイピングで作られた AI大規模言語モデル に何千億ドルも投資されている

    • 大企業はあなたをスクレイピングできるが、あなたは 大企業 をスクレイピングできないからだ
    • なぜAI大規模言語モデルまで話を進める必要がある?スクレイピングしてインデックス化することこそ、Google検索 がやっていることのすべてだ
    • 他人にはルール、自分には例外。いつもそうだった
    • Aaronには大企業が持つ 弁護士軍団 がいなかった
      彼は論文を持ち出して公開し、明白な著作権侵害だった
      大規模言語モデルは原文をそのままコピーしたわけではなく、派生著作物かどうかのグレーゾーンにある
      判事によって判断も分かれていた
    • 彼は有料壁の向こうにある資料をスクレイピングしたのではなかったか?
  • planet.osmTorrent に載せればよい。「スクレイピング」はTorrent経由でのみ許可すればよい
    そうすればスクレイパーたちがネットワーク負荷を互いに分担することになる。おそらくみんな同じAWSインスタンス上にいるだろうから、ネットワーク速度もさらに良くなるはずだ

    • 私たちのデータはすでにTorrentで公開されている: https://planet.openstreetmap.org
      分単位の更新を含むデータは、AWS Open Data Sponsorship Programが支援する公開S3バケット(EUおよびUS)でも提供されている
  • 以前、技術面接で面接官に、英語版Wikipediaを毎日スクレイピングするシステムを設計してみてほしいと言われた。「gzipで圧縮されたアーカイブをダウンロードするところから始めましょう」と答えた
    実は面接官はその可能性を知らず、マルチスレッド、正規URL、訪問済みページの確認、リトライなどを含め、ページごとにダウンロードする複雑なシステムの説明を期待していた
    それでもその課題にはAをくれて、結局その会社に受かった

  • AI企業向けの ハニーポット はどうだろう?馬鹿げた生成コンテンツの無限ループを作るのだ
    末尾に人工的なツイートが付いたTwitter投稿を想像すればよい

    • そうすると突然、OpenStreetMapはあまりopenではなくなる。OpenAIのように、はは