튜토리얼: CodeCatalyst 제너레이티브 AI 기능을 사용하여 개발 작업의 속도를 높이세요 - 아마존 CodeCatalyst

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

튜토리얼: CodeCatalyst 제너레이티브 AI 기능을 사용하여 개발 작업의 속도를 높이세요

CodeCatalyst Amazon에 제너레이티브 AI 기능이 활성화된 공간에 프로젝트와 소스 리포지토리가 있는 경우 이러한 기능을 사용하여 소프트웨어 개발 속도를 높일 수 있습니다. 개발자가 수행하는 데 걸리는 시간보다 해야 할 작업이 더 많은 경우가 많습니다. 변경 사항 검토를 위한 풀 리퀘스트를 만들 때 팀원에게 코드 변경 내용을 설명하는 데 시간을 할애하지 않는 경우가 많습니다. 다른 사용자가 변경 내용을 스스로 설명할 수 있을 것이라고 기대하기 때문입니다. 또한 풀 리퀘스트 생성자와 리뷰어는 풀 리퀘스트의 모든 코멘트를 자세히 찾아서 읽을 시간이 없습니다. 특히 풀 리퀘스트에 여러 개의 수정 사항이 있는 경우에는 더욱 그렇습니다. CodeCatalyst 소프트웨어 개발용 Amazon Q Developer Agent와 통합하여 팀 구성원이 작업을 더 빠르게 완료하고 업무의 가장 중요한 부분에 집중하는 데 걸리는 시간을 늘릴 수 있는 제너레이티브 AI 기능을 제공합니다.

Amazon Q Developer는 애플리케이션을 이해, 구축, 확장 및 운영하는 데 도움이 되는 생성형 AI 기반 대화형 도우미입니다. AWS 개발을 가속화하기 위해 Amazon Q를 지원하는 모델을 고품질 AWS 콘텐츠로 보강하여 보다 완전하고 실행 가능하며 참조할 수 있는 답변을 제공합니다. AWS자세한 내용은 Amazon Q 개발자란 무엇입니까? 를 참조하십시오. Amazon Q 개발자 사용 설명서에서 확인할 수 있습니다.

참고

Amazon Bedrock 제공: 자동 악용 탐지 AWS 기능을 구현합니다. 나를 위한 설명 작성, 콘텐츠 요약 생성, 작업 추천, Amazon Q를 사용하여 프로젝트에 기능 생성 또는 추가, Amazon Q Developer Agent의 소프트웨어 개발 기능에 대한 Amazon Q 이슈 할당 기능이 Amazon Bedrock에 구축되어 있기 때문에 사용자는 Amazon Bedrock에 구현된 제어 기능을 최대한 활용하여 안전, 보안 및 인공 지능 (AI) 의 책임 있는 사용을 강화할 수 있습니다.

이 튜토리얼에서는 의 제너레이티브 AI 기능을 사용하여 블루프린트로 프로젝트를 생성하고 기존 프로젝트에 블루프린트를 추가하는 방법을 알아봅니다. CodeCatalyst 또한 풀 리퀘스트를 만들 때 브랜치 간 변경 사항을 요약하는 방법과 풀 리퀘스트에 남긴 댓글을 요약하는 방법을 배우게 됩니다. 코드 변경 또는 개선에 대한 아이디어로 이슈를 생성하여 Amazon Q에 할당하는 방법도 배우게 됩니다. Amazon Q에 할당된 이슈 관련 작업의 일환으로 Amazon Q가 작업을 제안하도록 허용하는 방법과 문제 해결의 일환으로 생성한 작업을 할당하고 처리하는 방법을 배우게 됩니다.

사전 조건

이 자습서의 CodeCatalyst 기능을 사용하려면 먼저 작업을 완료하고 다음 리소스에 액세스할 수 있어야 합니다.

  • 로그인하기 위한 AWS 빌더 ID 또는 싱글 사인온 (SSO) ID가 있어야 합니다. CodeCatalyst

  • 제너레이티브 AI 기능이 활성화된 공간에 있습니다. 자세한 내용은 제너레이티브 AI 기능 관리를 참조하십시오.

  • 해당 스페이스의 프로젝트에서 기여자 또는 프로젝트 관리자 역할을 맡을 수 있습니다.

  • 제너레이티브 AI로 프로젝트를 만들지 않는 한, 기존 프로젝트에는 이를 위한 소스 리포지토리가 하나 이상 구성되어 있습니다. 연결된 리포지토리는 지원되지 않습니다.

  • 제너레이티브 AI로 만든 초기 솔루션으로 이슈를 할당하는 경우 Jira Software 확장 프로그램으로 프로젝트를 구성할 수 없습니다. 이 기능에는 확장 프로그램이 지원되지 않습니다.

자세한 내용은 스페이스 만들기, 에서 문제가 있는 작업을 추적하고 정리하세요. CodeCatalyst , 확장 기능을 사용하여 프로젝트에 기능 추가 CodeCatalyst사용자 역할을 통한 액세스 권한 부여 부분을 참조하세요.

이 튜토리얼은 Python을 사용한 모던 3계층 웹 애플리케이션 블루프린트를 사용하여 만든 프로젝트를 기반으로 합니다. 다른 블루프린트로 만든 프로젝트를 사용하는 경우에도 단계를 따를 수는 있지만 샘플 코드 및 언어와 같은 일부 세부 사항은 달라질 수 있습니다.

프로젝트를 생성하거나 기능을 추가할 때 Amazon Q를 사용하여 청사진을 선택합니다.

