

# Fornecer exemplos (criação de prompts few-shot)


Ao incluir alguns exemplos de sua tarefa no prompt, você pode criar um modelo estruturado para o Amazon Nova 2 seguir. Isso reduz a ambiguidade e melhora a precisão e a qualidade da saída. A técnica de fornecer exemplos claros para tornar as respostas do modelo mais alinhadas com o resultado desejado é denominada *criação de prompts few-shot*.

O conceito de criação de prompts few-shot é fornecer ao modelo de linguagem alguns exemplos da tarefa, junto com o formato de entrada e saída, e depois solicitar que ele gere a saída para uma nova entrada com base nos exemplos fornecidos. Esse método também ajuda a esclarecer instruções ou tarefas complexas, tornando mais fácil para o Amazon Nova 2 entender e interpretar o que está sendo solicitado.

**Como adicionar exemplos à ajuda do prompt:**

Adicionar exemplos pode ajudar o modelo a produzir 
+ Respostas consistentes que são uniformes ao estilo dos exemplos 
+ Respostas mais eficientes devido ao fato de reduzir a possibilidade de interpretar incorretamente as instruções e à minimização das alucinações

O quanto a performance do modelo vai melhorar usando prompts few-shot dependerá da qualidade e da diversidade dos exemplos escolhidos. Os itens abaixo demonstram as características de boas capturas no prompt:
+ **Selecione exemplos diversos**: os exemplos escolhidos devem representar a distribuição de sua entrada/saída esperada em termos de diversidade (desde casos de uso comuns até casos extremos) para abranger adequadamente os casos de uso relevantes. É importante evitar qualquer viés em seus exemplos, pois o viés nas entradas também pode fazer com que as saídas sejam tendenciosas.
+ **Combine os níveis de complexidade**: a complexidade dos exemplos fornecidos deve estar alinhada com o cenário ou a tarefa-alvo. É importante garantir que o grau de complexidade seja mapeado entre a entrada esperada e o exemplo escolhido no prompt.
+ **Garanta a relevância**: os exemplos selecionados devem ser diretamente relevantes para o problema ou o objetivo em questão. Isso garante consistência e uniformidade nas respostas. 

**dica**  
Se as sugestões acima não funcionarem, recomendamos que você crie um sistema baseado em RAG que aumente o prompt com uma seleção dinâmica de capturas com base nas semelhanças entre a consulta de entrada do usuário e um conjunto de capturas disponível.

## Exemplo 1: fornecer exemplos no prompt do usuário


Aqui, seu usuário está tentando classificar os tíquetes de suporte ao cliente recebidos em categorias predefinidas. Você pode fornecer aos modelos do Amazon Nova 2 alguns exemplos de tíquetes que são classificados corretamente para melhorar sua compreensão das categorias e do idioma usado nos tíquetes. Os exemplares devem ser concisos e representar todas as tarefas específicas em sua aplicação. Se houver um nome de campo específico que seja significativo para as tarefas, como `Ticket` ou `Category` neste exemplo, seu usuário poderá usar esses campos diretamente seguidos por dois pontos `":"`. 

------
#### [ 0-shot prompt ]

Usuário:

```
Please classify the following customer support tickets into one of the categories: "Technical Issue," "Billing Inquiry," or "General Inquiry." 

Ticket: "Can you explain why my latest bill is higher than usual? I haven't changed my plan."
```

Assistente:

```
The customer support ticket should be classified as a "Billing Inquiry."

 Here’s the reasoning:
 - The customer is asking about the reason for a change in their latest bill amount.
 - The context revolves around billing and payment, which falls under the category of "Billing Inquiry."
```

------
#### [ 3-shot prompt ]

Usuário:

```
Please classify the following customer support tickets into one of the categories: "Technical Issue," "Billing Inquiry," or "General Inquiry." 
Use these examples to guide your classification:

Ticket: "I can't log in to my account. The system keeps giving me an error message."
Category: Technical Issue

Ticket: "I received an email saying my account will be suspended unless I make a payment. Is this a scam?"
Category: Billing Inquiry

Ticket: "What are the hours of operation for your customer support team?"
Category: General Inquiry

Now, classify the following ticket:
Ticket: "Can you explain why my latest bill is higher than usual? I haven't changed my plan."
```

