Home
화난돼지 블로그
Cancel

AI Agent 정리 (2) - Tool 개념, 구성요소

1. AI Agent 에서 Tool 이란? Tool은 Agent가 외부 기능을 실행하기 위해 사용하는 표준화된 실행 단위이다. Agent는 직접 모든 일을 하지 않고 검색, DB 조회, API호출, 파일 처리, 계산 등과 같은 특정 작업들을 Tool에 위임한다. 즉, Tool = Agent가 사용할 수 있는 기능들을 계약 형태로 정의한 실행 ...

AI Agent 서비스 구현 중간 점검 — Python AI Agent 만들기 및 진행 회고

1. 작성하게 된 이유 ai-agent-batch 프로젝트와 마찬가지로 구현을 진행하면서 기능이 추가되고 방향성이 계속 변경되고 있다. 초기에는 단순한 구조로 시작했지만, 개발을 진행할수록 고려해야 할 요소들이 많아졌고 구조 또한 점점 복잡해지고 있다. 현재 시점에서 한 번 중간 점검을 하고, 앞으로의 방향성을 정리해 두는 것이 필요하다고 판...

블로그 QA AI Agent 자료 수집 및 전체 기능 구현 중간 점검

0. 작성하게 된 이유 이전에 블로그 QA AI Agent를 구현하는 과정에서 아키텍처와 AI Agent 구조를 학습하며, 자료 수집을 위한 배치 서비스를 만들고 기능을 하나씩 테스트해 나갔다. 이 과정에서 현재 어떤 방식으로 구현이 진행되었는지, 어디까지 기능이 완성되었는지, 그리고 앞으로 어떤 부분을 추가로 학습하고 구현해야 하는지에 대한 ...

AI Agent 프로젝트에 데이터 베이스 연결하기

1. 배치 서비스에서 수집한 데이터에 접근하기 위해 AI Agent 프로젝트에 환경 설정을 추가한다. AI Agent 프로젝트는 배치 서비스가 수집하고 적재한 원문 데이터와 임베딩 벡터를 조회할 수 있어야 한다. 이를 위해 AI Agent애플리케이션에는 배치 서브스와 동일한 디비 연결 설정이 필요하다. 원문과 메타데이터는 일반적인 관계형 처럼 ...

RAG? Embedding? VectorDB?

0. 알아보게 된 이유 블로그 글을 기반으로 질의응답을 하는 AI Agent를 만들려고 하다 보니 단순히 LLM만 사용하는 방식으로는 해결되지 않는다는 것을 알게 되었다. 이런 구조를 만들기 위해서는 RAG(Retrieval Augmented Generation)라는 개념이 필요하고, 문서를 검색하기 위한 Embedding, Vector DB,...

블로그 글 수집 배치 만들기 — Spring Batch로 AI Agent용 수집 임베딩 구조 구현 및 회고

1. 작성하게 된 이유 AI Agent를 구현하면서 Tool 목록을 정리하다 보니, 먼저 Agent가 조회하고 활용할 수 있는 데이터가 준비되어 있어야 한다고 판단했다. 이를 처리하는 방법은 크게 두 가지였다. 요청 시점마다 블로그 글을 직접 탐색하는 방식 배치 작업으로 미리 데이터를 수집하고 적재해 두는 방식 이번 프로젝트는 실...

PostgreSQL + pgvector 환경 구성 — AI Agent를 위한 Vector DB 준비

1. PostgreSQL + pgvector 환경 구성 블로그 QA AI Agent 서비스 에서는 블로그 원문, 메타데이터, 요약 정보는 RDB에 저장하고 임베딩 벡터는 Vector DB에 저장하는 구조로 구성하려고 한다. 초기 단계에서는 별도의 Vector DB를 두기보다는 PostgreSQL + pgvector 확장을 사용해서 하나의 DB에...

Tool 구조 만들기 — AI Agent에서 외부 기능을 사용하는 방법

1. AI Agent에서 Tool이 필요한 이유 이전 글에서는 LLM을 Port / Adapter 구조로 연결했다. 현재 구조에서는 LLM문자열을 입력 받고 문자열을 생성하는 것만 가능하다. 하지만 우리가 AI Agent로 하려는 것들은 단순한 챗봇이 아닌 외부 기능을 사용할 수 있는 AI Agent이다. 예를 들어 내가 구현하려는 서비스는 ...

Ollama LLM 연결하기 — Hexagonal Architecture로 LLM Adapter 구현

1. LLM 연결하기 진행하는 프로젝트에서는 AI Agent를 확장 가능한 구조로 만들고 싶었기에 Hexagonal Architecture를 기반으로 구현하려고 한다. 그런 관점에서 볼때 LLM은 외부 시스템에 해당하기 때문에 도메인 로직에서 직접 호출하지 않고 Port / Adapter 구조로 분리하여 구현되어야 한다. 이렇게 구조를 나누는...

AI Agent를 직접 만들어보려고 한 이유와 프로젝트 설정

1. 왜 직접 만들어보려고 했는가 AI Agent 란? 새로운 기술을 이해할 때, 개념을 오래 붙잡고 있기보다는 전체 구조를 빠르게 훑어보고 직접 구현하면서 익히는 방식이 더 잘 맞는 편이다. 그래서 이번에는 AI Agent라는 주제를 정하고, 단순한 개념 정리가 아니라 실제로 동작하는 Agent를 단계별로 만들어 보면서 구조를 이해...