Skip to main content
QUICK REVIEW

[논문 리뷰] Building Your Own Product Copilot: Challenges, Opportunities, and Needs

Chris Parnin, Gustavo Soares|arXiv (Cornell University)|2023. 12. 21.
Software Engineering Research인용 수 5
한 줄 요약

이 논문은 대규모 언어 모델(Large Language Models, LLMs)을 사용하여 AI 기반 제품 코파일럿을 구축하는 데 있어 소프트웨어 엔지니어들이 겪는 과제를 26명의 전문가 인터뷰를 바탕으로 조사한다. 프롬프트 엔지니어링, 테스팅, 상태 관리, 도구 활용 측면에서의 핵심 고통점들을 규명하고, AI 우선 소프트웨어 엔지니어링 워크플로우에서 개발을 간소화하고 신뢰성을 향상시키기 위해 통합적이고 표준화된 도구와 최선의 실천 방안이 필요하다고 제안한다.

ABSTRACT

A race is underway to embed advanced AI capabilities into products. These product copilots enable users to ask questions in natural language and receive relevant responses that are specific to the user's context. In fact, virtually every large technology company is looking to add these capabilities to their software products. However, for most software engineers, this is often their first encounter with integrating AI-powered technology. Furthermore, software engineering processes and tools have not caught up with the challenges and scale involved with building AI-powered applications. In this work, we present the findings of an interview study with 26 professional software engineers responsible for building product copilots at various companies. From our interviews, we found pain points at every step of the engineering process and the challenges that strained existing development practices. We then conducted group brainstorming sessions to collaborative on opportunities and tool designs for the broader software engineering community.

연구 동기 및 목표

  • 대규모 언어 모델(Large Language Models, LLMs)을 사용하여 제품 코파일럿을 개발할 때 소프트웨어 엔지니어들이 실세계에서 겪는 과제를 이해하기 위해.
  • AI 기반 애플리케이션 개발 전반에 걸친 소프트웨어 엔지니어링 라이프사이클 전반에서의 고통점들을 규명하기 위해.
  • 생산 환경에서 LLM 기반 시스템에 대한 표준화된 도구, 테스팅 관행, 메트릭스의 부재를 탐색하기 위해.
  • 확장 가능하고 신뢰성 있으며 유지보수 가능한 코파일럿 개발을 지원하는 실천 가능한 기회와 도구 설계를 제안하기 위해.
  • 빠른 LLM 혁신과 AI 통합 제품을 위한 성숙한 엔지니어링 관행 사이의 갭을 메우기 위해.

제안 방법

  • 주요 기술 기업에서 제품 코파일럿을 구축하는 데 책임이 있는 26명의 전문 소프트웨어 엔지니어를 대상으로 심층 인터뷰를 실시하였다.
  • 프롬프트 엔지니어링, 테스팅, 상태 관리, 도구 통합 등 소프트웨어 엔지니어링 라이프사이클 전반에서 발생하는 고통점들을 분석하였다.
  • 미래 도구 설계를 위한 기회와 설계 원칙을 공동으로 도출하기 위해 그룹 브레인스토밍 세션을 진행하였다.
  • 기존 도구 생태계(LangChain, Semantic Kernel 등)를 매핑하고, 종단 간 코파일럿 개발을 지원하는 데서의 한계를 평가하였다.
  • 프롬프트 버전 관리, 비용 모니터링, LLM 동작의 가시성 등 원하는 기능에 대한 피드백을 수렴하였다.
  • 사용자 친화성, 유지보수성, AI 우선 개발에서의 개발자 경험을 강조하여, 도구 필요성에 대한 프레임워크로 통합하였다.

실험 결과

연구 질문

  • RQ1실세계 환경에서 대규모 언어 모델(LLMs)을 사용하여 제품 코파일럿을 개발할 때 엔지니어들이 겪는 주요 과제는 무엇인가요?
  • RQ2현재 소프트웨어 엔지니어링 관행과 도구는 LLM 기반 애플리케이션 개발을 지원하는 데에서 어떤 점에서 부족한가요?
  • RQ3신뢰성, 테스트 가능성, 유지보수성을 향상시키기 위해 가장 필요한 도구와 최선의 실천 방식은 무엇인가요?
  • RQ4엔지니어들은 생산 환경에서 어떻게 프롬프트 엔지니어링, 상태 관리, 모델 동작의 예측 불가능성을 관리합니까?
  • RQ5메트릭스, 가시성, 비용 모니터링은 AI 코파일럿의 개발과 유지보수에서 어떤 역할을 하나요?

주요 결과

  • LLM 출력의 취약성과 예측 불가능성으로 인해 프롬프트 엔지니어링은 시험적·반복적 조정이 필요한 주요 버팀목이다.
  • 표준화된 메트릭스 부재와 프롬프트 및 모델 동작 변경에 대한 회귀 테스팅 도구 부재로 인해 LLM 기반 워크플로우의 테스팅은 매우 어렵다.
  • 대화 상태 관리, 복잡한 워크플로우 오케스트레이션, 다양한 LLM 간 일관성 있는 동작 보장에 있어 엔지니어들은 상당한 어려움을 겪고 있다.
  • 프롬프트 템플릿, 벡터 데이터베이스, 호스팅, 테스팅 프레임워크를 통합한 단일 통합 개발 환경에 대한 강력한 수요가 있다.
  • 소규모 프롬프트 변경이나 모델 업데이트로 인한 비용 및 성능 변동성은 주요 우려 사항이며, 실시간 경고 및 가시성 도구가 필요하다고 엔지니어들이 요청하고 있다.
  • LangChain과 같은 프레임워크가 존재하더라도 개발자들은 여전히 도구 통합, 복잡한 LLM 파이프라인의 가독성 및 해석 가능성에 어려움을 겪고 있다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.