inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

모두를 위한 대규모 언어 모델 LLM Part 5 - LangGraph로 나만의 AI 에이전트 만들기

AI 에이전트를 위한 웹검색(Web Search) Tool - DuckDuckgoSearch, Tavily API (1/2)

AI 에이전트를 위한 웹검색(Web search) Tool 에서 DuckDuckGoSearchRun 실행 관련..

443

산마로

작성한 질문수 20

0

안녕하세요..

DuckDuckGo 검색 관련 랭체인 가이드 보고 따라하는데

from langchain_community.tools import DuckDuckGoSearchRun


search =  DuckDuckGoSearchRun(cache_results=True)



result = search.invoke("obama's first name?")
print(result)


이를 실행했을 때, 다음과 같은 오류가 발생합니다. 어떻게 수정해야 하는지 알려주셨으면 좋겠습니다.
---------------------------------------------------------------------------DuckDuckGoSearchException Traceback (most recent call last) Cell In[18], line 103 from langchain_community.tools import DuckDuckGoSearchRun 6 search = DuckDuckGoSearchRun(cache_results=True) ---> 10 result = search.invoke("obama's first name?") 11 print(result) File ~/Workspace/pythonprj/langgraphtutorial/.venv/lib/python3.12/site-packages/langchain_core/tools/base.py:513, in BaseTool.invoke(self, input, config, kwargs)505 @override 506 def invoke( 507 self, (...) 510kwargs: Any, 511 ) -> Any: 512 tool_input, kwargs = preprun_args(input, config, kwargs) --> 513 return self.run(tool_input, kwargs) File ~/Workspace/pythonprj/langgraphtutorial/.venv/lib/python3.12/site-packages/langchain_core/tools/base.py:774, in BaseTool.run(self, tool_input, verbose, start_color, color, callbacks, tags, metadata, run_name, run_id, config, tool_call_id, kwargs)772 if error_to_raise: 773 run_manager.on_tool_error(error_to_raise) --> 774 raise error_to_raise 775 output = formatoutput(content, artifact, tool_call_id, self.name, status) 776 run_manager.on_tool_end(output, color=color, name=self.name, kwargs) File ~/Workspace/pythonprj/langgraphtutorial/.venv/lib/python3.12/site-packages/langchain_core/tools/base.py:743, in BaseTool.run(self, tool_input, verbose, start_color, color, callbacks, tags, metadata, run_name, run_id, config, tool_call_id, **kwargs)

...

181logger.info(f"Error to search using {b} backend: {ex}") 182 err = ex --> 184 raise DuckDuckGoSearchException(err) DuckDuckGoSearchException: https://lite.duckduckgo.com/lite/ 202 Ratelimit

 

확인 부탁드립니다.

llm langchain rag openai-api ai-agent langgraph

답변 2

0

AISchool

안녕하세요~. 반갑습니다.

먼저 수강에 불편을 드려서 죄송합니다.

강의 영상 촬영시점 이후로 많은 시간이 흘러서 duckduckgo_search 라이브러리 버전 관련해서 문제가 발생한 것 같습니다.

라이브러리 버전 문제를 해결한 아래 colab 링크로 실습진행 부탁드립니다.

 

https://colab.research.google.com/drive/1Ij49jjpIHchUh2zkEvX9Y5h3M-Iu_Ol4?usp=sharing

 

참고자료 : https://github.com/deedy5/duckduckgo_search/issues/290

 

좋은 하루되세요~.

감사합니다.

 

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 산마로님!

DuckDuckGo 검색 기능을 사용하는 도중 발생한 오류에 대해 도움을 드리겠습니다.

from langchain_community.tools import DuckDuckGoSearchRun

search = DuckDuckGoSearchRun(cache_results=True)

result = search.invoke("obama's first name?")
print(result)

위 코드를 실행할 때 DuckDuckGoSearchException과 함께 ‘Ratelimit’ 메시지가 나타나는 오류는 주로 DuckDuckGo 서비스에 대한 요청이 제한 수량 이상으로 전송되었을 때 발생하는 것입니다. 이는 DuckDuckGo의 rate limiting 정책에 따라 발생할 수 있습니다. 해결 방법은 다음과 같습니다:

해결 방안

  1. 시간 간격 조정:

    • 검색 요청 사이에 일정한 시간 간격을 두어 rate limit에 걸리지 않도록 하세요.
    • 예를 들어, 검색을 반복할 때 time.sleep(x)를 활용하여 일정 시간을 기다린 후 다시 시도하는 방식입니다.
  2. 프록시 사용:

    • 프록시를 통해 IP 주소를 다양화하여 rate limit에 걸리지 않도록 합니다. 다양한 IP를 통해 요청을 보낼 수 있는 VPN이나 프록시 서비스 등을 활용해보세요.
  3. 강의 및 문서 참고:

    • 랭체인 관련 강의나 문서를 참고하여 사용할 도구의 구성이나 설정을 확인하고, 추가적인 설정이나 기능을 활용하여 요청이 최적화되도록 해보세요.

추가 참고 자료

  • LangChain GitHub Repository에서는 다양한 Community Tools 및 관련 설정 방법을 제공하니 참고해 보시면 도움이 될 것입니다.

위 해결 방법을 적용하여 문제를 해결해 보시길 바랍니다. 각 방법을 시도한 후에도 여전히 문제가 발생하는 경우, 강의의 지식공유자 분께 추가적인 질문을 통해 도움을 요청하시는 것도 좋은 방법입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

클로드 Pro 요금제에서 Claude Code CLI 사용을 막는다고 들어서 질문드립니다.

1

9

1

섹션2-11 내용중 tool_call

0

15

1

시니어 리뷰 모드

0

20

1

제공해준 자료가 압축해제되지 않습니다.

0

24

2

max token을 제한하는게 왜 성능을 개선하게 되는걸까요?

0

24

2

gitforwindows에서 맥은 뭘 다운받아야 하나요...?

0

24

2

n8n Email Trigger(IMAP) 네이버 메일 연동 시 Published 이후 트리거 미동작 문제

0

34

2

안티그라비티 저는 오픈폴더라고 나와요ㅜ

1

20

2

20강에서 파인튜닝 때 사용한 데이터가 없어졌습니다. LoRA Trainer 매개변수도 라이브러리 업그레이드로 수정되었습니다.

0

13

1

Adaptive RAG 질문드립니다.

0

82

1

LangChain에서 제공하는 Tool과 MCP의 차이점

0

157

2

비동기 방식으로 agent를 구성할 필요성이 궁금합니다.

0

177

2

Structured outputs ppt 강의자료 다운로드 가능 위치 문의

0

117

2

STORM 관련 ipynb 소스에서

0

125

2

ReWoo 아키텍처에서는 RePlan이 필요없나요?

0

173

1

STORM 아키텍쳐

0

119

2

"Plan-and-Execute 아키텍쳐 구현하기" 강의 prompt not found error

0

211

1

"Airline Red Teaming Korean" 데이터 클론시 에러가 발생합니다.

0

144

2

storm 아키텍쳐 구현하기

1

214

2

범위를 제한한 검색 방법

0

222

2

Llama + Search Tool 연동

0

195

2

강의 자료 좀 올려 주세요.

0

236

4

Tool Calling 질문

0

388

2

STORM(Synthesis of Topic Outlines through Retrieval and Multi-perspective Question Asking) 아키텍처 구현하기 강의에서 콜랩 url 이 안보입니다.

0

165

2