最近、DuckDuckGoツールが頻繁にレートリミットに引っかかるようになりました。
ワークフローでは次のようなエラーが頻発します。
エージェントではこんな感じ。
エラーの内容はこんな感じです。
Failed to transform tool message: PluginInvokeError: {"args":{},"error_type":"DuckDuckGoSearchException","message":"<https://lite.duckduckgo.com/lite/> 202 Ratelimit"}
完全にレートリミットに引っかかってますね。
クラウド版はなんらかのプロキシ(共通の代替ネットワーク)を通すので、同じIPからのものと判断され制限がかかってしまうのかもしれませんが、はっきりした原因は不明です。
ちょっと待てばまた使えるようになるのですが、テストならまだしも、これでは実戦投入するにはちょと困りますよね。無料で認証不要ということで書籍では入門用として取り上げましたが、実際の運用を睨んだ場合状況が変わります。
そこで、DuckDuckGoツールの代替としてTavilyをおすすめします。もちろん本格的な運用でもおすすめします。
Tavilyは、AIエージェントや大規模言語モデル(LLM)向けに設計された検索エンジンで、リアルタイムかつ正確な情報を提供します。出力はLLMにとても都合のよい形式で返されますので、検索結果をLLMにわたす場合、とてもシンプルな処理となります。
APIを通じて、最新のWeb情報をAIモデルに組み込むことが可能で、RAG(Retrieval-Augmented Generation)などのAIアプリケーションへの統合が容易です。 Tavilyの主な特徴として、検索深さの調整やや対象となる検索先の柔軟な設定、多言語対応、高速な検索速度が挙げられます。
また、PythonやNode.js用のSDKが提供されており、もちろんDifyでもTavilyプラグインとして提供されているので気軽に使えます。
また、別の特徴として、APIの利用に関しては、無料プランで毎月1,000回のAPIコールが可能です。しかも無料プランの場合、クレジットカードを登録することなく使えます。これがおすすめする理由としては大きいです。
無料プランでも1000回の検索が可能なので、かなり実用的なテストもできますし、実務運用で使用する場合でも、有料プランに変更すればよいので安心して使えます。
これらの理由からもDuckDuckGoツールである程度ツールの使い方がわかったら、次はTavilyに切り替えてテストしてみることをおすすめします。