본문 바로가기

My Work/웹 & 앱 서비스

(12)
SEO (검색 엔진 최적화) 24년 버전_BERT를 곁들인 "SEO (Search Engine Optimization)는 고객한테 보이는 실질적인 첫인상이다."  SEO의 중요성을 말하기 전에 내가 꼭 짚고 가는 포인트이다. 많은 사람들이 웹사이트를 배포하면 웹사이트의 랜딩 페이지가 고객의 첫 방문이자 인상이라고 생각한다. 하지만, 정확한 시간, 물리적 순서상으로는 구글, 네이버의 검색 결과나 SNS에서 전달되는 URL이 웹사이트의 첫인상이다.   위와 같이 고객이 URL에 다이렉트로 들어가지 않는 이상 구글이나 네이버 같은 검색 플랫폼에서 검색한다. 이때, 웹사이트에 대한 설명이 부족하거나 없다면 스캠성(사기) 웹사이트로 간주되어 정상적인 유입을 기대할 수 없다.   마찬가지로, 위 사진처럼 카카오톡으로 받은 트립닷컴에 대한 설명과 썸네일이 정상적이면 괜찮다...
AWS Bedrock : Prompt Engineering Labs 저번 글에 이어서 이번에는 Prompt Engineering Labs를 구현할 것이다. 프롬프트 엔지니어링(Prompt Engineering)은 LLM과 소통하는 기술이다. 즉, 응답을 생성하기 위해 모델에 보내는 메시지라고 할 수 있다. 프롬프트 엔지니어링에는 크게 Word Choice (단어 선택), Phrasing (문구), Providing addtional information (추가 정보 제공), Providing examples (예제 제공) 등을 포함하기도 한다. 지금 구현할 모델을 통해 프롬프트를 실험하고 그 결과를 비교할 수 있다.  Run the prompt app시작하기 위해서는 AWS Cloud9에서 프롬프트 앱을 실행시켜야 한다. cd ~/environment/workshop/c..
AWS Bedrock : Chatbot with RAG 만들기 나의 테크 역량을 개선하고 프로덕트의 완성도를 높이기 위해 할 수 있는 것들을 생각해보다가 AWS Bedrock을 직접 사용해보면 좋다는 생각을 했다. 따라서, Bedrock을 사용해 간단한 챗봇을 만들고자 한다. 실제로 다른 부서나 외부 파트너사에게 우리 부서에 대한 프로젝트를 문의할 때 약간의 피곤함을 느끼는데 챗봇 링크 하나 던져주고 해결할 수 있을 것 같아 챗봇을 만들기로 결정했다.  AWS Bedrock은 Meta, Mistral, Anthropic 같은 AI 회사의 다양한 고성능 FM을 단일 API를 통해 제공하는 관리형 서비스이다. 이 서비스를 통해 생성형 AI 어플리케이션을 구축하는 데 필요한 기능 세트를 활용할 수 있다. AWS Bedrock을 사용하기 전에 기본적인 세팅이 필요하지만 A..
Sementic Search (시맨틱 검색)_토스는 똑똑해 시멘틱 검색?시맨틱 검색은 사용자의 검색 의도를 이해하고 자연어의 의미를 기반으로 검색 결과를 제공하는 기술이다. 이는 단순한 키워드 매치에 의존하지 않고, 문맥과 의미를 파악하여 더 정확한 정보를 제공하려는 접근 방식이다. 간닥하게 자동 원리로는자연어 처리와 AI 기술을 활용하는데 사용자가 입력한 질의의 의미를 이해한다고 보면 된다.  실제로, 우리가 실생활에서 사용하는 앱들에서 시맨틱 검색이 적용된 사례를 찾아볼 수 있다. 대표적으로, 금융 앱에서 쉽게 확인할 수 있다. 금융 앱에서 다루는 용어들은 기본적으로 일반 사용자들이 어려워하는 경우가 많다. 때문에 시맨틱 검색 같이 사용자가 의도하는 검색 결과를 유추해서 앱 사용의 불편성을 느끼지 않게 하는 것이 중요하다.  토스 VS 카카오페이'카카오페이'..
Ali Express 상품 리뷰를 통한 감정 모델 분석 문제 정의 💥야구나 홈쇼핑 같은 라이브 방송 중에 실시간으로 송출되는 댓글들이 있다. 주로 시청자 참여를 촉진하고, 실시간 상호작용을 통해 방송의 생동감을 높이기 위함이다. 하지만, 안타깝게도 '그 의도'와 벗어난 댓글들이 올라올 때가 있다. 부정적인 반응이나 교묘하게 돌려까는(?)식의 댓글들이 화면에 노출되기도 한다.  즉, 그러한 문제를 방지하고, 라이브 방송의 품질을 유지하기 위해 선제적으로 부적절한 댓글을 필터링하는 시스템이 필요하다. 따라서, 이번에는 BERT 모델을 활용하여 실시간 댓글의 감정을 분석하고, 부정적인 댓글을 사전에 예측하여 필터링하는 것을 목표로 모델을 구현했다.   근데 왜 BERT?BERT는 양방향성을 가지는 언어 모델로, 문맥을 깊이 이해할 수 있기 때문이다. 일반적인 R..
모두의 주차장 서비스 개선하기 feat. 피처 벡터 😵‍💫문제주말에 차를 가지고 서울에서 돌아다닐 때, 항상 짜증나는 부분이 주차 문제이다. 특히, 토요일에는 무료 주차장이나 값싼 주차장을 찾기 어렵고 기껏 찾아내도 주차 자리가 없어서 힘들었던 적이 많다. 실제로, 저번주 주말에 서울대입구에서 주차를 하기 위해 4곳의 주차장을 방문했으나 모두 주차를 할 수 없었다. '모두의 주차장'을 통해 주차장을 미리 찾아도 잔여 주차 자리가 없는 경우도 많았으며, 내가 주차하고 싶은 시간에 대한 정확한 요금 계산을 운전 중에 암산으로 해야했다.   실제로 모두의 주차장 UI를 보면 실시간 주차 가능 자리는 표시되지 않는다. 더불어, 만약 내가 30분이나 1시간이 아닌 애매한 시간, 예를 들어 2시간 45분정도만 주차를 하고자 할 때, 어느 주차장이 더 '가성비'인..
Django 웹사이트 구축(기본) 회사 업무로 간단한 개발을 내가 도맡아 직접하기로 했는데, 사실 많이 잊어버려 기본적인 감을 찾고자 Django에 대한 공부를 했다. 먼저, Django(장고)는 웹 애플리케이션을 만들기 위한 Python 웹 프레임워크이다. 웹 프레임워크는 웹 사이트나 웹 애플리케이션을 만들 때 필요한 많은 표준 기능을 제공하여, 개발자가 처음부터 모든 것을 만들지 않아도 되게 도와준다. 장고를 선택한 이유는 나의 개발 주언어가 파이썬이기도 하고, 배운 웹 프레임워크가 장고밖에 없기 때문이다ㅎㅎ (사실 시간이 없어서 다른 언어, 프레임워크를 습득할 용기가 없기도 했다.) 기본적으로 파이썬, 장고의 설치가 끝났다고 가정하고 웹사이트 구축에 필요한 요소들을 알아보겠다. 먼저, 가상환경을 만들어줘야 한다. 개발자마다 사용하는..
IA는 어떻게 쓰는 것이 맞을까? IA(Information Architecture)는 웹/앱 서비스 기획을 할 때, 꼭 나오는 기획 단계이자 문서이다. 하지만, 회사마다 사람마다 IA를 정의하는 것이 다르다. 당장 구글, 네이버 검색을 해봐도 어떤 사람은 IA를 계층구조 표현을 통해 시각화에 초점을 맞추고, 어떤 사람은 엑셀 형식으로 작성한다. 과연 어떤 것이 정답일까? 일단 IA의 정의에 대해서 알아보자. 위키피디아에서 검색해보면 IA를 이렇게 정의한다. (링크) 정보 아키텍처(IA)는 공유 정보 환경의 구조적 설계이며, 웹 사이트, 인트라넷, 온라인 커뮤니티 및 소프트웨어를 구성하고 레이블을 지정하여 사용성과 검색 가능성을 지원하는 기술 및 과학이며, 디자인, 아키텍처 및 정보 과학의 원칙을 디지털 환경에 가져오는 데 중점을 둔 새..