
Graph Engineering 실습 20분만에 마스터하기
요약
본 영상은 그래프 엔지니어링의 개념을 설명하고, AI 에이전트 아키텍처 설계 및 구현 방법을 실습 위주로 다룹니다. 여행 리서치를 가정한 시나리오를 통해 웹 데이터 수집부터 병렬/직렬 작업 처리, 최종 추천까지의 전체 파이프라인 구축 과정을 안내합니다.
핵심 포인트
- 그래프 엔지니어링은 AI 에이전트 아키텍처 설계에 필수적입니다.
- 웹 스크래퍼와 파이프라인을 먼저 검증하는 것이 중요합니다.
- 병렬 작업과 직렬 작업을 조합하여 효율성을 극대화할 수 있습니다.
- 최종 결과물은 사람이 검토(Human-in-the-loop)하는 과정이 필요합니다.
Video: Graph Engineering 실습 20분만에 마스터하기
Channel: 코드팩토리
Duration: 21m 43s
Source: subtitle (auto, ko)
Transcript:
자, 그래프 엔지니어링. 오늘 영상이 끝나면 그래프 엔지니어링이 정확히 무엇인지 여러분들이 이해하고 직접 구현을 할 수 있게 될 거예요. 자, 오늘 우리가 구현을 해 볼 프로세스는요. 그래프 엔지니어링으로 어떻게 완벽한 목표를 향해서 우리가 AI 에이전트 아키텍처를 설계할 수 있는지를 조금 집중을 해 볼 거고 이걸 배우기 위해서 우리가 진행을 해 볼트 테마는요. 여행을 위해서 A BMB 숙소를 리서치를 한다고 한번 가정을 해 볼게요. 자, 이거 우리가 손으로 해도 되는데 손으로 하면 너무 복잡하고 귀찮고 오래 걸리니까 그래프 엔지니어를 우리가 여친에게 칭찬받는 방법에 대해서 한번 배워 보도록 할게요. 자, 가장 먼저 일단은 그래프를 다 만들기 전에 하나의 파이프라인을 먼저 만들고서이 파이프라인이 제대로 작동하는지 검증을 한번 해 볼 건데 하나의 지역을 실제 웹데이터로 우리가 조사를 할 거고요. 그리고 그 과정 속에서 우리가 그냥 대충 플레이라이트 같은 걸 쓰는게 아니라 제대로 된 스크래퍼를 한번 사용을 해 볼 거예요.
우리가 제대로 그래프를 실행하기 전에 막 병렬로 어떤 작업을 하고 막 이러기 전에 엔드투 엔드로 작업이 잘 구현되도록 우리가 파이프라인을 먼저 만들고 검증을 하기 위함이라고 생각하시면 될 거 같아요. 자,이 검증을 통과를 하면은요. 우리가이 검증된 하나의 파이프라인을 세 가지 지역 뭐 강남, 마포, 종로 이렇게 세 개를 우리가 해 볼 건데 독립적으로 우리가 서브웨이전트를 만들어서 병렬로 실행을 할 거고요.이 각각 실행된 결과물을 각각 검증을 하고 또 하나로 모아서 우리가 직렬로 또 실행을 할 겁니다. 병렬 작업이 효율적인 구간을 우리가 병렬로 실행하고 하나의 컨텍스트로 우리가 직렬로 실행해야 되는 구간은 직렬로 실행해서 그래프 엔지니어링의 가장 큰 효율을 우리가 달성을 하는 거죠. 자, 맨 마지막에는 우리가이 결과 중에서 검증된 것들만 AI한테 다시 전달해서 추천을 만들고 최종 승인은 어, 사람이 하는 걸로 휴먼 인더을 끝에다 집어넣는 걸로 우리가 한번 진행을 해 보도록 할게요. 자,이 과정을 여러분이 끝까지 보면은 어, 그래프를 어떻게 설계하면 되는지 그리고 어떻게 연결하고 관리하는지 조금 쉽게 이해를 할 수 있을 거라고 생각이 됩니다.
자, 이거를 우리가 진행을 하기 전에 여러분이 조금 어, 이해를 하셔야 되는게이 그래프 엔지니어링은 사실 우리가 이렇게 코덱스 화면에서 진행을 하는 것처럼 어, 직접 AI를 실행하는 환경에 어울리는 엔지니어링 기법은 아니에요. 사실 우리가 이런 화면에서 진행을 하게 되면은요. 그 엔지니어링이 자동으로 된다라고 보시면 돼요. 뭐 어울트라 코드라던가 아니면은 다이나믹 워크플로 같은 거를 사용을 하게 되면은 자동으로 그래프가 만들어지는 거거든요. 자,이 그래프에서이 노드가 독립된 에이전트로 간주가 되는만큼이 각각의 스텝별로 우리가 별도 에이전트를 생성해서 운영하는게 어울린다고 보는게 맞지만 어, 여러분이 조금 이해하기 쉽게 그리고 우리가 API를 따 가지고 그 설계까지 다 가져가면 여러분이 배우는데 오래 걸리니까 그냥 우리가 익숙한 환경에서 그냥 다 그냥 각각 독립된 에이전트라고 가정을 하고서 진행을 해 보도록 할게요. 자, 저는 이제 진행을 할 프로젝트 폴더를 정해 놨는데이 안에서 우리가 파일들을 하나의 상태로 서로 옮기면서 그래프가 운영이 되도록 할 겁니다.
왜냐면 실제로 우리가 에이전트를 생성해서 노드로 그래프를 구현을 하게 되면은 어떻게든 서로 독립된이 환경에 상태를 전달을 할 테니까요. 그런 과정을 우리가 한번 처리를 해 볼게요. 자, 우리가 가장 먼저 사용을 해 볼 프롬프트입니다. 자, 일단은 환경 설정부터 할 건데 자, 이번에 Airbnb 리서치 실행을 위한 고유한 런 아이디를 만들어 줘라고 할 거고요. 자, 이런 식으로 런 아이디를 만들어 달라. 우리가 마크다운 폴더 그리고 로우 폴더 그리고 로그 폴더 이렇게 세 가지로 나눠 놓을 거예요. 그래서 마크다운 폴더에는 우리가 실제로 사용을 할 정리된 상태들을 넣어 놓을 거고요. 로브 폴더 같은 경우에는 우리가 다듬어지지 않은 데이터, 그러니까 스크래핑을 해 왔으면 그 스크래핑된 데이터 전체 같은 걸 우리가 저장을 할 거고 로그에다가는 우리가 진행한이 상황들을 전부 다 저장을 하게 될 거예요. 자, 조건은 이렇게 우리가 지정을 해 줄 거고요. 지역은 지금 강남구, 마포구 종을 이렇게 세 곳을 넣어 놨지만 우리가 일단 강남구로 한번 테스트를 끝까지 해 보고 그다음에 실제 우리가 그래프를 만드는 걸 가정을 해서 세 개의 지역을 병렬로 작업을 해 보도록 할게요.
자, 그리고 여기에다가 우리가 어, 마크담 파일에는 사람이 읽는 설명과 함께 제이슨을 같이 넣어 달라고 했는데요. 자, 이거는 만약에 여러분이 어차피 AI로 전부 다 관리를 할 거면은 주석까지 날 필요는 없기는 합니다. 뭐 어쨌든 이렇게 해서 우리가 생성을 한번 진행을 해 보도록 할게요. 자, 제가 지금 쓰고 있는 모델은 5.6 6솔의 미디엄을 우리가 패스트 모드로 한번 사용을 해 보도록 하겠습니다. 자, 그러면은 환경을 이렇게 생성을 하는이 작업이 하나의 노드가 되겠죠. 자, 생성 완료됐습니다라고 이렇게 나오는 걸로 볼 수가 있고요. 우리가 어떤 작업을 요청을 하게 되면은 트리거가 생기게 되면은 가장 먼저이 환경을 조성하는 노드가 돌게 될 겁니다. 자, 그리고이 환경을 조성하는 과정 자체는 사실 굉장히 디터미니스틱한 결과를 만들어 내기 때문에 우리가 굳이 LM을 붙여서 실행을 할 필요가 없어요. 제가 기존에 그래프 엔지니어링 설명을 드렸을 때처럼 우리가 꼭 모든 노드에서 LRM을 사용할 필요는 없는데요.
뭐 저 같은 경우는 이제 귀찮으니까 그냥 LM한테 시켰지만 여러분이 나중에 이제 토큰을 아끼고 더 효율적으로 작업을 하려면은 자 이런 환경 설정 같은 경우에는 여러분이 그냥 스크립트를 만들어서 스크립트를 실행시켰을 때 그 노드를 훨씬 더 효율적으로 실행하는 상황이 되겠죠.음 그런 점들은 이제 고려하면서 보시면 됩니다. 제가 말씀도 드릴게요. 자 그럼 우리가 지정한이 조건이 전부 다 이제 저장이 됐을 거고이 마크다운 파일을 이제 다운로드로 넘기면 되겠죠. 자, 아까 말씀을 드린 것처럼 처음부터 그냥 전부 다 실행을 하지 않고요. 일단은 한 개의 지역만으로 우리가 파이프라인 한번 실행을 하고서 검증을 해 볼 건데 어, 이게 굉장히 중요한게 여러분이 실제로 그래프를 만들 때 병렬로 실행하고 싶은 구간이 굉장히 많겠지만 이거를 만들어 가면서 동시에 실행을 해 버리면은 토큰 소모가 너무 심하고 시간도 오래 걸리니까 꼭 테스트를 돌리고서 그거를 익스팬드해 나가는 걸 추천을 드릴게요. 자, 그럼이 과정을 우리가 어떻게 하면 되냐라고 한번 상상을 해 보면은 자,이 강남구를 우리가 AbMB에 가서 검색을 하고 거기에 대한 결과를 우리가 스크래핑을 해 와서 데이터들을 쌓은 다음에 LM한테 결정을 시켜야겠죠.
자, 그러면 이제 문제가 AI가 추천을 만들려면은 실제 웹페이지에서 우리가 데이터를 안정적으로 가져올 수가 있어야 되는데 동적으로 만들어지는이 페이지들을 렌더링하고 지역에 맞는 결과들을 가져오고 접근하는 과정에서 생기는이 다양한 문제들을 우리가 처리를 해 줘야 된단 말이에요. 자, 그래서 우리는 스크래핑을 잘해 주는 하나의 레이어를 사용을 할 건데 옥시랩스의 어 웹스크래퍼 API라는 걸 사용을 할 겁니다. 자, 웹스프 API는 공개 웹페이지에 접근하고 자바스크립트로 만들어진 페이지를 렌더링하고 프록시 운영이랑 결과 반환 과정을 우리가 그냥 하나의 API로 처리를 할 수가 있어요. 복잡한 검증을 전부 다 여기서 다 해 주기 때문에 우리가 그냥 요청하고서 결과만 받으면 된다라는 거죠. 그리고 이게 요청하는 순간의 실시간 데이터이기 때문에 당연히도 우리가 지금 ABMB 정보를 찾는이 순간에 정확한 예약 현황과 가격과 숙소를 가져올 수가 있다라는 거죠. 자, 그래서 이게 옥시랩스의 웹스칼퍼 API 대시보드인데요.
자, 여기서 우리가 플레이그라운드로 이렇게 들어가 볼 수가 있거든요. 자, 이런 식으로 구글에다가 아디다스 제품들을 검색하라고 우리가 요청을 넣게 되면은요. 자, 실제로 구글 쇼핑에서 이렇게 우리가 가져온 결과들을 스냅샷을 볼 수가 있고이 정보가 완전 정리된 채로 이렇게 결과로 들어오는 거를 볼 수가 있어요. 그래서 우리가 외브 스크래핑 툴이 필요한 환경에서 굉장히 효율적으로 사용할 수 있는 API 중 하나입니다. 자, 그래서 여러분이 스크래핑을 해 보고 싶은 사이트를 여기다 먼저 넣어 보면은요. 어떤 식으로 결과가 나오는지 확인해 볼 수가 있기 때문에 요청을 테스트해 보고서 여러분의이 그래프 안에다가 적용을 하시면 됩니다. 자, 그럼 강남 지역을 저희가 한번 검색을 먼저 시켜 볼 건데 뭐라고 할 거냐면요. 자, 다음 입력 파일을 읽어 줘라고 할 겁니다. 자, 이것부터 얘기를 하는 이유는 우리가 바로 전에서 저희가 작업했던 파일이니까 읽어 달라고 하는 거죠. 그렇죠? 여기다 우리가 여행 조건 같은 것들을 세팅을 해 놨었어요.
자, 그리고 강남구 한 지역만 옥시랩스의 실제 API로 검색을 해 달라고 하고요. 더미 데이터나 임의로 만든 숙수는 당연히 사용하지 말라고 하는 거는 이제 혹시나 헬루시네이션 있을까 봐 저희가 미리 넣어 놨어요. 자, 어떤 값들로 우리가 정리를 해 놔야 되는지 이렇게 넣어 놨고요. 자, 이런 규격을 우리가 잘 정해 주는게 항상 굉장히 중요하죠. 왜냐면 그렇게 하지 않으면 그냥 애의 마음대로 자기가 만들어 내기 때문에. 자, 그다음에 어디에다가 우리가 데이터를 정리할지 이렇게 지시를 해 놨습니다. 자,이 폴더 우리가 미리 만들어 놓은 환경 설정일 때 만들어 놓은 폴더들이죠. 자, 그리고 완료되면은 생성한 파일 경로랑 숙소수만 알려 달라고 한번 요청을 해 볼게요. 자, 연도랑 월이랑 나를 우리가 안 넣었다고 해 가지고 제가 내일로 해 볼게요. 2026년 아니다 조금 먼 미래로 해 볼게요. 2026년 9월 24일 기준으로 해 줘라고 스티어링을 한번 해 보겠습니다. 자, 옥슬랩스 CLI 사용해서 작업을 하라고 했더니 사용자 이름과 비밀번호 번호를 알려 달라고 해서 제가 이렇게 입력을 해 뒀고요.
자, 참고로 웹스크래퍼 API로 가면은요. 유저스라는 탭에 가서 여러분이 사용자를 생성하시면 됩니다. 그러면은 사용자 이름과 체인지 패스워드 눌러서 비밀번호 번호를 생성을 한 다음에 그걸 그대로 붙여 넣게 해 주시면 돼요. 자, 그러면은 바로 API 호출로 응답을 받아오는 거를 확인할 수가 있을 겁니다. 자, 바로 이렇게 나오죠. 옥슬랩스 API가 HTTP 200으로 약 3.05MB의 실제 A BMB 응답을 반환했습니다라고 나옵니다. 자, 그래서 여러분이 로컬에서 이렇게 사용을 할 때는 다양한 브라우저 옵션들이 있지만 여러분이 실제로 그래프를 만들면은 그 각각 에이전트가 브라우저를 접근할 수 있는 방법이 없기 때문에 이런 옥슬랩스 같은 API을 사용을 했을 때 완전한 브라우저 스크래핑 기능을 얻을 수가 있다라는 겁니다. 그래서 특히나 그래프 엔지니어링 같은 거 할 때 가장 유용한 툴 중 하나라고 볼 수 있겠죠. 자, 이렇게 결과가 나온 거를 볼 수가 있어요. 자, 결과 파일 열기를 한번 볼게요. 자, 그러면은 파일럿 리서치라고 나오면서 강남구에 정말 다양한이 숙소들을 지금 콜렉팅을 했고요.
가격이랑 리뷰 카운트까지 몇 개의 리뷰가 있는지까지 한 번에 다 스크래핑이 된 거를 볼 수가 있어요. 자, 실제로 우리가 받은이 응답도 이렇게 제이슨으로 다 정리가 돼 있고요. 자, 원본 응답을 누르게 되면은요. 실제로 우리가 옥실랩스에서 받아온이 응답을 그대로 볼 수가 있는데 어이 파일이 너무 커 가지고 지금 얼어 버렸네요. 멈춰 버렸는데 아 실제로 우리가 옥실랩스로부터 받아온 결과를 그대로 저장하고 있기 때문에 만약에이 과정에서 다음 그래프가 잘못됐다라고 하면은 다시 처음부터 실행할 필요 없이 우리가 다음 노드만 지금이 로우 파일을 레퍼런스 해 가지고 우리가 다시 작업을 할 수가 있다라는 거죠. 그래서 이런 상태들을 여러분이 잘 설계를 해서이 각각 스테이지, 각각 노드가 끝날 때마다 전 과정을 복구하거나 아니면은 다시 시도할 수 있도록 설계를 하는게 굉장히 중요해요. 자, 로그 파일을 열어 보면은 이렇게 우리 실행에 대한 정보도 들어가 있는 걸로 볼 수가 있죠. 자, 그럼 우리가 실제로 그래프를 설계를 했을 때이 상태가 계속 에이전트 사이에 돌아다닌다라고 보시면 될 거 같아요.
자, 그럼 우리가 검증하는 과정을 한번 만들어 볼 건데 자, 지금이 과정 속에선 저희가 눈으로 봤으니까 제대로 잘 나왔다라고 알 수가 있지만 우리가 자동화를 하는 관점에서 봤을 때는 우리가 매번이 실행을 여러보고서 확인한 다음에 사람이 컨펌을 할게 아니란 말이에요. 그래서 최소한이 데이터가 제대로 들어왔는지 링크는 제대로 작동을 하는지 요청했던 조건에 맞는 숙소들이 들어왔는지 예를 들어서 뭐 평점 4.5 이상만 가오라고 할 수도 있겠죠. 그런 거를 검증할 수 있는 노드를 우리가 하나 또 넣어 볼 거예요. 자, 뭐라고 할 거냐면은 다음 파일을 프로그램적으로 검증하는 코드를 작성해 줘라고 할 거고 우리가 마크다운 파일도 명실할 거고요. 파일 존재부 제이슨이 파싱이 잘 되는지 디스트릭트가 모두 강남구인지 강남구만 적 강남구만 서치하라고 했으니까요. 리스팅 아이디 뭐 가격 뭐 어쩌어쩌고 이런 것들이 기본적으로 우리가 세팅한 조건을 맞추고 있는지를 우리가 확인할 수 있도록 요청을 할 겁니다. 자, 그런데 여기서 재밌는 거는 프로그램적으로 검증하는 코드를 작성해 달라고 했어요.
그래서 LM한테 네가 들어가서 판단해가 아니라 우리가 제이슨을 검증한 건 사실 LRM이 필요 없고 우리가 굉장히 빠르게 디터민스틱하게 할 수가 있기 때문에 검증할 수 있는 코드를 작성해서 그거를 우리가 매번 실행할 수 있도록 노드를 설정하겠다라는 얘기입니다. 그래서 이걸 한번 만들어 놓으면 나중에 우리가 그래프에서 병렬로 실행을 할 때도이 똑같은 프로그램을 각각 병렬 노드별로 우리가 실행을 해 주면 되겠죠. 자, 그래서 패스 또는 डे을 우리가 넣도록 하고 어, 로그도 저장을 할 수 있도록 우리가 요청을 하도록 할게요. 자, 이렇게 넣어 보겠습니다. 자, 그리고 여기서 중요한게 일단은 검증 코드가 만들어지고 나면은 이걸 실행해 가지고 실제 우리가 만들어 낸 아까 보여 드린 그 제이슨 결과를 검증하고서 제대로 됐는지 알려 달라고 요청을 했어요. 자, 제가 언어는 명시를 하지 않았는데 여기서 보니까 파이썬을 선택을 한 걸 볼 수가 있죠. 비발자인 분들을 위해서 조금 설명을 드리면은 보통 이런 데이터를 검증하는 데는 또는 굉장히 많은 데이터가 들어갈 수 있는 것들은 파이썬을 쓰면 조금 더 유리합니다.
훨씬 더 코드가 간결하게 나오거든요. 자, 이렇게 검증 코드가 생성이 된 거 볼 수가 있고요. 이런 코드를 이제 작성을 했어요. 자, 그러니까 여기서는 LRM이 없이 그냥이 파일선을 우리가 실행하기만 하면 굉장히 가볍게 검증이 된다라는 거죠. 자, 그러면은이 검증 결과를 뱉어내는 겁니다. 그래서 전부 다 패스를 했으니까 우리가 숙수 12개 다 사용을 할 수 있다라고 이렇게 나오는 걸 볼 수가 있겠죠. 그렇죠? 자, 그래서 우리가 병렬로 옥실랩스로 리서치를 돌리고 스크래핑을 돌리고 그 각각 병렬로 실행된 것들이 전부 다이 똑같은 코드를 사용해서 또 다른 개별적인 노드들이 병렬로 스크래핑한 결과들을 또 병렬로 검증을 하게 된다라는 거죠. 자, 그러면은 이제 제대로 그래프를 한번 우리가 실행을 해 볼 건데. 자, 메인 에이전트가 아래 세 개의 독립적인 서브에트를 생성하고 병렬로 실행해 줘라고 얘기를 할 거예요. 그래서 리전 강남, 리전 마포, 리전 종로라는 에이전트들을 만들 거고요. 자, 우리 런 같은 경우는 이미 생성을 했기 때문에 따로 다시 실행하진 않을 거지만 만약에 여러분이 실제 그래프를 만든다고 하면은이 과정이 가장 앞에 가장 먼저 들어가는 첫 번째 노드가 되겠죠.
저희는 이미 실행했기 때문에 그것까진 실행하지 않겠습니다. 자, 그러면은 그 환경 설정이 되고 나면은 거기서부터 우리가 이제 펼쳐 나가는 리서치 노드들을 이렇게 만들고이 각각의 노드들을 우리가 방금 생성한이 검증 코드로 병렬로 또 검증을 하고 그다음에이 결과를 또 모아서 직렬로 한 컨텍스트 안에서 결정을 내리는 과정을 한번 진행을 해 보도록 할게요. 자, 여기 들어가 있는 프롬프트는 사실 어렵지 않고요. 각각 지정된 지역을 옥실랩스로 조사를 하고 출력 결과를 우리가 이미 만들어 놓은 이미 형성해 놓은이 마크담 파일들에다가 전부 다 저장을 한 다음에 작업이 다 끝나고 나면은 저희에게 리포트하도록 이렇게 요청을 하도록 할게요. 그죠? 자, 이렇게 되면 우리가 병렬 세 개의 노드가 실행이 되면서 그 각각 노드가 옥실랩스를 통해서 리서치를 하고 그 결과를 각각 병렬 노드에서 또 우리가 실행했던이 검증 노드가 실행이 되게 되는 겁니다. 자, 기다려 보면은 제가 실제로 요청을 한 대로 어, 강남 리전 그리고 마포 리전 그리고 이제 좀 있으면은 종로 네, 그죠?
종로 나오죠. 자,이 세 개의 서브웨지가 각각 돌면서 저희가 리서치를 했던 그 과정들을 전부 다 따라가게 될 거예요. 자, 사실이 순간에도 옥실랩스의 장점이 굉장히 분명하게 드러난다고 볼 수가 있는데요.이 세계 에이전트는 서로 다른 지역을 조사를 하고 있지만 모두 동일한 우리가 아까 지정을 했던 옥실랩스 스크래퍼 API을 사용해서 리서치를 하고 있기 때문에 마 크롬 컨트롤에 대한 거를 우리가 신경 쓸 필요 없이 독립적으로 알아서 API을 따서 결과물을 받아오고 있는 거예요. 그래서 우리가 단순히 세 개가 아니라 뭐 한 100개, 200개씩 실행을 해도 아무런 무리 없이 실행될 수 있는 환경이 조성이 된다라는 거죠. 그리고 서로 완전 독립적인 스크래핑 환경이 제공이 되기 때문에 어떤 한 곳이 실패도 또 다른 곳에 영향을 받지 않고 우리가 쉽게 리트라이를 할 수도 있습니다. 자, 진행을 하면서 우리가 실제 통계도 대시보드에서 볼 수가 있는데요. 자, 이렇게 우리가 몇 번 요청을 했는지 그리고 얼만큼의 데이터를 썼는지 우리가 확인을 해 볼 수도 있고 타겟을 실제로 봐 보면 우리가 A BMB를 15번 우리가 요청을 했다라는 것도 우리가 라이브로 볼 수가 있어요.
자, 그래서 영상 설명에도 제가 보여 드릴 건데 옥슬fs./ 슬래시 코드 팩토리로 접속을 하시면은요. 바로 무료로 옥슬랩스 웹스칼 API를 사용을 할 수가 있고요. 카드 여러분이 입력할 필요 없습니다. 결제할 필요 없이 무료 체험해 볼 수가 있고 코드 팩토리 프로모션 코드를 사용을 하시면은 2,000개의 스크래핑 결과를 공짜로 받을 수 있기 때문에 일단은 받아 놓고서 한번 사용을 해 보세요. 그러면 이거 얼마나 유용한지 여러분이 진짜 체감을 해 보면은 알게 될 겁니다. 카드 정보 넣을 필요도 없으니까 꼭 한번 사용해 보세요. 자, 조금 기다리니까 자, 이렇게 강남구, 마포구, 종로구 이렇게 결과가 나온 거를 볼 수가 있어요. 자, 결과 파일 각각 열어 보면은요. 이렇게 스크래핑 결과를 독립적으로 보여 주는 거 볼 수가 있고요. 옥실랩스를 썼기 때문에 브라우저 간섭 없이 굉장히 빠르게 결과를 낸 거를 확인할 수가 있습니다. 자, 그럼 우리가 병렬로 리서치가 다 끝났죠? 자, 그러면은 우리 그래프 안에서는 이제 각각 병렬로 검증하는 과정으로 넘어가야 돼요.
자, 이것도 자, 이렇게 한번 얘기를 해 볼 건데이 세 개의 지역 결과를 우리가 독립적으로 프로그램 검증을 해 달라고 할 겁니다. 자, 우리가 강남 파일럿에서 사용을 했던 검증 코드를 재사용할 거고요. 우리가 한번 파이프라인 실행하기 위해서 우리가 검증했던 그 코드 있죠? 그 제 그걸 다시 재용을 할 거고 지역별 결과를 이렇게 따로 저장을 해 달라라고 하고서 나머지는 똑같습니다. 나머지는 우리가 실행했던 거랑 똑같기 때문에 그대로 실행해서 제대로 결과를 우리가 얻었는지 각각 리포트를 받아보도록 할게요. 자, 기다리니까 각각 독립 검증에서 전부 다 패스를 한 거를 볼 수가 있죠. 자, 그래서 결과를 눌러 보면은 전부 다이 조건들을 다 패스를 했다는 거 우리가 확인할 수가 있습니다. 자, 그리고 병합까지 돼서 11개의 결과물들을 전부 다 우리가 검증해서 이렇게 받았다라고까지 얘기를 해 주는 거를 볼 수가 있어요. 자, 그럼 여기서부터 우리가 병렬로 실행하던게 이제 직렬로 다시 모아집니다. 자, 우리가 병렬로 나누는 거를 펜웃이라고 하면은 직렬로 다시 모아주는 건 팬인이라고 우리가 얘기를 하는데이 결과를 묶어서 우리가 해야 되는 작업들을 이제부터 한번 진행을 해 보도록 할게요.
자, 여기서 이렇게 말을 해 보겠습니다. 다음 두 파일만 읽어 줘 하고서 우리가 병합한이 마크다운 파일을 읽은 다음에 인터넷을 다시 검색하거나 제공되지 않은 정보를 추천하지 말라고 우리가 한네를 한번 제공을 해 줄 거고요. 검증된 후보 중, 그러니까 지금 11개 중에 세 개를 추천을 해 달라고 할 겁니다. 자,이 각각 추천에는 다음 내용을 포함을 해 줘. 순위, 리스트 아이디, 그리고 어쩌구 이렇게 포함해 달려고 하겠습니다. 자, 그다음에 결과를 또이 파일에 저장을 해서 이번 노드가 생성한 결과물이 또 다음 노드로 이어질 수 있도록 상태를 생성해 보도록 할게요. 자,이 과정은 LM이 작업을 하게 되겠죠. 그죠?이 이 결과물을 갖고서 판단을 해야 되기 때문에 LM이 들어가게 될 겁니다. 그냥 프로그램을 우리가 실행할 수 있는 경우는 아니에요. 자, 추천 후보 세 개를 선정을 했다라고 합니다. 자, 1위는 마포그의 후보를 추천해 줬고요. 가격은 16만원짜리입니다. 평점 4.91에 후기 125개가 있고 가격이 가장 낮으면서 평점은 더 높아서 추천을 했다라고 하네요.
자, 2위는 강남구고요. 자,이 친구는 16만5,000원에 4.97 후기 90개 있다. 그리고 종로구는 이렇게 들어갔습니다. 자, 그러면은 우리가 검증을 한번 더 해야겠죠? 결과물을 냈을 때는 항상 우리가 검증을 하는 습관을 드려야 되니까요. 자, 마찬가지로 프로그램적으로 검증해 달라고 이렇게 요청을 할 거고요. 검증 항목은 추천이 정확히 세 개인지 또 뭐 기타 등등 여러분이 만약에 다른 리서치를 한다면은 다른 조건들이 될 겁니다. 자, 그리고 그 검증한 결과를 역시나 마찬가지로 우리가 파일을 저장을 해서 이거를 다음 다운로드에 또 넘길 거예요. 자, 역시나 파이썬 파일을 이렇게 뱉어 줬고요. 실행을 하니까 모두 패스가 됐다라는 거를 확인할 수가 있습니다. 자, 그럼 이제 마지막 노드인데 자, 추천 검증 결과 패싱 경우에만 승인 요청을 만들어 줘라고 하고요. 저희가 만든이 아티팩트들을 읽은 다음에 승인 요청을 우리가 받도록 유도를 해 볼게요. 자, 저희는 이미 이게 다 패스가 됐다는 거 알기 때문에 자,이 세 가지 중 하나를 저한테 이제 물어볼 거라는 거 이제 알고 있고 저 같은 경우 이제 승인을 하겠죠.
그렇죠? 만약에 여러분이 마음에 안 든다면 이제 거절하거나 아니면은 수정 요청을 해서 그래프가 처음부터 다시 돌도록 할 수도 있겠죠. 또 다른 상태를 집어넣고서 맨 앞에다가 뭐 이런 이런 조건 때문에 이건 마음에 안 들었으니까 제외하고서 작업해 줘. 다시 그래프를 돌릴 수가 있으니까요. 자, 그래서 이게 휴먼 인더루프가 되는 거고 만약에 여러분이이 다음에 제가 승인을 한다라고 하면은 아예 결제에서 예약까지 되는 노드를이 다음에 만들었다라고 하면은이 그래프의 중간에 승인이 들어가게 되는 거고 지금 같은 경우는 제가 결제까지 가지 않을 거니까 그래프의 마지막이 휴먼 인더루프가 되지만 만약에 결제까지 진행을 하게 된다라고 하면은 실제로이 그래프의 중간에 여러분이 사람의 승인 과정을 넣게 되는 거죠. 자, 지금 굉장히 간단한 예제로 해 봤는데 여러분이 사람이 승인을 했으면 좋겠다라고 생각이 드는 구간 어디에든 당연히 여러분이이 휴먼 인더루프를 넣어 주시면은 되는 겁니다. 어떤 그래프를 만드냐에 따라 조금씩 다르겠죠.
자, 그래서 우리가 유약을 해 본다라면은요. 여러분이 일단 작업하고 싶은 그래프를 전반적으로 구성을 해 주고요. 어떻게 구성을 할지는 이제 대략적으로 감이 왔을 것 같아요. 한 개의 파이프라인만 여러분이 직접 만들어서 그걸 테스트를 해 봅니다. 그다음에 그거를 에이전트 화에서 여러분들이 노드들을 생성을 해 주시면 되는 거예요. 그러고 나면은 우리가 병렬로 실행할 수 있는 구간들은 옥슬랩스 같은 걸 사용해서 병렬로 독립적인 리서치와 작업을 할 수 있는 API를 제공을 해 주셔야 되고요. 툴을 어떻게든 제공을 해야겠죠. 그다음에 팬아웃트 해야 될 때는 팬아웃하고 팬 인해야 될 땐 팬인하고 검증할 땐 검증을 하면서 그리고 사람이 직접 결정해야 되는 구간에는 휴먼 인더루프 노드도 집어넣어 주면서 여러분이 그래프를 형성을 하시면은 굉장히 효율적인이 에이전트들이 작업하는 환경을 만들 수가 있다라는 거죠. 자, 참고로이 옥실랩스 같은 경우에는 여러분이 어떤 위치에서 요청을 보낼지까지 정할 수가 있기 때문에 예를 들어서 뭐 비행기 티켓 같은 경우에는 어느 나라에서 검색하냐에 따라서 약간씩 가격이 다르거든요.
그래서 그런 것도 여러분이 시뮬레이터를 해 볼 수 있어서 지리적인 요소에 영향을 많이 받는 작업을 한다면은 굉장히 유리할 것 같고요. 어, 마지막으로 여러분이 실제 웹데이터를 사용하는 A 에이전트 그래프 워크플로를 만들고 싶다라고 하면은 제 영상의 설명 그리고 고장 댓글에도 있을 건데 자, 옥슬랩스./코드팩토리에서 /코드 팩토리에서 옥시앱스 웹스크래프 API을 확인해 보시면 되고요. 카드 결제할 필요 없이 그냥 무료 체험만 해 보셔도 여러분이 최대 2,000개의 웹스크래핑 결과를 무료로 이용할 수 있기 때문에 그리고 코드 팩토리 쿠폰 코드를 쓰면은 결제를 할 때 20% 할인도 받을 수 있기 때문에 이런 툴이 필요했다면은 꼭 한번 써 보시는 걸 추천을 드리고요. 저는 그럼 다음에 더 좋은 영상과 함께 찾아뵙도록 하겠습니다. 쏘as지.
AI 자동 생성 콘텐츠
본 콘텐츠는 코드팩토리의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기