OpenAI - OpenAI DevDay 2024 | Community Spotlight | Supabase
이 발표에서는 AI가 PostgreSQL 데이터베이스를 브라우저에서 직접 관리할 수 있는 새로운 도구를 소개합니다. 이 도구는 JetGPT의 코드 인터프리터와 유사하게 작동하며, AI 모델이 데이터베이스에서 여러 작업을 지연 없이 연속적으로 수행할 수 있도록 합니다. 이를 통해 AI는 더욱 인간적인 느낌을 주며 유용성을 높입니다. 이 시스템은 GP4 O의 PostgreSQL과 SQL에 대한 깊은 이해와 브라우저 내에서 실행되는 일회용 데이터베이스 덕분에 가능합니다. 사용자는 데이터 손실에 대한 걱정 없이 모델이 자유롭게 작동하도록 할 수 있습니다. 또한, 이 도구는 다양한 툴 콜을 통해 SQL 실행뿐만 아니라 그래픽 사용자 인터페이스에서만 가능한 다른 작업도 수행할 수 있습니다. 예를 들어, SQL 오류가 발생하면 언어 모델에 피드백되어 문제를 해결할 수 있는 추가 시도를 합니다. 또한, PG 벡터와 Transformers Js를 사용하여 내장된 벡터 임베딩 지원을 제공하며, 이를 통해 의미론적 검색을 수행할 수 있습니다. 이 도구는 3개월 만에 60,000명 이상의 사용자를 확보했으며, 사용자가 브라우저 내 데이터베이스에 연결할 수 있는 라이브 공유 기능도 제공합니다.
Key Points:
- AI가 PostgreSQL 데이터베이스를 브라우저에서 직접 관리
- GP4 O의 PostgreSQL과 SQL에 대한 깊은 이해 활용
- 툴 콜을 통해 다양한 작업 자동화
- 벡터 임베딩 지원으로 의미론적 검색 가능
- 3개월 만에 60,000명 이상의 사용자 확보
Details:
1. 👋 소개 및 목표: 개발자 경험 향상
- Superbase의 Thor는 개발자 경험 향상을 목표로 하고 있습니다.
- 소프트웨어 개발자 중 데이터베이스 마이그레이션을 즐기는 사람은 적습니다.
- 개발자 경험이란 개발자가 소프트웨어를 개발할 때 겪는 모든 경험을 의미하며, 이를 개선하는 것이 목표입니다.
- 데이터베이스 마이그레이션은 개발자에게 번거롭고 복잡한 작업으로 인식됩니다.
2. 🧠 AI 기반 데이터베이스: 혁신적인 기능 소개
- AI 모델이 데이터베이스에 대한 완전한 자율성을 가지면 여러 작업을 지연 없이 연속적으로 실행할 수 있어 AI가 더욱 인간적이고 유용하게 느껴진다.
- 이 혁신적인 경험은 GP4 O의 뛰어난 Postgres 및 SQL 이해력과 브라우저 내 일회용 데이터베이스의 결합 덕분에 가능하다.
- AI는 데이터베이스에서 자율적으로 쿼리 최적화, 데이터 분석, 자동화된 보고서 생성 등의 작업을 수행할 수 있다.
- GP4 O는 Postgres 및 SQL의 복잡한 쿼리를 이해하고 처리하는 능력을 통해 데이터베이스 관리의 효율성을 크게 향상시킨다.
3. 🔍 실시간 데모: 데이터베이스 생성 및 활용
- 데이터 손실에 대한 걱정 없이 모델을 자유롭게 실행할 수 있음.
- database.build로 이동하여 실시간 데모를 진행할 수 있음.
- GPT-40을 사용하여 SQL을 생성하고 이를 직접 브라우저에서 실행 중인 데이터베이스에 적용함.
- PG light를 사용하여 브라우저에서 Postgres를 실행함.
- GPT-40을 통해 생성된 SQL은 데이터베이스에 직접 적용되어 실시간으로 결과를 확인할 수 있음.
- 데모는 데이터베이스 생성부터 SQL 적용까지의 전체 과정을 포함하여 사용자가 직접 실습할 수 있도록 설계됨.
4. 🔧 도구 호출: 자율성과 효율성
- 모델에 높은 자율성을 부여하기 위해 도구 호출을 사용하여 SQL 실행뿐만 아니라 그래픽 사용자 인터페이스에서만 가능한 작업도 수행.
- Versel AI SDK를 사용하여 빠르게 반복 가능하며, 이는 오픈 소스로 제공되어 코드 스크린샷을 쉽게 얻을 수 있음.
- 도구 호출은 클라이언트 측 도구를 제공하여 모델이 자동으로 호출할 수 있게 하며, Max steps는 무한 루프에 빠지지 않도록 제한을 설정.
5. 🛠️ SQL 실행: 스키마 업데이트 및 도구 활용
- SQL 도구 호출을 통해 데이터베이스 스키마를 업데이트하고 쿼리 결과를 반환합니다.
- 사용자 메시지와 데이터베이스 스키마를 모델과 공유하여 영화 추적을 위한 테이블을 생성합니다.
- 브라우저 내 데이터베이스에서 쿼리를 실행하고 결과와 업데이트된 스키마를 모델에 피드백합니다.
- 최종 단계에서 대화명을 '영화 추적 데이터베이스'로 변경합니다.
6. 🔍 벡터 임베딩: 의미론적 검색 기능
- 모델은 다양한 도구를 연속적으로 호출하여 높은 자율성을 가짐
- SQL 오류가 발생하면 언어 모델이 문제 해결을 위해 여러 번 시도함
- PG 벡터와 Transformers Js를 사용하여 내장된 벡터 임베딩 지원 제공
- 데모에서 영화 제목에 대한 임베딩을 생성하고 별도의 데이터베이스에 저장
- 벡터 임베딩은 크기가 크므로 별도의 저장소에 보관
- 임베딩을 통해 의미론적 검색 가능, 예를 들어 '배트맨' 관련 영화를 검색
- PG 벡터를 사용하여 코사인 거리 계산으로 관련 영화 찾기 가능
7. ⚠️ 사용자 인터페이스: 비용 및 주의사항
- 사용자 인터페이스에서 모든 동작은 도구 호출로 구현되며, 사용자가 인터페이스에서 동작을 클릭하면 채팅에서 메시지를 전송하고 모델이 나머지를 처리함.
- 이 접근 방식은 사용자 경험을 향상시키고 빠른 반복을 가능하게 하지만, 비용 측면에서는 주의가 필요함.
- 특히, 각 도구 호출은 추가적인 비용을 발생시킬 수 있으며, 대규모 사용자 기반에서는 비용이 급증할 수 있음.
- 따라서, 비용 효율성을 유지하기 위해 도구 호출의 빈도를 최적화하고, 불필요한 호출을 줄이는 전략이 필요함.