Melhoria de Texto com Inteligência Artificial
Visão Geral
O sistema oferece funcionalidade de melhoria de texto utilizando Inteligência Artificial para auxiliar candidatos a aprimorar suas descrições profissionais, tornando-as mais atrativas e profissionais.
Características
🎯 Modos de Processamento
O serviço oferece três modos distintos de processamento:
- Suggestion (Sugestão): Melhora o texto mantendo a essência do candidato, tornando-o mais profissional
- Summarize (Resumir): Resume o texto preservando as informações mais importantes
- Correction (Correção): Corrige apenas erros gramaticais e ortográficos
📋 Tipos de Operação
Suporta quatro tipos de conteúdo com limites específicos de caracteres:
| Tipo de Operação | Código | Limite de Caracteres |
|---|---|---|
| Experiência Profissional | professional_experience | 2000 |
| Certificados | certificates | 2000 |
| Formação Acadêmica | education | 2000 |
| Candidatura a Vaga | application | 500 |
API Endpoint
POST /api/ai/improve-description/
Endpoint para melhorar textos usando IA.
Autenticação
Requer autenticação JWT com permissão de candidato.
Request Body
{
"text": "Texto original a ser melhorado",
"mode": "suggestion",
"operation_type": "professional_experience",
"selective_process_id": 123,
"position": "Desenvolvedor",
"company": "Empresa XYZ",
"course_name": "Ciência da Computação",
"institution": "Universidade ABC",
"certificate_name": "AWS Certified"
}
Parâmetros
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
text | string | Sim | Texto original (mín. 10 caracteres, 3 palavras) |
mode | string | Não | Modo: suggestion, summarize, correction (padrão: suggestion) |
operation_type | string | Sim | Tipo de operação conforme tabela acima |
selective_process_id | integer | Não | ID do processo seletivo (para contexto em candidaturas) |
position | string | Não | Cargo/posição (para experiência profissional) |
company | string | Não | Nome da empresa (para experiência profissional) |
course_name | string | Não | Nome do curso (para formação acadêmica) |
institution | string | Não | Nome da instituição (para formação/certificados) |
certificate_name | string | Não | Nome do certificado (para certificados) |
Response
Sucesso (200 OK)
{
"improved_text": "Texto melhorado pela IA",
"success": true
}
Erro de Validação (400 Bad Request)
{
"text": ["O texto deve ter pelo menos 10 caracteres."]
}
Serviço Indisponível (503 Service Unavailable)
{
"error": "Serviço de IA não está configurado",
"detail": "Entre em contato com o suporte"
}
Contexto Inteligente
A API utiliza informações contextuais para gerar textos mais relevantes:
Experiência Profissional
- Campos contextuais:
position,company - Comportamento: Melhora descrições focando em competências e resultados passados
- Tempo verbal: Mantém no passado
Certificados
- Campos contextuais:
certificate_name,institution - Comportamento: Destaca conhecimentos adquiridos e aplicações práticas
Formação Acadêmica
- Campos contextuais:
course_name,institution - Comportamento: Enfatiza disciplinas e projetos relevantes
Candidatura a Vaga
- Campos contextuais:
selective_process_id(busca automaticamente título da vaga e empresa) - Comportamento: Alinha experiências com requisitos da vaga
- Limite: 500 caracteres
Controle de Qualidade
Validação de Entrada
- Mínimo de 10 caracteres
- Mínimo de 3 palavras
- Respeito aos limites por tipo de operação
Garantia de Limites
O sistema utiliza três camadas de controle:
- Instrução no Prompt: IA é instruída explicitamente sobre o limite
- Controle de Tokens:
max_tokenscalculado automaticamente (35% do limite de caracteres) - Truncamento Inteligente: Se necessário, trunca preservando palavras completas
Autenticidade
- Preserva a voz e personalidade do candidato
- Não inventa informações
- Mantém experiências originais
Tecnologia
Modelo de IA
- Provider: OpenRouter
- Modelo padrão: GPT-4o
- Configuração: Via variáveis de ambiente
Variáveis de Ambiente
OPENROUTER_API_KEY=sua-chave-aqui
OPENROUTER_SITE_URL=https://seu-site.com
OPENROUTER_SITE_NAME=Nome do Site
OPENROUTER_MODEL=openai/gpt-4o
Exemplos de Uso
Melhorar Experiência Profissional
curl -X POST https://api.example.com/api/ai/improve-description/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"text": "Trabalhei com python e fiz varios projetos",
"mode": "suggestion",
"operation_type": "professional_experience",
"position": "Desenvolvedor Python",
"company": "Tech Corp"
}'
Resumir Certificado
curl -X POST https://api.example.com/api/ai/improve-description/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"text": "Este curso abordou diversos tópicos avançados de cloud computing incluindo AWS, Azure, containers, kubernetes, CI/CD, monitoramento e muito mais...",
"mode": "summarize",
"operation_type": "certificates",
"certificate_name": "Cloud Computing Advanced",
"institution": "AWS Training"
}'
Corrigir Texto de Candidatura
curl -X POST https://api.example.com/api/ai/improve-description/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"text": "Tenho muita esperiencia com programaçao e gosto muito de trabalha em equipe",
"mode": "correction",
"operation_type": "application",
"selective_process_id": 456
}'
Boas Práticas
Para Desenvolvedores
- Tratamento de Erros: Sempre trate possíveis erros 503 (serviço indisponível)
- Loading States: Exiba indicadores de carregamento durante processamento
- Validação Client-Side: Valide limites de caracteres antes de enviar
- Feedback ao Usuário: Mostre o texto original e melhorado lado a lado
Para Usuários
- Seja Específico: Textos mais detalhados geram melhores resultados
- Use Contexto: Preencha campos como cargo e empresa para melhores sugestões
- Revise Sempre: A IA auxilia, mas a decisão final é do candidato
- Evite Textos Muito Curtos: Mínimo de 3 palavras significativas
Limitações
- Requer configuração de API key do OpenRouter
- Depende de conectividade com serviço externo
- Custo associado ao uso da API OpenRouter
- Não suporta múltiplos idiomas (apenas português brasileiro)
Segurança e Privacidade
- Textos são processados via OpenRouter (terceiro)
- Não há armazenamento permanente dos textos melhorados
- Headers incluem
HTTP-ReferereX-Titlepara rastreamento - Autenticação obrigatória garante acesso apenas a candidatos autorizados
Roadmap
Planejado para Próximas Versões
- ✅ Modo de avaliação de texto (avaliar hard/soft skills)
- 🔜 Suporte a múltiplos idiomas
- 🔜 Cache de respostas para textos similares
- 🔜 Análise de tom e adequação ao cargo
- 🔜 Sugestões de palavras-chave por setor