Assistente:

```
Category: Billing Inquiry

Explanation: The ticket is asking for an explanation regarding a change in the billing amount, which falls under the billing category as it pertains to questions about charges or payments.
```

------

## Exemplo 2: fornecer exemplos como prompt de turnos


Neste exemplo, os exemplares são fornecidos como turnos, um turno por exemplar, em que o perfil de `User` contém a entrada e o perfil de `Assistant` contém a saída esperada para o exemplar. 

------
#### [ 0-shot Prompt ]

Sistema:

```
Your task is to Classify the following texts into the appropriate categories. The categories to classify are: 

Categories: 
- Food 
- Entertainment 
- Health 
- Wealth 
- Other
```

Usuário:

```
I have 20$ in my pocket.
```

Assistente:

```
Category: Wealth

Explanation: The text mentions a specific amount of money, which falls under the category of wealth. The presence of a monetary value directly relates to financial status or economic aspect.
```

------
#### [ 3-shot Prompt (as turns) ]

Sistema:

```
Your task is to Classify the following texts into the appropriate categories. The categories to classify are: 

Categories: 
- Food 
- Entertainment 
- Health 
- Wealth 
- Other
```

Usuário:

```
I love to eat pizza.
```

Assistente:

```
Food
```

Usuário:

```
I enjoy watching movies.
```

Assistente:

```
Entertainment
```

Usuário:

```
I am going to the gym after this.
```

Assistente:

```
Health
```

Usuário:

```
I have 20$ in my pocket.
```

Assistente:

```
Wealth
```

------

## Exemplo 3: fornecer exemplos no prompt do sistema


Neste exemplo, você pode especificar uma seção “Exemplo” e depois enumerar uma série de exemplos no prompt do sistema. Essa forma de fornecer exemplares no prompt é especialmente útil quando seus exemplares são longos e complexos e ajuda o modelo a localizar capturas de exemplo.

------
#### [ 0-shot Prompt ]

Sistema:

```
You are an AI assistant helping to draft professional reports for enterprise stakeholders. Ensure the report is formatted in rich text, with headings, bullet points, and highlighted important tasks.
```

Usuário:

```
Draft a detailed project update report for our stakeholders, summarizing the project milestones achieved, tasks completed, and future plans.
```

Assistente:

```
# Project Update Report

## Executive Summary
This report provides a comprehensive update on the project milestones achieved, tasks completed, and future plans. Our team has made significant progress, and we are on track to meet the project goals. The following sections outline the details of our accomplishments and upcoming activities.

---

## Project Milestones Achieved

### **1. Project Initiation**
- **Milestone Date:** July 15, 2023
- **Description:** Completed initial project planning and secured stakeholder approval.

### **2. System Design Completion**
- **Milestone Date:** September 30, 2023
- **Description:** Finished the detailed system design and received positive feedback from technical review meetings.

### **3. Prototype Development**
- **Milestone Date:** November 15, 2023
- **Description:** Developed and tested a working prototype of the system.

---

## Tasks Completed

### **1. Requirement Gathering**
- **Description:** Conducted comprehensive stakeholder interviews and collected detailed requirements.
- **Highlighted Important Tasks:**
  - **User Story Mapping:** Mapped out user stories to ensure all user needs are addressed.
  - **Requirement Documentation:** Created detailed requirement specifications.

### **2. System Architecture Design**
- **Description:** Designed the system architecture, focusing on scalability and maintainability.
- **Highlighted Important Tasks:**
  - **Technology Stack Selection:** Chose the appropriate technology stack based on project requirements.
  - **Architecture Diagrams:** Developed detailed architecture diagrams for easy understanding.

### **3. Prototype Development and Testing**
- **Description:** Developed and rigorously tested the prototype.
- **Highlighted Important Tasks:**
  - **Coding:** Implemented core functionalities of the prototype.
  - **Testing:** Conducted unit and integration testing to ensure prototype reliability.

---

## Future Plans

### **1. Full System Development**
- **Description:** Begin the full-scale development of the system based on the approved design and prototype.
- **Highlighted Important Tasks:**
  - **Module Development:** Develop each module as per the design specifications.
  - **Code Reviews:** Implement regular code reviews to maintain code quality.

### **2. User Acceptance Testing (UAT)**
- **Description:** Conduct UAT to ensure the system meets user requirements and is ready for deployment.
- **Highlighted Important Tasks:**
  - **Test Plan Development:** Create detailed UAT plans and test cases.
  - **UAT Execution:** Execute UAT and gather feedback for final adjustments.

### **3. Deployment and Training**
- **Description:** Deploy the system and provide necessary training to end-users.
- **Highlighted Important Tasks:**
  - **Deployment:** Roll out the system to the production environment.
  - **Training Sessions:** Organize training sessions for users to familiarize them with the new system.

---

## Conclusion
Our project has successfully achieved key milestones and completed significant tasks. With the current momentum, we are well-positioned to meet our future objectives. We remain committed to delivering a high-quality system that meets all stakeholder expectations.

---

**Prepared by:**
[Your Name]
[Your Position]
[Date]

**Contact Information:**
[Your Email]
[Your Phone Number]

---

This detailed update aims to keep stakeholders informed and reassured about the project's progress and future direction. For any queries or further information, please do not hesitate to contact me directly.
```

