AI를 업무에 활용하기 위한 단계 부터 시스템 구축까지 ...
어떻게 하면 AI를 가지고 업무에 활용 및 구축까지 구현이 가능할까요 ?
이 질문은 AI OpenChat, Copilot, Geminai, Claude등 많은 모델을 사용하면서 기업이나 사용자들이 겪는 여러가지 문제입니다.
이런 여러가지 고민들을 해결하기 위한 여러가지 시행 착오나 계획을 가지고 하나 하나 해결해 보려고 합니다.
처음 우리는 AI 쉽게 접근할 수 있는 웹브라우저 AI모델에서 정답을 찾으려고 질문을 합니다.
결국 AI를 업무에 활용하고자 하는 목적은 대부분이 반복된 업무의 자동화나 데이터 분석을 통해 좀 더 나은 업무에 결과를내기 위함입니다.
물론 고객 응대에 대한 부분이 중요합니다. 하지만 고객 응대 업무를 주로 하는 사용자라면 업무 자동화를 통해 보다 나은 고객 응대가 가능해 질지도 모르겠습니다.
사실 모든 업무 활용에 대한 정답은 AI에게 있는 것이 아니라, 사용자 본인에게 정답이 있습니다. AI는 유사한 업무를 하는 방대한 빅 데이터를 가지고 사용자가 생각하는 업무에 대해서 추천 및 가이드를 제공하는 역할을 하는 것이라고 생각해야 할 것같습니다.
AI가 물론 빅데이터를 가지고 새로운 형태의 업무를 생성하고 활용할 수 있다면 좋지만, AI가 새로운 형태의 업무를 만들었을때, 과연 이런 업무가 가능한가? 이런 새로운 형태의 업무가 과연 효과가 있을까? 이런 저런 질문과 검증은 결국 사람이 해야하거나, 또 다른 AI가 검증을 해야합니다.
일반적으로 직장에서는 업무담당자와 업무 검증을 하는 관리자가 존재합니다. 업무에 결과에 대한 검증 및 피드백등 다양한예상되는 업무 시나리오에서 유기적으로 얽혀서 회사는 성장하고, 퇴보하거나, 유지하거나 그렇습니다.
제가 생각하는 업무는 예측이 가능해야하고, 충분히 결과를 예상할 수 있어야 합니다. 예측이 불가능한 하거나, 결과를 예상할수 없다면 이걸 업무라고 불러야 될지 저는 잘 모르겠습니다.
스티브 잡스는 새로운 기술을 발명하기보다, 기존에 흩어져 있던 기술과 아이디어를 사람들의 욕구와 연결하여 완전히 새로운경험으로 창조했습니다. 그는 기술 그 자체가 목적이 아니라, 사용자가 직관적이고 우아하게 활용할 수 있는 방식을 찾는 것이혁신의 본질이라고 강조했습니다.
무작정 AI를 가지고 업무를 쉽게 처리하려거나 결과를 내려하는 것은, 내가 AI에게 업무를 시키는 또다른 업무를 추가하는결과입니다. 물론 업무가 늘어났지만 또한 시간은 줄었습니다. 시간이 줄어서 업무 생산성이 좋아졌다고 할 수 있겠습니다. 장기적으로 볼때 회사나 개인에게 좋은 결과를 예상하기는 어렵다고 생각합니다.
AI가 수행하기 쉬운 반복적이고 정형화된 업무를 분담해서 개인의 업무를 줄이고 남는 시간에 업무 개선이나 새로운 기획을만드는 시간을 개인에게 할당한다면, 어느 누가 보아도 회사가 성장할 수 있는 가능성이 높아진다고 생각할 것입니다.
저는 이제 정형적인 업무시스템을 개인에 맞게 업무시스템을 활용할 수 있도록 AI를 통한 업무시스템 구축 및 AI를 활용한업무를 위해서 준비하는 과정을 실제 구축 및 경험을 통해서 설명을 하려고 합니다.
2. 준비단계
AI를 위한 서비스를 구성하기 위한 목적에 따라 여러가지 배경이 되는 솔루션 조합을 구성해야 합니다.
요구사항 정의를 위해서 AI (Copilot, ChatGPT, Claude,Geminai 등을 통틀어 AI라고 표현하겠습니다.)에게 질의를 합니다.
“언어 데이터를 수집해서 반복되는 전문 용어에 대한 표준화 가이드를 받아 서비스를 하고 싶은데, 자체 AI를 구축하기 위한구성이 어떻게 될까?”
결국 AI 자체 구축을 하고 학습을 하기 위해서는 주기적인 데이터를 수집해서 수집한 데이터 베이스를 기반으로 기반 시스템을 구축하는 것이 중요합니다.
결국 데이터 흐름은 추출 > NLP > 표준화 > 학습 > 서비스 로 요약할 수 있는데, 추출을 위한 단계나 서비스를 위한 단계를위한 시스템 구축 준비가 필요합니다. 물론 AI에게 이런 시스템 구축을 맡겨서 서비스를 구성해도 됩니다. 단순 구축에서 끝나는 경우나 더 이상의 요구 사항이 없다면, 그냥 맡겨서 마무리 하면 됩니다. 그러나 유지보수나 기타 확장성을 고려한 설계가 필요하다면, 요구사항 정의서나 시스템 설계를 미리 준비해서 기반 시스템을 구축해야 합니다.
시스템 구성에 필요한 구성요소
|
모듈 |
역할 |
추천 오픈소스 |
|
사용자 키워드 수신 |
Flask, FastAPI |
|
|
웹 데이터 수집 |
Scrapy, Nutch |
|
|
HTML → 텍스트 변환 |
BeautifulSoup, lxml |
|
|
토큰화, 표준화 |
spaCy, KoNLPy |
|
|
인덱싱/검색 |
Elasticsearch, Lucene |
|
|
결과 반환 |
Django REST, FastAPI |
3. 입력
결국 자체 구축 AI를 활용하기 위해서는 데이터에 대한 입력이 필요합니다.
AI는 사용자의 요구 조건에 맞는 고 품질 결과값을 제공해야 하기 때문입니다.
데이터를 입력받는 방법을 구상해야 합니다.
입력 방법에는
1. 사용자가 직접 데이터를 입력하는 방법
A. 이 경우 데이터의 문서 형식이나 확장자에 따라서 파싱이 필요합니다. 대부분의 AI에 md, json, text, csv 확장자인 경우는 바로 AI가 인식해서 처리하지만, docx, xlsx 등의 파일은 한계가 있습니다. 그래서 준비 단계에서 파싱을 위한 여러 프로그램 준비가 되어 있어야 합니다.
2. AI가 스스로 데이터를 가져오는 방법
A. AI가 키워드 검색을 통해 꾸준히 크롤링하고 데이터를 파싱해서 원하는 정보를 수집하는 형테로 데이터를 가져올 수 있습니다.
B. 사내 스토리지를 지정해서 사내 스토리지에 데이터를 가져오게 구성할 수도 있습니다.
결국, 설계시에 데이터 입력 방식을 고려한 구성과 데이터 수집에 대한 데이터베이스 설계가 중요합니다. 제대로 입력 받아 학습된 AI를 이용하면 문서 작업중에 회사 내에서만 사용하는 고유 제품명이나 스펙입력시에 문서 작업에서 맞춤법 검사처럼자동 고침이나 추천 언어를 제공하는 기능 구현이 가능합니다.
AI가 데이터를 입력 받는 부분이 이래서 중요합니다.
AI에게 데이터 입력 받는 방식에 대해서 물어봅니다.
사용자가 키워드나 파일이나 웹 위치정보를 제공하고, 저장된 데이터를 기반으로 주기적으로 AI는 검색해서 키워드나 위치정보에 따라 조건에 맞는 데이터를 수집해서 데이터 베이스를 구축하면 사용자는 AI에게 질의를 통해 질의에 맞는 결과값을얻는 구성을 흐름도로 만들어죠.
키워드나 수집대상 (경로), 조건에 맞는 DB 설계를 통해서, 다양한 형테의 사내 AI 서비스를 구축할 수 있습니다.
3. 스케줄러
시스템에 키워드, 검색 대상, 기타 조건을 구성하면, AI는 시스템에 구성된 스케줄러에 따라 주기적으로 키워드 검색 및 검색경로에 대한 작업을 실행합니다. 키워드 검색은 검색엔진 API를 통해서 얻은 결과를 웹크롤러를 구성해서 가지고 데이터를추출하고, 경로나 기타 파일에 대한 추출 작업은 파일을 파싱해서 데이터를 추출합니다. 사실 AI가 하는 일은 없습니다. 시스템 구성으로 처리하는 내용이지요.
아래 내용은 MS Office Localization 키워드에 대한 url을 생성해서 웹 크롤링을 주기적으로 실행하라는 배치 명령어입니다.
0 9 * * * /usr/bin/python3 /path/to/run_scrapy.py --keyword="MS Office Localization"
- AI업무활용-1편.docx 1023KB