프로젝트 개발자는 새 프로젝트를 만들거나 기존 프로젝트에 구성 요소를 추가할 때 제너레이티브 AI 어시스턴트인 Amazon Q와 협업할 수 있습니다. 채팅과 유사한 인터페이스로 Amazon Q와 상호 작용하여 프로젝트에 대한 요구 사항을 Amazon Q에 제공할 수 있습니다. Amazon Q는 요구 사항에 따라 청사진을 제안하고 충족할 수 없는 요구 사항도 설명합니다. 공간에 사용자 지정 청사진이 있는 경우 Amazon Q는 학습하여 해당 청사진도 권장 사항에 포함합니다. 그런 다음 만족하면 Amazon Q의 제안을 진행할 수 있습니다. 그러면 요구 사항에 맞는 코드가 포함된 소스 리포지토리와 같은 필요한 리소스가 생성됩니다. Amazon Q는 또한 청사진으로는 충족할 수 없는 요구 사항에 대한 문제를 생성합니다. 사용 가능한 CodeCatalyst 블루프린트에 대한 자세한 내용은 을 참조하십시오. CodeCatalyst 청사진이 포함된 포괄적인 프로젝트 만들기 Amazon Q를 블루프린트와 함께 사용하는 방법에 대한 자세한 내용은 을 참조하십시오Amazon Q를 사용하여 프로젝트를 생성하거나 블루프린트로 기능을 추가하는 모범 사례.

Amazon Q를 사용하여 프로젝트를 생성하려면
  1. https://codecatalyst.aws/ 에서 CodeCatalyst 콘솔을 엽니다.

  2. CodeCatalyst 콘솔에서 블루프린트를 만들려는 스페이스로 이동합니다.

  3. 스페이스 대시보드에서 Amazon Q로 만들기를 선택합니다.

  4. Amazon Q 프롬프트 텍스트 입력 필드에 빌드하려는 프로젝트에 대한 간략한 설명을 작성하여 지침을 제공합니다. 예제: “I want to create a project in Python that has a presentation layer responsible for how the data is presented, an application layer that contains the core logic and functionality of the application, and a data layer that manages the storage and retrieval of the data.”

    (선택 사항) Try examples에서 블루프린트를 선택하여 미리 작성된 프롬프트를 사용할 수 있습니다. 예를 들어 React 앱을 선택하면 다음과 같은 프롬프트가 제공됩니다. “I want to create a project in Python that has a presentation layer responsible for how the data is presented, an application layer that contains the core logic and functionality of the application, and a data layer that manages the storage and retrieval of the data. I also want to add authentication and authorization mechanisms for security and allowable actions.”

  5. [Send] 를 선택하여 Amazon Q에 지침을 제출하십시오. 제너레이티브 AI 어시스턴트는 제안 사항을 제공하고 청사진으로는 충족할 수 없는 요구 사항을 설명합니다. 예를 들어 Amazon Q는 기준에 따라 다음을 제안할 수 있습니다.

    I recommend using the Modern three-tier web application blueprint based on your requirements. Blueprints are dynamic and can always be updated and edited later. Modern three-tier web application By Amazon Web Services This blueprint creates a Mythical Mysfits 3-tier web application with a modular presentation, application, and data layers. The application leverages containers, infrastructure as code (IaC), continuous integration and continuous delivery (CI/CD), and serverless code functions. Version: 0.1.163 View details The following requirements could not be met so I will create issues for you. • Add authentication and authorization mechanisms for security and allowable actions.
  6. (선택 사항) 제안된 청사진의 세부 정보를 자세히 보려면 세부 정보 보기를 선택합니다.

  7. 다음 중 하나를 수행합니다.

    1. 제안이 만족스러우면 예, 이 청사진을 사용하세요.

    2. 프롬프트를 수정하려면 프롬프트 편집을 선택합니다.

    3. 프롬프트를 완전히 지우려면 [Start over] 를 선택합니다.

  8. 다음 중 하나를 수행합니다.

    1. 제안된 블루프린트를 구성하려면 구성을 선택하세요. 나중에 블루프린트를 구성할 수도 있습니다.

    2. 현재 블루프린트 구성을 수정하지 않으려면 스킵을 선택하세요.

  9. 블루프린트를 구성하기로 선택한 경우, 프로젝트 리소스를 수정한 후 Continue를 선택하세요.

  10. 메시지가 표시되면 프로젝트에 할당하려는 이름과 관련 리소스 이름을 입력합니다. 이름은 스페이스 내에서 고유해야 합니다.

  11. Create project (프로젝트 만들기) 를 선택하여 블루프린트로 프로젝트를 생성합니다. Amazon Q는 블루프린트를 사용하여 리소스를 생성합니다. 예를 들어 단일 페이지 애플리케이션 블루프린트로 프로젝트를 생성하면 CI/CD용 관련 코드 및 워크플로를 위한 소스 리포지토리가 생성됩니다.

  12. (선택 사항) 기본적으로 Amazon Q는 청사진으로는 충족되지 않는 요구 사항에 대한 문제도 생성합니다. 이슈를 생성하지 않으려는 항목을 선택할 수 있습니다. Amazon Q에서 이슈를 생성하도록 선택한 후 Amazon Q에도 이슈를 할당할 수 있습니다. 지정된 소스 리포지토리의 컨텍스트에서 문제를 분석하여 관련 소스 파일 및 코드의 요약을 제공합니다. 자세한 내용은 문제 찾기 및 보기, 이슈를 생성하여 Amazon Q에 할당합니다., Amazon Q에 할당된 이슈를 생성하고 처리하는 모범 사례 단원을 참조하세요.

Amazon Q로 프로젝트를 생성한 후에는 요구 사항에 따라 CodeCatalyst 청사진을 제안하므로 Amazon Q를 사용하여 새 구성 요소를 추가할 수도 있습니다.

