1P by GN⁺ 2일전 | ★ favorite | 댓글 1개
  • VS Code의 GitHub Copilot Chat 확장이 오픈 소스로 배포됨
  • Chat view에서 Copilot에 자연어로 질문하여 코드 관련 도움을 즉시 받을 수 있음
    • 워크스페이스의 코드, 변수, Participant 정보, Slash 커맨드 등을 활용하여 맥락 감지형 답변 제공
  • Inline chat으로 코드 내에서 직접 인공지능의 제안을 적용 가능
    • 리팩토링, 예외 처리 추가, 복잡한 알고리듬 설명 등이 실시간으로 가능함

개요

  • GitHub Copilot은 AI 기반의 동반 프로그래머 도구로, 코드 작성 속도와 품질 향상에 도움을 주는 확장 프로그램임
  • 사용자는 프로젝트에 가장 적합한 모델을 선택하고, 채팅 응답을 커스터마이즈하며, agent mode를 활용하여 자연스러운 협업 프로그래밍 세션을 구현할 수 있음
  • GitHub Copilot(코드 자동완성)과 GitHub Copilot Chat(대화형 AI)이 각각 확장으로 설치됨
  • 무료 플랜 또는 엔터프라이즈 관리자의 승인을 통해 이용할 수 있으며, 구독 필요함
  • 개인 및 비즈니스 용도를 위한 다양한 상품(개인, 비즈니스, 엔터프라이즈 플랜)이 제공됨
  • Copilot Chat은 UI 통합 특성상 VS Code의 최신 버전에서만 동작하며 최신 모델 및 기능 연동이 가능함
    • 구형 VS Code에서는 이전 버전 Copilot Chat만 사용 가능함
  • Copilot Chat 사용은 GitHub Copilot Preview 약관 및 투명성 안내에 동의하는 것임
  • 사용자의 코드는 소유권이 보장되며, GitHub Copilot의 다른 사용자에게 추천 코드로 활용되지 않음
Hacker News 의견
  • 여기에 그들이 사용하는 시스템 프롬프트 템플릿 링크를 공유함 링크

    • developer의 커서 위치를 ${CURSOR_TAG}로 표시하는 기능 설명을 알게 됨, 이 부분이 코드 내에서 개발자가 어디에 집중하고 있는지 파악하는 데 중요하게 쓰인다는 사실이 흥미로운 정보임
  • vs code에서의 Copilot은 기대에 못 미치는 부분이 많고, Microsoft 수준에서 기대하는 다듬어진 완성도가 부족한 모습

    • agent mode가 추가된 이후에도 이런 느낌을 받았는지 궁금함, 내 경험에서는 상당히 만족스러운 사용감임, gemini CLI나 cline은 아직 시도해 본 적 없지만 이들이 Copilot보다 나을 것 같지는 않음

    • 예전에는 Microsoft에 기대치를 두곤 했지만, 최근 15년 동안 나온 제품들을 보면 그런 기대를 가지기 힘든 상황

  • Copilot Chat이 프롬프트와 응답을 어떻게 처리하는지의 의사결정 트리를 누군가 AI로 분석해주면 좋겠음

    • 나 또한 Copilot Chat의 동작 흐름에 대해 매우 궁금함, 우선 툴[0]과 프롬프트[1]를 참고하고, 코드의 호출 경로를 추적하는 중임
    • 주요 흐름은 사용자가 ask나 edit를 선택하면 AskAgentIntent.handleRequest, EditAgentIntent.handleRequest로 진입하며, 이후 DefaultIntentRequestHandler.getResult()에서 instance를 생성하고 intent를 호출해 runWithToolCalling 루프를 진행함, 프롬프트와 툴 응답을 .tsx로 렌더링함
    • 관련 파일 링크로는 createFileTool.tsx, editCodePrompt.tsx, 그리고 toolCallingLoop.ts가 있음
  • Copilot Chat은 그냥 Microsoft SaaS의 프론트엔드에 불과함, 실제로 중요한 부분은 GitHub Copilot API 뒤에 숨어 있기 때문에 진정한 의미의 오픈소스라 보기 어려움. 누구도 이 LLM의 설계 또는 학습 데이터에 접근할 수 없고, 셀프 호스팅도 불가능함, 그저 또 하나의 구독 모델 광고이자 개인정보를 제3자에게 넘기는 구조임, 커뮤니티적 가치나 공공 이익도 없음

    • 이 의견에 반박하는 입장임, 모든 상용 SOTA LLM 모델은 대체로 비슷한 코드 품질과 한계를 보임, 진짜 차별점은 유의미한 맥락 정보를 어떻게 전달하고 결과를 프로세싱하는 구조에서 나타남, 단순히 LLM에 파일 내용을 반복 입력하는 에이전트는 누구나 만들 수 있지만, 그런 방식만으로 좋은 코딩 에이전트가 만들어지지는 않음

    • 이 비판의 논리를 잘 따라가기 어려움. 오픈소스는 말 그대로 소스를 연다는 뜻이고, 그게 사용자에게 얼마나 유용한지는 별개의 문제임

    • 오픈소스의 의미가 소스 코드 공개라 생각함, 특별히 이 부분에서 비판할 이유가 이해되지 않음

    • Copilot Chat이 프론트엔드에 불과하다는 점에는 동의함, 하지만 프론트엔드 자체도 오픈소스화될 경우 누군가는 처음부터 UI를 새로 만들 필요가 없어지는 공공적 가치가 생김, 그리고 LLM 설계나 학습 데이터까지 오픈소스화해야 한다는 비판에는 무리가 있음, 현실적으로 오픈소스 커뮤니티에서 그 대규모 컴퓨팅 리소스를 운용할 여력이 없음

    • 최근 댓글들에서 "AI" API에 대한 불만이 자주 보임, 개발자 입장이 아니라 이해가 쉽지 않음, 과거 나도 "Web API"에 대한 유사한 불만이 있었음

    • 예전에는 웹사이트에 API가 없었고 그냥 웹상에서 공개된 정보를 스크래핑하곤 했음, 이 방식은 가입 없이 웹사이트가 존재하는 한 가능함

    • 반면 Web API는 대개 이메일 수집, 사용 기록 추적, 계정 제약, 요금제 등의 방식으로 접근권한을 제한함, 종종 API가 예고 없이 중단되는 리스크도 있음

    • 홈페이지에서 데이터를 일괄 다운로드하는 선택지는 일부 정부 사이트, Wikipedia dump 등 소수에 불과함

    • API가 LLM에도 적용되어, 모델의 가중치 등 내부 데이터 또한 공개하지 않은 채 사용자에게는 계정 가입, 구독 등으로 공개 정보를 우회적으로 제공하는 상황이 됨, 데이터는 서버에 있지만 직접 받을 수 없는 구조임

    • 이런 방식이 결국 개발자들이 옹호했던 툴 및 기술이 다시 개발자 본인들에게 불리하게 작동하기 시작한 것 아닌지 의문임