실제 Ruby AI: 효과적인 실용 시스템 구축 사례

Real-World Ruby AI: Practical Systems That Work

작성자
Rails Upgrade News
발행일
2025년 10월 09일

핵심 요약

  • 1 Ombulabs는 Rails 업그레이드 자동화 로드맵, 내부 지식 기반 Slack 챗봇, 마케팅 자동화 등 다양한 AI 솔루션을 개발하여 운영 효율성을 높이고 있습니다.
  • 2 AI 개발 시 고객의 AI 이해도에 따라 맞춤형 접근 방식을 취하며, LLM의 한계를 인지하고 전통적인 ML 모델이나 규칙 기반 시스템이 더 적합한 경우를 구분합니다.
  • 3 환각(hallucination) 방지를 위해 Guardrails AI와 같은 라이브러리를 활용하고, 에이전트와 워크플로우의 명확한 구분 및 멀티 에이전트 시스템을 통해 복잡한 작업을 처리합니다.

도입

본 팟캐스트 에피소드에서는 Ruby AI 팟캐스트의 공동 진행자 Joe Leo와 Valentino Stoll이 게스트 Amanda Bizzinotto(Ambulabs)와 함께 Ruby 커뮤니티의 최근 논란과 실제 AI 시스템 구축 경험에 대해 논의합니다. 초반에는 Bundler, RubyGems, Ruby Central, Shopify 및 DHH를 둘러싼 커뮤니티 내 갈등에 대한 심도 깊은 대화가 이루어졌습니다. 이후 대화는 Amanda의 데이터 과학 및 머신러닝 배경을 바탕으로 Ambulabs가 AI를 활용하여 직면하는 도전과 해결책으로 전환되며, AI 기술이 실제 비즈니스 환경에 어떻게 적용되는지 탐구합니다.

팟캐스트는 Ruby 커뮤니티의 뜨거운 감자인 Bundler, RubyGems 프로젝트의 관리권 논란으로 시작되었습니다. Joe Leo는 15년간 Bundler를 유지보수한 Andre Arco와 같은 장기 기여자들이 충분한 이유 없이 프로젝트 접근 권한을 잃은 상황에 대한 우려를 표명했습니다. 그는 RubyGems 오픈소스 라이브러리와 rubygems.org 웹사이트 간의 개념 혼동이 설명의 모호함을 야기한다고 지적하며, Shopify의 개입 방식에 대한 비판적인 시각을 드러냈습니다.

이어서 Amanda는 자신의 데이터 과학 및 머신러닝 배경을 소개하며, ChatGPT의 등장 이후 AI 기술이 더욱 접근 가능해졌다고 언급했습니다. Ambulabs는 고객의 AI 역량과 요구 사항에 맞춰 세 가지 유형의 접근 방식을 사용합니다.

고객의 AI 수요 대응 전략

  • AI에 대한 호기심: AI 활용 가능성을 탐색하고 가장 효율적인 통합 방안을 모색합니다.

  • 명확한 아이디어: 특정 문제를 AI로 해결하고자 하지만, 구현 방법에 대한 지식이 부족한 고객에게 솔루션을 제공합니다.

  • AI가 필요 없는 문제: AI가 필요 없는데도 AI를 고집하는 고객에게는 분류기(classifier) 훈련이나 규칙 기반 시스템이 더 효율적일 수 있음을 설득합니다. 특히 LLM이 정형 데이터나 단순 분류에 비효율적임을 강조합니다.

Ambulabs의 AI 활용 사례

  • FastRuby.io를 통한 Rails 업그레이드 자동화: Rails 업그레이드 로드맵을 자동화하는 도구를 개발했습니다. 이는 정적 분석을 통해 수동으로 수행되던 반복적인 작업을 대체하여, 인간 엔지니어의 작업 효율을 85~90%까지 향상시킵니다.

  • 내부 AI 기반 Slack 챗봇: 분산된 정보(Slack, 지식 기반, 블로그, 녹화된 영상)를 한곳에 모아 팀원들이 쉽게 검색할 수 있도록 지원합니다. 특히 영상 콘텐츠의 정보 검색 효율을 크게 높였습니다.

  • 마케팅 자동화 에이전트: 뉴스레터 콘텐츠 생성을 자동화하여 마케팅 팀과 엔지니어링 팀 간의 협업을 간소화하고 시간을 절약합니다.

AI 개발 전략 및 기술

  • 에이전트 vs. 워크플로우: 에이전트는 자율적인 의사결정을 통해 도구를 선택하고 실행하는 반면, 워크플로우는 정해진 단계를 순차적으로 따르는 방식으로 구분하여 사용합니다.

  • 환각(Hallucination) 방지 및 가드레일: Guardrails AI 라이브러리를 활용하여 생성된 응답이 원본 데이터에 근거하는지 문장 단위로 검증합니다. 또한 Microsoft Presidio를 이용하여 PII(개인 식별 정보)를 제거하여 민감한 정보 유출을 방지합니다.

  • 지식 기반 업데이트 및 청킹: 슬라이딩 윈도우(sliding window) 청킹 전략을 사용하며, 다양한 형식의 텍스트 데이터를 표준화하여 일관된 정보 처리 및 검색 정확도를 높입니다.

  • 프롬프트 엔지니어링 및 멀티 에이전트 시스템: React 패턴, 플래너-실행자(planner-executor) 전략과 같은 강력한 프롬프트 엔지니어링 기법을 활용합니다. 또한 복잡한 작업을 위해 여러 에이전트가 협력하는 멀티 에이전트 시스템(예: 블로그 작성 에이전트와 리뷰어 에이전트) 개발을 모색하고 있습니다.

Amanda는 ActiveAgent, LangChain.rb, DSPy.rb, PGVector, Neighbor 등 Ruby AI 프로젝트에 유망한 Gem들을 언급하며, 내부적으로는 핵심 기술에 대한 이해를 높이기 위해 직접 구현하는 방식도 병행하고 있다고 덧붙였습니다.

결론

Ambulabs는 Rails 업그레이드 자동화 및 내부 운영 효율성 향상에 AI를 적극적으로 활용하며, 실제 비즈니스 문제 해결에 기여하고 있습니다. 특히 고객의 다양한 AI 요구에 대한 맞춤형 접근 방식과 환각 방지, PII 처리와 같은 실질적인 문제 해결 노력이 돋보입니다. 에이전트, 워크플로우, 멀티 에이전트 시스템 등 다양한 AI 아키텍처를 유연하게 적용하며, Ruby AI 생태계의 성장에 발맞춰 새로운 Gem들을 탐색하고 있습니다. 이들의 노력은 Ruby 커뮤니티 내에서 AI 기술의 실제 적용 가능성과 잠재력을 보여주며, 향후 Rails 업그레이드와 같은 복잡한 작업에 AI가 어떻게 더 효과적으로 기여할 수 있을지에 대한 기대를 높입니다.

댓글 0

댓글 작성

0/1000
정중하고 건설적인 댓글을 작성해 주세요.

아직 댓글이 없습니다

첫 번째 댓글을 작성해보세요!