Amazon Q를 사용하여 청사진을 추가하려면
  1. https://codecatalyst.aws/ 에서 CodeCatalyst 콘솔을 엽니다.

  2. CodeCatalyst 콘솔에서 블루프린트를 추가하려는 프로젝트로 이동합니다.

  3. Amazon Q로 추가를 선택합니다.

  4. Amazon Q 프롬프트 텍스트 입력 필드에 빌드하려는 프로젝트에 대한 간략한 설명을 작성하여 지침을 제공합니다. 예제: “I want to create a project in Python that has a presentation layer responsible for how the data is presented, an application layer that contains the core logic and functionality of the application, and a data layer that manages the storage and retrieval of the data.”

    (선택 사항) Try examples에서 블루프린트를 선택하여 미리 작성된 프롬프트를 사용할 수 있습니다. 예를 들어 React 앱을 선택하면 다음과 같은 프롬프트가 제공됩니다. “I want to create a project in Python that has a presentation layer responsible for how the data is presented, an application layer that contains the core logic and functionality of the application, and a data layer that manages the storage and retrieval of the data. I also want to add authentication and authorization mechanisms for security and allowable actions.”

  5. [Send] 를 선택하여 Amazon Q에 지침을 제출하십시오. 제너레이티브 AI 어시스턴트는 제안 사항을 제공하고 청사진으로는 충족할 수 없는 요구 사항을 설명합니다. 예를 들어 Amazon Q는 기준에 따라 다음을 제안할 수 있습니다.

    I recommend using the Single-page application blueprint based on your requirements. Blueprints are dynamic and can always be updated and edited later. Single-page application By Amazon Web Services This blueprint creates a SPA (single-page application) using React, Vue, or Angular frameworks and deploys to AWS Amplify Hosting. Version: 0.2.15 View details The following requirements could not be met so I will create issues for you. • The application should have reusable UI components • The application should support for client-side routing • The application may require server-side rendering for improved performance and SEO
  6. (선택 사항) 제안된 청사진의 세부 정보를 자세히 보려면 세부 정보 보기를 선택합니다.

  7. 다음 중 하나를 수행합니다.

    1. 제안이 만족스러우면 예, 이 청사진을 사용하세요.

    2. 프롬프트를 수정하려면 프롬프트 편집을 선택합니다.

    3. 프롬프트를 완전히 지우려면 [Start over] 를 선택합니다.

  8. 다음 중 하나를 수행합니다.

    1. 제안된 블루프린트를 구성하려면 구성을 선택하세요. 나중에 블루프린트를 구성할 수도 있습니다.

    2. 현재 블루프린트 구성을 수정하지 않으려면 스킵을 선택하세요.

  9. 블루프린트를 구성하기로 선택한 경우, 프로젝트 리소스를 수정한 후 Continue를 선택하세요.

  10. 프로젝트에 추가를 선택하여 블루프린트가 있는 프로젝트에 리소스를 추가합니다. Amazon Q는 블루프린트를 사용하여 리소스를 생성합니다. 예를 들어 단일 페이지 애플리케이션 블루프린트로 프로젝트에 추가하면 CI/CD용 관련 코드 및 워크플로를 위한 소스 리포지토리가 생성됩니다.

  11. (선택 사항) 기본적으로 Amazon Q는 청사진으로는 충족되지 않는 요구 사항에 대한 문제도 생성합니다. 이슈를 생성하지 않으려는 항목을 선택할 수 있습니다. Amazon Q에서 이슈를 생성하도록 선택한 후 Amazon Q에도 이슈를 할당할 수 있습니다. 지정된 소스 리포지토리의 컨텍스트에서 문제를 분석하여 관련 소스 파일 및 코드의 요약을 제공합니다. 자세한 내용은 이슈를 생성하여 Amazon Q에 할당합니다.Amazon Q에 할당된 이슈를 생성하고 처리하는 모범 사례 단원을 참조하세요.

풀 리퀘스트를 생성할 때 브랜치 간 코드 변경 사항을 요약한 내용을 작성하세요.

풀 리퀘스트는 여러분과 다른 프로젝트 구성원이 한 브랜치에서 다른 브랜치로의 코드 변경 사항을 검토하고, 코멘트를 달고, 병합할 수 있는 주요 방법입니다. 풀 리퀘스트를 사용하면 코드 변경 사항을 공동으로 검토하여 사소한 변경이나 수정, 주요 기능 추가 또는 출시된 소프트웨어의 새 버전을 검토할 수 있습니다. 풀 리퀘스트 설명의 일부로 코드 변경과 변경의 의도를 요약하면 코드를 검토하는 다른 사용자에게 도움이 될 뿐만 아니라 시간 경과에 따른 코드 변경 내역을 이해하는 데도 도움이 됩니다. 그러나 개발자는 검토자가 검토 중인 내용이나 코드 변경의 의도가 무엇인지 이해할 수 있도록 충분한 세부 정보로 변경 내용을 설명하기보다는 코드에 의존하여 스스로 설명하거나 모호한 세부 정보를 제공하는 경우가 많습니다.

풀 요청을 생성할 때 나를 위한 설명 쓰기 기능을 사용하여 Amazon Q에서 풀 요청에 포함된 변경 사항에 대한 설명을 생성하도록 할 수 있습니다. 이 옵션을 선택하면 Amazon Q는 코드 변경 사항이 포함된 소스 브랜치와 이러한 변경 사항을 병합하려는 대상 브랜치 간의 차이를 분석합니다. 그런 다음 이러한 변경 사항에 대한 요약과 해당 변경의 의도와 영향에 대한 최상의 해석을 생성합니다.

참고

이 기능은 Git 하위 모듈에서는 작동하지 않습니다. pull 요청의 일부인 Git 하위 모듈의 변경 사항은 요약되지 않습니다.

연결된 리포지토리의 pull 요청에는 이 기능을 사용할 수 없습니다.

어떤 풀 리퀘스트를 생성하든 이 기능을 사용해 볼 수 있지만, 이 자습서에서는 Python 기반 Modern 3계층 웹 애플리케이션 블루프린트에서 만든 프로젝트에 포함된 코드를 간단히 변경하여 테스트해 보겠습니다.

