Extração de emprego a IA e gerador de e-mail frio
Este projeto aproveita as ferramentas e estruturas de IA de ponta para automatizar o processo de extração de postagens de emprego das páginas da Web e gerar e-mails frios personalizados para aplicativos de emprego com base na entrada do usuário e em um portfólio de habilidades personalizáveis. Ele integra LLM movido a Groq (Modelo de Aprendizagem de Idiomas), prompts Langchain, raspagem da Web e bancos de dados de vetores para otimizar o processo de ponta a ponta da criação de aplicativos de emprego.
Características
- Raspagem na Web: extrai automaticamente as publicações de emprego de páginas dinâmicas da Web usando
WebBaseLoader e limpa os dados extraídos para eliminar o ruído. - Extração de publicação de empregos: utiliza as cadeias prontas do Langchain LLM para extrair e formatar detalhes do trabalho relevantes (função, experiência, habilidades, descrição) em objetos JSON válidos.
- E-mails frios personalizados: gera e-mails frios personalizados usando um LLM movido a Groq, personalizável com as habilidades do candidato e links de portfólio relevantes.
- Integração do banco de dados vetorial: armazena a pilha de tecnologia e os metadados do portfólio usando o Chromadb para consulta eficiente de links relevantes para o e -mail frio.
- Geração dinâmica de email: cria e-mails personalizados e orientados a resultados que se alinham às descrições do trabalho e destacam a experiência e os projetos mais relevantes.
Tecnologias usadas
- Integração LLM (GROQ): modelo ChatGroq (LLAMA-3.1-70B) para geração de texto de alta precisão.
- Langchain: usado para criar modelos de prompt dinâmico e encadear LLMs para gerar respostas.
- Flask: servidor de back -end para lidar com solicitações de geração de email e gerenciar a interação de raspagem e LLM.
- React.js: front -end para coletar a entrada do usuário (por exemplo, nome de usuário) e acionar o processo de geração de email.
- Chromadb: banco de dados vetorial para armazenamento e consulta de metadados eficientes.
- PANDAS: Usado para manusear dados de portfólio CSV e processá -los para armazenamento no Chromadb.
- Flash-cors: Ativa os CORs para o back-end do frasco.
Instruções de configuração
Pré -requisitos
- Python 3
- Node.js e NPM (para o React Frontend)
- Chave da API Groq (para integração LLM)
Instalação
Clone o repositório:
git clone https://github.com/IMRANDIL/cold_email_generator_llm.git
cd cold_email_generator_llm
Configuração de back -end (frasco):
- Crie e ativar um ambiente virtual:
python3 -m venv venv
source venv/bin/activate
- Instale as dependências Python necessárias:
pip install -r requirements.txt
- Configure variáveis de ambiente para a chave da API Groq:
export GROQ_API_KEY= " your-api-key "
- Inicie o servidor Flask:
Configuração do front -end (React):
- Navegue até o diretório
frontend : - Instale as dependências:
- Inicie o React Development Server:
Uso
- Visite a interface do front -end para inserir o nome de usuário e acionar o processo de geração de email.
- O back -end raspará as publicações, processará -as com avisos de Langchain, consultará o banco de dados do vetor e gerará e -mails frios personalizados para cada trabalho.
- Os emails são retornados no formato JSON e são exibidos em um bloco de código bem formado com um recurso "cópia para a área de transferência".
Exemplo de saída
{
"subject" : " Application for Lead Software Engineer at XYZ Inc. " ,
"body" : " Dear Hiring Manager, I am writing to express my interest in the Lead Software Engineer position... "
}Aprimoramentos futuros
- Raspa dinâmica da Web: estenda os recursos de raspagem na web para lidar com sites de postagem de emprego mais complexos e dinâmicos.
- Consulta avançada: melhore o mecanismo de consulta do banco de dados do vetor para lidar com vários conjuntos de habilidades com mais eficiência.
- Aprimoramentos da interface do usuário: Aprimore ainda mais o Frontend do React.JS para melhor experiência e suporte do usuário para vários modelos de email.
- Integração múltipla da API: Explore a integração com outros modelos LLM (OpenAI, etc.) para aumentar a versatilidade.
Licença
Este projeto está licenciado sob a licença do MIT. Consulte o arquivo de licença para obter detalhes.