- Hack for Public Good in Korea Gen.AI 해커톤
싱가폴 Hack for Public Good에 영감을 받은 행사로 생성형 AI 기술로 공공부문 업무혁신을 실현할 수 있는 아이디어 창출 및 솔루션을 개발하는 해커톤 행사
지난 4월 13일 KID국제정책대학원과 마이크로소프트가 함께하는 생성형 AI를 활용한 행사에 참여하였다 🤚
참가자들에게 OpenAI를 이용해 챗봇 개발을 할 수 있도록 교육해주며 토큰도 (거의) 무제한이라고 해서 좋은 기회라고 생각되었다.
음성이나 이미지 처리하시는 팀들은 토큰을 금방 다 쓰셔서 발표할 때 애를 먹으시기도 했다.
마이크로소프트 건물은 경복궁 바로 앞에 있는데
경복궁에 놀러갈 때마다 참 전망이 좋아보여서 올라가보고 싶었었다.
말도 안되는 전경.
외국인 친구들 데려오고 싶을 지경이였다..
이런데에서 근무한다면 야근 나쁘지 않을지도?
OT는 1시부터, 교육은 2시부터였는데 1시부터 온 사람들은 거의 없었던 것 같다.
정시에 도착했는데 텅텅 비어있었던 !
행사운영 패들렛에 들어가면 행사 일정과 어떤 사람들이 참여했는지 볼 수 있었다.
거의 34팀 정도였던 듯 하다!
패들렛은 팀원을 구하고, 중간 자료나 자기소개를 업로드 하는 등
해커톤 전반적으로 유용하게 사용했다.
- 해커톤 Azure OpenAI 교육과정 소개
교육은 총 4시간으로 진행되었고, 다음과 같은 교육을 받을 수 있었다.
1. 생성형 AI의 기본 개념과 주요 개념을 소개 (0.5)
2. 프롬프트 엔지니어링을 통해서 충분한 결과를 얻기위한 여러가지 기법들을 학습 (0.5)
3. OpenAI에서 제공하는 모델들을 설명하고 이를 Azure에서 제공하고 있는 Azure OpenAI Studio를 활용 (1)
4. OpenAI 모델을 활용한 Chatbot을 개발해보고 각자 목적에 맞는 Chatbot 개발 (1)
5. 이미지를 생성하기 위해서 OpenAI의 DALL-E3을 사용하는 서비스 개발 (1)
아래는 간단하게 Azure OpenAI를 이용해서 세종대왕이 누군지 물어볼 수 있는 간단한 코드 예시이다.
import openai
openai.api_key = 'open_api_key'
openai.azure_endpoint = 'azure_endpoint'
openai.api_type = 'azure'
openai.api_version = '2023-05-15'
result = openai.chat.completions.create(
model='dev-gpt-35-turbo-01',
messages=[
{"role": "system", "content": "You are a helpful assistant"},
{"role": "user", "content": "세종대왕은 누구?"},
]
)
print(result.choices[0].message.content)
- 해커톤 진행
해커톤은 공공서비스의 혁신과 국민의 공공서비스 이용향상에 기여하는 아이디어 개발에 관한 네가지 주제로 진행이 되었다.
우리는 다음과 같은 주제를 선택하였다.
AI/Cloud Services for Goverment Productivity
: 정부 업무 효율과 생산성 향상을 위해 AI와 클라우드 사용, 문서처리부터 데이터 분석까지 최적화 목표
주제 선택 이후 팀원들은 공무원 지인들과 전화 인터뷰를 진행하여 업무 현실에 대해서 조사를 시작하였다.
공무원들 대다수는 온나라 플랫폼을 통해 업무를 진행하고 있으나, 온나라 플랫폼 2.0 개편 이후 불편을 호소하는 사람들이 많았다.
문제점 1. 검색 효율성이 낮음.
: 응답자들은 온나라 문서시스템을 활용할 때, '키워드 선정 기준 부재'와 '키워드 개수 및 표현법 선택의 어려움' 때문에
키워드 작성에 어려움을 겪는다고 이야기하였다. 이렇게 전문 교육 없이 임의로 입력된 키워드는 검색 효율성을 매우 떨어뜨리는 결과를 야기한다.
문제점 2. 검색 시스템의 한계
: 응답자들은 문서 검색 시, 제목과 특정 키워드로만 검색을 해야해서 원하는 자료를 찾기 어렵다는 불편을 이야기하였다.
추가적으로 1년치 자료만 검색이 가능해 기존 자료를 볼 수 있는 한계가 존재하다고 말했다.
문제점 3: 인수인계 과정의 한계
: 공무원들이 자주 근무지를 옮겨야 하는 것에 비해 인수인계 과정이 미흡하며,
교육 자료가 매우 미흡하여 문서 작성에 어려움을 겪는다고 이야기하였다.
해결책 1. 과제 키워드 추천
: 첨부된 문서로부터 과제 키워드를 자동으로 생성해준다.
1. 첨부된 pdf 로부터 요약본 자동 생성
2. 카테고리 키워드 후보 산출
3. 담당자 후보 산출
4. 제목, 내용 후보 산출
해결책 2. RAG 기술을 활용한 의미기반 검색
1년치 자료 뿐만 아니라 더 넓은 기간을 효율적으로 검색할 수 있도록 세팅한다.
기존 제목, 특정 소수 키워드를 넘어 문서를 GPT로 분석하여 의미기반 검색이 가능하게 한다.
해결책 2. 기존 업무 프로세스 학습 후 실무자들에게 온보딩 프로그램 제공
실무자들이 업무를 진행할 수 있는 샘플을 모의고사처럼 제공한다.
총 3시간의 긴 회의 이후
해커톤을 시작하였다. (12시..)
당연히 과자 무한리필이었던 해커톤
도시락 종류는 3가지였던 해커톤
1인 1 닭강정이였지만 백엔드 mj님과 나눠먹었던 해커톤
개발해야 하는 양도 너무 많았고, 중간에 나 자신의 한계를 느껴버려서
마감시간인 오전 9시까지 못할 것 같다는 막연한 불안감이 들었다.
너무 불안해서 혼자 키다리책상 가서 개발 완료 할때까지 자리로 돌아가지 않았다.
집중해서 오전 8시까지 기적적인 완료!
개발하는 내내 심장이 너무 빨리 뛰었다..
- 해커톤 마무리
간단하게 공유해 보는 해커톤 결과!
가장 집중하였던, pdf 내용을 분석해 업무를 반자동으로 진행할 수 있도록 도와주는 서비스
쟁쟁한 팀원들이 너무 많아서 아쉽게도 수상까지는 가지 못했다.
그래도 생성형 AI에 대해서 전반적인 생태계를 알게 되었으며 참가자들을 보며 많은 자극을 받았다.
또한 프론트엔드에 한정되지 않고 더 넓은 분야를 바라보아야 되겠다는 생각이 들었다.
마지막으로 최근 프론트엔드 개발에 대해서 많이 위축되어 있었던 것 같은데,
시간 내에 정해진 양을 성공적으로 끝마치면서
잠시나마 해커톤을 통해 자신감을 회복할 수 있는 계기가 되었던 것 같다!
'etc' 카테고리의 다른 글
[Flutter] Could not find an option named "no-sound-null-safety". (1) | 2024.04.30 |
---|---|
[YBM 종로센터] 이지영 오픽 IM3~AL 후기 (7.4~7.15) (1) | 2022.08.12 |
연결이 비공개로 설정되어 있지 않습니다. NET::ERR_CERT_INVALID 우회 접속하기 (0) | 2022.01.24 |
몽키 패치(Monkey patch)란? (0) | 2022.01.13 |