작은 정보

다른 블루프린트나 자체 코드로 만든 프로젝트를 사용하는 경우에도 이 자습서를 따를 수 있지만 이 자습서의 예제가 프로젝트의 코드와 일치하지 않을 수 있습니다. 아래 제안된 예제 대신 브랜치에서 프로젝트 코드를 간단히 변경한 다음 다음 단계와 같이 풀 요청을 생성하여 기능을 테스트해 보세요.

먼저 소스 리포지토리에 브랜치를 생성합니다. 그런 다음 콘솔의 텍스트 편집기를 사용하여 해당 브랜치에 있는 파일의 코드를 빠르게 변경할 수 있습니다. 그런 다음 풀 리퀘스트를 생성하고 나를 위한 설명 쓰기 기능을 사용하여 변경한 내용을 요약해 보겠습니다.

브랜치를 만들려면 (콘솔)
  1. CodeCatalyst 콘솔에서 소스 리포지토리가 있는 프로젝트로 이동합니다.

  2. 프로젝트의 소스 리포지토리 목록에서 리포지토리 이름을 선택합니다. 또는 탐색 창에서 코드를 선택한 다음 소스 리포지토리를 선택합니다.

  3. 브랜치를 만들려는 리포지토리를 선택합니다.

  4. 리포지토리의 개요 페이지에서 추가를 선택한 다음 브랜치 생성을 선택합니다.

  5. 브랜치 이름을 입력합니다.

  6. 브랜치를 만들 브랜치를 선택한 다음 [Create] 를 선택합니다.

브랜치가 생성되면 간단히 변경하여 해당 브랜치의 파일을 편집하세요. 이 예시에서는 test_endpoint.py 파일을 편집하여 테스트 재시도 횟수를 5번에서 3 5번으로 변경합니다.

작은 정보

또한 개발 환경을 생성하거나 사용하여 이 코드를 변경할 수도 있습니다. 자세한 내용은 Dev Environment 생성 단원을 참조하십시오.

콘솔에서 test_endpoint.py 파일을 편집하려면
  1. mysfits소스 리포지토리의 개요 페이지에서 브랜치 드롭다운을 선택하고 이전 절차에서 만든 브랜치를 선택합니다.

  2. 파일에서 편집하려는 파일을 탐색합니다. 예를 들어 test_endpoint.py 파일을 편집하려면 테스트를 확장하고 integ를 확장한 다음 선택하십시오test_endpoint.py.

  3. 편집을 선택합니다.

  4. 7행에서 모든 테스트를 재시도할 횟수를 다음과 같이 변경합니다.

    def test_list_all(retry=3):

    변경 후:

    def test_list_all(retry=5):
  5. Commit을 선택하고 변경 내용을 브랜치에 커밋합니다.

이제 브랜치에 변경 사항이 적용되었으니 풀 리퀘스트를 생성할 수 있습니다.

변경 내용을 요약하여 풀 리퀘스트를 생성하세요.
  1. 리포지토리의 개요 페이지에서 추가를 선택한 다음 풀 리퀘스트 생성을 선택합니다.

  2. 대상 브랜치에서 코드를 검토한 후 병합할 브랜치를 선택합니다.

    작은 정보

    이 기능의 가장 간단한 데모를 보려면 이전 절차에서 브랜치를 만든 브랜치를 선택하십시오. 예를 들어 리포지토리의 기본 브랜치에서 브랜치를 만든 경우 해당 브랜치를 pull 요청의 대상 브랜치로 선택하십시오.

  3. 소스 브랜치에서 방금 test_endpoint.py 파일에 커밋한 변경 내용이 들어 있는 브랜치를 선택합니다.

  4. 풀 리퀘스트 제목에 다른 사용자가 검토해야 할 사항과 그 이유를 이해하는 데 도움이 되는 제목을 입력합니다.

  5. 풀 리퀘스트 설명에서 나를 위한 설명 작성을 선택하면 Amazon Q에서 풀 리퀘스트에 포함된 변경 사항에 대한 설명을 생성하도록 할 수 있습니다.

  6. 변경 사항 요약이 표시됩니다. 제안된 텍스트를 검토한 다음 수락을 선택하고 설명에 추가를 선택합니다.

  7. 코드에서 변경한 내용을 더 잘 반영하도록 요약을 수정할 수도 있습니다. 이 풀 리퀘스트에 리뷰어를 추가하거나 이슈를 연결하도록 선택할 수도 있습니다. 원하는 추가 변경을 마쳤으면 [Create] 를 선택합니다.

풀 리퀘스트에서 코드 변경에 남긴 코멘트의 요약을 생성하세요.

사용자는 풀 리퀘스트를 검토할 때 해당 풀 리퀘스트의 변경 사항에 대해 여러 개의 코멘트를 남기는 경우가 많습니다. 많은 리뷰어들의 의견이 많으면 피드백에서 공통된 주제를 고르기가 어려울 수 있으며, 모든 수정 버전에서 모든 댓글을 검토했는지 확인하기 어려울 수 있습니다. 코멘트 요약 생성 기능을 사용하면 Amazon Q가 풀 리퀘스트의 코드 변경에 대한 모든 코멘트를 분석하고 해당 코멘트에 대한 요약을 생성하도록 할 수 있습니다.

참고

코멘트 요약은 일시적입니다. 풀 리퀘스트를 새로 고치면 요약이 사라집니다. 콘텐츠 요약에는 전체 풀 리퀘스트에 대한 코멘트가 포함되지 않고 풀 리퀘스트 수정 시 코드의 차이에 대해 남긴 코멘트만 포함됩니다.

이 기능은 Git 하위 모듈의 코드 변경에 대한 주석에는 작동하지 않습니다.

연결된 리포지토리의 pull 요청에는 이 기능을 사용할 수 없습니다.

