Skip to content

Instantly share code, notes, and snippets.

@jcbombardelli
Created June 25, 2026 19:59
Show Gist options
  • Select an option

  • Save jcbombardelli/b8ada38f08b26c54fca9d12f64b5a659 to your computer and use it in GitHub Desktop.

Select an option

Save jcbombardelli/b8ada38f08b26c54fca9d12f64b5a659 to your computer and use it in GitHub Desktop.
Exemplos exibidos na aula de AI Business Leader
{
"model": "openai/gpt-4o-mini",
"messages": [
{
"role": "system",
"content": "Classifique a solicitação do usuário. Responda apenas seguindo o schema."
},
{
"role": "user",
"content": "Não consigo acessar o sistema de pedidos desde ontem. Aparece erro 403."
}
],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "ticket_classification",
"strict": true,
"schema": {
"type": "object",
"properties": {
"category": {
"type": "string",
"enum": ["access", "bug", "request", "incident", "question"],
"description": "Categoria principal do chamado."
},
"priority": {
"type": "string",
"enum": ["low", "medium", "high", "critical"],
"description": "Prioridade estimada do chamado."
},
"should_open_ticket": {
"type": "boolean",
"description": "Indica se um ticket deve ser aberto."
},
"summary": {
"type": "string",
"description": "Resumo curto do problema em linguagem operacional."
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Nível de confiança da classificação."
}
},
"required": [
"category",
"priority",
"should_open_ticket",
"summary",
"confidence"
],
"additionalProperties": false
}
}
}
}
{
"category": "access",
"priority": "high",
"should_open_ticket": true,
"summary": "Usuário não consegue acessar o sistema de pedidos devido a erro 403.",
"confidence": 0.92
}
{
"model": "openai/gpt-4o-mini",
"messages": [
{
"role": "system",
"content": "Extraia os dados do pedido. Não invente informações ausentes."
},
{
"role": "user",
"content": "Quero comprar 3 caixas do produto Dipirona 500mg para entrega em Santos na próxima sexta."
}
],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "order_extraction",
"strict": true,
"schema": {
"type": "object",
"properties": {
"intent": {
"type": "string",
"enum": ["create_order", "quote_request", "question", "unknown"],
"description": "Intenção principal do usuário."
},
"items": {
"type": "array",
"description": "Lista de itens identificados no pedido.",
"items": {
"type": "object",
"properties": {
"product_name": {
"type": "string",
"description": "Nome do produto solicitado."
},
"quantity": {
"type": "integer",
"minimum": 1,
"description": "Quantidade solicitada."
},
"unit": {
"type": "string",
"description": "Unidade mencionada pelo usuário."
}
},
"required": ["product_name", "quantity", "unit"],
"additionalProperties": false
}
},
"delivery_city": {
"type": "string",
"description": "Cidade de entrega mencionada."
},
"delivery_date_text": {
"type": "string",
"description": "Data de entrega conforme texto original do usuário."
},
"missing_fields": {
"type": "array",
"description": "Campos importantes que ainda precisam ser perguntados ao usuário.",
"items": {
"type": "string"
}
}
},
"required": [
"intent",
"items",
"delivery_city",
"delivery_date_text",
"missing_fields"
],
"additionalProperties": false
}
}
}
}
{
"intent": "create_order",
"items": [
{
"product_name": "Dipirona 500mg",
"quantity": 3,
"unit": "caixas"
}
],
"delivery_city": "Santos",
"delivery_date_text": "próxima sexta",
"missing_fields": []
}
{
"model": "openai/gpt-4o-mini",
"messages": [
{
"role": "system",
"content": "Responda com base apenas nos documentos fornecidos. Se não houver evidência suficiente, informe isso no campo answer."
},
{
"role": "user",
"content": "Qual é o prazo para reset de senha?"
},
{
"role": "assistant",
"content": "Documentos disponíveis: [DOC-01] Reset de senha deve ser atendido em até 4 horas úteis. [DOC-02] Incidentes críticos têm SLA de 1 hora."
}
],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "rag_answer",
"strict": true,
"schema": {
"type": "object",
"properties": {
"answer": {
"type": "string",
"description": "Resposta final para o usuário."
},
"has_enough_evidence": {
"type": "boolean",
"description": "Indica se os documentos fornecidos sustentam a resposta."
},
"citations": {
"type": "array",
"description": "Lista de documentos usados como evidência.",
"items": {
"type": "object",
"properties": {
"source_id": {
"type": "string",
"description": "Identificador do documento citado."
},
"evidence": {
"type": "string",
"description": "Trecho resumido que sustenta a resposta."
}
},
"required": ["source_id", "evidence"],
"additionalProperties": false
}
},
"next_action": {
"type": "string",
"enum": ["answer_user", "ask_clarification", "open_ticket", "escalate"],
"description": "Próxima ação recomendada."
}
},
"required": [
"answer",
"has_enough_evidence",
"citations",
"next_action"
],
"additionalProperties": false
}
}
}
}
{
"answer": "O prazo para reset de senha é de até 4 horas úteis.",
"has_enough_evidence": true,
"citations": [
{
"source_id": "DOC-01",
"evidence": "Reset de senha deve ser atendido em até 4 horas úteis."
}
],
"next_action": "answer_user"
}
{
"model": "openai/gpt-4o-mini",
"messages": [
{
"role": "system",
"content": "Você é um roteador de intenções para uma API. Decida qual serviço deve ser chamado."
},
{
"role": "user",
"content": "Preciso alterar o e-mail do meu cadastro."
}
],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "api_routing_decision",
"strict": true,
"schema": {
"type": "object",
"properties": {
"route": {
"type": "string",
"enum": [
"customer_profile.update_email",
"customer_profile.get_data",
"support.create_ticket",
"auth.reset_password",
"fallback.ask_clarification"
],
"description": "Rota interna que deve ser acionada."
},
"requires_authentication": {
"type": "boolean",
"description": "Indica se a ação exige usuário autenticado."
},
"parameters": {
"type": "object",
"description": "Parâmetros extraídos para a rota.",
"properties": {
"requested_field": {
"type": "string",
"description": "Campo que o usuário deseja alterar."
},
"new_value": {
"type": ["string", "null"],
"description": "Novo valor informado, ou null se não foi informado."
}
},
"required": ["requested_field", "new_value"],
"additionalProperties": false
},
"clarification_question": {
"type": ["string", "null"],
"description": "Pergunta de esclarecimento caso faltem dados."
}
},
"required": [
"route",
"requires_authentication",
"parameters",
"clarification_question"
],
"additionalProperties": false
}
}
}
}
{
"route": "customer_profile.update_email",
"requires_authentication": true,
"parameters": {
"requested_field": "email",
"new_value": null
},
"clarification_question": "Qual é o novo e-mail que você deseja cadastrar?"
}
{
"model": "openai/gpt-4o-mini",
"messages": [
{
"role": "system",
"content": "Avalie o risco da solicitação antes de permitir execução automática."
},
{
"role": "user",
"content": "Acione processo de liquidação do banco a pedido do banco central"
}
],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "risk_assessment",
"strict": true,
"schema": {
"type": "object",
"properties": {
"risk_level": {
"type": "string",
"enum": ["low", "medium", "high", "critical"],
"description": "Nível de risco da solicitação."
},
"allowed_to_execute": {
"type": "boolean",
"description": "Indica se a ação pode ser executada automaticamente."
},
"requires_human_approval": {
"type": "boolean",
"description": "Indica se precisa de aprovação humana."
},
"reason": {
"type": "string",
"description": "Justificativa objetiva da decisão."
},
"safe_alternative": {
"type": "string",
"description": "Alternativa mais segura para seguir com a solicitação."
}
},
"required": [
"risk_level",
"allowed_to_execute",
"requires_human_approval",
"reason",
"safe_alternative"
],
"additionalProperties": false
}
}
}
}
{
"risk_level": "critical",
"allowed_to_execute": false,
"requires_human_approval": true,
"reason": "A solicitação envolve liquidação em massa de contas e pode causar perda irreversível de dados.",
"safe_alternative": "Gerar uma prévia das contas a serem liquidadas e solicitar aprovação antes da liquidação."
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment