개요
안녕하세요 빈코입니다. 오늘은 개발 스킬에 대한 포스팅이 아닌 요새 많이 화두 되고 있는 AI 툴들을 소개하려고 합니다. 디자이너, 개발자, 기획자 등 많은 IT 종사자들이 AI 툴들을 이용하여 업무 생산량을 높이고 있습니다. 모든 것을 AI에게 맡길 순 없지만, AI로 더 똑똑하게 업무 할 수 있는 몇 가지 방법들을 소개해볼게요😊
AI Assistant?📙
AI Assistant는 크게 ChatBot-based, Code Development, Business and Productivity 3가지로 나뉜다고 생각합니다.
첫 번째 ChatBot AI 툴은 가장 대중적으로 알려진 chatGPT와 Gemini, Claude가 대표적입니다. 주로 자연어 처리 능력을 기반으로 사용자와의 대화, 정보 제공, 다양한 질문에 대한 답변 등을 수행합니다.
챗봇 기반은 인간과 유사한 방식으로 자연스러운 대화를 주고 받을 수 있으며, 사용자의 데이터를 기반으로 개인화된 서비스를 제공받을 수 있는 장점이 있습니다. 하지만 학습 데이터에 편향된 정보가 있을 수 있으며, 맥락을 이해하고 복잡한 문제를 해결하는 데 어려움이 있을 수 있는 단점이 있습니다.
두 번째 Code Development AI 툴은 Copilot, Continue, CURSOR와 같은 모델들이 속해 있습니다. 해당 툴들은 프로그래밍 코드 작성을 지원하는 데 특화되어 있으며 코드 자동 완성, 버그 수정 제안, 새로운 코드 생성 등을 통해 개발 효율성을 높일 수 있습니다.
코드 개발 AI 툴은 이름과 걸맞게 개발 생산성을 향상 시킬 수 있는 장점이 있고, 표준화된 코드 스타일을 제시하고, 잠재적인 문제를 사전에 감지하기 때문에 코드 품질 향상에 많은 도움을 받을 수 있습니다. 단점으로는 당연하게도 항상 정확하고 완벽한 코드를 생성하지는 못하며, 코드 생성 과정이 불투명하여 신뢰성에 대한 의문이 생길 수 있습니다. 하지만 가장 큰 단점은 역시 보안 취약점이 노출될 수 있는 가능성이 있다는 점인 것 같아요
마지막으로 Business and Productivity는 비즈니스 및 생산성 AI 툴을 의미합니다. 해당 툴은 Clova, Notion, Adot과 같은 모델들이 속하며, 업무 자동화, 데이터 분석, 의사 결정 지원 등 비즈니스 환경에서 활용될 수 있는 다양한 기능을 제공합니다.
반복적인 업무를 자동화하고, 데이터 분석을 통해 의사 결정을 지원하며 데이터 기반으로 새로운 비즈니스 모델을 발굴할 수 있는 기회가 열려 있는 장점을 가지고 있습니다. 하지만 시스템 구축 및 유지보수에 많은 비용이 소요될 가능성이 있으며 의존성이 높기 때문에 시스템 장애 발생 시 큰 문제가 발생할 수 있는 단점이 있습니다.
다양한 대규모 언어 모델(LLM)은 각 모델의 성능에 따라 무료, 유료로 나뉩니다. 오픈 소스 모델 (LIama, Qwen, Mistral)은 대부분 무료로 사용 가능하거나, 연구 목적으로 사용하는 경우에는 저렴한 비용으로 사용이 가능합니다. 상업용 모델 (Gemini, ChatGPT)은 일반적으로 유료 모델이며, 모델의 크기와 기능에 따라 가격이 다르게 측정됩니다. (가격 정보는 각 AI 모델의 공식 웹사이트를 참고 바랍니다)
위 차트에서 확인할 수 있듯이, 유료 모델과 무료 모델의 성능 점수가 크게 차이 나지 않습니다. 세 가지 영역(추론 및 지식, 코딩, 커뮤니케이션) 모두에서 비슷한 수준의 성능을 보여주고 있어, 무료 모델만으로도 충분히 만족스러운 결과를 얻을 수 있습니다.
Gemini📘
대중적으로 사용하는 chatGPT는 주로 텍스트 데이터를 기반으로 학습되어 있으며, 개발자 뿐만이 아닌 다양한 직업 종사자분들이 많이 사용합니다. 반면에 Gemini는 다양한 형태(이미지, 코드, 오디오)의 데이터를 학습하여 더욱 넓은 범위의 지식과 이해 능력을 갖추고 있습니다.
한 가지 예시로 아래 영상은 어디에서나 사용하는 회원가입 버튼을 캡처한 이미지를 Gemini에게 전달하고 회원가입 로직 구현을 부탁했습니다.
영상과 같이 HTML, CSS, JavaScript 코드들을 작성해줍니다. 간단한 예시였지만, 조금 더 복잡한 질문에도 정확하고 상세한 답변을 제공하며, 다양한 문제 해결 능력을 보여줍니다.
쉽게 설명하면 대화형에 특화된 chatGPT 보다는 이미지, 오디오 측면에서 다양한 데이터들이 수집되어 있기 때문에 더 신뢰성 있는 결과물을 도출할 수 있는 장점이 있는 것 같습니다.
Notion📒
Notion AI는 노션에 탑재된 인공지능 기능으로 문서 작성, 아이디어 발상, 정보 정리 등 다양한 작업을 지원합니다. 특히 아이디어 제공 기능은 사용자의 입력을 바탕으로 창의적인 아이디어를 제시하는 강력한 기능입니다. 아래는 제가 평소에 만들고 싶었던 '직업 소개' 프로젝트에 대한 아이디어를 간단하게 물어봤습니다.
영상과 같이 주제만 입력했을 뿐인데, Notion AI는 해당 주제에 맞는 다양한 아이디어를 빠르게 뽑아낼 수 있도록 브레인스토밍 기능을 지원합니다. 이 밖에도 글 요약, 글 수정 및 개선, 번역 등 다양한 기능들을 제공합니다.
저는 Notion에 업무를 정리하고 개인적으로 진행하는 스터디 모임이나 프로젝트를 정리할 때만 사용했는데 해당 기능을 알고 나서 회사 업무를 할 때도 도움을 많이 받고 있습니다😁
IntelliJ AI Assistant📗
IntelliJ AI Assistant는 사실 아직 사용한 적은 없지만, 곧 회사에 도입될 예정이어서 사용법 및 강점들에 대해 조사했습니다.
해당 툴은 인공지능을 기반으로 코드 완성, 코드 생성, 버그 수정 등 다양한 개발 작업을 지원합니다. 단순히 코드를 자동 완성하는 것을 넘어 개발자가 의도하는 바를 정확하게 파악하고 최적의 코드를 제공합니다.
단순한 키워드 매칭을 넘어, 함수의 인자, 데이터 타입 등을 종합적으로 고려한 코드를 반환해주며 반복적인 코드 작성을 자동화하여 개발 시간을 단축하고 실수를 줄여주게 합니다. 또한, 코드를 작성하는 과정에서 발생할 수 있는 잠재적인 버그를 미리 감지하고 수정 및 제안해 주는 기능도 존재합니다. 또한, 코드 리팩토링 기능도 지원합니다.
구체적인 예시로 클래스 이름, 메소드 이름을 입력하면 이름만으로 관련된 코드를 자동으로 완성하여 반환해 주고, '정렬되지 않은 배열을 정렬하는 함수 만들어줘'라고 프롬프트를 작성하면 간단한 설명만으로 정렬 알고리즘들을 제공해 줍니다. 그리고 코드에서 오류가 발생하면, AI Assistant가 오류의 원인을 분석하고 수정 방법을 제안해주기도 합니다😃
마치며
지금까지 AI 툴들을 소개했습니다. 예전에는 AI 기술들을 활용하면 개발자로서의 스킬을 쌓지 못할까봐 사용하지 않았는데, 최근 들어 AI 기술들을 활용하면서 개발을 진행했을 때, 내가 미처 발견하지 못한 오류를 사전에 방지할 수 있었고 내가 작성한 코드보다 더 간결하고 확장성 있는 코드를 제공받으면 그 코드들을 습득할 수 있는 것 같아서 많이 사용 중입니다. 꼭 위에서 소개드린 AI 툴들 사용하시면서 AI와 협업하여 업무 효율성 높이셨으면 좋겠네요😄
'ETC' 카테고리의 다른 글
대전 IT 모각코 모임 (2) | 2024.11.30 |
---|---|
개발자 포트폴리오 작성 시 중요 Tip (0) | 2024.03.21 |
중기청 연장 및 목적물 변경하는 방법과 전세사기 예방법 총정리 (0) | 2024.03.11 |
중소기업 청년 전세대출(중기청) 80% 솔직 후기 및 방법 (0) | 2022.04.18 |