풀 리퀘스트에서 코멘트 요약을 만들려면
  1. 이전 절차에서 생성한 풀 요청으로 이동합니다.

    작은 정보

    원하는 경우 프로젝트에서 모든 공개 풀 리퀘스트를 사용할 수 있습니다. 내비게이션 바에서 코드를 선택하고 풀 리퀘스트를 선택한 다음, 열려 있는 풀 리퀘스트를 선택합니다.

  2. 풀 리퀘스트에 아직 댓글이 없는 경우 변경사항에서 풀 리퀘스트에 코멘트를 몇 개 추가하세요.

  3. 개요에서 댓글 요약 만들기를 선택합니다. 완료되면 댓글 요약 섹션이 확장됩니다.

  4. 풀 리퀘스트 수정 시 코드 변경에 대해 남긴 주석의 요약을 검토하고 이를 풀 리퀘스트의 주석과 비교하십시오.

이슈를 생성하여 Amazon Q에 할당합니다.

개발팀은 작업을 추적하고 관리하기 위해 문제를 생성하지만, 누가 문제를 해결해야 하는지 명확하지 않거나, 코드 베이스의 특정 부분에 대한 조사가 필요한 문제, 또는 기타 긴급한 작업을 먼저 처리해야 하기 때문에 문제가 남아 있는 경우가 있습니다. CodeCatalyst 소프트웨어 개발을 위한 Amazon Q 개발자 에이전트와의 통합이 포함됩니다. 제목과 설명을 기반으로 문제를 분석할 수 있는 Amazon Q라는 제너레이티브 AI 어시스턴트에 이슈를 할당할 수 있습니다. Amazon Q에 문제를 할당하면 평가할 수 있는 초안 솔루션을 만들려고 시도합니다. 이를 통해 사용자와 팀은 주의가 필요한 문제에 집중하고 작업을 최적화할 수 있으며, Amazon Q는 즉시 해결할 리소스가 없는 문제에 대한 솔루션을 개발합니다.

작은 정보

Amazon Q는 간단한 문제와 간단한 문제에서 가장 잘 작동합니다. 최상의 결과를 얻으려면 평이한 언어를 사용하여 수행하려는 작업을 명확하게 설명하십시오.

Amazon Q에 문제를 CodeCatalyst 할당하면 Amazon Q에서 문제를 해결하는 방법을 확인할 때까지 문제를 차단된 것으로 표시합니다. 계속하려면 먼저 다음 세 가지 질문에 답해야 합니다.

  • 모든 단계를 확인하고 싶은지 아니면 피드백 없이 진행하기를 원하는지 여부. 각 단계를 확인하기로 선택한 경우 Amazon Q에서 생성한 접근 방식에 대한 피드백을 제공하여 필요한 경우 접근 방식을 반복할 수 있도록 회신할 수 있습니다. 이 옵션을 선택하면 Amazon Q에서 생성한 모든 풀 리퀘스트에 대해 사용자가 남긴 피드백을 검토할 수도 있습니다. 각 단계를 확인하지 않도록 선택하면 Amazon Q가 작업을 더 빨리 완료할 수 있지만 문제나 생성한 풀 요청에서 제공하는 피드백은 검토하지 않습니다.

  • 작업의 일환으로 워크플로 파일을 업데이트하도록 허용할지 여부. 프로젝트에 풀 리퀘스트 이벤트에서 실행을 시작하도록 구성된 워크플로가 있을 수 있습니다. 그렇다면 Amazon Q에서 워크플로 생성 또는 업데이트를 포함하여 생성하는 모든 pull 요청이 pull 요청에 포함된 워크플로의 실행을 시작할 YAML 수 있습니다. 가장 좋은 방법은 생성한 pull 요청을 검토 및 승인하기 전에 프로젝트에 이러한 워크플로를 자동으로 실행하는 워크플로가 없다는 확신이 들지 않는 한 Amazon Q가 워크플로 파일에서 작업하도록 허용하지 않는 것입니다.

  • 이슈 관련 작업을 Amazon Q 자체를 포함하여 사용자에게 개별적으로 할당할 수 있는 더 작은 단위로 세분화하는 작업을 생성하도록 제안할지 여부 Amazon Q에서 작업을 제안하고 생성하도록 허용하면 여러 사람이 문제의 개별 부분에 대해 작업할 수 있으므로 복잡한 문제에 대한 개발을 가속화할 수 있습니다. 또한 각 작업을 완료하는 데 필요한 작업이 해당 문제보다 간단하기 때문에 전체 작업을 이해하는 데 따르는 복잡성을 줄이는 데도 도움이 될 수 있습니다.

  • 어떤 소스 리포지토리에서 작업하길 원하시나요? 프로젝트에 소스 리포지토리가 여러 개 있더라도 Amazon Q는 하나의 소스 리포지토리에 있는 코드에서만 작업할 수 있습니다. 연결된 리포지토리는 지원되지 않습니다.

선택을 하고 확인하면 Amazon Q는 해당 문제를 진행 중 상태로 전환하고, 동시에 문제 제목과 설명, 지정된 저장소의 코드를 기반으로 요청이 무엇인지 확인합니다. 그러면 작업 상태에 대한 업데이트를 제공하는 고정된 주석이 생성됩니다. Amazon Q는 데이터를 검토한 후 솔루션에 대한 잠재적 접근 방식을 공식화합니다. Amazon Q는 고정된 코멘트를 업데이트하고 모든 단계에서 문제에 대한 진행 상황을 설명하여 조치를 기록합니다. 고정된 댓글 및 답글과 달리 작업을 시간순으로 엄격하게 기록하지는 않습니다. 대신 고정된 댓글의 최상위 레벨에 작업과 관련된 가장 관련성이 높은 정보를 배치합니다. 해당 접근 방식과 저장소에 이미 있는 코드에 대한 분석을 기반으로 코드를 만들려고 시도합니다. 잠재적 솔루션을 성공적으로 생성하면 브랜치를 만들고 해당 브랜치에 코드를 커밋합니다. 그런 다음 해당 브랜치를 기본 브랜치와 병합하는 풀 리퀘스트를 생성합니다. Amazon Q가 작업을 완료하면 문제를 검토 중으로 옮겨 사용자와 팀이 평가할 수 있는 코드가 준비되었음을 알 수 있습니다.

