현대 개발자를 위한 도구인 Stack Overflow AI Assist 소개
This must come as no surprise to you, but the way developers—of all ages and experience levels—are interacting with knowledge has changed in the age of AI. As AI tools have become more popular, they’ve completely transformed how many technologists are choosing to consume information, ask questions, and learn new skills. And while there will always be a place for how-to articles and forum discussions, we know that how many developers seek out information has changed.
At Stack Overflow, we want to go where the developers are: to remain the always-open-tab of programmers around the world. So we created AI Assist 평생 사용자는 물론 차세대 개발자의 변화하는 요구 사항을 충족하기 위해 이제 Stack Overflow에서 사용할 수 있습니다. 전문가 커뮤니티의 콘텐츠에 우선순위를 부여하는 빠르고 효율적인 학습 도구인 AI Assist는 인간이 검증한 답변의 힘과 생성적 AI를 결합하여 개발자에게 마찰을 최소화하면서 필요한 답변을 제공하는 공개 플랫폼의 새로운 진입점입니다. 우리가 이를 구축한 방법과 향후 계획은 다음과 같습니다.
개발자가 키워드 검색을 하고, 검색 결과 페이지를 탐색하고, 서로 다른 소스의 콘텐츠에 대해 여러 탭을 열던 시대는 지났습니다. 탭 및 컨텍스트 전환은 항상 개발자의 골칫거리였으며, AI 도구의 출시로 인해 많은 개발자가 지식 검색의 마찰이 줄어들었습니다. Stack Overflow의 우리 팀은 사용자 경험의 현대화에는 AI가 포함되어야 한다는 것을 알고 있었습니다.
수년 동안 우리는 개발자들이 지식과 커뮤니티를 찾기 위해 가장 먼저 찾는 곳이었지만, 귀하의 질문에 대한 답변을 얻는 것이 어려운 일이 아니라는 것을 알고 있습니다. 커뮤니티 규칙을 모르거나, 관련 콘텐츠를 찾는 데 어려움을 겪거나, 중복된 질문을 하는 것에 대해 걱정하는 등, 사용자가 당사 사이트에 처음 액세스할 때 직면할 수 있는 많은 장벽이 있습니다. 우리는 이러한 장벽을 해결하고 사용자가 커뮤니티에서 편안함을 느낄 수 있도록 지침과 지침을 제공하는 Stack Overflow를 사용하는 새로운 방법을 만들어야 했습니다. 우리는 또한 이 경험이 친숙한 경험, 즉 문제 해결 및 콘텐츠 검색을 위한 대화형 인터페이스가 되기를 원했습니다. 여기서 사용자는 이미 우리 플랫폼에서 사용할 수 있는 17년간의 전문 지식을 통해 쉽게 배울 수 있습니다.
우리 제품 팀은 AI가 Stack의 사용자 경험에 적합할 수 있는지 알아보기 위해 정성적 인터뷰와 설문 조사를 모두 사용하여 사용자와 대화하는 것으로 연구를 시작했습니다. 우리는 다양한 개인이 AI Assist와 같은 기능과 어떻게 상호 작용할 수 있는지 더 잘 이해하기 위해 고급 사용자와 AI 도구의 비정기 사용자 모두와 이야기를 나눴습니다.
우리는 사용자가 다양한 사용 사례에서 AI 도구를 사용하고 종종 기존 검색 엔진과 같은 보다 전통적인 도구와 결합하여 사용한다는 사실을 발견했습니다. 또한 많은 응답자들은 AI의 실제 결과물이 정확성과 관련성 측면에서 혼재될 수 있음에도 불구하고 AI 도구가 작업 방식을 변화시켰다는 사실을 발견했습니다. 궁극적으로 우리가 인터뷰한 사용자들은 마찰, 특히 컨텍스트 전환의 필요성을 완화하기 위해 신뢰할 수 있는 답변과 AI 도구가 워크플로에 보다 원활하게 통합되기를 원했습니다.
팀에서는 빠른 구축을 원했기 때문에 자체 도메인에 AI Assist 도구를 만들었고, 이를 통해 메인 사이트에 방해가 되지 않는 공간에서 실험하고 구축할 수 있었습니다. 우리의 알파 빌드는 도구 인프라의 실행 가능성을 테스트하는 데 사용되었으며 이를 통해 피드백을 받고 도구를 개선할 수 있었습니다.
LLM 경험을 통해 사용자에게 답변을 제공하는 데 중점을 두고 Stack Overflow의 관련 Q&A로 풍부한 제품 테스트를 마친 후 베타 테스트로 넘어갔습니다. 여기에는 커뮤니티 답변 메커니즘, 사용 가능한 경우 Stack Overflow 및 Stack Exchange 사이트에서 답변을 얻을 수 있는 RAG + LLM 환경, 더 쉽게 사용할 수 있도록 업데이트된 인터페이스가 포함되었습니다. 모델에 구애받지 않고 다양한 모델을 사용하여 사용자에게 최상의 답변을 제공하는 AI Assist 도구가 다른 AI와 동등할 수 있도록 하기 위해 우리는 또한 통합했습니다.[–>ProLLM benchmarks LLM 모델의 순위를 지정합니다.
궁극적으로 우리 회사의 정신과 커뮤니티 피드백으로 인해 인용, 귀속 및 사람이 검증한 답변은 협상할 수 없다는 것을 알았습니다. 왜냐하면[–>trust in AI has decreased this last year AI 사용량이 증가하더라도 AI Assist가 커뮤니티의 신뢰할 수 있는 지식에 의존하도록 하는 것이 가장 중요합니다. 제품 관리자인 Ash Zade는 “우리는 자신을 아끼는 사람들과 제작자를 위한 신뢰 신호를 가지고 있습니다.”라고 말했습니다.[–>Stack Overflow Podcast. “[That] 정말 중요한 부분이자 우리가 귀속 및 소싱에 그렇게 큰 중점을 둔 이유 중 하나입니다… 가장 먼저 보게 되는 것은 여기에 모든 소스가 있다는 것입니다. 그리고 우리는 이 답변이 AI 콘텐츠로 강화된 인간 콘텐츠로 구성되어 있다는 것을 사용자에게 알려줍니다.”
AI Assist에는 도구가 정확한 답변을 제공할 수 없거나 사용자가 더 깊이 알고 싶을 때 질문할 수 있는 커뮤니티 경로도 포함됩니다. 이를 통해 기존 검색 및 Q&A보다 마찰이 적은 Stack Overflow에 참여할 수 있는 방법을 제공하고 있습니다.
우리는 완전히 Stack Overflow를 기반으로 공개 플랫폼 내에서 AI Assist의 다음 버전을 출시하고 싶었습니다. 하지만 그렇게 하기 전에 우리는 속도, 정확성, 일관성을 향상시키고 싶었습니다. AI 도구의 세 가지 필수 측면의 균형을 맞추기 위해 우리는 다양한 모델, 프롬프트 전략 및 출력 스타일을 사용하여 여러 실험을 실행했습니다. 답변의 정확성을 최우선으로 생각하는 임무에서 검색 관련성과 순위 재조정을 조정하고 최신 정보가 포함된 최신 모델이 증강 파이프라인의 마지막 단계가 되도록 했습니다. 이러한 방식으로 AI Assist는 사용자가 Stack Overflow의 커뮤니티에서 생성된 지식 기반이 지원하는 정답을 받을 수 있도록 설계되었으며, 답변을 제공하기 위해 호출된 LLM이 사용 가능한 가장 최신의 LLM이 되도록 설계되었습니다.
일관성과 속도를 향상시키기 위해 RAG + LLM 파이프라인의 세 단계 각각에 대한 프롬프트를 업데이트했습니다.
- RAG를 활용하여 Stack 사이트 전체에서 답변을 검색하고,
- 기여를 통해 최고의 결과를 도출하고,
- LLM을 사용하여 대안, 구조 및 완전성에 대한 답변을 “감사”하고 필요한 경우 LLM 지식으로 답변을 보완하십시오.
이를 통해 우리 도구의 새로운 모델과의 호환성을 극대화했으며, 동일한 질문을 올바른 형식으로 질문할 때 답변이 동일하거나 유사하도록 만들었습니다. 또한 응답 속도도 35% 이상 향상되었습니다.
또한 Stack Overflow의 원본 콘텐츠를 더 많이 활용하고 인용을 개선하기 위해 UX를 몇 가지 조정했습니다. 우리는 인라인 인용문을 블록 인용문으로 전환하여 커뮤니티에서 검증한 콘텐츠의 더 큰 덩어리와 이를 복사할 수 있는 긴 코드 조각을 강조할 수 있었습니다. 이러한 코드 조각에는 보다 쉽게 구문 분석할 수 있도록 구문 강조 표시가 있으며 코드 복사 버튼에는 코드 유지에 도움이 되는 속성이 포함되어 있습니다.
우리가 AI Assist에 가져온 주요 개선 사항 중 하나는 플랫폼 내에서 Stack Overflow로 가져오는 것입니다. 우리는 기본 마이크로서버에 대한 모놀리스의 HTTP 프록시를 사용하여 이 작업을 수행했습니다. AI Assist는 원래 자체 도메인에 있었기 때문에 스택 오버플로 디자인 내에서 작동하도록 레이아웃을 조정해야 했습니다. 마지막으로 사용자를 인증할 수 있도록 모노라이트에서 서비스로 JWT를 전달했습니다.
AI Assist를 공개 플랫폼에 통합함으로써 우리는 인증을 활성화하여 채팅 저장 또는 공유와 같은 개인화를 위한 더 많은 기능과 기회를 허용할 수 있었습니다. 이러한 새로운 기능을 통해 개발자는 워크플로로 다시 돌아가서 중단한 부분을 다시 시작하거나 대화를 공유하여 개인적인 통찰력을 집단적 지식으로 전환하는 채팅을 공유함으로써 팀의 문제 해결을 촉진할 수 있습니다.
핵심적으로 우리는 AI Assist가 커뮤니티의 전문 지식 기반에 대한 접근 장벽을 허무는 학습 도구가 되기를 바랍니다.
이제 AI Assist는 커뮤니티에서 검증된 답변을 빠르게 찾고자 하는 모든 사람, 배우려는 사람, Stack Overflow에서 커뮤니티와 연결하려는 사람 모두에게 널리 제공됩니다!
AI Assist를 구축하면서 우리는 커뮤니티의 반응을 지속적으로 측정했습니다. 개선 사항과 반복 버전이 출시되면서 독립적인 AI Assist 사이트에 대한 트래픽이 꾸준히 증가했습니다. 이는 우리 커뮤니티의 호기심을 드러냅니다. 또한 트래픽 분석에 따르면 AI Assist는 기존 Q&A 사이트와는 다른 인구통계학적 관심을 끌고 있으며, 기존 Stack Overflow 사이트보다 AI Assist에서 더 많은 새로운 기술 관련 질문을 받고 있는 것으로 나타났습니다.
AI 도구의 각 버전에서 우리는 도구의 기본 아키텍처에 따라 긍정적인 감정과 부정적인 감정 사이에서 변화하는 것을 확인했으며, 가장 최신 모델을 사용하는 최신 반복은 주로 긍정적인 반응을 보였습니다.
한편, 우리는 Stack 사이트에서 직접 제공되는 콘텐츠에 답변을 제공하는 기여 시스템에 대해 매우 긍정적인 피드백을 받았습니다. 사용자의 이러한 반응은 AI의 힘을 활용하면서 인간이 검증한 지식을 우선시하는 AI Assist에 대한 인간 + AI 접근 방식을 검증했습니다. 또한 사용자는 응답에 코드 조각과 팁 및 대안을 추가하여 도구가 어떻게 학습과 호기심을 갖도록 유도하는지에 대해 감사를 표했습니다. 대화형 인터페이스는 사용자가 자연어로 도구에 메시지를 표시하고 한 번의 대화에서 특정 주제를 쉽게 드릴다운할 수 있다는 점에서도 주목되었습니다.
AI Assist는 이미 전 세계 285,000명 이상의 기술자가 방문하여 오류 메시지 이해부터 코드 디버깅, 앱 설계에 이르기까지 다양한 작업에 AI Assist를 사용하고 있습니다. 가장 적극적으로 참여하는 사용자는 하루에 최대 6,4000개의 메시지를 작성하고 있으며 대화의 75%가 고도로 기술적인 콘텐츠에 집중되어 있습니다.
AI Assist는 당사 사이트의 신규 사용자와 평생 사용자 모두가 배우고, 커뮤니티에 참여하고, 지식 기반에 대해 더 깊이 알아볼 수 있도록 도와주는 강력한 도구입니다. 그러나 경험은 구조화되지 않고 일상적이며 대화적이기 때문에 사용자는 디버깅부터 개념 설명, 기술적 장애물 극복에 이르기까지 도움이 될 수 있는 모든 방법을 인식하지 못할 수 있습니다. 우리의 다음 목표는 AI Assist를 플랫폼에 더 깊이 적용하여 개별 Q&A 페이지와 같이 사용자가 있는 곳에서 사용자를 만나 적시에 지원을 제공하는 것입니다.
AI Assist의 미래는 훨씬 더 많은 맥락을 확보하여 사용자가 관심과 활동을 기반으로 학습하도록 적극적으로 도울 수 있는 도구를 더욱 잘 갖추게 될 것입니다.
마지막으로, 개발자가 있는 곳에 있는 것이 항상 우리의 임무였기 때문에 AI Assist를 사용자의 IDE, 채팅 플랫폼 및 기타 작업하는 모든 곳에 도입할 계획입니다.
개발자가 지식을 배우고 소비하는 방식이 바뀌었지만 Stack Overflow도 그에 맞춰 진화하고 있습니다. 우리는 귀하와 귀하를 위해 이 도구를 제작하고 있습니다.[–>check out AI Assist 오늘 여러분의 생각을 알려주세요.



Post Comment