일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- MS
- micsrosoft ai
- 마이크로소프트 ai 스쿨
- 마이크로소프트 ai 스쿨 6기
- 마이크로소프트 AI
- microsoft ai school
- msai
- 마이크로소프트 ai 스클
- microsoft ai
- 마이크로소프트
- microsoft
- 마이크로소프트 ai school 6기
- microsoft ai school 6기
- Today
- Total
연랩
Azure Open AI를 활용한 독립 운동 관련 공익성 웹서비스 : 독립해결사 본문
Azure Open AI를 활용한 독립 운동 관련 공익성 웹서비스
: 독립해결사
프로젝트 배경
개발 환경
위와 같이 다양한 개발 환경을 사용하였다. 이외에도 node.js 등 다양한 개발 환경을 이용하였다
주요 역할과 경험
- Full-stack 개발 담당
- Azure Open AI를 활용하여 RAG 모델을 구성하고 REST API로 연결
- Azure Language Studio, Azure Speech Studio, Azure Foundry를 사용하여 모델 구성 및 연결
- Azure Language Studio를 통한 번역 기능 구현(한국어, 영어, 일본어)
- Azure Speech Studio를 통한 Text to Speech 기능 구현
- Python 코드 Django로 배포
- Flask와 node.js를 활용하여 frontend 페이지 구현
- 반응형 웹 디자인 및 구현
- Azure virtual machine을 통한 배포
- Azure Blob storage를 활용하여 이미지 데이터 저장
- Gunicorn과 Nginx를 통한 웹서비스 배포 및 DNS 연결
- 시스템 구조도 작성 및 발표
프로젝트 내용
시스템 구조도
기능 소개
- 닮은 독립 운동가 찾기
- 독립운동가와의 대화
- 챗봇을 이용한 텍스트 게임
- 독립운동 관련 펀딩
나와 닮은 독립운동가 찾기
- OpenCV와 Dlib을 활용하여 구현
- 각 매칭 거리(distance)의 평균을 내고, 그걸 기반으로 유사도 점수(%)를 계산
- 독립기념관에서 제공한 독립운동가 사진 데이터를 바탕으로 구성
- 번역 및 TTS 기능 제공
사용자가 사진을 찍으면, 닮은 꼴 독립 운동가를 찾아준다.
이후, 독립운동가에 대한 간단한 설명을 제공하는 페이지가 나온다
우측 하단의 대화하기를 누르면, 독립운동가와 대화할 수 있는 챗봇이 실행된다.
닮은 꼴 독립운동가와 대화할 수 있는 챗봇을 통해 독립운동가에 대한 정보를 접할 수 있다.
독립운동가와의 대화
- RAG 모델 연결
- Azure Open AI 활용
- Azure ai Search 및 임베딩으로 활용하여 데이터 적용
- TTS 및 번역 기능 적용
닮은 꼴 독립운동가를 찾은 후, 넘어갈 수 있는 독립운동가와의 채팅 이외에도, 우측 메뉴창을 통해 지정하는 독립운동가와 대화할 수 있다.
원하는 독립운동가를 입력하면, 챗봇인 해당 독립운동가가 되어 답변을 해준다
정보를 스토리 텔링 형식으로 제공하며, 꼬리에 꼬리를 무는 형식으로 답변을 제공한다.
- 4개의 메인 규칙, 13개의 기타 규칙을 준수하도록 프롬프트를 지정하였다
챗봇을 이용한 텍스트 게임
- 선택형 텍스트 게임
- 직접입력형 주관식형 텍스트 게임
선택형 텍스트 게임
- Azure Open AI를 활용하여 AI가 답변을 생성하도록 구성
- 해당 사건에서 나는 어떻게 행동하였을 지 선택형으로 답변
총 3개의 시나리오 제공, 이 중 하나를 선택하여 진행
화면에 상황과 선택지가 제공되며, 이에 따라 사용자가 해당 상황에서 어떤 선택을 하였을 지 선택하여 시나리오를 진행하는 형식의 게임이다
직접 입력형 주관식형 텍스트 게임
- Azure Open AI 이용
- LLM으로서의 모델을 보다 본격적으로 활용할 수 있도록 구성
- 대중이 비교적 익숙한 사건을 소재로 하여 게임에 몰입할 수 있도록 구성
-> 안중근 의사의 이토 히로부미 살인 혐의 재판을 배경으로 게임 구성
- 번역기능 제공
1단계 심문, 2단계 법정 심리, 3단계 최종 진술 및 판결 순으로 진행되게 구성
-> 사용자는 안중근의 입장이 되어 재판관의 질문에 답변하는 형식
- 각 단계별 1, 2회 문답으로 진행
예시 답변과 역사적 맥락을 제공하여 사용자가 상황을 이해할 수 있도록 UI/UX 구현
우측 하단에 독립운동에 관한 내용을 학습할 수 있도록 퀴즈 테스트 기능 제공
약 3가지의 문제를 제공하며, 마지막에 결과 확인 가능
독립운동 관련 펀딩
- 독립 운동에 관해 사용자가 참여할 수 있도록 캠페인 링크 제공
그 외 기타 기능
- 번역 기능
한국어, 영어, 일본어로 번역 기능 제공
- TTS 및 음소거 기능 제공
한국어, 영어, 일본어 tts 기능을 제공
우측 하단에 음소거 기능 제공
- https 및 DNS, 웹 서버 연결
gunicorn과 nginx를 활용하여 웹 서버 연결
https로의 연결 구현
azure virtual machine를 활용하여 배포, DNS 연결
django로 rest api 구성하여 react와 연결
- 반응형 웹서비스 구현
모바일 및 웹에서 활용 가능하도록 반응형 UI/UX 제공
서비스 활용 및 정리
타 서비스와의 차별점
- 기존 유사 서비스
해당 서비스의 차별점
닮은 독립 운동가 찾기로 대중성 확보 및 번역기능으로 포용성 제공
인공지능 윤리
활용 방안 및 기대 효과
간단한 후기
Azure Open AI를 활용하여 처음으로 진행한 프로젝트이다. RAG 모델 등 여러 AI의 기능을 다채롭게 활용해 볼 수 있는 좋은 기회였다. 하나의 완성된 서비스의 형태로 끝낼 수 있어서 보람이 있었다. 공익성을 가지고 한 프로젝트는 처음이었지만, 좋은 주제로 개발할 수 있는 기회였다.
출처
[1] 독립기념관, "한국독립운동인명사전," Available: https://search.i815.or.kr/dictionary/main.do
[2] 독립운동가 유사 인물 추천 시스템, Available: https://independent.eastus.cloudapp.azure.com/
[3] 대한적십자사, "독립운동가 후손 돕기 캠페인," Available: https://redcross.campaignus.me/myfather
[4] 한국해비타트, "독립유공자 후손 주거개선 캠페인," Available: https://habitat.or.kr/landing/2025/independence/
[5] 굿네이버스, "고려인 지원 캠페인: 우리는 같은 민족 고려인입니다," Available: https://ad.goodneighbors.kr/diaspora24a/web/nr/index.html
[6] LG유플러스, "광복절 캠페인 ‘당연하지 않은 일상’, 4년간의 기록," Available: https://blog.uplus.co.kr/4547
[7] 빙그레, "‘처음 입는 광복’ 독립운동 캠페인 시행," Available: https://www.bing.co.kr/news/news_announced_view?anno_idx=205
독립운동가에 관한 정보 및 이미지의 출처는 독립기념관입니다
본문의 내용은 학습과 개인 profile 이외의 다른 목적이 없습니다
출처 관련 문제 있을 시 말씀 부탁드립니다
상업적인 용도로 사용하는 것을 금합니다
깃허브 소스코드의 내용을 담고 있습니다
Microsoft에서 제공하는 자료와 정보를 담고 있습니다
Microsoft Azure의 AI 모델을 활용하였습니다
본문의 내용은 MS AI School 6기의 강의 자료 및 수업 내용을 담고 있습니다
'프로젝트' 카테고리의 다른 글
머신러닝과 커스텀비전을 활용한 퍼스널컬러 기반 중고 거래 플랫폼(모바일 앱) : Personal (0) | 2025.02.26 |
---|---|
데이터 분석: 날씨(기온, 습도)와 스포츠 관중 수와의 관계 (3) | 2024.11.28 |
AI 번역 기능을 탑재한 예약 관리형 챗봇(ChatBot): Space Chat (5) | 2024.11.01 |
AWS cloud를 이용한 데이터 마이그레이션(Data Migration) (8) | 2024.10.14 |
Data Augmentation(데이터 증강) (4) | 2024.10.06 |