GitLab Duo 채팅 문의

GitLab Duo 채팅은 다양한 질문에서 도움을 줄 수 있습니다. 다음 예시는 GitLab Duo 채팅이 가장 유용한 분야를 나타내고 있습니다.

추가적인 실제 예시는 GitLab Duo 사용 사례를 참조하세요.

GitLab에 관해 문의하기

Tier: GitLab.com 및 자체 관리: 한정된 기간 동안 프리미엄 또는 얼티밋. 2024년 10월 17일부터 GitLab Duo Pro 또는 얼티밋과 함께 프리미엄. GitLab 전용: GitLab Duo Pro 또는 얼티밋. Offering: GitLab.com, 자체 관리, GitLab 전용 Editors: GitLab UI, 웹 IDE, VS Code, JetBrains IDEs LLMs: Anthropi Claude 3.5 Sonnet, Vertex AI Search
  • 16.0에서 GitLab.com에 소개되었습니다.(소개됨)
  • 17.0에서 자체 관리에서 ‘ai_gateway_docs_search’라는 플래그로 문서 관련 질문하기 기능이 추가되었습니다.(소개됨) 기본적으로 활성화됨.
  • 17.1에서 일반 사용 가능으로 변경되고 플래그가 제거되었습니다.(일반 사용 가능 및 플래그 제거)

GitLab가 작동하는 방식에 관해 질문할 수 있습니다. 다음과 같은 것들입니다:

  • 'fork'의 개념을 간결하게 설명해주세요.
  • 사용자 비밀번호를 재설정하는 단계별 지침을 제공해주세요.

GitLab Duo 채팅은 GitLab 문서를 소스로 사용합니다. 채팅을 문서와 최신 상태로 유지하기 위해, 지식 베이스가 매일 업데이트됩니다.

  • GitLab.com에서는 가장 최신 버전의 문서가 사용됩니다.
  • 자체 관리 및 GitLab 전용의 경우, 해당 인스턴스 버전의 문서가 사용됩니다.

특정 문제에 대해 문의하기

Tier: GitLab.com 및 자체 관리: 한정된 기간 동안 프리미엄 또는 얼티밋. 2024년 10월 17일부터 GitLab Duo Enterprise와 함께 얼티밋. GitLab 전용: GitLab Duo Enterprise. Offering: GitLab.com, 자체 관리, GitLab 전용 Editors: GitLab UI, 웹 IDE, VS Code, JetBrains IDEs LLM: Anthropi Claude 3 Haiku
  • 16.0에서 GitLab.com에 소개되었습니다.(소개됨)
  • 16.8에서 자체 관리 및 GitLab 전용에 소개되었습니다.(소개됨)

특정 GitLab 문제에 관해 물어볼 수 있습니다. 예를 들어:

  • 이 링크를 통해 식별된 문제에 대한 요약을 생성해 주세요: <링크>
  • GitLab에서 문제를 보고 있을 때, 현재 문제에 대한 간결한 요약을 생성해 주세요.
  • <링크>의 설명을 개선하여 독자가 해결해야 할 가치와 문제를 이해할 수 있도록 하는 방법은 무엇인가요?
note
만약 문제에 많은 양의 텍스트(4만 단어 이상)가 포함되어 있다면, GitLab Duo 채팅은 모든 단어를 고려하지 못할 수 있습니다. AI 모델은 한 번에 처리할 수 있는 입력량에 제한이 있습니다.

이슈와 에픽을 효과적으로 사용하여 생산성을 높일 수 있는 GitLab Duo 채팅의 유용한 팁은 GitLab Duo 채팅으로 생산성 향상하기를 참조하세요.

특정 에픽에 대해 문의하기

Tier: GitLab.com 및 자체 관리: 한정된 기간 동안 프리미엄 또는 얼티밋. 2024년 10월 17일부터 GitLab Duo Enterprise와 함께 얼티밋. GitLab 전용: GitLab Duo Enterprise. Offering: GitLab.com, 자체 관리, GitLab 전용 Editors: GitLab UI, 웹 IDE, VS Code, JetBrains IDEs LLM: Anthropi Claude 3 Haiku
  • 16.3에서 GitLab.com에 소개되었습니다.(소개됨)
  • 16.8에서 자체 관리 및 GitLab 전용에 소개되었습니다.(소개됨)

특정 GitLab 에픽에 관해 물어볼 수 있습니다. 예를 들어:

  • 이 링크를 통해 식별된 에픽에 대한 요약을 생성해 주세요: <링크>
  • GitLab에서 에픽을 보고 있을 때, 열린 에픽에 대한 간결한 요약을 생성해 주세요.
  • <링크>에서 댓글 작성자들이 제기한 독특한 사용 사례는 무엇인가요?
