피드로 돌아가기
Dev.toAI/ML
원문 읽기
Vertex AI ADK와 Dynamic Closure를 통한 AI Agent 데이터 핸들링 최적화
GCP: Upgrading a LINE Bot with Vertex AI ADK Tools for Smart Business Cards and Backup Search
AI 요약
Context
Firebase의 모든 데이터를 JSON 배열로 묶어 프롬프트에 주입하던 기존 방식의 한계 직면. 데이터 증가에 따른 Token Waste 발생 및 모델의 수동적 검색 구조로 인해 데이터 업데이트 등 능동적 Operation 수행 불가능한 구조.
Technical Solution
- Google Cloud Vertex AI ADK 도입을 통한 OpenAPI Schema 정의 과정 생략 및 Python 함수 기반 Tooling 체계 구축
- User-specific Tool 생성을 위한 Dynamic Closure 메커니즘 적용으로 세션별 데이터 접근 권한 격리 및 보안 강화
- get_all_namecards에서 ID를 추출하고 update_namecard_field로 이어지는 Multi-step Tool Calling 체인 설계
- found_card_ids 리스트를 Closure 내에 유지하여 모델의 의사결정 과정에서 필요한 카드 ID를 실시간으로 수집하는 상태 관리 구현
- LLM의 판단 결과와 LINE Flex Message를 결합하여 최종 사용자에게 시각적 데이터와 텍스트 응답을 동시에 제공하는 인터페이스 설계
실천 포인트
- LLM Tool 호출 시 사용자 식별자(user_id)를 함수 인자로 매번 넘기기보다 Closure를 통해 캡슐화하여 보안 사고 방지 - 대량의 데이터를 프롬프트에 직접 주입하는 대신, ID 기반의 상세 조회(get_by_id) 단계를 분리하여 Token 소모 최적화 - 복잡한 NLP 분기 처리 대신 LLM이 스스로 Tool 호출 순서를 결정하는 Multi-step Chain 구조 검토 - Cloud Run 환경 배포 시 Event Loop 및 Linter(flake8)를 통한 코드 품질 관리 수행