다음을 통해 공유


프롬프트 예제에서 코드 인터프리터 사용

다음 예제에서는 복잡한 프롬프트를 처리하기 위한 코드 인터프리터의 기능을 보여 줍니다.

이 예제에서는 이미 다음을 가정합니다.

예제 시나리오 1: 트랜잭션을 감사하라는 코드 인터프리터 프롬프트

Contoso의 구매 관리자는 정기적으로 구매 거래를 감사합니다. 구매 관리자는 고위험 공급업체를 식별하는 주기적인 PDF 보고서를 받고 $ 10,000 이상의 거래에 대한 구매 주문을 요구하는 정책을 따릅니다. 구매 관리자는 PDF를 사용하여 Excel에서 트랜잭션을 감사합니다. 구매 관리자는 코드 인터프리터와 프롬프트를 사용하여 이 감사 프로세스를 자동화합니다.

트랜잭션 프롬프트 편집 및 테스트

프롬프트 편집기를 열고 코드 인터프리터를 켜면 다음 단계에 따라 프롬프트를 만듭니다.

  1. 프롬프트에 다음 지침을 입력합니다.

    1. You are given:
    -An Excel file <parameter A> with thousands of procurement transactions, including vendor name, invoice amount, PO number, and transaction date.
    -A PDF file <parameter B> listing vendors flagged as "High Risk" in the latest compliance audit.
    
    2. Your tasks:
    -Process the Excel file to identify:
    -Transactions over $10,000 with missing or blank PO numbers.
    -Extract vendor names from the PDF file that are marked "High Risk".
    -Cross-reference the vendor names in Excel with those from the PDF file.
    -Flag transactions that meet either of the following criteria:
      -High-value transaction with missing PO
      -Vendor is classified as High Risk
    -For each flagged transaction:
      -Highlight the row in red
      -Add a comment explaining the issue (for example, "High Risk Vendor" or "PO Missing")
    
    3. Generate a summary report listing:
    -Total flagged transactions
    -Vendor names involved
    -Reasons for flagging
    
    4. Return:
    -The updated Excel file with highlights and comments
    -A summary audit report formatted as PDF
    -A summary of updates made in text
    
  2. 지침에서 <parameter A>을 조달 트랜잭션이 포함된 Excel 파일의 파일 입력 매개 변수로 바꿉니다. 변경하려면 텍스트를 해당 텍스트로 바꾸고 / 상황에 맞는 메뉴에서 이미지 또는 문서를 선택합니다. 이 매개 변수의 이름(예: "조달 트랜잭션")을 제공하고 예상 형식을 사용하여 트랜잭션이 포함된 샘플 Excel 파일을 업로드합니다.

    트랜잭션 ID, 공급업체 이름, 청구서 금액, PO 번호 및 트랜잭션 날짜가 트랜잭션 파일에 열로 있어야 합니다. 코드 인터프리터가 켜져 있는 다른 프롬프트를 사용하여 필요에 따라 이 샘플 Excel 파일을 만들 수 있습니다.

  3. 동일한 단계에 따라 업로드된 입력 PDF 문서를 사용하여 공급업체 위험 보고서의 텍스트 <parameter B>을 대체합니다. PDF 파일에서 공급업체 이름을 목록으로 사용할 수 있습니다. 또한 코드 인터프리터가 켜져 있는 다른 프롬프트를 사용하여 필요에 따라 샘플 PDF 파일을 만들 수 있습니다.

  4. 테스트를 선택합니다.

    몇 초 후에 요약 출력이 모델 응답으로 텍스트에 표시됩니다.

    비고

    기본 모델을 GPT-4o로 그대로 두거나 필요에 따라 다른 모델을 선택할 수 있습니다.

  5. 모델 응답>출력에서 모델 응답 형식에 대한 문서를 선택합니다. 모델 응답에는 플래그가 지정된 트랜잭션이 있는 업데이트된 Excel 파일과 PDF 형식의 요약 보고서도 표시됩니다. 이러한 파일을 다운로드하여 결과를 확인할 수 있습니다.

    중요합니다

    다른 파일로 다시 테스트하려면 프롬프트 텍스트를 변경하고 저장해야 합니다. 프롬프트를 수정하지 않고 샘플 파일을 업로드하거나 교환하기만 하면 다시 처리가 트리거되지 않습니다.

이 예제에서는 프롬프트가 파일을 사용하여 복잡한 시나리오를 수행할 수 있도록 하는 코드 인터프리터의 기능을 보여 줍니다.