------
#### [ 2-shot Prompt ]

Sistema:

```
You are an AI assistant helping to draft professional reports for enterprise stakeholders. Below are a few examples of well-formatted project update reports to guide your response. 

<Example 1>

<b>Project Update Report</b><br>
<i>Date:</i> January 15, 2023<br>
<hr>


<b>Project Milestones Achieved:</b><br>
- Successfully launched the new CRM system.<br>
- Integrated the marketing automation tool.<br>
- Completed the employee training sessions.

<b>Tasks Completed:</b><br>
- Developed the user manual.<br>
- Conducted system testing.<br>
- Prepared the training materials.

<b>Future Plans:</b><br>
- Roll out the CRM system to all departments.<br>
- Schedule follow-up training sessions.<br>
- Monitor system performance and make necessary adjustments.

<hr>
<b>Prepared by:</b><br>
[Your Name]<br>
[Your Position]<br>
[Your Contact Information]

<Example 2>

<b>Project Update Report</b><br>
<i>Date:</i> February 20, 2023<br>
<hr>

<b>Project Milestones Achieved:</b><br>
- Launched the new website.<br>
- Completed the SEO optimization.<br>
- Organized the stakeholder meeting.

<b>Tasks Completed:</b><br>
- Designed the website layout.<br>
- Wrote the content for the website.<br>
- Tested the website functionality

<b>Future Plans:</b><br>
- Implement the analytics tracking.<br>
- Launch the social media campaign.<br>
- Gather feedback from stakeholders.

<hr>
<b>Prepared by:</b><br>
[Your Name]<br>
[Your Position]<br>
[Your Contact Information]
```

Usuário:

```
Draft a detailed project update report for our stakeholders, summarizing the project milestones achieved, tasks completed, and future plans.
```

Assistente:

```
<b>Project Update Report</b><br>
<i>Date:</i> October 5, 2023<br>
<hr>

<b>Project Milestones Achieved:</b><br>
- Successfully completed the implementation of the new enterprise resource planning (ERP) system.<br>
- Conducted and completed the first phase of the data migration process.<br>
- Successfully launched the new inventory management module.

<b>Tasks Completed:</b><br>
- Developed and finalized the comprehensive user training program, including detailed user manuals and video tutorials.<br>
- Conducted extensive system integration testing with all existing systems and ensured seamless interoperability.<br>
- Executed the initial data migration from the legacy system to the new ERP system, resulting in a 95% accuracy rate.

<b>Future Plans:</b><br>
- Roll out the new ERP system to all departments in the next two phases.<br>
- Schedule and conduct follow-up training sessions for all employees.<br>
- Implement the remaining modules of the ERP system, including financial management and human resources.<br>
- Establish a robust monitoring and support framework to ensure smooth system operation and address any issues promptly.

<hr>
<b>Prepared by:</b><br>
[Your Name]<br>
[Your Position]<br>
[Your Contact Information]

---

This detailed report provides a clear and concise overview of the project's progress, highlighting the milestones achieved, tasks completed, and future plans. It ensures stakeholders are well-informed and can make strategic decisions based on the current status of the project.
```

------