yoshidashingo / langchain-book

MIT License
126 stars 33 forks source link

P143 6.8章でエラー発生 #20

Open mizuking01 opened 2 months ago

mizuking01 commented 2 months ago

エラーの説明

6.8「Agentを使って必要に応じて外部情報を検索させる」のDuckDuckGo使用時にエラーが起きてしまいます。

スクリーンショット

Streamlitでのエラー スクリーンショット 2024-04-16 010515

スクリーンショット 2024-04-16 010523

ターミナル上でのエラー 2024-04-15 16:08:24.462 Uncaught app exception Traceback (most recent call last): File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/duckduckgo_search/duckduckgo_search.py", line 46, in _get_url raise DuckDuckGoSearchException("Ratelimit") duckduckgo_search.exceptions.DuckDuckGoSearchException: Ratelimit

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 552, in _run_script exec(code, module.dict) File "/home/ec2-user/environment/langchain-book-/app.py", line 59, in response = st.session_state.agent_chain.run(prompt, callbacks=[callback]) File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/chains/base.py", line 487, in run return self(args[0], callbacks=callbacks, tags=tags, metadata=metadata)[ File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/chains/base.py", line 292, in call raise e File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/chains/base.py", line 286, in call self._call(inputs, run_manager=run_manager) File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/agents/agent.py", line 1122, in _call next_step_output = self._take_next_step( File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/agents/agent.py", line 977, in _take_next_step observation = tool.run( File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/tools/base.py", line 356, in run raise e File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/tools/base.py", line 328, in run self._run(*tool_args, run_manager=run_manager, **tool_kwargs) File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/tools/ddg_search/tool.py", line 31, in _run return self.api_wrapper.run(query) File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/utilities/duckduckgo_search.py", line 61, in run snippets = self.get_snippets(query) File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/langchain/utilities/duckduckgo_search.py", line 53, in get_snippets for i, res in enumerate(results, 1): File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/duckduckgo_search/duckduckgo_search.py", line 91, in text for i, result in enumerate(results, start=1): File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/duckduckgo_search/duckduckgo_search.py", line 142, in _text_api resp = self._get_url("GET", "https://links.duckduckgo.com/d.js", params=payload) File "/home/ec2-user/environment/langchain-book-/.venv/lib/python3.10/site-packages/duckduckgo_search/duckduckgo_search.py", line 50, in _get_url raise DuckDuckGoSearchException(f"_get_url() {url} {type(ex).name}: {ex}") duckduckgo_search.exceptions.DuckDuckGoSearchException: _get_url() https://links.duckduckgo.com/d.js DuckDuckGoSearchException: Ratelimit

書籍の該当箇所

P144のプレビュー再読み込みを実行し、「今日の東京の天気を教えて」と入力したときにエラーが発生します。

書籍の内容以外で実施したこと 修正版のバージョン4.1.0や4.1.1で試してみましたが、エラーは消えませんでした。

環境

AWS Cloud9

os1ma commented 2 months ago

ご質問ありがとうございます。

duckduckgo_search.exceptions.DuckDuckGoSearchException: Ratelimit

とのことですので、DuckDuckGoのレートリミットの可能性がありそうです。

しばらく時間をおいてからもう一度試してみてください。

時間をおいても同じエラーが発生する場合、こちらにコメントいただければ私のほうでも調査させていただきます。

よろしくお願いします。