AI 활용기
Fecit에서 AI가 하는 일들. 추천, 생성, 제안. 아직 실험 중인 것들에 대한 이야기.
AI 활용기
AI를 넣고 싶었습니다. 사람이 하기 귀찮거나, 사람이 하면 오래 걸리는 일이 있었고, 거기에 AI가 딱 맞을 것 같았습니다.
어디에 쓰고 있는지, 왜 그렇게 했는지 적어 봅니다. 잘 되는 것도 있고, 아직 어설픈 것도 있습니다.
템플릿 추천
할 일을 만들 때 제목을 쓰기 시작하면, 비슷한 이름의 템플릿이 아래에 나타납니다. “전에 이런 걸 만들어 두셨는데요.”
AI라고 하기에는 좀 민망한 기능입니다. 사실 이건 검색에 가깝습니다. 제목을 기준으로 기존 템플릿을 찾아서 보여주는 거니까요. 자주 쓴 템플릿이 위로 올라오고, 고정해 둔 게 우선됩니다. 최대 3개까지.
300밀리초 디바운스를 걸었습니다. 글자 하나 칠 때마다 목록이 깜빡거리면 정신이 없어서요.
단순한 기능인데, 제가 제일 많이 씁니다. 같은 종류의 일을 반복하는 사람에게는 꽤 편합니다. 제목 몇 글자만 치면 예전에 다듬어 둔 템플릿이 바로 나오니까요.
여기에 고스트 텍스트도 붙였습니다. 제목을 입력하다 보면 추천 템플릿의 이름이 흐릿하게 채워집니다. 마음에 들면 탭 한 번으로 완성. 마음에 안 들면 그냥 계속 쓰면 됩니다.
하위 작업 자동 생성
이건 “되면 좋겠다” 싶어서 넣어 본 기능입니다.
템플릿이나 할 일의 제목과 설명을 보고, AI가 하위 작업을 만들어 줍니다. “블로그 글 작성”이라고 적으면 “주제 선정”, “초안 작성”, “편집”, “발행” 같은 하위 작업이 제안됩니다.
OpenAI의 GPT 모델을 쓰고 있습니다. 한국어와 영어 각각에 맞는 프롬프트를 작성했고, JSON 스키마를 지정해서 구조화된 응답을 받습니다. 3~5개의 하위 작업이 생성되고, 자동으로 연결 관계까지 만들어 줍니다.
완벽하지 않습니다. 너무 일반적인 제안이 나올 때도 있고, 맥락을 못 잡을 때도 있습니다. 하지만 빈 화면에서 시작하는 것보다는 뭐라도 있는 게 낫더라고요. 거기서 고치면 되니까요.
별이 빙글빙글 도는 로딩 화면을 넣었습니다. 생성하는 데 몇 초 걸리는데, 그 시간을 그냥 빈 화면으로 두면 불안해 보여서요. 사소한 부분인데, 이런 게 체감에 영향을 줍니다.
일일 사용 횟수 제한이 있습니다. 비용 문제 때문에 타협한 부분입니다. 무한으로 하고 싶었지만 현실적이지 않았습니다.
개선 제안
할 일을 완료했을 때, 원본 템플릿과 달라진 점이 있으면 물어봅니다. “템플릿이랑 다른 부분이 있는데, 반영할까요?”
예를 들어 “주간 보고” 템플릿으로 할 일을 만들었는데, 하다 보니 설명을 수정하고 하위 작업을 추가했다면, 완료 후에 “이 변경사항을 템플릿에도 적용할까요?” 하고 제안합니다.
이게 왜 중요하냐면, 템플릿이라는 게 한 번 만들고 끝이 아니거든요. 쓸 때마다 조금씩 나아져야 합니다. 그런데 막상 완료하고 나면 템플릿을 열어서 수정하러 가는 건 귀찮습니다. 그 귀찮음을 줄여주는 기능입니다.
탭 한 번이면 반영됩니다. 귀찮으면 무시하면 됩니다. 템플릿 설정에서 이 제안 자체를 끌 수도 있습니다.
오버뷰 추천
커뮤니티에서 다른 사람의 오버뷰를 구경할 때, AI가 카테고리와 언어에 맞는 오버뷰를 추천해 줍니다.
기술적으로는 OpenAI의 text-embedding-3-small 모델로 임베딩을 만들고, MongoDB Atlas Vector Search로 유사한 콘텐츠를 찾습니다. 사용자의 관심사도 임베딩으로 관리하는데, 설문이나 할 일을 만들 때마다 기존 임베딩에 새로운 것을 섞어서 업데이트합니다. 똑같은 추천만 나오면 재미없으니까, 가우시안 노이즈를 살짝 섞어서 매번 조금씩 다른 결과가 나오게 했습니다.
아직 다듬는 중입니다. 추천의 질은 콘텐츠가 쌓일수록 나아질 거라고 기대하고 있습니다.
별이 돌아가는 로딩 애니메이션은 여기에도 들어갑니다. 최소 2.5초는 보여줍니다. 너무 빨리 끝나면 뭔가 대충 한 것 같아 보여서요. 이건 착각을 이용한 거라 좀 부끄럽습니다.
저장 제안과 집중 제안
비슷한 이름의 할 일을 여러 번 만들면, “이거 자주 만드시네요. 템플릿으로 저장할까요?” 하고 제안합니다.
할 일을 시작하면, “이 일에 집중할까요?” 하고 물어봅니다. 집중하면 목록 맨 위에 고정됩니다.
둘 다 AI라기보다는 패턴 감지에 가깝습니다. 하지만 적절한 타이밍에 적절한 질문을 하는 게 생각보다 어려웠습니다. 너무 자주 물어보면 짜증나고, 너무 안 물어보면 존재감이 없고.
아직 그 균형을 찾고 있습니다.
솔직한 이야기
AI 기능은 아직 다듬는 중이지만, 매일 쓰고 있고 매일 조금씩 나아지고 있습니다. 비용 문제도 있지만, 쓸 만한 수준은 됩니다.
다만 방향은 분명합니다. AI가 할 일을 대신 해주는 게 아니라, 사람이 할 일을 시작하고 끝내는 걸 조금 더 수월하게 만들어 주는 것. 빈 화면 앞에서 뭘 적어야 할지 모를 때, 한 줄이라도 던져주는 것. 다 끝나고 나서 배운 걸 정리하기 귀찮을 때, 한 번 물어봐 주는 것.
거창한 AI가 아닙니다. 옆에서 슬쩍 도와주는 정도. 그 정도면 충분하다고 생각하고 있고, 그 정도를 잘하는 게 생각보다 어렵습니다.
계속 만들어 나가고 있습니다. 어설픈 부분이 보이면 알려주세요.
AI는 도구입니다. 도구가 좋으면 일이 조금 수월해집니다.