CrewAI로 구현한 AWS 스크리닝 에이전트 자동화
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

간단한 스크리닝 에이전트 구현: CrewAI 활용

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

DevOps

대상자

- Python 기반 자동화 도구 사용자

- AWS 문서 기반 인터뷰 질문 생성이 필요한 HR/Recruiter

- 중간 수준의 개발자 및 DevOps 엔지니어 (가상 환경 설정, CrewAI 활용 기초 지식 요구)

핵심 요약

  • CrewAI를 활용한 스크리닝 에이전트 구현

- gemini/gemma-3n-e2b-it 모델을 사용한 AWS 문서 기반 질문 생성

- .env 파일을 통한 API 키 관리 및 LLM 설정

  • 프로젝트 구조 정의

- uv init으로 프로젝트 생성 후 가상 환경 설정 (uv venv)

- agents.py에서 Agent 정의, tasks.py에서 Task 정의

  • 자동화 흐름

- topics 입력을 통해 AWS Redshift, Glue, S3 주제별 질문 생성

- 결과는 output.md 파일에 저장

섹션별 세부 요약

1. 프로젝트 초기화 및 환경 설정

  • uv init screening_agent 명령어로 프로젝트 생성
  • 가상 환경 생성 및 활성화 (uv venv, source .venv/bin/activate)
  • pyproject.tomlcrewai==0.134.0 의존성 추가 및 설치 (uv lock, uv sync)

2. LLM 설정 및 API 키 관리

  • .env 파일에 GOOGLE_API_KEY 설정
  • llm.py에서 LLM 객체 정의:

```python

llm = LLM(model='gemini/gemma-3n-e2b-it', api_key=os.getenv('GOOGLE_API_KEY'), temperature=0.0)

```

3. 에이전트 정의

  • agents.py에서 Screening Agent 생성:

- 역할: AWS 공식 문서에서 주제별 정보 수집

- 목표: 각 주제당 10개 질문 생성 (1라인 질문 + 1라인 답변 + 참조 링크 포함)

- topics 파라미터 동적 전달 지원

4. 태스크 정의

  • tasks.py에서 Task 생성:

- 설명: 비기술자도 이해할 수 있는 질문 생성 (HR 사용 목적)

- 예상 출력: 10개 섹션 (질문, 답변, 참조 링크)

- topics 파라미터 동적 전달

5. 메인 실행 파일 구조

  • main.py에서 Crew 정의:

```python

crew = Crew(agents=[screening_agent], tasks=[screening_task])

result = crew.kickoff(inputs={"topics": "Redshift, Glue, S3"})

```

- 결과를 output.md 파일로 저장

결론

  • CrewAI를 활용한 자동화 흐름:

- uv 도구로 프로젝트 생성 후 가상 환경 설정 → LLM 및 에이전트 정의 → topics 입력을 통해 자동 생성

- 추천사항: topics 파라미터를 사용자 입력으로 확장하거나, RAG 기반 질문 생성 로직 추가 가능

- 예시 실행: uv run main.py 명령어로 실행 후 output.md 파일에서 질문 결과 확인 가능