note
만약 에픽에 많은 양의 텍스트(4만 단어 이상)가 포함되어 있다면, GitLab Duo 채팅은 모든 단어를 고려하지 못할 수 있습니다. AI 모델은 한 번에 처리할 수 있는 입력량에 제한이 있습니다.

특정 병합 요청에 대해 문의하기

Tier: GitLab.com 및 자체 관리: 한정된 기간 동안 프리미엄 또는 얼티밋. 2024년 10월 17일부터 GitLab Duo Enterprise와 함께 얼티밋. GitLab 전용: GitLab Duo Enterprise. Offering: GitLab.com, 자체 관리, GitLab 전용 Editors: GitLab UI LLM: Anthropi Claude 3.5 Sonnet
  • 17.5에서 소개되었습니다.(소개됨)

보고 있는 병합 요청에 관해 GitLab에 물어볼 수 있습니다. 제목이나 설명, 댓글 및 쓰레드, 변경 탭의 내용, 레이블, 소스 브랜치, 작성자, 마일스톤 등에 관해 물어볼 수 있습니다.

병합 요청 중에 채팅을 열고 질문을 입력하세요. 예를 들면:

  • .vue 파일이 왜 변경되었나요?
  • 리뷰어들이 이 병합 요청에 대해 어떤 말을 하고 있나요?
  • 이 병합 요청을 어떻게 개선할 수 있을까요?
  • 어떤 파일과 변경 사항을 먼저 검토해야 하나요?

채팅은 파이프라인이나 커밋에 대해서는 알지 못합니다. 하지만 원인 분석으로 파이프라인의 작업에 대한 문제 해결이 가능합니다.

선택한 코드 설명

Tier: GitLab.com 및 Self-managed: 한정 기간 동안, 프리미엄 또는 얼티밋. 2024년 10월 17일에는 GitLab Duo Pro 또는 GitLab Duo Pro 또는 Enterprise로 프리미엄 또는 얼티밋. GitLab Dedicated: GitLab Duo Pro 또는 Enterprise. 오퍼링: GitLab.com, Self-managed, GitLab Dedicated 편집자: GitLab UI, Web IDE, VS Code, JetBrains IDE LLM: Anthropic Claude 3.5 Sonnet
  • GitLab.com에서 GitLab 16.7에서 도입.
  • Self-managed 및 GitLab Dedicated에서 GitLab 16.8에서 도입.

GitLab Duo Chat에 선택한 코드를 설명하라고 요청할 수 있습니다:

  1. IDE에서 코드를 선택합니다.
  2. Duo Chat에서 /explain을 입력합니다.

    코드 선택 및 /explain 슬래시 명령을 사용하여 GitLab Duo Chat에게 설명을 요청하는 이미지

고려해야 할 추가 지침을 추가할 수도 있습니다. 예를 들어:

  • /성능 설명
  • /알고리즘에 초점을 맞춰 설명
  • /이 코드를 사용하여 성능 향상 또는 저하를 설명
  • /객체 상속 설명 (클래스, 객체 지향)
  • /여기서 왜 정적 변수를 사용했는지 설명 (C++)
  • /이 함수가 왜 세그먼테이션 오류를 발생시키는지 설명 (C)
  • /이 문맥에서 동시성이 작동하는 방식 설명 (Go)
  • /요청이 어떻게 클라이언트에 도달하는지 설명 (REST API, 데이터베이스)

더 많은 정보는 VS Code에서 GitLab Duo Chat 사용을 참조하세요.

GitLab UI에서도 다음과 같이 코드를 설명할 수 있습니다:

코드에 대해 질문하거나 생성합니다

Tier: GitLab.com 및 Self-managed: 한정 기간 동안, 프리미엄 또는 얼티밋. 2024년 10월 17일에는 GitLab Duo Pro 또는 GitLab Duo Pro 또는 Enterprise로 프리미엄 또는 얼티밋. GitLab Dedicated: GitLab Duo Pro 또는 Enterprise. 오퍼링: GitLab.com, Self-managed, GitLab Dedicated 편집자: GitLab UI, Web IDE, VS Code, JetBrains IDE LLM: Anthropic Claude 3.5 Sonnet
  • GitLab.com에서 GitLab 16.1에서 도입.
  • Self-managed 및 GitLab Dedicated에서 GitLab 16.8에서 도입.