예제 시나리오 2: Dataverse 테이블의 시각적 요약을 만드는 코드 인터프리터 프롬프트

이 예제에서는 코드 인터프리터가 켜져 있는 프롬프트를 만들어 Dataverse 테이블에서 레코드를 읽고, 데이터를 분석하고, 시각적 요약(차트) 및 텍스트 요약을 생성하는 방법을 보여 줍니다.

Dataverse 프롬프트 편집 및 테스트

프롬프트 편집기를 열고 코드 인터프리터를 켜면 다음 단계에 따라 프롬프트를 만듭니다.

  1. 프롬프트에 다음 지침을 입력합니다.

    1. You are given:
    - Ticket data that gives the created date/time, first response date/time, and the first response SLA date/time:
    
    2. Your tasks:
    - Create a histogram of the tickets by day of the week created and show the first response SLA status
    - Create insights into trends in the data
    
    3. Return:
    - A graph. Make sure to return the graph as a base64 encoded image
    - A summary of insights
    
  2. 관련 Dataverse 테이블(예: 티켓, 직원 일정)에 연결하여 프롬프트를 접지합니다.

    1. 입력 및 지식 메뉴를 열고 / 아래에서 Dataverse를 선택하는 데 사용합니다.

      프롬프트를 관련 Dataverse 테이블에 연결하는 스크린샷

    2. 테이블을 선택하고 프롬프트에 필요한 필드(예: 티켓 상태, 할당된 에이전트, SLA 상태)를 선택합니다.

    3. 추가를 선택하여 테이블의 필드를 프롬프트에 추가합니다.

      프롬프트에 필드를 추가하는 스크린샷

    4. 필요에 따라 필터 특성을 선택하여 특정 특성 및 값에 대한 테이블 데이터를 필터링합니다.

      테이블 데이터 필터링 스크린샷

  3. 테스트를 선택하여 프롬프트를 실행합니다.

  4. 프롬프트가 티켓 데이터를 읽고, 할당 규칙을 적용하고, Dataverse의 레코드를 예상대로 업데이트했는지 확인합니다.

    기능을 확인하는 프롬프트를 실행하는 스크린샷.

  5. 프롬프트를 저장합니다.

Copilot Studio의 에이전트 흐름에 프롬프트 통합

다음으로, 프롬프트를 래핑하고 Dataverse에 연결하는 에이전트 흐름을 만들 수 있습니다.

  1. 에이전트의 도구 페이지로 돌아가서 새 도구>에이전트 흐름 추가> 선택합니다.

    에이전트 흐름 디자이너는 초기 에이전트가 흐름을 호출할 때 트리거와 함께 나타납니다.

  2. 디자이너에서프롬프트 실행>을 선택하여 새 프롬프트 실행 작업을 추가합니다.

    에이전트 흐름 디자이너에서 프롬프트를 실행하는 새 작업을 삽입하는 스크린샷

  3. 프롬프트 노드 실행에서 코드 인터프리터 프롬프트를 선택합니다.

    프롬프트 노드 실행에서 코드 인터프리터 프롬프트를 선택하는 스크린샷

  4. 디자이너에서에이전트에 응답>을 선택하여 프롬프트 실행 작업 후에 에이전트 작업에 새 응답 작업을 추가합니다.

  5. 다음으로 에이전트 노드 편집 기 응답 편집기를 열어 에이전트에 출력으로 다시 전달할 매개 변수를 선택합니다.

  6. 출력 추가를 사용하여 프롬프트의 요약 텍스트 및 그래프 이미지 데이터를 흐름에 대한 출력으로 추가합니다.

    출력 Summary중 하나의 이름을 지정하고 동적 값 옵션을 사용하여 Insights 작업에서 출력 변수를 선택합니다.

    두 번째 출력 GraphBase64의 이름을 지정하고 식 옵션을 사용하여 출력 값을 정의합니다. 프롬프트 실행 작업에서 Base64 이미지 출력을 선택합니다.

    요약 텍스트 및 그래프 이미지 출력을 선택하는 스크린샷

  7. 초안 저장을 선택합니다.

  8. 개요 탭의 세부 정보 아래에서 흐름에 이름을 지정합니다.

