429 Client Error: Too Many Requests for url: https://query2.finance.yahoo.com/v10/finance/quoteSummary/SNOW?modules=secFilings&corsDomain=finance.yahoo.com&formatted=false&symbol=SNOW&crumb=Edge%3A+Too+Many+Requests 안녕하세요 강사님, 현재 3.7 Multi agent 강의 듣고 따라하고 있는데, yfinance 로 agent 를 통해 필요한 정보를 받아오도록 시키면 위와 같은 문제가 뜹니다. 확인해보니 url request를 단기간에 너무 많이 하는게 원인인것 같다는데, Agent를 통해 tool로 알아서 호출 하는 방식이니 횟수를 제한하거나 할 방법이 없습니다. 혹시 어떻게 해결해야 할지 아시면 해결책을 제시해주시면 감사하겠습니다.
지금 위와 같은 문제가 발생하고 있는데 node, nvm 모두 가장 최신 버전 하나만 있고 인텔리제이 claude또한 가장 최신 버전인데 같은 오류가 생기는 이유를 모르겠습니다.. 다른 글을 읽으며 node 버전과 다른 버전들을 파일들 모두 확인 결과 가장 최신 버전 하나만 존재하는데 안되는 이유가 뭔지 모르겠습니다...!
안녕하세요 강사님, 강의 잘 듣고 있습니다. 개발 병행하면서 강의 수강 중인데, 끝까지 다 듣지 못한 점 미리 양해드립니다. LangGraph 공식 문서를 보면, Graph의 상태 스키마를 정의할 때 Pydantic의 BaseModel 보다 TypedDict 나 dataclass 를 사용하는 걸 더 권장하는 것처럼 보입니다. 강사님께서도 강의에서 주로 TypedDict 를 쓰시는 걸 확인했습니다. 그런데 개발을 하다 보니, TypedDict 는 런타임 유효성 검사나 구조화 파싱 기능이 없어서 LLM 응답이 해당 스키마에 맞게 출력되었는지 보장할 수 없는 점 이 불편하게 느껴졌습니다. 예를 들어, PydanticOutputParser(pydantic_object=MyModel) 처럼 출력 형식을 강제할 수 있는 기능은 TypedDict 에는 없어서, 결국 출력 파싱이 명확하지 않거나 "```json ... ```" 처럼 마크다운이 붙는 문제도 자주 발생합니다. 물론 TypedDict 는 속도 면에서 이점이 있고 LangGraph state로는 잘 어울린다는 것도 알고 있지만, 이런 이유 때문에 결국 스키마를 TypedDict 와 Pydantic 두 번 정의해야 하는 상황 이 종종 생깁니다. 그래서 질문드리고 싶은 건 다음과 같습니다: 하나의 스키마 정의만으로 상태 관리와 LLM 출력 파싱까지 모두 깔끔하게 처리하는 더 좋은 방법은 없을까요? 혹은 실무에서는 이런 문제를 보통 어떻게 해결하고 계신지도 궁금합니다. 감사합니다!
안녕하세요 강의 수강 중 궁금한 것이 생겨서 질문 드립니다. 강의에서 Claude에게 우리 로컬에 있는 스프링(인텔리제이) 파일 구조를 묻고 Claude는 권한을 물은 뒤 구조를 분석해줬는데 여기에서 Claude에도 제트브레인 관련 플러그인(JSON 파일)을 설정해주어서 Claude에게 질문을 했을 때 Claude MCP 서버가 제트브레인 MCP로 요청을 해서 내용을 받은 것이라고 이해했고 제트브레인 MCP 서버는 강의에서 인텔리제이에 MCP 서버 플러그인을 설치해서 내 로컬의 파일 구조를 상호작용을 통해 알 수 있을 거라고 추측하고 있는데(맞게 이해했는 지는 잘 모르겠네요ㅎ..) 그러면 제트브레인의 MCP는 Claude MCP 서버가 주는 요청이 내 로컬의 인텔리제이 IDE의 내용이라는 것을 어떻게 알 수 있는 걸까요? 강의 내용과는 무관할 수 있는데 궁금해서 질문 남깁니다. 감사합니다!
workflow.add_edge(START, "note1") workflow.add_edge(START, "note2") workflow.add_edge(START, "note3") 이렇게 해두면, 어떤 설정을 따로 안해도 note1,2,3이 동시에 실행되나요? note1 먼저 하고 note2 하고 그다음 note3이 되는게 아니죠? 그러면 병렬이 아니니까
안녕하세요. uv sync 로 커서에서 실행을 했는데요. 화면에서와 달리 google폴더도 없고, .env 파일도 없습니다. 2.5 웹 검색을 지원하는 Corrective RAG 에서 코드 실행중인데요. from dotenv import load_dotenv load_dotenv() 여기서부터 false 가 뜨고요 바로 밑 코드부터 에러가 뜹니다. --------------------------------------------------------------------------- OpenAIError Traceback (most recent call last) Cell In[2], line 4 1 from langchain_chroma import Chroma 2 from langchain_openai import OpenAIEmbeddings ----> 4 embedding_function = OpenAIEmbeddings(model='text-embedding-3-large') 6 vector_store = Chroma( 7 embedding_function=embedding_function, 8 collection_name = 'income_tax_collection', 9 persist_directory = './income_tax_collection' 10 ) 11 retriever = vector_ store.as _retriever(search_kwargs={'k': 3}) [... skipping hidden 1 frame] File c:\Users\LGCNS\inflearn-langgraph-agent\.venv\Lib\site-packages\langchain_openai\embeddings\base.py:338, in OpenAIEmbeddings.validate_environment(self) 336 self.http_client = httpx.Client(proxy=self.openai_proxy) 337 sync_specific = {"http_client": self.http_client} --> 338 self.client = openai.OpenAI(**client_params, **sync_specific).embeddings # type: ignore[arg-type] 339 if not self.async_client: 340 if self.openai_proxy and not self.http_async_client: File c:\Users\LGCNS\inflearn-langgraph-agent\.venv\Lib\site-packages\openai\_client.py:110, in OpenAI.__init__(self, api_key, organization, project, base_url, websocket_base_url, timeout, max_retries, default_headers, default_query, http_client, strict response_validation) 108 api_key = os.environ.get("OPENAI_API_KEY") 109 if api_key is None: --> 110 raise OpenAIError( 111 "The api_key client option must be set either by passing api_key to the client or by setting the OPENAI_API_KEY environment variable" 112 ) 113 self.api_key = api_key 115 if organization is None: OpenAIError: The api_key client option must be set either by passing api_key to the client or by setting the OPENAI_API_KEY environment variable 찾아보니 OPENAI_API_KEY가 없어서 뜨는 에러 같은데 어떻게 설정하면 되나요?
강의에서 구성한 그래프를 보면 retriever로 조회한 document들을 그대로 context로 넣는것으로 보이는데요. 여기에서 document의 page_content만 추출하는 과정은 필요 없나요? lang smith를 보면 아래와 같이 프롬프트가 구성되어있는데 page_content만 넣도록 해야하는것이 아닌가 의문이 들었습니다.
안녕하세요. 강의에선 zeorx로 PDF -> Markdown 변환 후 UnstructuredMarkdownLoader로 split해서 document chunk를 얻는데요 혹시 UnstructuredPDFLoader를 통해서 한번에 load_and_split 하는것과는 어떤 차이가 있을까요? UnstructuredLoader에서 요구하는 것이 패키지 외에도 pdf2image 모듈등이 있는것 같아서 실제로 시도해보지는 못했습니다.