참고

이 기능은 미국 서부 (오레곤) 지역의 Issues를 통해서만 사용할 수 있습니다. Jira Software 확장 프로그램과 함께 Jira를 사용하도록 프로젝트를 구성한 경우에는 사용할 수 없습니다. 또한 보드 레이아웃을 사용자 지정한 경우 문제가 상태를 변경하지 않을 수 있습니다. 최상의 결과를 얻으려면 표준 보드 레이아웃이 있는 프로젝트에만 이 기능을 사용하십시오.

이 기능은 Git 하위 모듈에서는 작동하지 않습니다. 리포지토리에 포함된 Git 하위 모듈은 변경할 수 없습니다.

Amazon Q에 이슈를 할당한 후에는 이슈의 제목 또는 설명을 변경하거나 다른 사람에게 할당할 수 없습니다. 이슈에서 Amazon Q 할당을 취소하면 현재 단계가 완료되고 작업이 중지됩니다. 일단 할당이 취소되면 작업을 재개하거나 이슈에 재할당할 수 없습니다.

사용자가 작업 생성을 허용하도록 선택하면 Amazon Q에 문제를 할당하면 자동으로 검토 중 열로 이동될 수 있습니다. 하지만 검토 중인 문제에도 여전히 진행 중 상태와 같은 다른 상태에 있는 작업이 있을 수 있습니다.

자습서의 이 부분에서는 모던 3계층 웹 애플리케이션 블루프린트로 만든 프로젝트에 포함된 코드의 잠재적 기능을 기반으로 세 개의 이슈를 만들어 보겠습니다. 하나는 새로운 mysfit creature를 만들기 위한 것이고, 다른 하나는 정렬 기능을 추가하기 위한 것이고, 다른 하나는 이름이 지정된 브랜치를 포함하도록 워크플로를 업데이트하는 것입니다. test

참고

코드가 다른 프로젝트에서 작업하는 경우 해당 코드베이스와 관련된 제목과 설명으로 이슈를 만들어 보세요.

문제를 만들고 평가할 수 있는 솔루션을 생성하려면
  1. 탐색 창에서 이슈를 선택하고 보드 뷰에 있는지 확인합니다.

  2. 이슈 만들기를 선택합니다.

  3. 수행하려는 작업을 평이한 언어로 설명하는 제목을 이슈에 붙이세요. 예를 들어, 이 문제의 경우 제목을 입력합니다Create another mysfit named Quokkapus. 설명에 다음 세부 정보를 제공하십시오.

    Expand the table of mysfits to 13, and give the new mysfit the following characteristics: Name: Quokkapus Species: Quokka-Octopus hybrid Good/Evil: Good Lawful/Chaotic: Chaotic Age: 216 Description: Australia is full of amazing marsupials, but there's nothing there quite like the Quokkapus. She's always got a friendly smile on her face, especially when she's using her eight limbs to wrap you up in a great big hug. She exists on a diet of code bugs and caffeine. If you've got some gnarly code that needsa assistance, adopt Quokkapus and put her to work - she'll love it! Just make sure you leave enough room for her to grow, and keep that coffee coming.
  4. (선택 사항) 문제에 대한 mysfit의 미리보기 이미지 및 프로필 사진으로 사용할 이미지를 첨부합니다. 이렇게 하려면 사용하려는 이미지와 그 이유에 대한 세부 정보를 포함하도록 설명을 업데이트하세요. 예를 들어 설명에 다음을 추가할 수 있습니다. “mysfit을 사용하려면 웹 사이트에 이미지 파일을 배포해야 합니다. 이번 호에 첨부된 이러한 이미지를 작업의 일환으로 소스 리포지토리에 추가하고 이미지를 웹 사이트에 배포하십시오.”

    참고

    이 자습서에서 상호 작용하는 동안 첨부된 이미지가 웹 사이트에 배포될 수도 있고 그렇지 않을 수도 있습니다. 웹 사이트에 이미지를 직접 추가한 다음 Amazon Q에서 pull 요청을 생성한 후 사용하려는 이미지를 가리키도록 코드를 업데이트하도록 댓글을 남길 수 있습니다.

    다음 단계로 진행하기 전에 설명을 검토하고 필요할 수 있는 모든 세부 정보가 포함되어 있는지 확인하십시오.

  5. 양수인에서 Amazon Q에 할당을 선택합니다.

  6. 소스 리포지토리에서 프로젝트 코드가 들어 있는 소스 리포지토리를 선택합니다.

  7. Required Amazon Q를 각 단계 후에 중지하고 필요한 경우 작업 선택기의 검토를 활성 상태로 기다립니다.

    참고

    모든 단계에서 Amazon Q가 중지되도록 하는 옵션을 선택하면 문제 또는 생성된 작업에 대해 의견을 제시하여 Amazon Q에서 사용자의 의견에 따라 접근 방식을 최대 3회까지 변경하도록 할 수 있습니다. 작업을 검토할 수 있도록 모든 단계에서 Amazon Q가 중지되지 않도록 하는 옵션을 선택하면 Amazon Q가 피드백을 기다리지 않기 때문에 작업이 더 빨리 진행될 수 있지만 댓글을 남긴다고 해서 Amazon Q가 취하는 방향에 영향을 미칠 수는 없습니다. Amazon Q는 풀 리퀘스트에 남긴 댓글에도 응답하지 않습니다. 해당 옵션을 선택하면 Amazon Q는 해당 요청에 응답하지 않습니다.

  8. Amazon Q에서 워크플로 파일을 수정하도록 허용 선택기를 비활성 상태로 둡니다.

  9. Allow Amazon Q를 슬라이드하여 작업 선택기 생성을 활성 상태로 제안하십시오.

  10. 이슈 생성을 선택합니다. 보기가 이슈 게시판으로 바뀝니다.

  11. 이슈 생성을 선택하여 이번에는 제목이 있는 이슈를 하나 더 생성합니다Change the get_all_mysfits() API to return mysfits sorted by the Age attribute. 이 이슈를 Amazon Q에 할당하고 이슈를 생성하십시오.

  12. 이슈 생성을 선택하여 다른 이슈를 생성합니다. 이번에는 제목이 있는 Update the OnPullRequest workflow to include a branch named test in its triggers 이슈입니다. 필요에 따라 설명에 있는 워크플로에 연결할 수 있습니다. 이 문제를 Amazon Q에 할당하되, 이번에는 Amazon Q에서 워크플로 파일을 수정할 수 있도록 허용 선택기가 활성 상태로 설정되어 있는지 확인하십시오. 이슈를 생성하여 이슈 게시판으로 돌아가십시오.

    작은 정보

    at 기호 (@) 를 입력하고 파일 이름을 입력하여 워크플로 파일을 비롯한 파일을 검색할 수 있습니다.

