AInfo: 공공서비스 추천 AI 챗봇 프로젝트 소개
AInfo 프로젝트의 전체적인 개요, 기획 배경, 주요 기능 및 기술 스택을 정리한 글입니다.
AInfo: 공공서비스 추천 AI 챗봇 프로젝트 소개
AInfo 프로젝트 소개
정책은 있는데, 정보는 어디 있나요?
정부와 지자체는 다양한 공공서비스와 복지정책을 운영하고 있지만, 정작 필요한 사람들에게 도달하기까지 정보 탐색의 허들이 높습니다. 특히 1만 개가 넘는 지원 정책 중에서 내가 받을 수 있는 것을 찾는 것은 일반 사용자에게 굉장히 어렵습니다.
AInfo는 이런 문제를 해결하기 위해 기획된 맞춤형 공공서비스 추천 AI 챗봇입니다. 사용자의 나이, 지역, 관심분야를 기반으로 적절한 정책을 탐색하고, 유사 정책을 비교하거나 맞춤형 전략을 제시할 수 있는 대화형 인터페이스를 제공합니다.
기획 배경
AInfo는 실제 팀원 중 한 명이 국민취업지원제도를 몰라 신청 기회를 놓친 경험에서 출발했습니다. 비슷한 불편을 겪는 이들을 위해 “정책은 있는데 정보가 없는” 상황을 해결하고자 했고, 정책 탐색의 장벽을 낮추는 AI 챗봇을 만들기로 했습니다.
핵심 기능 요약
- 대화형 정책 탐색: 정책 정보를 검색하고 비교하는 과정을 LLM 기반 챗봇과의 자연어 대화로 수행
- 맞춤형 추천: 나이, 지역, 관심분야 기반 필터링 + 벡터 유사도 검색을 통해 개인에게 적합한 정책 추천
- 의도 분석 및 멀티턴 대화 흐름: 사용자 입력을 분류해 조건에 따라 다양한 에이전트를 실행하며 대화 흐름을 자연스럽게 이어감
- 웹 검색 보완: 정책 정보가 부족한 경우 외부 웹 데이터를 활용해 보완 정보 제공
- 보고서 생성: 추천된 정책을 정리해 요약 보고서 형태로 자동 생성
- 대화 이력 저장 및 챗룸 관리: 사용자의 대화 기록을 저장하고, 채팅방 단위로 이력을 불러와 이어서 대화 가능
- 자동화된 정책 데이터 수집: 정부24, 고용24, 온통청년 등의 공공 API 및 K-스타트업 PDF에서 정책 데이터를 수집 및 벡터화하여 ChromaDB에 저장
기술 스택 개요
- 백엔드 프레임워크: Django, Django REST Framework
- 데이터베이스: PostgreSQL, ChromaDB
- 실시간 통신: Django Channels, WebSocket, Redis
- AI 및 검색: OpenAI GPT, LangChain, CrewAI
- 데이터 수집 및 전처리: 정부24, 고용24, 온통청년 API, K스타트업 PDF, JSON/XML/PDF 파싱 및 벡터화
- 이메일 인증: Google SMTP + Django send_mail
- 비동기 작업 처리: Celery
- 결제 연동: PortOne (프리미엄 서비스용)
- 환경 변수 관리: Django Environ
- 배포 및 인프라: Docker, AWS (EC2, S3, CloudFront, Route 53), Nginx, Gunicorn
This post is licensed under CC BY 4.0 by the author.