코드에 대한 질문은 해당 코드를 Duo Chat 창에 붙여 넣어 GitLab Duo Chat에게 물어볼 수 있습니다. 예를 들어:

이 루비 코드를 명확히 설명하십시오: def sum(a, b) a + b end.
이 코드가 하는 일과 작동 방식에 대해 설명하십시오.

또한 Chat에게 코드를 생성하도록 할 수도 있습니다. 예를 들어:

  • 호출 시 'Hello, World!'를 출력하는 루비 함수를 작성하십시오.
  • 두 명의 플레이어 간의 틱택토 게임을 시뮬레이션하는 JavaScript 프로그램을 개발하십시오. 가능한 경우 게임 로직 및 사용자 인터페이스를 제공하십시오.
  • Python에서 IPv4 및 IPv6 주소를 구문 분석하기 위한 정규 표현식 작성하십시오.
  • Java에서 syslog 로그 파일을 구문 분석하기 위한 코드 생성하십시오. 가능한 경우 정규 표현식을 사용하고 결과를 해시 맵에 저장하십시오.
  • C++에서 스레드 및 공유 메모리로 제작자-소비자 예제 작성하십시오. 가능한 경우 원자적 잠금을 사용하십시오.
  • 고성능 gRPC 호출을 위한 Rust 코드 생성하십시오. 서버 및 클라이언트에 대한 소스 코드 예제 제공하십시오.

후속 질문하기

주제나 수행해야 할 작업에 대해 더 자세하고 정확한 답변을 얻기 위해 후속 질문을 할 수 있습니다. 이를 통해 추가 설명, 상세화 또는 추가 지원에 맞춘 좀 더 상세하고 정확한 응답을 얻을 수 있습니다.

예를 들어 호출 시 'Hello, World!'를 출력하는 루비 함수를 작성하십시오라는 질문에 대한 후속 질문은 다음과 같을 수 있습니다:

  • 일반적인 루비 환경에서 이 루비 함수를 어떻게 호출하고 실행할 수 있는지 설명할 수 있나요?

C# 프로젝트를 시작하는 방법이라는 질문에 대한 후속 질문은 다음과 같을 수 있습니다:

  • C#에 .gitignore 및 .gitlab-ci.yml 파일을 추가하는 방법도 설명해 주세요?

오류에 대해 질문하기

소스 코드를 컴파일해야 하는 프로그래밍 언어는 암호화된 오류 메시지를 반환할 수 있습니다. 마찬가지로 스크립트나 웹 애플리케이션은 스택 추적을 반환할 수 있습니다. 예를 들어, 자바에서는 해당 오류 메시지를 설명해 주십시오:와 같이 복사한 오류 메시지의 앞에 GitLab Duo Chat에게 질문할 수 있습니다. 프로그래밍 언어와 같은 구체적인 맥락을 추가합니다.

  • 이 Java 오류 메시지를 설명해 주십시오: Int 및 system을(를) 타입으로 해석할 수 없습니다
  • 이 C 함수가 왜 세그먼테이션 오류를 발생시키는지 설명해 주십시오: sqlite3_prepare_v2()
  • Python에서 이 오류가 발생하는 이유에 대해 설명해 주십시오: ValueError: int()에 대한 잘못된 리터럴
  • VueJS에서 "this"가 정의되지 않은 이유는 무엇인가요? 일반적인 오류 상황을 제공하고 이를 피하는 방법을 설명하세요.
  • Ruby on Rails 스택 트레이스를 디버깅하는 방법은 무엇인가요? 일반적인 전략과 예외의 예제를 공유하십시오.

IDE에서 코드 리팩터링