이슈를 생성하고 할당하면 이슈가 진행 중으로 이동합니다. Amazon Q는 고정 코멘트에 문제 내 진행 상황을 추적하는 코멘트를 추가합니다. 솔루션에 대한 접근 방식을 정의할 수 있는 경우 코드 베이스에 대한 분석을 포함하는 배경 섹션과 솔루션을 생성하기 위해 제안된 접근 방식을 자세히 설명하는 접근 방식 섹션으로 문제 설명을 업데이트합니다. Amazon Q는 문제에 설명된 문제에 대한 해결책을 찾는 데 성공하면 브랜치를 생성하고 제안된 솔루션을 구현하는 코드를 해당 브랜치에 변경합니다. 제안된 코드가 Amazon Q에서 알고 있는 오픈 소스 코드와 유사한 점을 포함하는 경우 사용자가 검토할 수 있도록 해당 코드에 대한 링크가 포함된 파일을 제공합니다. 코드가 준비되면 제안된 코드 변경 사항을 검토할 수 있도록 풀 요청을 생성하고 해당 풀 리퀘스트의 링크를 이슈에 추가한 다음 이슈를 In Review로 이동합니다.

중요

풀 리퀘스트를 병합하기 전에 항상 풀 리퀘스트의 코드 변경 사항을 검토해야 합니다. Amazon Q에서 변경한 코드는 다른 코드 변경과 마찬가지로 병합된 코드를 제대로 검토하지 않고 병합 시 오류가 있는 경우 코드 베이스와 인프라 코드에 부정적인 영향을 미칠 수 있습니다.

Amazon Q에서 변경한 사항이 포함된 문제 및 연결된 풀 요청을 검토하려면
  1. 이슈에서 Amazon Q에 할당된 진행 중인 이슈를 선택합니다. 의견을 검토하여 Amazon Q의 진행 상황을 모니터링하십시오. 있는 경우 배경을 검토하고 문제 설명에 접근 방법을 기록하십시오. Amazon Q에서 작업을 제안하도록 허용하기로 선택한 경우 제안된 작업을 검토하고 필요한 조치를 취하십시오. 예를 들어, Amazon Q에서 작업을 제안했는데 주문을 변경하거나 특정 사용자에게 작업을 할당하려면 작업 변경, 추가 또는 재정렬을 선택하고 필요한 업데이트를 수행하십시오. 이슈 보기를 마쳤으면 X를 선택하여 이슈 창을 닫습니다.

    작은 정보

    작업 진행 상황을 보려면 이슈의 작업 목록에서 작업을 선택하세요. 작업은 보드에 별도의 항목으로 표시되지 않으며 이슈를 통해서만 접근할 수 있습니다. 작업이 Amazon Q에 할당된 경우 작업을 열어 수행하려는 작업을 승인해야 합니다. 또한 연결된 풀 리퀘스트는 이슈에서 링크로 표시되지 않고 작업에만 표시되므로 작업을 열어야 합니다. 작업에서 이슈로 돌아가려면 이슈로 연결되는 링크를 선택하세요.

  2. 이제 검토 중인 Amazon Q에 할당된 이슈를 선택하십시오. 배경을 검토하고 문제의 설명에 접근 방식이 기록되어 있습니다. 의견을 검토하여 해당 의견이 수행한 조치를 이해하십시오. 진행 상황, 취해야 할 조치, 의견 등 이 문제와 관련된 작업을 위해 생성된 모든 작업을 검토하세요. 풀 리퀘스트에서 오픈 라벨 옆에 있는 풀 리퀘스트 링크를 선택하여 코드를 검토하세요.

    작은 정보

    태스크에 대해 생성된 풀 리퀘스트는 태스크 뷰에서 연결된 풀 리퀘스트로만 나타납니다. 해당 문제에 대한 연결된 풀 리퀘스트로는 표시되지 않습니다.

  3. 풀 리퀘스트에서 코드 변경사항을 검토하세요. 자세한 내용은 풀 리퀘스트 검토 단원을 참조하십시오. Amazon Q에서 제안된 코드를 변경하도록 하려면 풀 리퀘스트에 의견을 남기십시오. 최상의 결과를 얻으려면 Amazon Q에 댓글을 남길 때는 구체적으로 작성하세요.

    예를 들어, 생성된 pull 요청을 검토할 때 Create another mysfit named Quokkapus 설명에 오타가 있는 것을 확인할 수 있습니다. Amazon Q에 “" needs"와 “a” 사이에 공백을 추가하여 “needsa”의 오타를 수정하려면 설명을 변경하십시오.” 라는 댓글을 남길 수 있습니다. 또는 설명을 업데이트하고 설명이 포함되도록 수정된 전체 설명을 제공하라는 설명을 Amazon Q에 남길 수도 있습니다.

    웹사이트에 새 mysfit 이미지를 업로드한 경우 Amazon Q에 댓글을 남기면 이미지에 대한 포인터와 새 mysfit에 사용할 썸네일로 mysfit을 업데이트할 수 있습니다.

    참고

    Amazon Q는 개별 의견에 응답하지 않습니다. 문제를 생성할 때 승인을 위해 모든 단계 후에 중지하는 기본 옵션을 선택한 경우에만 Amazon Q에서 댓글에 남긴 피드백을 풀 리퀘스트에 통합합니다.

  4. (선택 사항) 귀하와 다른 프로젝트 사용자가 코드 변경을 원하는 모든 코멘트를 남긴 후, Create revision을 선택하여 Amazon Q가 코멘트에 요청한 변경 내용을 포함하는 풀 리퀘스트의 개정판을 생성하도록 합니다. Amazon Q는 변경 내용이 아닌 개요에서 수정 버전 생성 진행 상황을 보고합니다. 수정 버전 생성에 대한 Amazon Q의 최신 업데이트를 보려면 브라우저를 새로 고침해야 합니다.

    참고

    이슈를 생성한 사용자만 풀 리퀘스트의 개정판을 생성할 수 있습니다. 풀 리퀘스트의 수정은 한 번만 요청할 수 있습니다. 수정본 만들기를 선택하기 전에 댓글과 관련된 모든 문제를 해결했고 댓글의 내용이 만족스러운지 확인하십시오.

  5. 이 예제 프로젝트의 각 풀 리퀘스트에 대해 워크플로가 실행됩니다. 풀 요청을 병합하기 전에 워크플로가 성공적으로 실행되었는지 확인하세요. 또한 코드를 병합하기 전에 테스트할 추가 워크플로와 환경을 만들 수도 있습니다. 자세한 내용은 워크플로우 시작하기 단원을 참조하십시오.

  6. 풀 리퀘스트의 최신 버전에 만족하면 Merge를 선택합니다.