에이전트 게시 및 사용

  1. 에이전트를 저장 및 게시합니다.

    이제 에이전트가 Dataverse 레코드를 처리하고 요약 및 차트를 생성할 수 있습니다.

  2. 에이전트 도구 페이지로 이동하여 프롬프트를 사용하는 특정 에이전트 흐름을 선택합니다.

  3. 완료실행 후 작업을 적응형 카드 보내기로 설정합니다(아래 지정).

  4. PowerFx 수식을 사용하여 표시할 적응형 카드 아래에서 수식을 선택하여 수식을 사용하여 카드를 정의합니다.

    적응형 카드 수식 편집기가 나타납니다.

  5. 다음 수식을 사용하여 적응형 카드의 내용과 소스를 정의합니다.

    {
      "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
      "type": "AdaptiveCard",
      "version": "1.0",
      "body": [
        {
          "type": "Image",
          "url": "data:image/png;base64," & Topic.Output.GraphBase64,
          "altText": "Ticket analysis generated graph"
        },
        {
          "type": "TextBlock",
          "text": Topic.Output.Summary,
          "wrap": true
        }
      ]
    }
    

    여기서는 Topic.Output.GraphBase64Topic.Output.Summary 에이전트 흐름에 대해 앞에서 정의한 출력 변수입니다.

  6. 에이전트를 저장하고 테스트합니다.

  7. 다른 사용자가 Dataverse 테이블을 기반으로 동적 콘텐츠를 생성할 수 있도록 에이전트를 게시합니다.

예제 시나리오 3: 사용자가 제공한 Excel 파일에서 차트를 만들라는 코드 인터프리터 프롬프트

이 예제에서는 업로드된 Excel 파일을 읽고, 데이터를 차트 이미지로 변환하고, 이미지를 사용자에게 반환하기 위해 코드 인터프리터가 켜져 있는 프롬프트를 만드는 방법을 보여줍니다. 사용자가 Excel 파일을 업로드하고 차트를 요청하면 항목에서 프롬프트가 트리거됩니다.

차트 생성 프롬프트 만들기 및 구성

프롬프트 편집기를 열고 코드 인터프리터를 사용하도록 설정하면 다음 단계에 따라 프롬프트를 만듭니다.

  1. 프롬프트에 의미 있는 이름(예: 이미지 세대 프롬프트)을 지정하고 프롬프트에 대해 다음 지침을 입력합니다.

    Read the attached Excel (.xlsx) and convert it into a chart named mychart.png. 
    
  2. 입력 및 지식 메뉴를 열고 /이미지 또는 문서를 선택하는 데 사용합니다.

  3. 테스트용 문서 입력으로 업로드할 샘플 데이터가 있는 Excel 파일을 선택합니다.

  4. 저장을 선택합니다.

  5. 에이전트에 추가를 선택하여 프롬프트를 도구로 추가합니다.

차트 프롬프트를 호출하는 토픽 만들기

  1. Copilot Studio의 항목 탭으로 이동하여빈 항목에서>를 선택하여 새 항목을 만듭니다.

  2. 트리거 노트에서 토픽이 수행하는 작업을 "파일이 업로드되고 사용자가 '내 차트 생성'이라고 말하는 경우"로 설정합니다.

  3. 노드 추가를 선택한 다음, 변수 관리>목록 관리>목록을 통해 루프를 선택하여 루프 노드를 추가합니다.

  4. 목록을 통한 루프 노드를 선택하여 노드 편집기를 엽니다. 반복할 항목 아래에서 변수 >>선택을 선택합니다.

    프롬프트를 트리거하는 샘플 항목의 스크린샷.

  5. 루프 내에서 노드 추가를 선택한 다음 , 도구 추가를 선택하고 앞에서 만든 프롬프트를 선택하여 프롬프트 도구를 토픽에 추가합니다.

  6. 그에 따라 입력 및 출력 변수를 구성합니다. 입력의 경우 수식을 사용하여 설정하고 Topic.LoopValue1.Value 선택합니다. 출력의 경우 프롬프트 출력을 캡처하도록 명명된 Output 변수를 초기화합니다.

    샘플 프롬프트 도구의 스크린샷.

  7. 루프 내에서 노드> 추가메시지 만들기를 선택하여 메시지 노드를 추가합니다. 메시지 노드는 프롬프트 출력을 사용자에게 다시 릴레이하는 데 사용됩니다. 이 예제에서 프롬프트는 응답을 사용하여 변수 Output 를 초기화합니다. 텍스트는 에 Output.text저장됩니다.

  8. 메시지의 텍스트 부분에서 변수 삽입 을 선택하고 .를 선택합니다 Output.text.

  9. 이미지>를 선택하여 메시지에 이미지를 추가합니다.

    샘플 메시지 도구의 스크린샷.

  10. 다음으로, 이미지를 올바르게 표시하도록 서식을 지정합니다. 미디어를 선택하고 이미지 URL에서 변수>수식 선택을 선택하고 다음 수식을 입력합니다."data:" & Topic.Output.artifacts.mychart.mimeType & ";base64," & Topic.Output.artifacts.mychart.base64Content

    비고

    채팅에서 이미지를 올바르게 렌더링하려면 이 형식이 필요합니다. 이 예제 mychart 에서는 프롬프트에서 파일 출력에 대해 선택한 이름을 나타내며 Output 변수 이름입니다. 프롬프트 출력 및 토픽 변수의 이름을 지정하는 방법에 따라 다른 예제에서 세부 정보가 변경됩니다.

    이미지 렌더링 수식의 스크린샷.

  11. 저장을 선택하여 토픽을 저장합니다.

  12. 테스트를 선택합니다. 프롬프트가 트리거될 때 이미지가 표시됩니다.

    이미지가 있는 채팅 회신의 스크린샷.