Tier: GitLab.com 및 Self-managed: 한정 기간 동안, 프리미엄 또는 얼티밋. 2024년 10월 17일에는 GitLab Duo Pro 또는 GitLab Duo Pro 또는 Enterprise로 프리미엄 또는 얼티밋. GitLab Dedicated: GitLab Duo Pro 또는 Enterprise. 오퍼링: GitLab.com, Self-managed, GitLab Dedicated 편집자: Web IDE, VS Code, JetBrains IDE LLM: Anthropic Claude 3.5 Sonnet
  • GitLab.com에서 GitLab 16.7에서 도입된 사항입니다(https://gitlab.com/gitlab-org/gitlab/-/issues/429915).
  • Self-managed 및 GitLab Dedicated에서 GitLab 16.8에서 도입된 사항입니다(https://gitlab.com/gitlab-org/gitlab/-/issues/429915).

GitLab Duo Chat에게 선택한 코드를 리팩터링하도록 요청할 수 있습니다:

  1. IDE에서 코드를 선택합니다.
  2. Duo Chat에서 /refactor를 입력합니다.

고령을 고려해서 추가 지침을 포함할 수도 있습니다. 예를 들어:

  • 특정 코딩 패턴 사용, 예: /ActiveRecord로 리팩터링 또는 /정적 함수를 제공하는 클래스로 리팩터링.
  • 특정 라이브러리 사용, 예: /mysql을 사용하여 리팩터링.
  • 특정 함수/알고리즘 사용, 예: C++에서 /여러 줄을 가진 stringstream으로 리팩터링.
  • 다른 프로그래밍 언어로 리팩터링, 예: TypeScript로 /리팩터링.
  • 성능 개선에 중점을 둠, 예: /성능 향상에 중점을 둔 리팩터링.
  • 잠재적인 취약점에 중점을 둠, 예: /메모리 누수 및 악용을 피하기 위한 리팩터링.

IDE에서 코드 수정하기

Tier: GitLab.com 및 Self-managed: Limited time 동안 Premium 또는 Ultimate. 2024년 10월 17일까지, Premium에서는 GitLab Duo Pro 또는 Ultimate에서는 GitLab Duo Pro 또는 Enterprise가 제공됩니다. GitLab Dedicated: GitLab Duo Pro 또는 Enterprise. Offering: GitLab.com, Self-managed, GitLab Dedicated Editors: Web IDE, VS Code, JetBrains IDEs LLM: Anthropic Claude 3.5 Sonnet

IDE에서 선택한 코드를 수정하도록 GitLab Duo Chat에 요청할 수 있습니다:

  1. IDE에서 코드를 선택합니다.
  2. Duo Chat에서 /fix를 입력합니다.

고려해야 할 추가 지시 사항을 포함할 수 있습니다. 예를 들어:

  • 문법 및 오타에 중점을 두세요. 예: /fix grammar mistakes and typos.
  • 특정 알고리즘 또는 문제 설명에 초점을 맞추세요. 예: /fix duplicate database inserts 또는 /fix race conditions.
  • 직접적으로 보이지 않는 잠재적인 버그에 중점을 두세요. 예: /fix potential bugs.
  • 코드 성능 문제에 중점을 맞추세요. 예: /fix performance problems.
  • 코드가 컴파일되지 않을 때 빌드 수정에 중점을 맞추세요. 예: /fix the build.

IDE에서 테스트 작성하기

Tier: GitLab.com 및 Self-managed: Limited time 동안 Premium 또는 Ultimate. 2024년 10월 17일까지, Premium에서는 GitLab Duo Pro 또는 Ultimate에서는 GitLab Duo Pro 또는 Enterprise가 제공됩니다. GitLab Dedicated: GitLab Duo Pro 또는 Enterprise. Offering: GitLab.com, Self-managed, GitLab Dedicated Editors: Web IDE, VS Code, JetBrains IDEs LLM: Anthropic Claude 3.5 Sonnet

IDE에서 선택한 코드에 대한 테스트를 생성하도록 GitLab Duo Chat에 요청할 수 있습니다:

  1. IDE에서 코드를 선택합니다.
  2. Duo Chat에서 /tests를 입력합니다.

고려해야 할 추가 지시 사항을 포함할 수 있습니다. 예를 들어:

  • 특정 테스트 프레임워크를 사용하세요. 예: /tests using the Boost.test framework (C++) 또는 /tests using Jest (JavaScript).
  • 극단적인 테스트 케이스에 집중하세요. 예: /tests focus on extreme cases, force regression testing.
  • 성능에 집중하세요. 예: /tests focus on performance.
  • 회귀 및 잠재적인 악용에 집중하세요. 예: /tests focus on regressions and potential exploits.

더 많은 정보는 VS Code에서 GitLab Duo Chat 사용을 참조하세요.

CI/CD에 대해 문의하기

Tier: GitLab.com 및 Self-managed: Limited time 동안 Premium 또는 Ultimate. 2024년 10월 17일까지, Premium에서는 GitLab Duo Pro 또는 Ultimate에서는 GitLab Duo Pro 또는 Enterprise가 제공됩니다. GitLab Dedicated: GitLab Duo Pro 또는 Enterprise. Offering: GitLab.com, Self-managed, GitLab Dedicated Editors: GitLab UI, Web IDE, VS Code, JetBrains IDEs LLM: Anthropic Claude 3.5 Sonnet

GitLab Duo Chat에게 CI/CD 구성을 생성하도록 요청할 수 있습니다:

  • Ruby on Rails 애플리케이션을 테스트하고 빌드하기 위한 .gitlab-ci.yml 구성 파일을 생성하세요.
  • Python 애플리케이션을 빌드하고 linting하기 위한 CI/CD 구성을 생성하세요.
  • Rust 코드를 빌드하고 테스트하기 위한 CI/CD 구성을 생성하세요.
  • C++을 위한 CI/CD 구성을 생성하세요. 컴파일러로 gcc를 사용하고, 빌드 도구로 cmake를 사용합니다.
  • VueJS를 위한 CI/CD 구성을 생성하세요. npm을 사용하고, SAST 보안 스캔을 추가하세요.
  • Java를 위해 최적화된 보안 스캔 파이프라인 구성을 생성하세요.

또한, 에러 메시지를 복사하여 특정 작업의 오류에 대해 설명하도록 요청할 수도 있습니다. 메시지 앞에 <language>에서의 컨텍스트에서 이 CI/CD 작업 오류 메시지를 설명해 주세요:를 붙입니다.

  • Go 프로젝트의 컨텍스트에서 이 CI/CD 작업 오류 메시지를 설명해 주세요: build.sh: line 14: go command not found

또는 Root Cause Analysis를 사용하여 실패한 CI/CD 작업을 해결할 수도 있습니다.

실패한 CI/CD 작업에 대한 원인 분석을 통한 문제 해결

Tier: Limited time 동안 Ultimate. 2024년 10월 17일까지, Ultimate에서는 GitLab Duo Enterprise가 제공됩니다. GitLab Dedicated: GitLab Duo Enterprise. Offering: GitLab.com, Self-managed, GitLab Dedicated Editors: GitLab UI LLM: Anthropic Claude 3.5 Sonnet

로그를 분석하여 실패한 CI/CD 작업의 원인을 파악할 수 있도록 GitLab Duo Chat에 요청할 수 있습니다.

참고: 작업 로그의 마지막 100,000개의 문자가 분석됩니다.

전제 조건:

  • CI/CD 작업을 보기 위한 권한이 있어야 합니다.
  • 유료 GitLab Duo Enterprise seat이 있어야 합니다.

실패한 CI/CD 작업을 문제 해결하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 빌드 > 작업을 선택합니다.
  3. 실패한 CI/CD 작업을 선택합니다.
  4. 작업 로그 페이지에서 다음 작업을 수행합니다:

    • 작업 로그 아래에서 문제 해결을 선택합니다.
    • GitLab Duo Chat을 열고 /troubleshoot를 입력합니다.

실패 이유의 분석과 예제 수정이 표시됩니다.

취약점 설명

티어: GitLab.com 및 자체관리: Limited time, Ultimate. 2024년 10월 17일, GitLab Duo Enterprise와 함께 Ultimate. GitLab Dedicated: GitLab Duo Enterprise. 오퍼링: GitLab.com, 자체관리, GitLab Dedicated 편집자: GitLab UI LLM: Anthropie Claude 3 Haiku

SAST 취약점 보고서를 보고 있을 때, GitLab Duo Chat에게 취약점을 설명하도록 요청할 수 있습니다.

자세한 정보는 취약점 설명을 참조하십시오.

대화 히스토리 삭제 또는 재설정

모든 대화를 영구적으로 삭제하고 채팅 창을 지우려면:

  • 텍스트 상자에 /clear를 입력하고 Send를 선택합니다.

이전 대화를 보이게 유지하면서 새 대화를 시작하려면:

  • 텍스트 상자에 /reset을 입력하고 Send를 선택합니다.

두 경우 모두 대화 기록은 새 질문을 할 때 고려되지 않을 것입니다. 삭제하거나 재설정하는 것은 관련없는 대화로 이야기할 때 답변을 개선하는 데 도움이 될 수 있습니다.

지원되는 슬래시 명령

Duo Chat에는 각각이 슬래시( /)로 시작하는 지원되는 명령어 목록이 있습니다. 특정 작업을 빠르게 수행하려면 다음 명령을 사용하십시오.

명령 목적
/clear 모든 대화를 영구적으로 삭제하고 채팅 창을 지웁니다
/reset 이전 대화를 보이게 하고 새 대화를 시작합니다
/tests 테스트 작성
/explain 코드 설명
/vulnerability_explain 현재 취약점 설명
/refactor 코드 리팩터링
/troubleshoot 루트 원인 분석을 통한 CI/CD 작업 문제 해결
/fix 코드 수정
/help Duo Chat 작동 방식에 대해 자세히 알아보기.