이슈를 생성하고 Amazon Q에서 해당 이슈에 대한 작업을 추천하도록 하세요.

때때로 이슈에는 복잡하거나 긴 양의 작업이 포함될 수 있습니다. CodeCatalyst 소프트웨어 개발을 위한 Amazon Q 개발자 에이전트와의 통합이 포함됩니다. Amazon Q에 제목과 설명에 따라 문제를 분석하도록 요청하고 작업을 논리적으로 분류하여 개별 작업으로 나누도록 권장할 수 있습니다. 추천 작업 목록을 만들려고 시도한 다음 검토, 수정 및 생성 여부를 선택할 수 있습니다. 이렇게 하면 여러분과 팀이 보다 관리하기 쉬운 방법으로 작업의 개별 부분을 사용자에게 배정할 수 있어 더 빨리 완료할 수 있습니다.

이슈에 대한 권장 작업 목록을 만들고 검토하기
  1. 탐색 창에서 이슈를 선택하고 보드 뷰에 있는지 확인합니다.

  2. 이슈 만들기를 선택합니다.

  3. 수행하려는 작업을 평이한 언어로 설명하는 제목을 이슈에 붙이세요. 예를 들어, 이 문제의 경우 제목을 입력합니다Change the get_all_mysfits() API to return mysfits sorted by the Good/Evil attribute. 설명에 다음 세부 정보를 제공하십시오.

    Update the API to allow sorting of mysfits by whether they are Good, Neutral, or Evil. Add a button on the website that allows users to quickly choose this sort and to exclude alignments that they don't want to see.
  4. 설명을 검토하고 다음 단계로 진행하기 전에 필요할 수 있는 모든 세부 정보가 포함되어 있는지 확인하십시오.

  5. 담당자에서 문제를 자신에게 할당하도록 선택합니다.

  6. 이슈 생성을 선택합니다. 보기가 이슈 게시판으로 바뀝니다.

  7. 방금 생성한 이슈를 선택하여 엽니다. 추천 작업을 선택합니다.

  8. 문제의 코드가 들어 있는 소스 리포지토리를 선택합니다. 작업 추천 시작을 선택합니다.

대화 상자가 닫히고 Amazon Q가 문제의 복잡성 분석을 시작합니다. 문제가 복잡하면 작업을 별도의 순차적 작업으로 나누라는 제안이 나옵니다. 목록이 준비되면 권장 작업 보기를 선택합니다. 다른 작업을 추가하고, 권장 작업을 수정하고, 작업을 재정렬할 수 있습니다. 권장 사항에 동의하는 경우 작업 생성을 선택하면 작업이 생성됩니다. 그런 다음 해당 작업을 사용자에게 할당하여 작업을 수행하거나 Amazon Q 자체에 할당할 수 있습니다.

리소스 정리

이 자습서를 완료한 후에는 다음 작업을 수행하여 이 자습서에서 만든 리소스 중 더 이상 필요하지 않은 리소스를 정리해 보세요.

  • 더 이상 해결되지 않는 문제는 Amazon Q의 할당을 취소하십시오. Amazon Q가 문제에 대한 작업을 완료했거나 해결책을 찾지 못한 경우, Amazon Q 할당을 취소하여 생성적 AI 기능의 최대 할당량에 도달하지 않도록 하십시오. 자세한 내용은 제너레이티브 AI 기능 관리 및 요금을 참조하십시오.

  • 작업이 완료된 모든 문제를 완료로 옮기세요.

  • 프로젝트가 더 이상 필요하지 않은 경우 프로젝트를 삭제하세요.