코드 인터프리터를 사용하는 프롬프트의 추가 예제

다음 표에서는 코드 인터프리터가 켜진 상태에서 사용할 수 있는 프롬프트의 더 많은 예제를 제공합니다. 다음 예제에서는 코드 인터프리터에게 복잡한 작업을 수행하도록 요청하는 방법을 보여줍니다.

프롬프트 예상 결과
주문 세부 정보를 캡처하는 PDF 파일 만들기 PDF 형식으로 주문 캡처 양식 생성
PDF 파일 <매개 변수 A>의 복사본 만들기 제공된 PDF 파일 입력의 복사본을 만듭니다.
판매 트랜잭션의 가상 데이터 집합을 사용하여 Excel 파일 만들기 샘플 판매 트랜잭션을 사용하여 Excel 파일을 만듭니다. 더 많은 고급 가상 데이터를 생성하도록 프롬프트에 더 많은 지침을 제공하여 성능을 향상시킬 수 있습니다. 다음 예제에서는 더 복잡한 프롬프트를 보여줍니다.
전체 연도의 4개 지역("북부", "남부", "동부", "서부")의 주간 판매 트랜잭션을 시뮬레이션하는 실제 가상 데이터 세트가 있는 Excel 파일을 만듭니다. 각 레코드에는 다음이 포함되어야 합니다.
- 트랜잭션 날짜(주별)
- 지역
- 영업 직원 이름(지역당 3개 이상의 고유 이름)
- 제품 범주(예: "전자 제품", "가구", "어플라이언스", "의류")
- 제품 이름(범주에 따라 실제 이름)
- 판매 단위
- 단가(범주에 따라 다름)
- 총 판매액(계산됨)
- 목표 충족(지역 임계값 기준 예/아니요)
- 분기
- 채널(온라인, 소매, 배포자)
- 고객 세그먼트(예: "엔터프라이즈", "SMB", "소비자")

임의 변형 및 계절성을 삽입합니다.
- 4분기 "전자 제품" 매출 증대
- 1월~2월 동안 "North"의 판매 감소(겨울 경기 둔화 시뮬레이션)
- 2분기(봄) 의류 판매액 상승

최종 데이터 세트는 2,000개 이상의 행이어야 합니다. 현실감을 위해 가벼운 임의성을 추가합니다.
이 프롬프트는 이전보다 풍부한 합성 데이터가 있는 Excel 파일을 생성합니다. 이 프롬프트는 코드 인터프리터의 효과와 프롬프트에서 명확하고 자세한 지침을 제공하는 방법을 보여줍니다.
요약 시트 자동 생성 – <매개 변수 A> 사용 생성:

- 월별 롤업
- 최고 성과의 지역
- 성과가 저조한 사용자에 대한 조건부 서식 지정
이 프롬프트에 입력으로 파일을 전달하여 Excel 파일의 분석을 수행합니다. 이 프롬프트는 Excel에서 요약을 생성할 수 있으며, 지시를 따르면 PDF 파일로도 저장할 수 있습니다.
판매액이 > 1000인 경우 셀을 녹색으로 강조 표시하고 그렇지 않으면 빨간색으로 표시 코드 인터프리터에게 조건 및 수식에 따라 Excel 서식을 수행하도록 요청합니다. 표시된 대로 프롬프트에 서식이 표시됩니다.

Excel 서식/스타일 처리의 다른 사용 사례에 동일한 아이디어를 적용할 수 있습니다.