AI 기반 작업 추출 및 콜드 이메일 생성기
이 프로젝트는 최첨단 AI 도구 및 프레임 워크를 활용하여 웹 페이지에서 작업 게시물을 추출하는 프로세스를 자동화하고 사용자 입력 및 사용자 정의 가능한 기술 포트폴리오를 기반으로 구직 응용 프로그램에 대한 개인화 된 콜드 이메일을 생성합니다. GROQ 구동 LLM (Language Learning Model), Langchain 프롬프트, 웹 스크래핑 및 벡터 데이터베이스를 통합하여 작업 응용 프로그램 생성의 엔드 투 엔드 프로세스를 간소화합니다.
특징
- 웹 스크래핑 :
WebBaseLoader 사용하여 동적 웹 페이지에서 작업 게시물을 자동으로 추출하고 추출 된 데이터를 정리하여 노이즈를 제거합니다. - 작업 게시 추출 : Langchain의 LLM 프롬프트 체인을 활용하여 유효한 JSON 객체로 관련 작업 세부 사항 (역할, 경험, 기술, 설명)을 추출하고 형식화합니다.
- 개인화 된 콜드 이메일 : 후보자의 기술 및 관련 포트폴리오 링크로 사용자 정의 할 수있는 Groq 기반 LLM을 사용하여 맞춤형 콜드 이메일을 생성합니다.
- Vector Database Integration : Cold 이메일에 대한 관련 링크의 효율적인 쿼리를 위해 ChromADB를 사용하여 기술 스택 및 포트폴리오 메타 데이터를 저장합니다.
- 동적 이메일 생성 : 직무 설명과 일치하고 가장 관련성이 높은 경험과 프로젝트를 강조하는 개인화 된 결과 중심 이메일을 생성합니다.
사용 된 기술
- LLM 통합 (GROQ) : 고 진수성 텍스트 생성을위한 ChatGroq (LLAMA-3.1-70B) 모델.
- Langchain : 동적 프롬프트 템플릿을 생성하고 응답을 생성하기 위해 LLM을 체인하는 데 사용됩니다.
- FLASK : 백엔드 서버는 이메일 생성 요청을 처리하고 작업 스크래핑 및 LLM 상호 작용을 관리합니다.
- React.js : 사용자 입력 (예 : 사용자 이름)을 수집하고 이메일 생성 프로세스를 트리거하기위한 Frontend.
- ChromADB : 효율적인 메타 데이터 저장 및 쿼리를위한 벡터 데이터베이스.
- PANDAS : 포트폴리오 CSV 데이터를 처리하고 ChromADB의 저장에 처리하는 데 사용됩니다.
- Flask-Cors : 플라스크 백엔드 용 CORS 활성화.
설정 지침
전제 조건
- 파이썬 3
- node.js 및 npm (React Frontend 용)
- Groq API 키 (LLM 통합 용)
설치
저장소 복제 :
git clone https://github.com/IMRANDIL/cold_email_generator_llm.git
cd cold_email_generator_llm
백엔드 설정 (플라스크) :
- 가상 환경 생성 및 활성화 :
python3 -m venv venv
source venv/bin/activate
- 필요한 파이썬 종속성을 설치하십시오.
pip install -r requirements.txt
- Groq API 키의 환경 변수 설정 :
export GROQ_API_KEY= " your-api-key "
- 플라스크 서버 시작 :
프론트 엔드 설정 (React) :
-
frontend 디렉토리로 이동하십시오. - 종속성 설치 :
- React 개발 서버 시작 :
용법
- 프론트 엔드 인터페이스를 방문하여 사용자 이름을 입력하고 이메일 생성 프로세스를 트리거하십시오.
- 백엔드는 작업 게시물을 긁어 내고 Langchain 프롬프트로 처리하고 벡터 데이터베이스를 쿼리하며 각 작업에 대해 맞춤형 콜드 이메일을 생성합니다.
- 전자 메일은 JSON 형식으로 반환되며 "클립 보드로의 복사"기능이있는 잘 구성된 코드 블록으로 표시됩니다.
예제 출력
{
"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... "
}향후 향상
- 동적 웹 스크래핑 : 웹 스크래핑 기능을 확장하여보다 복잡하고 역동적 인 작업 웹 사이트를 처리합니다.
- 고급 쿼리 : 여러 기술 세트를보다 효율적으로 처리하기위한 벡터 데이터베이스 쿼리 메커니즘을 개선합니다.
- UI 향상 : 더 나은 사용자 경험과 여러 전자 메일 템플릿에 대한 지원을 위해 React.js 프론트 엔드를 더욱 향상시킵니다.
- 다중 API 통합 : 다양한 LLM 모델 (OpenAI 등)과의 통합을 탐색하여 다양성 증가.
특허
이 프로젝트는 MIT 라이센스에 따라 라이센스가 부여됩니다. 자세한 내용은 라이센스 파일을 참조하십시오.