묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결LangGraph를 활용한 AI Agent 개발 (feat. MCP)
병렬 처리 중 retrieve 관련 궁금한 사항
안녕하세요~ 강의 정말 재밌게 잘 듣고 있습니다!!2.7 병렬 처리를 통한 효율 개선강의의tax_rate_calculation_prompt = ChatPromptTemplate.from_messages([ ('system', '''당신은 종합부동산세 계산 전문가입니다. 아래 문서를 참고해서 사용자의 질문에 대한 종합부동산세를 계산해주세요 종합부동산세 세율:{context}'''), ('human', '''과세표준과 사용자가 소지한 주택의 수가 아래와 같을 때 종합부동산세를 계산해주세요 과세표준: {tax_base} 주택 수:{query}''') ]) def calculate_tax_rate(state: AgentState): """ 주어진 state에서 세율을 계산합니다. Args: state (AgentState): 현재 에이전트의 state를 나타내는 객체입니다. Returns: dict: 'answer' 키를 포함하는 새로운 state를 반환합니다. """ # state에서 필요한 정보를 추출합니다. query = state['query'] tax_base = state['tax_base'] # retriever를 사용하여 쿼리를 실행하고 컨텍스트를 얻습니다. context = retriever.invoke(query) # tax_rate_chain을 구성하여 세율을 계산합니다. tax_rate_chain = ( tax_rate_calculation_prompt | llm | StrOutputParser() ) # tax_rate_chain을 사용하여 세율을 계산합니다. tax_rate = tax_rate_chain.invoke({ 'context': context, 'tax_base': tax_base, 'query': query }) # state에서 'answer' 키에 대한 값을 반환합니다. return {'answer': tax_rate}이 부분에서 들은 궁금증인데요,context 는 과세표준별 세율 구간에 관한 정보를 가져오는 변수인데 왜 query에는 과세표준이 아닌 사용자의 주택 정보를 넣어서 invoke하는 형태인가요?
-
미해결AI Agent 영어 과외 선생님과 함께하는 요즘시대 영어 학습법!
안녕하세요.
AI Agent 를 만드는것이 아니고 학습툴을 제공해주시는 것이였군요~^^;; 만들고 따라해보려 했는데 더 잘된것 같습니다. 테리 잉글리시 사이트 주소와 계정 정보는 어디에서 확인을 할 수 있나요? 그리고 만약 아내가 수강하게 될 경우 1개의 강의를 더 구입을 해야 하는 것이죠? 영어 Ai Agent 만드는 방법을 배워서 , 제 api 토큰 사용하려고 했었는데 , 바로 영어 공부할 수 있게 되었네요 감사합니다.
-
미해결AI 에이전트 입문 치트키, Claude MCP로 끝내는 업무 자동화
[claude MCP] 설정 파일 적성 후 적용 안되는 현상
강의를 너무 잘 들었고, 또 주변에 추천하고 있습니다. 정말 감사합니다. 같은 내용인 것 같은 질문 2가지가 있습니다.1. Claude를 2개 다른 로그인 계정으로 각각 다른 슬랙을 운영할 때 config.json 파일 수정 방법-> 아래 그림처럼 계속 붙여가는 것인지...2. config.json 파일은 하나인데, Firecrawl MCP API 키와 슬랙 API 키 등 계속 늘어나는 키를 저장하는 방법-> 한 메모 파일에 계속 붙이는 건가요? (그림 아래)-> 해 봤는데 잘 안되어서 문의드려요.
-
미해결LangGraph를 활용한 AI Agent 개발 (feat. MCP)
query 에 대한 answer 결과값이 나오지 않습니다.
강의 모두 코드 똑같이 돌리고 db만 pinecone 을 사용하였습니다 ! 결과에 강의처럼 answer이 나오지 않는데 원인을 잘 모르겠습니다 ㅜgpt 에 검색해보면전체 코드를 꼼꼼히 검토해본 결과, 질문하신 "결과(answer)가 나오지 않는 이유"는 크게 두 가지입니다. 하나는 데이터가 유실되는 방식의 반환(return) 때문이고, 다른 하나는 무한 루프(Infinite Loop) 가능성 때문입니다.1. 가장 큰 원인: State 데이터 유실LangGraph의 각 노드 함수(retrieve, generate, rewrite 등)는 AgentState를 반환할 때, 기존의 데이터를 포함해서 돌려주어야 합니다.현재 작성하신 코드를 보면:retrieve 함수: return {'context': docs} (이때 query가 사라짐)generate 함수: return {'answer': response.content} (이때 query, context가 모두 사라짐)이렇게 나오는데 제가 봤을땐 이게 원인은 아닌것같습니다...!
-
미해결[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
Custom Search API가 지원이 중단된거같네요..
신규 회원은 API 키 발급을 못하게 막아놨네요. API 키 발급하기 버튼이 사라지고 Vertex AI를 사용하라고 유도하는거 같습니다.구글이 사실상 이제 웹 전체 검색을 API로 제공하지 않겠다는 의지인거 같아요.
-
미해결LangGraph를 활용한 AI Agent 개발 (feat. MCP)
사람과 관련된 표현이 없는데 rewrite 로 이동하지 않는경우
from langchain_core.prompts import PromptTemplate from langchain_core.output_parsers import StrOutputParser dictionary = ['사람과 관련된 표현 -> 거주자'] rewrite_propmt = PromptTemplate.from_template(f"""사용자의 질문을 보고, 우리의 사전을 참고해서 사용자의 질문을 변경해주세요 사전:{dictionary} 질문: {{query}}""") def rewrite(state: AgentState)->AgentState: query = state['query'] rewrite_chain = rewrite_propmt | llm | StrOutputParser() response = rewrite_chain.invoke({'query': query}) return {'query' : response} # Create a LangSmith API in Settings > API Keys # Make sure API key env var is set: # import os; os.environ["LANGSMITH_API_KEY"] = "<your-api-key>" from langsmith import Client from typing import Literal client = Client() relevance_prompt = client.pull_prompt("langchain-ai/rag-document-relevance") def check_doc_relevance(state: AgentState)-> Literal['generateAnswer','rewrite']: query= state['query'] context= state['context'] relevance_chain = relevance_prompt | llm response = relevance_chain.invoke({'question':query, 'documents': context}) if response['Score'] ==1: return 'generateAnswer' return 'rewrite'graph_builer.add_node('retrieveDoc', retrieveDoc) graph_builer.add_node('generateAnswer', generateAnswer) graph_builer.add_node('rewrite', rewrite) from langgraph.graph import START, END graph_builer.add_edge(START,'retrieveDoc') graph_builer.add_conditional_edges('retrieveDoc', check_doc_relevance) graph_builer.add_edge('rewrite','retrieveDoc') graph_builer.add_edge('generateAnswer', END) graph =graph_builer.compile()from IPython.display import Image, display display(Image(graph.get_graph().draw_mermaid_png()))initial_State = {'query' : '연봉 5천만원 세금'} graph.invoke(initial_State)강사님! 강의랑 똑같이 코드를 작성했는데도 'query: 연봉 5천만원 세금 ' 질문에 대한 답 score가 계속 1이 나와서 rewrite 노드로 이동하지 않습니다. 쿼리자체에 거주자나 사람을 나타내는 표현이 없는데도 문서에서 관련성을 키워드로 찾다보니 키워드가 있기만 해도 결과가 1이 나오네요ㅜㅜㅜ강사님은 결과가 0이 나와 rewrite를 하고 제가 해볼때는 1이 나오는 이유가 무엇인지 모르겠습니다.{'query': '연봉 5천만원 세금', 'context': [Document(id='15f6746f-4e63-4775-a47e-c72298375620', metadata={'source': './tax_combined_final.txt'}, page_content='소득세법'), Document(id='a6c9015f-092f-4aa3-819b-e23588bb0a0f', metadata={'source': './tax_combined_final.txt'}, page_content='소득세법\n하는 자(제119조제9호에 따른 국내원천 부동산등양도소득을 지급하는 거주자 및 비거주자는 제외한다)는 제127조\n에도 불구하고 그 소득을 지급할 때에 다음 각 호의 금액을 그 비거주자의 국내원천소득에 대한 소득세로서 원천징\n수하여 그 원천징수한 날이 속하는 달의 다음 달 10일까지 대통령령으로 정하는 바에 따라 원천징수 관할 세무서,\n한국은행 또는 체신관서에 납부하여야 한다. <개정 2013. 1. 1., 2016. 12. 20., 2018. 12. 31., 2019. 12. 31., 2020. 12.\n29.>\n1. 제119조제1호에 따른 국내원천 이자소득: 다음 각 목의 구분에 따른 금액\n가. 국가·지방자치단체 및 내국법인이 발행하는 채권에서 발생하는 이자소득: 지급금액의 100분의 14\n나. 가목 외의 이자소득: 지급금액의 100분의 20\n2. 제119조제2호에 따른 국내원천 배당소득: 지급금액의 100분의 20\n3. 제119조제4호에 따른 국내원천 선박등임대소득 및 같은 조 제5호(조세조약에 따라 국내원천 사업소득으로 과세\n할 수 있는 소득은 제외한다)에 따른 국내원천 사업소득: 지급금액의 100분의 2\n4. 제119조제6호에 따른 국내원천 인적용역소득: 지급금액의 100분의 20. 다만, 국외에서 제공하는 인적용역 중대\n통령령으로 정하는 용역을 제공함으로써 발생하는 소득이 조세조약에 따라 국내에서 발생하는 것으로 보는 소득\n에 대해서는 그 지급금액의 100분의 3으로 한다.\n5. 제119조제9호에 따른 국내원천 부동산등양도소득: 지급금액의 100분의 10. 다만, 양도한 자산의 취득가액 및 양\n도비용이 확인되는 경우에는 그 지급금액의 100분의 10에 해당하는 금액과 그 자산의 양도차익의 100분의 20에\n해당하는 금액 중 적은 금액으로 한다.\n6. 제119조제10호에 따른 국내원천 사용료소득: 지급금액의 100분의 20\n7. 제119조제11호에 따른 국내원천 유가증권양도소득: 지급금액(제126조제6항에 해당하는 경우에는 같은 항의 정\n상가격을 말한다. 이하 이 호에서 같다)의 100분의 10. 다만, 제126조제1항제1호에 따라 해당 유가증권의 취득가\n액 및 양도비용이 확인되는 경우에는 그 지급금액의 100분의 10에 해당하는 금액과 같은 호에 따라 계산한 금액\n의 100분의 20에 해당하는 금액 중 적은 금액으로 한다.\n8. 제119조제12호에 따른 국내원천 기타소득: 다음 각 목의 구분에 따른 금액\n가. 제119조제12호카목의 소득: 지급금액의 100분의 15\n나. 제119조제12호타목의 소득: 다음의 구분에 따른 금액. 다만, 가상자산을 교환하거나 인출하는 경우에는 다음\n의 구분에 상당하는 금액으로서 가상자산 단위로 표시한 대통령령으로 정하는 금액으로 한다.\n1) 제126조제1항제3호에 따라 가상자산의 필요경비가 확인되는 경우: 지급금액의 100분의 10에 해당하는 금\n액과 같은 호에 따라 계산한 금액의 100분의 20에 해당하는 금액 중 적은 금액'), Document(id='5a211886-c6db-4fd5-9e77-a4375dd2ee6d', metadata={'source': './tax_combined_final.txt'}, page_content='5. 공적연금소득에 대해서는 기본세율\n5의2.제20조의3제1항제2호나목 및 다목에 따른 연금계좌 납입액이나 운용실적에 따라 증가된 금액을 연금수령한\n연금소득에 대해서는 다음 각 목의 구분에 따른 세율. 이 경우 각 목의 요건을 동시에 충족하는 때에는 낮은 세율\n을 적용한다.\n가. 연금소득자의 나이에 따른 다음의 세율\n|나이(연금수령일 현재)| 세율 |\n| ----------- | ----------- |\n| 70세 미만 | 100분의 5 |\n| 70세 이상 80세 미만 | 100분의 4 |\n| 80세 이상 | 100분의 3 |\n나. 삭제 <2014. 12. 23.>')], 'answer': AIMessage(content='연봉 5천만원에 대한 세금은 다양한 소득세 항목에 따라 달라질 수 있습니다. 일반적으로 소득세율은 소득금액에 따라 차등 적용되며, 기본 세율은 5%에서 시작합니다. 정확한 세금액을 계산하기 위해서는 총소득, 공제 항목 등을 고려해야 합니다.', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 78, 'prompt_tokens': 1352, 'total_tokens': 1430, 'completion_tokens_details': {'accepted_prediction_tokens': 0, 'audio_tokens': 0, 'reasoning_tokens': 0, 'rejected_prediction_tokens': 0}, 'prompt_tokens_details': {'audio_tokens': 0, 'cached_tokens': 0}}, 'model_provider': 'openai', 'model_name': 'gpt-4o-mini-2024-07-18', 'system_fingerprint': 'fp_3683ee3deb', 'id': 'chatcmpl-D2psPuRb1GQcktIDJfUhfjTjYL2CO', 'service_tier': 'default', 'finish_reason': 'stop', 'logprobs': None}, id='lc_run--019c027f-916f-7c82-9b4a-00ba35551ea7-0', tool_calls=[], invalid_tool_calls=[], usage_metadata={'input_tokens': 1352, 'output_tokens': 78, 'total_tokens': 1430, 'input_token_details': {'audio': 0, 'cache_read': 0}, 'output_token_details': {'audio': 0, 'reasoning': 0}})}도와주시면 감사하겠습니다.
-
해결됨[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
40강 네이버냐 구글이냐의 스위치 노드 아웃풋 없음 문제
보시는대로 네이버냐 구글이냐 가르는 스위치 노드 인풋까지는 정상적으로 들어옵니다. 강의대로 똑같이 했는데, 아웃풋이 안 나옵니다.왜 이런걸까요?참고로 구글로 테스트해보면 구글은 잘 됩니다.더 참고로 말씀드리면 네이버 정크 메일 노드는이전 노드 아웃풋이 없으니 당연히 이렇게 인풋이 없습니다.
-
해결됨[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
6강 워크플로우 간 데이터 문제
안녕하세요, 설명 주신대로 워크플로우 간 연결을 시도해보고 있는데, AI Agent는 잘 실행되고 있는데, 검색 워크플로우에서 작동이 안되는 것 같아 문의드립니다. 인증 단에서 실패하는 것 같진 않고, 쿼리 파라미터에서 실패하는 것 같은데 혹시 도움주실 수 있으실까요?
-
해결됨[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
5강 This project does not have the access to Custom Search JSON API 오류
안녕하세요,http Request를 하는 과정에서 알려주신대로 cx, key, q 를 다 잘 설정했는데This project does not have the access to Custom Search JSON API 오류가 납니다. 혹시 도움주실 수 있을까요?
-
미해결LangGraph를 활용한 AI Agent 개발 (feat. MCP)
retriever 관련 질문
안녕하세요, 강사님! 강의 잘 듣고 있습니다. RAG 및 LangChain을 공부하는 도중에 기존 리트리버 방식인(dense based)에 더 자세히 공부하기 위해 Hybrid Retriever(e.g. RRF, CC)등을 더 찾아보고 있는데 이부분은 강의에서 따로 안다뤄주는 부분일까요?? 또한 현업에서는 어떤 Retriving 방식을 선호하는지 또한 궁금합니다!
-
미해결카카오 PlayMCP와 Spring AI가 만나는 실전 에이전트 개발
Open AI 연동 오류
안녕하세요 강사님!13강에서 MCP Client을 구현한 뒤 postman으로 /w 엔드포인트로 호출 시 500에러가 납니다. “message”: “You exceeded your current quota, ~”OpenAI 크레딧을 따로 구매해야 되는 걸까요?
-
해결됨OpenAI를 활용한 나만의 AI 에이전트 만들기 (Agent Builder, GPT-5, Chatkit, Cloudflare, MCP, Fine Tuning, CoT 등)
22강 빌드할때 에러가 뜨고 있습니다.
2026-01-24T18:01:27.860119Z Cloning repository...2026-01-24T18:01:28.415748Z From https://github.com/ssmktr/openai-chatkit-starter-app2026-01-24T18:01:28.416363Z * branch d8abdc1e7810bbe5fdb3c809e65c2b07141d1450 -> FETCH_HEAD2026-01-24T18:01:28.41648Z 2026-01-24T18:01:28.451163Z HEAD is now at d8abdc1 Simplify ChatKit backend (#104)2026-01-24T18:01:28.451626Z 2026-01-24T18:01:28.523349Z 2026-01-24T18:01:28.523863Z Using v2 root directory strategy2026-01-24T18:01:28.544435Z Success: Finished cloning repository files2026-01-24T18:01:30.338662Z Checking for configuration in a Wrangler configuration file (BETA)2026-01-24T18:01:30.339458Z 2026-01-24T18:01:31.455516Z No wrangler.toml file found. Continuing.2026-01-24T18:01:31.532601Z Detected the following tools from environment: nodejs@22.21.12026-01-24T18:01:31.533343Z Installing nodejs 22.21.12026-01-24T18:01:32.491348Z Trying to update node-build... ok2026-01-24T18:01:32.581604Z To follow progress, use 'tail -f /tmp/node-build.20260124180132.491.log' or pass --verbose2026-01-24T18:01:32.676902Z Downloading node-v22.21.1-linux-x64.tar.gz...2026-01-24T18:01:32.916706Z -> https://nodejs.org/dist/v22.21.1/node-v22.21.1-linux-x64.tar.gz2026-01-24T18:01:35.061658Z 2026-01-24T18:01:35.061984Z WARNING: node-v22.21.1-linux-x64 is in LTS Maintenance mode and nearing its end of life.2026-01-24T18:01:35.062214Z It only receives critical security updates, critical bug fixes and documentation updates.2026-01-24T18:01:35.0625Z 2026-01-24T18:01:35.062624Z Installing node-v22.21.1-linux-x64...2026-01-24T18:01:35.494128Z Installed node-v22.21.1-linux-x64 to /opt/buildhome/.asdf/installs/nodejs/22.21.12026-01-24T18:01:35.49449Z 2026-01-24T18:01:36.434863Z Executing user command: npx @cloudflare/next-on-pages@12026-01-24T18:01:37.460162Z npm warn exec The following package was not found and will be installed: @cloudflare/next-on-pages@1.13.162026-01-24T18:01:49.78096Z npm warn deprecated path-match@1.2.4: This package is archived and no longer maintained. For support, visit https://github.com/expressjs/express/discussions2026-01-24T18:01:50.799789Z npm warn deprecated tar@6.2.1: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exhorbitant rates) by contacting i@izs.me2026-01-24T18:01:51.18784Z npm warn deprecated @cloudflare/next-on-pages@1.13.16: Please use the OpenNext adapter instead: https://opennext.js.org/cloudflare2026-01-24T18:01:59.323249Z ⚡️ @cloudflare/next-on-pages CLI v.1.13.162026-01-24T18:01:59.510375Z ⚡️ Detected Package Manager: npm (10.9.4)2026-01-24T18:01:59.510832Z ⚡️ Preparing project...2026-01-24T18:01:59.513738Z ⚡️ Project is ready2026-01-24T18:01:59.514039Z ⚡️ Building project...2026-01-24T18:02:00.366087Z ▲ npm warn exec The following package was not found and will be installed: vercel@50.5.02026-01-24T18:02:05.898447Z ▲ npm warn deprecated tar@6.2.1: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exhorbitant rates) by contacting i@izs.me2026-01-24T18:02:08.620603Z ▲ Vercel CLI 50.5.02026-01-24T18:02:08.625834Z ▲ > NOTE: The Vercel CLI now collects telemetry regarding usage of the CLI.2026-01-24T18:02:08.626058Z ▲ > This information is used to shape the CLI roadmap and prioritize features.2026-01-24T18:02:08.626552Z ▲ > You can learn more, including how to opt-out if you'd not like to participate in this program, by visiting the following URL:2026-01-24T18:02:08.626709Z ▲ > https://vercel.com/docs/cli/about-telemetry2026-01-24T18:02:08.713183Z ▲ WARN! Build not running on Vercel. System environment variables will not be available.2026-01-24T18:02:08.844345Z ▲ Your application is being built using next build. If you need to define a different build step, please create a vercel-build script in your package.json (e.g. { "scripts": { "vercel-build": "npm run prepare && next build" } }).2026-01-24T18:02:08.847668Z ▲ Installing dependencies...2026-01-24T18:02:09.443264Z ▲ up to date in 464ms2026-01-24T18:02:09.460617Z ▲ Warning: Could not identify Next.js version, ensure it is defined as a project dependency.2026-01-24T18:02:09.481655Z ▲ Error: No Next.js version detected. Make sure your package.json has "next" in either "dependencies" or "devDependencies". Also check your Root Directory setting matches the directory of your package.json file.2026-01-24T18:02:09.554599Z 2026-01-24T18:02:09.554859Z ⚡️ The Vercel build npx vercel build) command failed. For more details see the Vercel logs above.2026-01-24T18:02:09.554978Z ⚡️ If you need help solving the issue, refer to the Vercel or Next.js documentation or their repositories.2026-01-24T18:02:09.555101Z 2026-01-24T18:02:09.599906Z Failed: Error while executing user command. Exited with error code: 12026-01-24T18:02:09.609667Z Failed: build command exited with code: 12026-01-24T18:02:11.150853Z Failed: error occurred while running build command 빌드시 위에처럼 에러가 뜨면서 응용 프로그램 빌드 중 에서 멈추고 있습니다. 해결방법이 어떻게 될까요?
-
해결됨[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
[40강] IMAP Email get many 노드에서 text content 포함 시 무한 로딩
안녕하세요, 강의 잘 수강하고 있습니다 😃40강에서 Naver 이메일의 text를 가져오려고 Email get many 노드에서 text content를 포함하니 무한 로딩에 걸립니다.content 크기 문젠가 싶어 limit을 1로 잡아도 그러네요.↑text content 포함 시 ↑text content 미포함 시 text content와 html content에서 그런 문제가 발생하고 다른 값(header 등)을 선택하면 문제가 없습니다. 네이버 이메일 문제인지 싶어서 Gmail도 해보니 똑같네요.원인을 알고 싶습니다ㅠ
-
해결됨[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
Custom Search API 인증오류가 계속 납니다
Custom Search API 사용 시cx, key, q 모두 확인하고또 서비스 사용 설정 등도 체크 다 하는데 계속 저 오류가 나네요ㅜ프로젝트부터 다 신규로 만들고 해도 동일하게 계속 오류가 납니다.도와주세요 ㅠ
-
미해결[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
qdrant 로컬 기본 선택값이 없습니다.
RAG 강의에서 Qdrant 사용시 Credential to connect with에서 'Local QdrantApi database' 가 없네요 ㅜ어떻게 설정하면 될까요?
-
미해결LLM 핵심 이론, 구조로 이해하기 -ChatGPT·RAG·Agent의 작동 원리를 한 번에-
강의자료를 받을 수 있게 해주시면 좋을 것 같아요
강의를 통해서 대략적인 LLM에 대해서 알게 되었는데요. 복습을 위해서 강의 자료를 공유 해주셨으면 좋겠어요
-
해결됨[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
naver mail imap trigger 가져오기 문의
얼마전까지 text로 된 메일본문을 가져올 수 있었는데 갑자기 {{ $json.text }}가 undefined로 나오네요. html로 된 본문만 가져오는데 네이버 imap mail이 보내주는 형식이 변경된건지 제가 잘못한건지 몰라서요. 그리고 account 정보 입력하고 host정보도 이전에 성공했던거 동일하게 처리했는데 save하면 오류가 발생합니다.그런데 메일가져오기 실행하면 또 되네요.ㅠㅠ
-
미해결LLM 핵심 이론, 구조로 이해하기 -ChatGPT·RAG·Agent의 작동 원리를 한 번에-
강의자료를 받을 수 있나요?
복습을 할 수가 없네요...
-
해결됨[인프런어워드 베스트셀러] 코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
6강 진행 중 n8n 버전 문의
안녕하세요6강 따라하고 있는데메인 워크플로우에서 AI 에이전트의 Call 004-1-search 를 불러와서 작동시키잖아요. 근데 똑같이 따라했는데, 중간중간 저는 조금씩 뭔가 다르더라구요, 그래서 제미나이 물어봐가며 어떻게 따라가긴 했는데, 004-1-search 워크플로우에서 자체적인 실행을 했을 때는 실행이 되는데 메인워크플로우에서는 Call 004-1-search 이게 작동이 안되네요... 하시는대로 query 이런것도 다 했는데, 안 되서 제미나이 물어보니까 서브워크플로우 가서 active 버튼 누르라고 해서 봤더니 저는 없고, publish 버튼이 있고, 강의화면을 보면 publish 가 없고 inactive 토글이 있더라고요. 이거 혹시 버전 문제인가요? 2강인가에 docker-compose.yml 파일에서 버전을 바꾸라고 하셔서 뒤늦게 메모장 편집으로 이렇게 바꾸긴 했는데(n8n_secure_cookie=false 이건 수업 중에 나와서 같이 따라하며 바꿨습니다), 혹시 버전 1.123.7로 안바꿔서 다르게 나온건지 궁금합니다. 이제라도 바꾸고 재부팅까지 해서 다시 켜봤는데 그래도 그대로 publish 가 있고, 강사님 화면처럼 inactive 토글 버튼은 안 보입니다.. 이거 버전 어떻게 강사님처럼 할 수 있을까요?ㅠ
-
미해결LangGraph를 활용한 AI Agent 개발 (feat. MCP)
인터룹 관련 질문
from typing import Literal from langgraph.types import interrupt, Command def human_review(state: AgentState) -> Command[Literal['tools', 'agent']]: """ human_review node는 LLM의 도구 호출에 대해 사람의 검토를 요청합니다. Args: state (AgentState): 메시지 기록을 포함하는 state. Returns: Command: 다음 node로 이동하기 위한 Command를 반환합니다. """ messages = state['messages'] last_message = messages[-1] tool_call = last_message.tool_calls[-1] human_review = interrupt({ 'question': '이렇게 진행하면 될까요?', 'tool_call': tool_call }) review_action = human_review['action'] review_data = human_review.get('data', None)혹시 왜 왜 last_message.tool_calls[-1]를 쓰는지 여쭤봐도 될까요? 가장 최근에 호출한 도구를 검토시킨다는 것 같은데 이전 호출을 제외한 왜 가장 최근 도구 호출에 대한 검토인지 궁금합니다. 또한 이부분에 대해서는 마지막 하나의 메세지에 대한 도구 호출이 리스트 안 여러개라는 가정 전제 하가 맞을까요?