Text-2-sql 에이전트 최적화 질문
Text-2-sql Agent
핵심 요약
Text-2-sql 에이전트의 높은 토큰 소모와 지연 시간을 줄이기 위한 최적화 방법을 고민 중입니다.
- 토큰 소모 최적화 — 스키마 조회 시 발생하는 과도한 토큰 사용량을 줄이는 효율적인 방안을 찾고 있음.
- 지연 시간 개선 — BigQuery 실행 및 스키마 로드 과정에서 발생하는 2분가량의 지연 시간을 단축하고자 함.
- 벡터 DB 활용 — 테이블 식별을 위해 벡터 DB를 사용 중이나, 더 나은 대안이 있는지 검토 중임.
- 커뮤니티 조언 — 스키마 요약, 프롬프트 캐싱, 쿼리 재사용 등 다양한 최적화 전략이 제시됨.
Text-2-sql 에이전트를 만들었습니다. React 에이전트 방식으로, 다음 단계에 따라 작동합니다.
- 비즈니스 관련 해결을 위해 도구를 호출합니다. 2. 쿼리를 기반으로 테이블을 식별하기 위해 벡터 DB를 호출합니다.
이 과정은 테이블 범위를 좁히는 데 도움이 됩니다.
- 그 후 해당 테이블들의 스키마를 가져옵니다. 2. 쿼리를 생성, 실행 및 검증합니다(검증에는 sqlglot을 사용합니다).
정확도 측면에서는 잘 작동하고 있는데, 지연 시간과 토큰 소모를 어떻게 개선할지 고민입니다. 스키마를 가져오는 데만 50k 토큰 정도가 소모됩니다. 지연 시간은 약 2분 정도인데(일부는 BigQuery 실행 때문이기도 하지만 여전히 너무 깁니다).
조언이나 추천 부탁드립니다. 다른 분들은 어떻게 하고 계신지 궁금합니다.


