사이드프로젝트를 하면서 성장했음을 느낀다
Z세대 : 결제의 미래 (Gen Z: the future of spending)
맬웨어가 포함된 이메일
소프트웨어 및 애플리케이션 보안 패치 적용 빈도
한국 스타트업 생태계 투자 현황, "매우 부정적"
에 따르면, 기업이 불량 데이터로 인해 소비하는 비용은 연간 1,290만 달러(약 177억 9,800만 원)에 이른다. 당연히 데이터 책임자는 동일한 데이터와 정의를 기반으로 모든 사람의 의사 결정이 이뤄지도록 하기 위해 수십 년 동안 BI(business intelligence)와 분석을 위한 단일 진실 공급원을 찾고 있다. BI 솔루션 제공업체는 데이터 일관성을 구현하기 위해 의미 계층(semantic layer)이라는 개념을 도입했다. 의미 계층이란, 데이터 전문가만 이해할 수 있고 비즈니스 사용자에게 정보에 근거한 인사이트를 제공하는 행, 열, 필드 이름으로 기술되는 원시 데이터 사이의 추상화 계층이다. 데이터의 복잡성을 숨기고 비즈니스 정의, 논리, 관계에 매핑한다. 비즈니스 사용자는 의미 계층을 통해 매출, 수익과 같은 표준 용어를 사용해서 셀프서비스 분석을 수행할 수 있다. 의미 계층의 확산 의미 계층은 BI 툴 및 관련 의미 계층이 무분별하게 확산되기 전까지는 반길 만한 발전이었다. 비즈니스오브젝트(BusinessObjects)는 1990년대에 SAP 비즈니스오브젝트에 최초의 가벼운 의미 계층을 구축했다. 문제는 비즈니스오브젝트와 같은 초기 BI 솔루션은 모놀리식이었고, 그다지 사용자 친화적이지 않았다는 점이다. 불만을 느낀 사용자는 사용 편의성이 개선된 태블로(Tableau), 파워 BI(Power BI), 루커(Looker)로 눈을 돌렸다. 지금의 문제는 이런 툴이 기업 전반에 확산 및 복제되면서 단일 진실 공급원이라는 희망을 무너뜨리고 있다는 점이다. 지금은 기업의 여러 부분에서 서로 다른 BI, 분석, 데이터 과학 툴을 사용하면서 고유한 데이터 정의, 차원, 지표, 논리, 컨텍스트를 생성하고 있다. 또한 팀마다 자체적인 의미 계층을 관리한다. 결과적으로 사용자 그룹에 따라 데이터 해석과 비즈니스 로직, 정의가 제각각 달라 데이터에서 파생된 보고서와 인텔리전스에 대한 불신으로 이어진다. 또한 비일관성은 팀 간에 혼란을 야기하는 경우가 많다. 예를 들어 활성 고객이란 서비스에 대한 지속적인 유료 구독을 구매한 사람일까, 아니면 지난 7일 이내에 로그인한 사람일까, 아니면 7일 무료 평가판에 가입한 사람일까? 일관적이지 않은 정의는 재무팀의 비용 청구 작업, 갱신팀의 고객 식별, 판매된 제품에 대한 운영팀의 정확한 처리와 보고에 지장을 초래한다. 데이터 웨어하우스에서 의미 계층의 부상 데이터 환경의 복잡함이 아직 부족하기라도 한 듯이, 데이터 설계자는 데이터 웨어하우스 내에 의미 계층을 구현하기 시작했다. 설계자는 자신이 관리하는 데이터 자산을 모든 사용례를 위한 단일 진실 공급원이라고 생각할 수 있다. 그러나 일반적으로는 그렇지 않다. 수백만 개의 비정규화된 테이블 구조는 일반적으로 ‘비즈니스에 바로 사용할 수 있는’ 상태가 아니기 때문이다. 의미 계층이 다양한 웨어하우스에 내장되면 데이터 엔지니어는 ‘분석에 사용할 수 있는’ 데이터를 생성하는 변환을 통해 데이터 파이프라인을 설계하고 유지해서 분석 사용례를 데이터에 연결해야 한다. 일관적인 의미 계층이 없으면 데이터 엔지니어는 데이터 고객을 지원하기 위한 전용 파이프라인에 의미론적 의미를 하드코딩해야 한다. 의미론적 의미(정의)는 곧 경직되고, 이로 인해 중앙 아키텍처 팀이 다양한 작업 그룹의 도메인별 요구사항에 보조를 맞추기가 어렵게 된다. 코드는 확장될수록 관리하기 어려워지고 비일관적이 된다. 이 접근 방식은 데이터 기반 의사 결정에 방해가 되는 지연과 종속성을 유발한다. 더 확산하는 로컬 의미 계층 설상가상으로, 데이터 웨어하우스가 클라우드로 이동하면 사용자 쿼리의 속도가 견디기 어려울 정도로 느려질 수 있다. 성능이 떨어지는 경우 거의 항상 비즈니스 사용자는 더 쉽게 작업하고 더 빠르게 쿼리하기 위해 데이터를 추출해서 자신이 선호하는 분석 플랫폼에 로드하며, 이는 로컬화된 의미 계층 내에서 부가적인 의미론적 확산으로 이어진다. 현재 대부분 경우 데이터 스택 주변에는 약간씩의 의미 계층이 부유하고 있다. 클라우드 데이터 웨어하우스, 변환 파이프라인, 그리고 각 BI 툴에 약간씩 존재한다. 이 의미론적 확산은 극단적인 비효율성을 일으킨다. 데이터 엔지니어가 새로운 데이터 파이프라인을 설계할 때마다 일반적인 비즈니스 개념(예 : 연간 예측 또는 통화 변환)을 다시 생성하기 때문이다. 데이터팀은 새로운 비즈니스 질문에 대해 다양한 데이터 정의 또는 비즈니스 로직이 포함된 답이 필요할 때마다 다양한 의미 계층에 산발적으로 존재하는 일반적인 비즈니스 개념을 끊임없이 다시 생성해야 한다. 하루 종일 두더지 잡기에 시간을 소비하는 격이다. 엔지니어링의 중복이며 시간과 리소스의 낭비다. 범용 의미 계층 만들기 필요한 것은 가능한 모든 데이터 경험(시각화 툴, 고객 대면 분석, 임베디드 분석, AI 에이전트)을 위한 모든 메트릭과 메타데이터를 정의하는 범용 의미 계층이다. 범용 의미 계층이 있으면 ‘고객’, ‘잠재 고객’과 같은 용어에 대한 표준 정의 집합과 데이터 간의 표준 관계(표준 비즈니스 로직 및 정의)에 기업의 모든 사용자가 동의하게 되므로 데이터 팀은 하나의 일관적인 의미 데이터 모델을 구축할 수 있다. 범용 의미 계층은 데이터 웨어하우스 위에 위치하면서 다양한 데이터 애플리케이션에 데이터 의미(컨텍스트)를 제공한다. 변환 툴과 매끄럽게 연계해 작동하므로 기업은 메트릭을 정의하고 데이터 모델을 준비하고 다양한 BI 및 분석 툴에 이를 노출할 수 있다. 범용 의미 계층을 구축하려면 데이터팀은 먼저 의미 데이터 모델에 적용되는 비즈니스 로직, 계산, 컨텍스트를 설정해야 한다. 우선 해결해야 하는 실제 문제를 파악하고 필요한 데이터를 수집한 다음 데이터 간의 관계를 인코딩하고 거버넌스와 보안 정책을 정의해 신뢰할 수 있는 액세스를 실현한다. 이후 메타데이터를 사용해서 데이터에 대한 추상화를 구축해 차원, 계층, 계산을 하향 데이터 소비자에게 일관적으로 노출한다. 기반 데이터와 의미가 확립되면 범용 의미 계층을 생성형 AI, BI, 스프레드시트, 임베디드 분석과 같은 데이터 소비자와 통합해야 한다. 는 수많은 사전 구축된 통합과 견고한 API 모음을 제공해서 기업이 데이터를 한 번만 모델링해서 어디에나 제공할 수 있게 해주는 범용 의미 계층 플랫폼이다. 또한 보다 쉽게 협업하고 데이터 모델을 구축하고 캐싱과 사전 집계를 설정하고 데이터 액세스 제어를 유지할 수 있게 해주는 다양한 개발자 툴도 제공한다. 범용 의미 계층의 이점 범용 의미 계층을 사용하면 데이터팀의 거버넌스와 제어가 강화되며, 적절히 구현되는 경우 최종 사용자는 데이터에서 더 많은 가치를 얻고 팀 간의 오해는 줄어들게 된다. 결과적으로 효율성이 향상되고 모든 데이터 소비 위치에서 동일하고 정확한 데이터로 작업이 이뤄지게 된다. 데이터를 사용하는 주체가 대시보드를 보는 사람이든, 누군가에게 질문에 대한 답을 제공하는 대규모 언어 모델이든 데이터는 일관적이다. 이를 통해 데이터팀은 내외부의 데이터 소비자에게 신속하게 데이터를 제공하기가 더 쉬워진다. 데이터팀은 손쉽게 메트릭을 업데이트하거나 새 메트릭을 정의하고 도메인별 데이터 뷰를 설계하고 새로운 원시 데이터 소스를 통합할 수 있다. 또한 액세스 제어, 정의, 성과를 포함한 거버넌스 정책을 시행할 수 있다. 또 다른 이점도 있다. 데이터 볼륨이 커지면 클라우드 컴퓨팅 비용도 치솟는다. 범용 의미 계층은 데이터를 사전 처리 또는 사전 집계하고 자주 사용되는 비즈니스 메트릭을 저장하고 이를 분석의 기반으로 사용해 클라우드 데이터 요금을 줄이는 방식으로 이 문제를 해결한다. 또한 범용 의미 계층은 엔터프라이즈 전반의 데이터에 대해 매우 높은 성능과 낮은 지연을 제공해 사용자 쿼리 속도를 높여준다. 마침내 현실이 되는 단일 진실 공급원 차세대 데이터 기반 애플리케이션을 가동하기 위해서는 범용 의미 계층이 필요하다. 이 데이터를 시각화하고 사용하기 위한 다양한 툴이 있으며 다양한 데이터 소스에 데이터가 저장된다는 것을 받아들여야 한다. 또한 범용 의미 계층은 마침내 엔터프라이즈 메트릭을 위한 단일 진실 공급원을 생성해서 의사 결정자에게 일관적이고 빠르고 정확한 답을 얻는 데 필요한 데이터를 제공한다. *Artyom Keydunov는 Cube의 CEO다. editor@itworld.co.kr
생성형 AI가 기술 업계를 장악하고 있다. 마이크로소프트의 생성형 AI 비서 코파일럿은 윈도우 작업 표시줄에 고정되고, 구글 안드로이드 운영체제가 “핵심부터 AI로 설계하겠다”고 발표한 것까지, 소프트웨어를 업데이트하지 않으면 생산성 향상을 약속하는 새로운 AI 기능을 얻을 수 없다. 하지만 AI와의 대화를 그저 단순히 AI와 대화하는 것이라고 생각하면 안 된다. 타인이 대화를 엿볼 수도 있기 때문에 생각만큼 사적인 대화가 보장되지 않는다. 민감한 정보를 다루는 기업뿐만 아니라 AI에게 의료 문제, 개인적 문제 또는 다른 사람에게 알리고 싶지 않은 여러 가지 질문을 던지는 개인 모두에게 있어서 중요한 문제다. 일부 AI 회사는 대화를 기반으로 대형 언어 모델(LLM)을 학습시킨다. 비즈니스 데이터나 개인 정보가 모델의 일부가 되어 다른 사람에게 유출될 수 있다는 일반적인 우려가 있다. 하지만 그 외에도 다른 문제가 있으며, AI 업체가 사용자가 제공한 데이터로 모델을 훈련시키지 않겠다고 약속하더라도 문제가 될 수 있다. 사람이 AI 대화를 검토하는 이유 그렇다면 사람이 이러한 대화를 검토하는 이유는 무엇일까? 품질 유지와 문제점 발견을 위해서다. 생성형 AI 기업에서는 기술이 어떻게 작동하는지 확인하기 위해 사람이 채팅 로그를 검토할 수 있다. 오류가 발생하면 식별한다. 인간 검수자의 피드백을 통해 '현장 점검'을 수행한 다음 생성형 AI 모델을 학습시키고 향후 대응 방식을 개선하는 데 사용한다고 생각하면 된다. 서비스 남용이 의심되는 경우에도 대화를 검토한다. 기업이 직접 AI 도구를 사용해 대량의 채팅 로그를 살펴보고 어떤 종류의 문제나 안전 문제가 있는 것으로 보이는 로그를 찾을 수 있다고 상상하기는 어렵지 않다. AI에 이런 과정은 새로운 것이 아니다. 예를 들어, 마이크로소프트는 품질 보증을 위해 계약업체가 사용자의 스카이프 음성 대화를 검토하게 한 적이 있다. 실제 개인정보 보호 문제 오픈AI의 챗GPT나 구글의 제미나이 같은 도구는 다양한 용도로 사용되고 있다. 직장에서 사람들은 데이터를 분석하고 비즈니스 작업 속도를 높이기 위해 사용한다. 가정에서는 사람들이 대화 파트너로 사용해 삶의 세부 사항을 논의하는 데 사용한다. 적어도 많은 AI 업체가 바라는 바대로다. 결국, 마이크로소프트의 새로운 코파일럿 경험은 하루의 일과에 대해 대화를 나누는 것이다. 하지만 때로는 비공개로 유지하는 것이 더 나은 데이터가 공유된다. AI 챗봇의 등장으로 모든 기업이 데이터 보안을 고민하고 있으며, 직장에서의 챗GPT 사용을 금지하는 기업도 많다. 직원에게 허용되는 특정 AI 도구가 있을 수도 있다. 분명한 것은 기업이 챗봇에 입력된 모든 데이터가 AI 업체의 서버로 전송된다는 사실을 알고 있다는 것이다. 향후 생성형 AI 모델을 학습하는 데 사용되지 않더라도 데이터를 업로드하는 행위 자체가 미국의 HIPAA와 같은 개인정보 보호법 위반이 될 수 있다. 많은 지식 근로자는 챗GPT에 고객 세부 정보나 회사 재무 문서의 빅데이터 세트를 업로드하고 지루하고 고된 작업을 맡기고 싶어 한다. 하지만 타인이 그 데이터를 볼 수도 있다는 위험은 항상 있다. 개인적으로 사용할 때도 마찬가지이다. 챗GPT, 코파일럿, 제미나이에도 인간 감수자가 있는가? 사용자가 항상 AI 챗봇과의 대화 대부분을 적극적으로 읽지는 않는다. 그렇게 하기에는 대화가 너무 많기 때문이다. 그럼에도 불구하고 널리 알려진 주요 생성형 AI 도구는 최소한 가끔은 사람의 리뷰를 활용한다. 예를 들어 보자. 챗GPT에서는 “임시 채팅”을 활성화해 채팅 기록을 끌 수 있다. 채팅 기록을 켜두면 대화 내용이 오픈AI의 모델 학습에 사용된다. 임시 채팅을 사용하면 대화가 모델 학습에 사용되지는 않지만 “안전을 위해” 오픈AI가 검토할 수 있도록 30일 동안 저장된다. 챗GPT의 엔터프라이즈 요금제는 더 많은 데이터 보호 기능을 제공하지만, 여전히 사람이 검토하는 경우가 있다. 마이크로소프트는 코파일럿 대화도 일부 상황에서 사람이 검토한다고 말한다. "AI 트레이너와 직원의 피드백을 트레이닝 과정에 포함한다. 예를 들어, 인간의 피드백은 사용자의 프롬프트에 대한 품질 출력을 강화해 최종 사용자 경험을 개선한다." 구글의 제미나이도 인간 리뷰어를 활용한다. 구글은 다음과 같이 설명한다. “대화에 기밀 정보나 리뷰어가 보거나 구글이 제품, 서비스, 머신러닝 기술을 개선하는 데 사용하지 않았으면 하는 데이터를 입력하지 말자.” AI와 나의 대화를 비밀로 하려면 비즈니스 데이터를 보호하고 관련 법률을 준수해야 하는 기업은 사용하는 생성형 AI 도구와 계획을 신중하게 고려해야 한다. 직원이 데이터 보호 계약이 불확실한 여러 도구를 혼용해 사용하거나 개인 챗GPT 계정을 통해 비즈니스와 관련된 모든 작업을 수행하는 것은 좋은 생각이 아니다. 장기적으로는 로컬에서 실행되는 AI 모델이 이상적인 해답이 될 수 있다. AI 챗봇이 전적으로 사용자의 컴퓨터나 모바일 기기에서 실행되는 것이다. 자체 데이터센터에서 자체 개발한 AI 소프트웨어를 실행해 모든 데이터를 완전히 자체적으로 제어하는 경우를 말한다. 마이크로소프트의 AI 기능인 리콜은 출시 계획 발표 때부터 많은 비판을 받았다. 그러나 코파일럿+ PC에서 윈도우 11 데스크톱 사용 내역을 검색할 수 있다는 점만은 옳은 방향이었다. 마이크로소프트에 자료를 보내지 않고도 개인 PC에서 모든 작업을 수행할 수 있다. 인간 검토자는 이 내역을 볼 수 없다. 반대로 구글은 최근 크롬에 AI 검색 기록 검색 기능을 출시했는데, 이 역시 인간 리뷰어가 검토할 수 있다. 현실로 돌아와 보자. 겁을 먹고 뒤로 물러서서 생성형 AI를 전혀 사용하지 말라는 뜻이 아니다. 일반인의 챗GPT 대화나 코파일럿 채팅은 아마 검토되지 않을 확률이 높다. 그러나 언제든 얼마든지 검토 대상이 ‘될 수 있다’는 점이 중요하다. 생성형 AI 서비스를 사용하려고 가입하는 시점부터 이 점을 꼭 염두에 두어야 한다. AI를 전문적으로 사용하는 기업부터 장래 희망을 주제로 봇과 채팅하는 개인까지 그야말로 모든 사용자가 명심해야 할 점이다. editor@itworld.co.kr
마이크로소프트 애저 인큐베이션팀은 마이크로소프트 하이퍼스케일 클라우드에서 상당히 흥미로운 구성요소 중 하나다. 전통적인 소프트웨어 개발팀과 연구 조직의 중간 정도에 해당하는 성격으로, 대규모 분산 시스템 문제를 해결하기 위한 솔루션 개발을 담당한다. 이러한 솔루션은 데이퍼(Dapr), 래디어스(Radius)와 같은 개발자 툴 또는 KEDA(Kubernetes event-driven autoscaling) 시스템과 같은 쿠버네티스의 확장 프로그램일 수 있다. 최신 퍼블릭 릴리스는 관리 툴과 새로운 애플리케이션 플랫폼의 하이브리드다. 드래시란? 애저 CTO 마크 루시노비치가 블로그를 통해 최근 발표한 는 핵심 이벤트를 감지해 즉각 대응하기 위한 툴이다. 여기서 대응이란 하드웨어 또는 소프트웨어 장애가 발생한 경우 플랫폼 아키텍처를 재구성하는 것일 수도 있고, 예를 들어 센서가 화학 공정에서 문제를 감지하는 경우 압력 초과 대응 또는 화재 대응을 실행하는 것일 수도 있다. 마이크로소프트 애저 인큐베이션 프로젝트 대부분은 오픈소스이며, 드래시 역시 예외는 아니다. 이미 아파치 2.0 라이선스로 CNCF(Cloud Native Computing Foundation)과 에서 더 자세한 내용을 볼 수 있다. 이와 같은 이벤트 기반 아키텍처는 분산 시스템에서 비교적 일반적인 설계 패턴이다. 다른 분산 개발 모델과 마찬가지로 나름의 문제도 있는데, 이런 문제는 대규모에서 특히 두드러진다. 분당 수십 또는 수백 개의 이벤트가 발생하는 정도에서는 원하는 메시지를 쉽게 감지하고 대응할 수 있다. 그러나 애플리케이션 또는 서비스가 커져서 글로벌 플랫폼에 걸쳐 메시지의 수가 수십만, 또는 수백만 개에 이르게 되면 소규모 시스템에서는 작동했더라도 새로운 부하에서는 붕괴될 가능성이 높다. 규모가 커지면 이벤트 기반 시스템은 복잡해진다. 메시지와 이벤트가 많은 형식으로 전송되고 독립적인 사일로에 저장되므로 추출 및 처리하기가 어렵고 많은 경우 복잡한 쿼리 메커니즘이 필요하다. 또한 메시지 큐 시스템이 느려지고 혼잡해지면서 지연이 증가하거나 메시지 처리 시간이 초과되기도 한다. 이벤트에 신속하게 대응해야 하는 경우 이 취약한 상태는 사용하고 관리하기가 어렵게 된다. 드래시의 역할은 여기에 있다. 드래시는 관련 이벤트를 탐지하고 대응하는 프로세스를 자동화하는 더 나은 방법을 제공한다. 마이크로소프트는 이 프로세스를 "지능적 대응 자동화"라고 설명한다. 드래시는 복잡하고 중앙화된 이벤트 데이터 저장소가 필요 없고 탈중앙화를 사용해 이벤트의 출처와 가까운 곳, 즉 로그 파일과 변경 피드에서 이벤트를 찾는 가벼운 툴을 목표로 제작됐다. 드래시의 변경 사항 처리 방법 데이터는 탈중앙화되고 다양한 형식으로 저장되지만 드래시를 사용하면 익숙한 개발 기법을 사용해 쿼리를 작성하고 이러한 쿼리 결과의 변화에 대응하는 트리거를 설정할 수 있다. 이 프로세스의 핵심에는 소스(Source), , 리액션(Reaction) 3가지 개념이 있다. 드래시 애플리케이션에서 소스란 데이터가 수집되고 변경을 관찰할 수 있는 모든 장소다. 로그 파일과 데이터베이스 업데이트, 애저 이벤트 그리드와 같은 게시 및 구독 툴을 통해 전달된 이벤트, 또는 애저 펑션의 출력일 수도 있다. 지속적 쿼리는 CQL(Cypher Query Language)로 작성되며, 소스에서 데이터 변경을 모니터링하면서 변경에 의해 트리거되는 스위치 역할을 한다. 쿼리가 트리거되면 시스템이 리액션을 전송한다. 리액션은 간단하게는 알림일 수도 있고, 사전 구성된 일련의 프로세스를 트리거하는 입력이 될 수도 있다. 프로세스는 드래시를 사용하는 목적에 따라 달라진다. 예를 들어, 산업용 IOT 시스템에 위치한다면 일련의 하드웨어 제어에 따라 작동하면서 통제불능의 산업 프로세스를 종료할 수 있다. 시스템 관리 지원 시나리오의 리액션은 재해 복구 사이트 또는 데이터베이스 복제본에 대한 페일오버 프로세스를 시작할 수 있다. 드래시 리액션은 필요에 따라 단순하거나 복잡해질 수 있다. 모든 이벤트의 집결 드래시의 에서 가장 흥미로운 부분은 과거라면 많은 종류의 이벤트 관리 툴이 필요했을 기능을 모두 지원한다는 것이다. 하나의 드래시 인스턴스는 라이브 텔레메트리와 함께 수동으로 업데이트되는 데이터도 처리할 수 있다. 예를 들어 드래시는 일련의 기계 장비에 대한 유지보수 로그와 함께 해당 디바이스의 라이브 텔레메트리도 읽을 수 있다. 하나의 쿼리가 예약된 유지보수 기간, 그리고 문제 가능성(그 자체가 소리를 사용해 문제를 감지하는 ML 애플리케이션이 생성한 이벤트일 수 있음)을 나타내는 알려진 텔레메트리, 두 가지 모두 모니터링할 수 있다. 드래시는 각기 개별적인 알림 대신 이런 여러 시스템을 하나로 모은다. 많은 애저 툴과 마찬가지로 확장성이 매우 뛰어나고 단일 사이트 또는 글로벌 기업 전체의 결과를 제공할 수 있다. 이 함께 제공된다. 모든 관리가 API를 통하므로 자체 관리 툴을 구축할 수 있다. 드래시 애플리케이션의 핵심은 일련의 지속적 쿼리다. 기존 쿼리와는 데이터를 처리하는 방식에 큰 차이가 있다. 드래시는 지속적으로 쿼리를 실행함으로써 기반 데이터 소스에 변경이 일어나는 대로 변경 사항의 맵을 구축할 수 있으며, 특정 시점 결과 또는 동적 피드를 사용할 수 있다. 동적 피드는 복잡한 ETL 없이 애저 시냅스 분석에 데이터를 제공하는 SQL 서버의 변경 피드와 개념적으로 비슷하다. CQL을 사용한 변경 쿼리 작성 여러 소스로 작업하고 변경 데이터를 가져오는 작업은 그래프 데이터베이스 작업과 비슷한 부분이 많으므로 드래시가 을 사용해서 지속적 쿼리를 작성하는 것도 놀랍지는 않다. SQL에 익숙하다면 알아볼 수 있겠지만 CQL도 쿼리 작성을 위한 많은 비슷한 구조를 지원한다. MATCH를 사용해서 경로를 찾고 WITH와 WHERE 절, 일반적인 데이터 유형 및 속성도 있다. 비교적 제한된 데이터 소스 집합을 다루므로 쿼리를 작성하기 위해 필요한 대부분의 기능을 여기서 찾을 수 있을 것이다. 목표는 CQL 쿼리를 사용해서 데이터에서 찾는 변경 사항을 설명하는 것이다. 쿼리 내에서 로직을 지원하므로 현재 보고 있는 데이터, 그리고 모든 소스에 걸쳐 나머지 데이터와 이 데이터의 관계를 캡슐화하는 쿼리를 하나로 작성할 수 있다. CQL은 모든 소스를 상호연결된 단일 그래프로 취급하므로 소스를 모으기 위해 복잡한 조인을 쓸 필요가 없다. 모든 소스는 필요에 따라 높거나 낮은 밀도로 채울 수 있는, 동일한 n차원 이벤트 공간의 일부이다. 마이크로소프트는 CQL에 자체 드래시용 확장을 추가했다. 여기에는 데이터를 다른 시각으로 보게 해주는 흥미로운 기능도 포함된다. 이는 지속적 쿼리 측면에서 상당히 중요하다. 이 중에서 퓨처(Future) 함수는 기존의 시간적 기능을 넘어 데이터에 대해 미래 경계를 설정한다. 여기에는 시간을 설정하고 그 시점, 또는 그 시점까지 특정 부울이 참인지 여부를 확인하는 기능이 포함된다. 비교적 간단한 함수지만 이벤트에 새로운 경계를 추가할 수 있게 해준다. 부울로 계산되는 쿼리 식을 작성한 다음 결과를 사용해서 시간 경과에 따라 시스템이 변화하는 방식을 기반으로 미래 이벤트를 트리거할 수 있다. 과거 특정 시점의 값을 볼 수 있게 해주는 시간 함수와 함께 사용할 수 있다. 드래시를 통해 이제 복잡한 코드를 쓸 필요 없이 CQL 쿼리 내부의 함수에 집어넣어 주요 데이터가 시간 경과에 따라 어떻게 변화하는지 살펴볼 수 있다. 마이크로소프트는 CQL을 시작하는 데 도움이 되도록 를 제공하지만, 개발 툴은 여전히 없다. 비주얼 스튜디오 코드 확장이 있다면 오류 위험을 줄이면서 쿼리를 작성하고 테스트하는 데 도움이 될 것이다. 지금으로서는 다양한 이벤트 소스의 샘플 데이터와 예상되는 출력을 사용해 작업하는 것이 최선이다. 특히 퓨처 함수를 사용할 계획이라면 목록과 시간 기반 연산을 사용하는 데 익숙해지는 데 어느 정도 시간이 걸린다. 리액션 제공 드래시는 지속적 쿼리의 결과에 따라 작동하는 한다. 리액션은 둘 이상의 쿼리에서 데이터를 받을 수 있으므로 비교적 간단한 쿼리 조합에서 복잡한 동작을 제공할 수 있다. 현재 리액션 유형은 소수지만 대부분 시나리오를 충족한다. 주요 옵션 중 하나인 애저 이벤트 그리드는 훨씬 더 많은 후속 동작을 제공한다. 그 외에 웹 기반 SignalR 프로토콜을 기반으로 하거나 마이크로소프트 데이터버스(Dataverse) 비즈니스 데이터 플랫폼과 함께 작동하는 기능이 있다. 는 지속적 쿼리의 결과 테이블을 지속적으로 업데이트하므로 데이터 소스에서 쿼리가 어떻게 작동하는지 살펴볼 수 있다. 프로덕션을 위한 툴이 아니라, 지속적 쿼리가 어떻게 작동하는지 알아보고 쿼리의 출력을 중심으로 이벤트 처리를 구조화할 방법을 파악하는 데 도움이 되는 기능이다. 변화하는 것은 많은 이유로 흥미롭다. 드래시는 이런 변화의 세부 사항을 포착하고 제공해서 정보에 근거한 조치가 이뤄질 수 있도록 한다. 드래시는 하드웨어 또는 소프트웨어에 대해 예방적 유지보수를 사용하여 신속하게 문제를 해결하는 데 도움이 될 수도 있고, 침입 및 기타 보안 침해에 대한 조기 경보를 제공할 수도 있다. 드래시로 무엇을 할지는 전적으로 사용하는 사람에게 달려 있다. 변경 데이터를 처리하기 위한 가벼운 프레임워크는 실제로 사용하기 전까지는 그 필요성을 인지하지 못하는 종류의 툴이다. 드래시는 지속적인 이벤트 흐름을 생성하는 시스템을 다루기 위한 새롭고 혁신적인 방법을 제공해서 실제로 중요한 이벤트를 식별할 수 있게 해준다. 특히 드래시는 애플리케이션 개발, 플랫폼 엔지니어링, 시스템 관리의 경계를 넘나드는 만큼 클라우드 인프라와 애플리케이션을 대규모로 구축하는 일을 한다면 드래시에 관심을 가져야 한다. editor@itworld.co.kr
많은 기업이 LLM(large language models)을 기반으로 하는 생성형 AI 애플리케이션을 구축하고 있지만, 프로토타입에서 프로덕션으로 성공적으로 전환하는 비율은 극소수에 불과하다. 에 이르는 것으로 추산한다. LLM의 매력적인 가능성과 현실 사이에 이렇게 간극이 존재하는 이유는 무엇일까? 기업이 LLM을 프로덕션에 투입할 때 직면하는 가장 일반적이면서 복잡한 5가지 과제와 각각에 대한 대처 방법을 알아보자. 개인정보 보호·보안·규정 준수 우려 기업 환경에 LLM을 배포할 때는 데이터 보안, 개인정보 보호, 규정 준수 측면에서 중대한 과제를 해결해야 한다. 기업은 학습 과정에서 민감한 데이터가 유출될 가능성에 대한 우려로 프로덕션 소프트웨어 애플리케이션에 LLM을 사용하기를 주저하는 경우가 많다. 여기에 규정 준수 상태를 유지하고 고객 데이터의 책임감 있는 처리를 보장해야 한다는 엄격한 요구항까지 더해져 기업이 짊어지는 위험은 더욱 커진다. 데이터를 잘못 취급할 경우 막대한 벌금과 신뢰 손실로 이어질 수 있는 만큼 기업 입장에서는 잃을 것이 많다. 따라서 기업 환경에서 AI의 잠재력을 현실화하기 위해서는 LLM의 역량을 활용하는 동시에 데이터를 보호하는 솔루션을 찾아야 하는 어려운 과제를 해결해야 한다. 이런 우려를 해소하려면 기업은 AI 학습 및 추론 시스템의 아키텍처와 인프라에 대해 철저한 실사를 수행해야 한다. 기업은 워크플로우와 데이터플로우를 면밀히 조사함으로써 제품 수명 주기 전반에 걸쳐 데이터와 AI 모델에 대한 바람직하지 않은 액세스에 따르는 위험을 더 잘 파악할 수 있다. 이 선제적 접근법을 사용하면 모든 잠재적 취약점을 파악, 수정해서 첨단 AI 기술의 힘을 활용하면서 데이터를 보호할 수 있다. AI 환각 기업 내에 LLM을 배포하기 위해 넘어야 할 또 다른 큰 장애물은 AI 환각 위험이다. 이 위험은 특히 데이터 품질과 관련된 기존 문제와 결합될 때 더 심화된다. AI 환각과 이로 인한 부정적 영향에 대한 언론 보도가 이어지면서 비즈니스 의사결정권자 사이에서 문제에 대한 인식과 우려가 함께 커졌다. 특히 환각을 탐지하고 완화하기 위한 명확한 해결책이 없는 상황에서 이는 LLM 기반 애플리케이션을 프로덕션용으로 승인하는 데 있어 큰 장애물이 되는 경우가 많다. 이 과제를 극복하기 위한 실용적인 접근 방법은 당면한 문제에 가장 적합한 툴을 선택하는 것이다. GPT 모델이 그동안 많은 관심을 받았고 솔루션으로 선택되는 경우도 많지만 모든 기업 애플리케이션에서 항상 최선의 선택은 아니다. 높은 정확도로 문서를 파악하고 분석하는 데 뛰어는 BERT 모델과 같은 대안을 고려해야 한다. 이런 모델은 GPT보다 더 저렴하고 빠르며 잘못된 출력을 생성하는 경우도 더 적다. 또한 BERT의 강력한 임베딩 기능과 GPT의 생성 역량을 결합한 검색 증강 생성(retrieval-augmented generation, RAG) 기법을 도입하면 최종 제품의 품질을 대폭 강화할 수 있다. 이 전략을 통해 기업은 다양한 AI 기술의 강점을 적절히 활용해서 성능을 최적화하는 동시에 위험을 완화할 수 있다. LLM 품질 평가 GPT와 같은 LLM을 기업 환경에 배포하는 경우 출력이 갖는 주관적인 속성 탓에 품질 평가에 어려움이 발생할 수밖에 없다. 결과가 맞거나 틀린 것으로 구분되는 전통적인 분류 작업과 달리 GPT 모델의 출력은 해석하기에 따라 달라질 수 있으므로 품질에 대한 판단이 복잡해진다. 이 모호성은 소프트웨어 애플리케이션 배포에 사용되는 기존 CI/CD 프로세스에 LLM을 통합하는 데 있어 큰 난관이 된다. 일반적으로 CI/CD 프로세스는 제품이 품질 기준을 충족하는 지 확인하기 위해 결정론적 테스트에 의존하기 때문이다. 이 문제에 효과적으로 대처하려면 기업은 LLM의 모호성을 수용하도록 릴리스 프로세스를 재고해야 한다. LLM 애플리케이션 개발 프로세스에 새로운 기술과 접근 방식을 통합하는 것은 필수적이다. 한 가지 전략은 LLM 출력의 품질을 평가하기 위한 다양한 방법을 채택하는 것이다. 예를 들어 GPT-4와 같은 정립된 LLM을 벤치마킹 툴로 사용하면 다른 모델의 결과를 검증하기 위한 비교 척도를 얻을 수 있다. A/B 테스트, 카나리아 릴리스와 같은 민첩한 배포 방법론을 강력히 권장한다. 이러한 기법은 점진적 배포가 가능하므로 릴리스 프로세스의 초기에 잠재적인 문제를 파악해서 LLM의 본질적인 과제를 극복하고 품질 기준을 유지할 수 있다. 운영화 과제 기업 환경에 LLM을 배포하는 데는 복잡한 AI 및 데이터 관리 고려 사항과 난해한 인프라, 특히 GPU를 사용하는 인프라의 운영화가 포함된다. GPU 리소스를 효율적으로 프로비저닝하고 사용을 모니터링하는 것은 데브옵스팀의 지속적인 과제다. 이 복잡한 환경에서는 기술과 베스트 프랙티스가 빠르게 발전함에 따라 지속적인 감독과 적응이 필요하다. 엔터프라이즈 소프트웨어 기업 내의 데브옵스팀은 앞서 나가기 위해서는 GPU 리소스 관리의 최신 동향을 지속적으로 살펴보는 것이 중요하다. 이 분야는 아직 성숙과는 거리가 멀지만 관련된 위험을 인식하고 충분한 정보에 근거한 배포 전략을 수립해야 한다. 또한 기업은 GPU 전용 솔루션의 대안도 고려해야 한다. 다른 컴퓨팅 리소스 또는 하이브리드 아키텍처를 통해 프로덕션 환경의 운영 측면을 간소화하고 제한적인 GPU 가용성에 따른 잠재적 병목 현상을 완화할 수도 있기 때문이다. 이 같은 전략적 다각화는 다양한 기업 애플리케이션 전반에서 더 원활한 배포와 더 강력한 성능을 보장한다. 비용 효율성 LLM을 사용하는 애플리케이션과 같은 AI 기반 애플리케이션을 프로덕션에 배포할 때 성공 여부는 궁극적으로 투자 수익에 달려 있다. 기술을 주창한다면 LLM이 기업의 매출과 수익에 모두 긍정적인 영향을 미칠 수 있음을 입증해야 하는데, 이 계산에서 과소평가되는 경우가 많은 중요한 요소는 총소유비용이다. 총소유비용은 모델 학습, 애플리케이션 개발, 학습 및 추론 단계 중에 발생하는 컴퓨팅 비용, 지속적인 관리 비용, AI 애플리케이션 수명 주기 관리를 위해 필요한 전문 인력을 포함한 다양한 요소를 포괄한다. 많은 기술 리더에게 과제는 이런 구성요소를 완전히 이해하고 통제하는 데 있다. 위와 같은 요소에 대한 종합적인 이해가 없으면 실험 단계의 AI 이니셔티브에서 운영 단계로의 전환을 정당화하는 데 어려움이 발생할 수 있다. 따라서 의사 결정자는 전략적 계획에 있어 유연함과 더 비용 효율적인 AI 솔루션에 대해 열린 자세를 유지하는 것이 좋다. 이를 위해서는 컴퓨팅 비용을 절감할 수 있는 혁신을 탐색하고 프로덕션 환경에서 관리가 용이한 시스템을 추구해야 한다. 이러한 측면에 우선순위를 두면 기업은 재정 지출을 최적화하고 AI 배포의 확장성과 지속가능성을 강화할 수 있다. 맺음말 LLM을 프로덕션에 배포하는 것은 미지의 요소가 많은 어려운 일이다. 민감한 데이터 보호부터 비용 측면의 고려 사항, 결과를 재현할 수 없는 상황에 이르기까지 복잡한 일이 생길 수 있다. 기업은 워크플로우와 데이터 플로우를 면밀히 검토하고 당면한 작업에 잘 맞는 유형의 모델을 선택하고 소프트웨어 릴리스 프로세스를 조정하고 GPU의 대안을 고려하고 철저한 TCO 분석을 수행해야 한다. 그러나 모든 문제는 해결이 가능하다는 것을 기억하라. 사전에 잘 준비하고, 기술과 프로세스를 배우고 조정하려는 의지가 있는 기업은 LLM 기반 애플리케이션을 성공적으로 배포하고 혜택을 누리는 극소수 대열에 합류할 수 있다. *Subutai Ahmad는 Numenta의 CEO다. editor@itworld.co.kr
헤드리스(headless) 데이터 아키텍처를 사용하면 조직 전체적으로 강력한 데이터 액세스를 실현할 수 있다. 출발점은 시프트 레프트다. 헤드리스 데이터 아키텍처는 조직의 중심에서 데이터 액세스 계층을 공식화하는 것이다. 스트림과 테이블을 모두 포괄하는 이 아키텍처는 운영과 분석 사용 사례를 위한 일관적인 데이터 액세스를 제공한다. 스트림은 이벤트에 대한 시의적절한 대응을 위한 저지연 기능을 제공하고, 테이블은 지연은 높지만 배치 효율성이 매우 높은 쿼리 기능을 제공한다. 요구사항에 가장 잘 맞는 처리 헤드를 선택하고 데이터에 연결하기만 하면 된다. 헤드리스 데이터 아키텍처를 구축하려면 데이터 분석 평면 내부 깊은 곳에서 이미 수행 중인 작업을 파악하고 이를 왼쪽으로 옮겨야 한다. 데이터 정리, 구조화, 도식화와 같이 이미 다운스트림으로 하고 있는 작업을 가져와 업스트림 소스 시스템으로 푸시한다. 데이터 소비자는 운영과 분석, 그 외의 모든 작업에서 스트림과 테이블을 통해 제공되는 하나의 표준화된 데이터 집합에 의존할 수 있다. 우리는 헤드리스 데이터 아키텍처를 시프트 레프트 접근 방식을 통해 구현한다. 다음 차트는 전반적인 개념을 보여준다. 작업을 왼쪽으로 옮김으로써 다운스트림 비용을 대폭 줄일 수 있다. 시프트 레프트 접근 방식은 데이터를 생성, 액세스, 사용하는 데 있어 특히 전통적인 멀티 홉 접근 방식에 비해 더 간편하고 비용 효율적인 방법을 제공한다. 멀티 홉과 메달리온 데이터 아키텍처 대부분의 조직에는 추출-변환-로드(ETL) 데이터 파이프라인, 데이터 레이크, 데이터 웨어하우스, 또는 데이터 레이크하우스가 구축돼 있다. 분석 평면의 데이터 분석가에게는 운영 평면의 소프트웨어 개발자들이 사용하는 것과는 다른 전문화된 툴이 필요하다. "데이터를 왼쪽에서 오른쪽으로 옮기는" 이 전반적인 구조를 일반적으로 멀티 홉 데이터 아키텍처라고 한다. 메달리온 아키텍처는 멀티 홉 아키텍처에서 가장 인기 있는 형식이다. 메달리온 아키텍처에는 올림픽 메달 색으로 표현되는 세 가지 수준의 데이터 품질이 있다(브론즈, 실버, 골드). 브론즈 계층은 데이터 랜딩 존 역할을 하며 실버는 정제되고 잘 정의된 데이터 계층(2단계), 골드는 비즈니스 수준의 집계된 데이터 집합(3단계) 역할을 한다. 1단계에서 랜딩한 데이터는 일반적으로 비구조적인 원시 데이터이며 정제, 도식화, 표준화를 거쳐 2단계로 작성된다. 여기서 추가로 집계, 그룹화, 비정규화 및 처리를 거쳐 3단계 비즈니스별 데이터 집합을 형성해 대시보드, 보고서에 사용되고 AI와 머신 러닝 모델을 위한 학습 데이터를 제공한다. 멀티 홉 아키텍처의 문제점 첫째, 멀티 홉 아키텍처는 대부분이 주기적으로 트리거되는 배치 프로세스로 구현되므로 속도가 느리다. 데이터가 소스에서 브론즈로 이동해야 다음 홉이 시작될 수 있다. 예를 들어 15분 간격으로 브론즈 계층으로 데이터를 끌어온다면 각각의 후속 홉 역시 15분 간격이 한계다. 다음 단계로의 데이터 이동 속도는 가장 느린 부분에 의해 좌우되기 때문이다. 간격을 홉당 1분으로 줄인다 해도 골드 계층에서 데이터를 사용할 수 있으려면 처리 시간을 제외해도 최소 3분이 필요하다. 둘째, 멀티 홉 아키텍처에는 비용이 많이 든다. 각 홉이 데이터의 또 다른 복사본이고 따라서 이를 로드해서 처리하고 홉의 다음 단계로 쓰기 위해서는 처리 성능이 필요하기 때문이다. 이 비용은 빠르게 누적된다. 셋째, 멀티 홉 아키텍처는 불안정한 경향이 있다. 대체로 워크플로우의 다양한 단계, 소스 데이터베이스, 최종 사용 사례를 다양한 사람들이 소유하기 때문이다. 아키텍처에 균열이 발생하지 않도록 하기 위해서는 매우 강력한 조율이 필요한데, 실무에서 이는 확장하기가 어렵다. 넷째, 데이터 분석가가 자신의 데이터 확보를 책임지므로 비슷한 여러 데이터 파이프라인이 생성될 수 있다. 소유권 분산 문제를 방지하기 위해 각 팀이 자체 맞춤형 파이프라인을 구축할 경우 비슷한 파이프라인의 난립으로 이어질 수 있다. 비슷하지만 다른 파이프라인과 데이터 집합 문제는 회사의 규모가 클수록 더 흔히 나타난다. 사용 가능한 모든 데이터 집합을 찾기가 어려울 수 있다. 여기서 다섯 번째 문제, 비슷하지만 다른 데이터 집합이 발생한다. 왜 여러 데이터 집합이 있을까? 어느 것을 사용해야 할까? 이 데이터 집합은 여전히 유지 관리될까, 아니면 아직 주기적으로 업데이트되지만 아무도 감독하지 않는 좀비 데이터 집합일까? 중요한 계산 작업이 있는데, 동일해야 하지만 실제로는 그렇지 않은 여러 데이터 집합에 의존하는 탓에 계산 결과가 상충하는 경우 이 문제가 불거진다. 상충하는 보고서와 대시보드 또는 지표를 고객에서 제공할 경우 신뢰를 잃게 되고 최악의 경우 비즈니스를 망치거나 소송에 휘말릴 수도 있다. 상기한 모든 문제를 해결한다 해도(지연을 줄이고 비용을 낮추고 중복되는 파이프라인과 데이터 집합을 제거하고 문제 해결 작업을 없애는 등) 운영 측에서 사용할 수 있는 것은 아직 아무것도 제공하지 않은 상태다. 운영 부서는 여전히 ETL의 업스트림에서 스스로 알아서 해야 한다. 모든 정리, 구조화, 리모델링, 배포 작업은 데이터 분석 영역의 사람들에게만 유용하기 때문이다. 헤드리스 데이터 아키텍처를 위한 시프트 레프트 헤드리스 데이터 아키텍처를 구축하려면 조직에서 데이터를 순환, 공유, 관리하는 방법을 재고해야 한다. 즉, 시프트 레프트가 필요하다. 다운스트림에서 ETL->브론즈->실버 작업을 추출해서 데이터 제품 내부의 업스트림, 즉 소스에 훨씬 더 가까운 곳에 배치한다. 주기적인 ETL로 생성되는 데이터 집합의 신선도는 아무리 짧아도 몇 분 수준이지만 스트림 우선 접근 방식은 데이터 제품에 1초 미만의 데이터 신선도를 제공한다. 시프트 레프트를 통해 회사 전체에서 더 저렴하고 쉽고 빠르게 데이터에 액세스할 수 있다. 데이터 제품으로 헤드리스 데이터 아키텍처 구축 헤드리스 데이터 아키텍처에서 논리적인 데이터의 최상위 수준은 데이터 제품이다. 데이터 메시(data mesh) 접근 방식을 통해 이미 이 개념에 익숙한 사람도 있을 것이다. 헤드리스 데이터 아키텍처에서 데이터 제품은 스트림(아파치 카프카 기반) 및 관련 테이블(아파치 아이스버그 기반)로 구성된다. 스트림에 작성되는 데이터는 자동으로 테이블에도 추가되므로 카프카 주제 또는 아이스버그 테이블로 데이터에 액세스할 수 있다. 다음 그림은 소스 시스템에서 생성된 스트림/테이블 데이터 제품을 보여준다. 먼저 스트림에 데이터를 쓴다. 이후 선택적으로 스트림에서 데이터를 변환해서 최종적으로 아이스버그 테이블로 구체화할 수 있다. 스트림(카프카 주제)을 사용해 주문 관리, 배차, 금융 거래와 같은 저지연 비즈니스 작업을 구동할 수 있다. 또한 배치 쿼리 헤드를 아이스버그 테이블에 연결해서 일일 보고, 고객 분석, 정기적인 AI 학습과 같이 지연이 큰 워크로드를 계산할 수도 있다. 데이터 제품은 다른 팀 및 서비스와 함께 공유하고 재사용하도록 만들어지는 신뢰할 수 있는 데이터 집합이며 작업 및 서비스에 필요한 데이터를 가져오는 과정을 간소화하기 위해 책임과 기술, 프로세스를 공식화한 것이다. 데이터 제품을 '재사용 가능한 데이터 자산'이라고도 하는데, 어떻게 부르든 공유와 재사용이 가능한 표준화된 신뢰할 수 있는 데이터라는 본질은 동일하다. 데이터 제품 생성 로직은 소스 시스템에 따라 크게 달라진다. 예를 들면 다음과 같다. 아이스버그 테이블로 손쉽게 구체화가 가능한 카프카 주제에 이벤트 기반 애플리케이션이 직접 출력을 쓴다. 데이터 제품 생성 로직은 예를 들어 기밀 필드 가리기 또는 완전한 제거와 같이 최소화될 수 있다. 일반적인 요청/응답 애플리케이션은 변경 데이터 캡처(CDC)를 사용해서 기반 데이터베이스에서 데이터를 추출해 이벤트로 변환하고 카프카 주제에 쓴다. CDC 이벤트에는 소스 테이블을 기반으로 한 잘 정의된 스키마가 포함된다. 커넥터 자체 또는 플링크SQL(FlinkSQL)과 같은 더 강력한 것을 사용해서 데이터 변환을 추가로 수행할 수 있다. SaaS 애플리케이션은 스트림에 쓰기 위해 카프카 커넥트를 사용해 주기적으로 엔드포인트를 폴링해야 할 수 있다. 스트림 우선 데이터 제품의 좋은 점은 스트림에 쓰기만 하면 그 외의 요구사항은 없다는 것이다. 스트림과 테이블에 동시에 쓰기 위해 분산 트랜잭션을 관리할 필요가 없다(이 작업은 제대로 하기가 상당히 어려우며 속도도 느릴 수 있음). 대신 카프카 커넥트, 또는 컨플루언트 테이블플로우(Tableflow)와 같은 독점 SaaS 스트림-테이블 솔루션을 통해 스트림에서 추가 전용 아이스버그 테이블을 만든다. 내결함성과 정확히 한 번 쓰기는 데이터 무결성을 유지하는 데 도움이 되므로 스트림에서 읽든 테이블에서 읽든 동일한 결과를 얻게 된다. 시프트 레프트를 위한 데이터 집합 선택 시프트 레프트는 양자택일의 방식이 아니라 사실 고도로 모듈화되고 점진적인 방식이다. 어느 부하를 왼쪽으로 옮기고 그대로 둘지를 선택할 수 있다. 병렬 시프트 레프트 솔루션을 설정하고 검증한 다음 결과가 만족스러우면 기존 작업을 전환할 수 있다. 프로세스는 다음과 같다. 분석 평면에서 일반적으로 사용되는 데이터 집합을 선택한다. 자주 사용될수록 시프트 레프트에 더 적합한 후보다. 오류의 여지를 거의 둘 수 없는 비즈니스 핵심 데이터(예를 들어 청구 정보) 역시 시프트 레프트 대상으로 적합하다. 운영 평면에서 데이터의 소스를 파악한다. 이는 데이터 스트림을 만들기 위해 필요한 시스템이다. 참고로 이 시스템이 이미 이벤트 기반이라면 스트림 사용이 이미 가능한 상황일 수 있고, 이 경우 아래 4단계로 건너뛸 수 있다. 기존 ETL 파이프라인과 병렬로 소스-스트림 워크플로우를 만든다. 카프카 커넥터(예: CDC)를 사용해 데이터베이스 데이터를 이벤트 스트림으로 변환해야 할 수 있다. 또는 스트림에 직접 이벤트를 생성하는 방법을 선택할 수도 있다. 소스 데이터베이스와 일관성을 유지하도록 데이터 집합 전체를 써야 한다는 점만 주의하면 된다. 스트림에서 테이블을 만든다. 카프카 커넥트를 사용해서 아이스버그 테이블을 생성하거나, 아이스버그 테이블을 제공하는 자동화된 서드파티 독점 서비스를 사용할 수도 있다. 참고로, 카프카 커넥트를 사용하는 경우 데이터의 복사본이 아이스버그 테이블로 작성된다. 데이터의 또 다른 복사본을 만들지 않고 카프카 주제를 아이스버그 테이블로 스캔하는 기능을 제공하는 써드 파티 서비스가 조만간 등장할 것으로 예상된다. 테이블을 실버 계층의 데이터와 함께 기존 데이터 레이크에 연결한다. 이제 새 아이스버그 테이블이 기존 데이터 집합의 데이터와 일치하는지 검증할 수 있다. 결과가 만족스럽다면 배치 방식으로 생성된 기존 테이블에서 데이터 분석 작업을 마이그레이션하고 해당 테이블은 사용을 중단하도록 설정한 다음 편한 시간에 제거하면 된다. 그 외의 헤드리스 데이터 아키텍처 고려 사항 이전 기사에서 살펴본 바와 같이 데이터를 복사하지 않고도 아이스버그 테이블을 호환되는 모든 분석 엔드포인트에 연결할 수 있다. 데이터 스트림도 마찬가지다. 두 경우 모두 처리 헤드를 선택해서 필요에 따라 테이블 또는 스트림에 연결하기만 하면 된다. 시프트 레프트는 일반적인 복사-붙여넣기, 멀티 홉, 메달리온 아키텍처에는 없는 몇 가지 강력한 기능도 사용할 수 있게 해준다. 하나의 논리 지점에서 스트림 진화와 테이블 진화를 함께 관리하고 스트림 진화가 아이스버그 테이블을 손상시키지 않는지 확인할 수 있다. 작업이 데이터 분석 영역 밖 왼쪽으로 이동됐으므로 데이터 검증과 테스트를 소스 애플리케이션 배포 파이프라인에 통합할 수 있다. 이렇게 하면 코드가 프로덕션으로 들어가기 전에 손상이 일어나지 않도록 할 수 있으므로 오랜 시간이 지난 후에 다운스트림에서 손상된 부분을 감지하게 될 일이 없다. 마지막으로, 테이블이 스트림에서 파생되므로 한 지점에서만 수정하면 된다. 스트림에 쓰는 모든 내용은 테이블로 전파된다. 스트리밍 애플리케이션은 수정된 데이터를 자동으로 수신해서 스스로 수정할 수 있다. 단, 테이블을 사용하는 주기적인 배치 작업은 찾아서 다시 실행해야 한다. 그러나 이 작업은 기존 멀티 홉 아키텍처에서도 어차피 해야 할 일이다. 헤드리스 데이터 아키텍처는 조직 전체적으로 강력한 데이터 액세스를 실현해준다. 출발점은 시프트 레프트다. editor@itworld.co.kr
기술 천국에서나 있을 법한 로맨스가 있다면 바로 마이크로소프트와 오픈AI의 관계일 것이다. 마이크로소프트는 오픈AI에 10억 달러를 투자한 초기 투자자였으며, 신생업체인 오픈AI는 이런 투자금으로 획기적인 생성형 AI 기반 챗GPT를 개발해 지금 같은 생성형 AI 열풍의 주역이 될 수 있었다. 투자를 받은 오픈AI는 세계에서 가장 영향력 있는 AI 신생업체로 성장했다. (이후 마이크로소프트는 130억 달러를 더 투자했다.) class="image" ⓒ Getty Images Bank 마이크로소프트 역시 선견지명 덕분에 챗GPT를 코파일럿 도구 라인의 기반으로 사용하며 AI 분야를 선도하게 됐다. 오픈AI의 지분을 상당 부분 소유하고 있으며, 이 관계로 수십억 달러의 수익을 거뒀다. 그 과정에서 두 회사는 함께 의회에 로비하고, 전략을 세우며, 거의 모든 면에서 같이 걸음을 옮기는 것처럼 보였다. 작년에 오픈AI가 샘 알트먼을 CEO에서 축출했을 때, 마이크로소프트 CEO 사티아 나델라는 그를 복직시키기 위해 막후에서 노력했다. 두 사람의 관계는 알트만이 “기술 업계 최고의 브로맨스”라고 불렀을 정도로 가까운 사이였다. 지난해 오픈AI가 주최한 컨퍼런스에서 많은 청중 앞에서 나델라는 알트먼을 향해 “우리는 여러분을 사랑합니다”라고 말했다. 알트먼도 동감을 표했다. 만일 영화였다면 로맨스가 너무 감동적이기만 해서 뻔하다고 생각했을 것이다. 하지만 이제는 모두 과거의 이야기다. 둘은 서로를 향해 칼을 빼들었다. 사실 놀랄 사람은 별로 없을 것이다. 지난 3월 필자 역시 두 업체가 “친구라기보다는 원수처럼 보인다”라고 지적한 바 있다. 필자는 알트만과 오픈AI COO 브래드 라이트캡이 공개적으로 기업을 마이크로소프트의 코파일럿에서 오픈AI의 엔터프라이즈 챗GPT로 유인하려 한다고 지적한 바 있다. 로이터 통신은 알트만과 라이트캡이 뉴욕, 샌프란시스코, 런던에서 300명 이상의 기업 임원을 대상으로 구애를 펼치면서, 마이크로소프트의 간접적 생성형 AI 기술 대신 직접 기술을 구축한 오픈AI과 함께 일할 것이라는 장점을 강조하고 마이크로소프트에 반감을 드러냈다고 보도했다. 앞서 나델라는 오픈AI를 겨냥해 "오픈AI가 바로 내일 당장 사라진다고 해도 마이크로소프트는 모든 지적재산권과 역량을 보유하고 있다. 인력, 컴퓨팅, 데이터, 모든 것을 갖추고 있다. 마이크로소프트는 오픈AI보다 위에, 아래에, 주변에, 모든 곳에 있다”라고 공격한 적도 있다. 최악에서 더 최악으로 그 이후로 상황은 더욱 악화되었다. 싸움의 이유는 여러 가지지만 가장 큰 것은 많은 이가 짐작하는 대로 돈이다. 마이크로소프트가 오픈AI에 투자한 140억 달러에는 현금뿐 아니라 컴퓨팅 리소스, 특히 오픈AI의 기술을 훈련하고 실행하는 데 필요한 막대한 양의 연산 능력이 포함되어 있다. 가장 최근의 현금 투입은 10월 초 오픈AI가 여러 은행, 투자 펀드, 마이크로소프트, AI 칩 제조업체 엔비디아를 포함한 투자자로부터 66억 달러를 유치하면서 이루어졌다. (이 중 10억 달러는 마이크로소프트가 투자한 것으로 알려졌다.) 투자 유치 이후 오픈AI의 기업 가치는 1,570억 달러에 달할 것으로 추정된다. 하지만 이마저도 오픈AI에는 충분하지 않았다. 의견 충돌은 여기에서 시작됐다. 1,570억 달러의 기업 가치에도 불구하고 오픈AI의 지출은 계속 급증하면서 매년 50억 달러의 손실을 내며 현금을 소진하고 있다. 조만간 해결될 문제는 아니다. 사실 상황은 더 악화될 가능성이 높다. 뉴욕 타임즈에 따르면 2029년 오픈 AI는 연간 375억 달러를 컴퓨팅 비용으로 지출할 것이며, 이 비용은 급여, 임대료 및 회사의 다른 제반 비용을 제외한 순수 컴퓨팅 비용이다. 따라서 오픈AI는 마이크로소프트가 더 많은 컴퓨팅 성능을 제공해주기를 원한다. 그리고 마이크로소프트는 망설이고 있다. 더타임스는 이렇게 지적한다. “오픈AI 직원은 마이크로소프트가 충분한 컴퓨팅 파워를 제공하지 않는다고 불평한다.... 그리고 일부는 다른 회사가 인간의 두뇌와 일치하는 AI를 만드는 데 성공하면 오픈AI에 필요한 컴퓨팅 성능을 제공하지 않은 마이크로소프트가 책임을 져야 할 것이라고 불평하고 있다"라고 보도했다. 오픈AI는 현재 이러한 연산 자원을 확보하기 위해 다른 곳으로 눈을 돌리고 있다. 최근에는 오라클과 거의 100억 달러에 달하는 계약을 체결했다. 마이크로소프트와 오픈AI는 최근 마이크로소프트의 컴퓨팅 파워를 금전적으로 얼마로 평가할지 재협상했지만, 새로운 계약이 금전적 가치를 낮출지 높일지는 확실하지 않다. 마이크로소프트는 AI 미래를 위해 오픈AI에 지나치게 의존하는 것을 경계하고 있다. 6억 5,000만 달러 이상을 들여 오픈AI 경쟁사 인플렉션의 거의 모든 직원을 고용했다. 또한 인플렉션 전 최고 경영자이자 공동 창업자 무스타파 슐레이만을 마이크로소프트의 AI 업무 담당 책임자로 영입했다. 슐레이만과 오픈AI는 이미 여러 차례 충돌을 겪었으며, 알트만은 슐레이만의 채용에 점점 더 불만을 표시하고 있어 상황은 더욱 악화될 것으로 예상된다. 투자은행 D.A. 데이비슨 애널리스트 길 루리아는 타임즈에 "마이크로소프트가 오픈AI 기술만 사용한다면 뒤처질 수 있다. 진정한 경쟁이 시작되면 오픈AI가 이기지 못할 수도 있다"라고 예측했다. 다음 단계는? 이 모든 것은 서막에 불과하다. 가장 큰 문제는 오픈AI에 대한 마이크로소프트의 지속적 투자가 공정한 시장 가치를 인정 받느냐 하는 것이다. 오픈AI는 원래 비영리 회사로 설립되었고, 그 기간 동안 마이크로소프트가 많은 투자를 했기 때문에 매우 복잡한 문제라 할 수 있다. 이후 오픈AI의 본질은 영리 업체로 변모했다. 월스트리트 저널은 두 회사가 문제 협상을 위해 투자 은행을 고용했다고 보도했다. 투자 은행이 개입하면 더 이상 칼을 휘두르는 싸움이 아니라 화염 방사기가 등장하는 단계다. 두 회사의 싸움은 이제 막 시작되었다는 뜻이다. 과연 누가 승리할까? 오픈AI의 기업 가치는 1,570억 달러로 결코 약한 경쟁자가 아니다. 그러나 기사 작성 시점인 현재 마이크로소프트의 가치는 3조 1,900억 달러에 달한다. 그리고 겸손하고 친근한 태도로 유명한 나델라는 사실 알트만보다 훨씬 더 상어에 가까운 인물이다. 필자라면 마이크로소프트에 돈을 걸겠다. editor@itworld.co.kr
많은 기업이 LLM(large language models)을 기반으로 하는 생성형 AI 애플리케이션을 구축하고 있지만, 프로토타입에서 프로덕션으로 성공적으로 전환하는 비율은 극소수에 불과하다. 가트너의 2023년 10월 설문조사에서 기업 45%는 현재 생성형 AI 파일럿을 진행 중이라고 답했으며 완전히 배포했다고 답한 곳은 10%에 불과했다. 엔터프라이즈, 제품 기업, 심지어 LLM 기반 애플리케이션에 초점을 둔 스타트업에 이르기까지 AI 성공 사례가 드문 것은 마찬가지다. 일부에서는 실패율이 80%에 이르는 것으로 추산한다. LLM의 매력적인 가능성과 현실 사이에 이렇게 간극이 존재하는 이유는 무엇일까? 기업이 LLM을 프로덕션에 투입할 때 직면하는 가장 일반적이면서 복잡한 5가지 과제와 각각에 대한 대처 방법을 알아보자. 개인정보 보호·보안·규정 준수 우려 기업 환경에 LLM을 배포할 때는 데이터 보안, 개인정보 보호, 규정 준수 측면에서 중대한 과제를 해결해야 한다. 기업은 학습 과정에서 민감한 데이터가 유출될 가능성에 대한 우려로 프로덕션 소프트웨어 애플리케이션에 LLM을 사용하기를 주저하는 경우가 많다. 여기에 규정 준수 상태를 유지하고 고객 데이터의 책임감 있는 처리를 보장해야 한다는 엄격한 요구항까지 더해져 기업이 짊어지는 위험은 더욱 커진다. 데이터를 잘못 취급할 경우 막대한 벌금과 신뢰 손실로 이어질 수 있는 만큼 기업 입장에서는 잃을 것이 많다. 따라서 기업 환경에서 AI의 잠재력을 현실화하기 위해서는 LLM의 역량을 활용하는 동시에 데이터를 보호하는 솔루션을 찾아야 하는 어려운 과제를 해결해야 한다. 이런 우려를 해소하려면 기업은 AI 학습 및 추론 시스템의 아키텍처와 인프라에 대해 철저한 실사를 수행해야 한다. 기업은 워크플로우와 데이터플로우를 면밀히 조사함으로써 제품 수명 주기 전반에 걸쳐 데이터와 AI 모델에 대한 바람직하지 않은 액세스에 따르는 위험을 더 잘 파악할 수 있다. 이 선제적 접근법을 사용하면 모든 잠재적 취약점을 파악, 수정해서 첨단 AI 기술의 힘을 활용하면서 데이터를 보호할 수 있다. AI 환각 기업 내에 LLM을 배포하기 위해 넘어야 할 또 다른 큰 장애물은 AI 환각 위험이다. 이 위험은 특히 데이터 품질과 관련된 기존 문제와 결합될 때 더 심화된다. AI 환각과 이로 인한 부정적 영향에 대한 언론 보도가 이어지면서 비즈니스 의사결정권자 사이에서 문제에 대한 인식과 우려가 함께 커졌다. 특히 환각을 탐지하고 완화하기 위한 명확한 해결책이 없는 상황에서 이는 LLM 기반 애플리케이션을 프로덕션용으로 승인하는 데 있어 큰 장애물이 되는 경우가 많다. 이 과제를 극복하기 위한 실용적인 접근 방법은 당면한 문제에 가장 적합한 툴을 선택하는 것이다. GPT 모델이 그동안 많은 관심을 받았고 솔루션으로 선택되는 경우도 많지만 모든 기업 애플리케이션에서 항상 최선의 선택은 아니다. 높은 정확도로 문서를 파악하고 분석하는 데 뛰어는 BERT 모델과 같은 대안을 고려해야 한다. 이런 모델은 GPT보다 더 저렴하고 빠르며 잘못된 출력을 생성하는 경우도 더 적다. 또한 BERT의 강력한 임베딩 기능과 GPT의 생성 역량을 결합한 검색 증강 생성(retrievalaugmented generation, RAG) 기법을 도입하면 최종 제품의 품질을 대폭 강화할 수 있다. 이 전략을 통해 기업은 다양한 AI 기술의 강점을 적절히 활용해서 성능을 최적화하는 동시에 위험을 완화할 수 있다. LLM 품질 평가 GPT와 같은 LLM을 기업 환경에 배포하는 경우 출력이 갖는 주관적인 속성 탓에 품질 평가에 어려움이 발생할 수밖에 없다. 결과가 맞거나 틀린 것으로 구분되는 전통적인 분류 작업과 달리 GPT 모델의 출력은 해석하기에 따라 달라질 수 있으므로 품질에 대한 판단이 복잡해진다. 이 모호성은 소프트웨어 애플리케이션 배포에 사용되는 기존 CI/CD 프로세스에 LLM을 통합하는 데 있어 큰 난관이 된다. 일반적으로 CI/CD 프로세스는 제품이 품질 기준을 충족하는 지 확인하기 위해 결정론적 테스트에 의존하기 때문이다. 이 문제에 효과적으로 대처하려면 기업은 LLM의 모호성을 수용하도록 릴리스 프로세스를 재고해야 한다. LLM 애플리케이션 개발 프로세스에 새로운 기술과 접근 방식을 통합하는 것은 필수적이다. 한 가지 전략은 LLM 출력의 품질을 평가하기 위한 다양한 방법을 채택하는 것이다. 예를 들어 GPT4와 같은 정립된 LLM을 벤치마킹 툴로 사용하면 다른 모델의 결과를 검증하기 위한 비교 척도를 얻을 수 있다. A/B 테스트, 카나리아 릴리스와 같은 민첩한 배포 방법론을 강력히 권장한다. 이러한 기법은 점진적 배포가 가능하므로 릴리스 프로세스의 초기에 잠재적인 문제를 파악해서 LLM의 본질적인 과제를 극복하고 품질 기준을 유지할 수 있다. 운영화 과제 기업 환경에 LLM을 배포하는 데는 복잡한 AI 및 데이터 관리 고려 사항과 난해한 인프라, 특히 GPU를 사용하는 인프라의 운영화가 포함된다. GPU 리소스를 효율적으로 프로비저닝하고 사용을 모니터링하는 것은 데브옵스팀의 지속적인 과제다. 이 복잡한 환경에서는 기술과 베스트 프랙티스가 빠르게 발전함에 따라 지속적인 감독과 적응이 필요하다. 엔터프라이즈 소프트웨어 기업 내의 데브옵스팀은 앞서 나가기 위해서는 GPU 리소스 관리의 최신 동향을 지속적으로 살펴보는 것이 중요하다. 이 분야는 아직 성숙과는 거리가 멀지만 관련된 위험을 인식하고 충분한 정보에 근거한 배포 전략을 수립해야 한다. 또한 기업은 GPU 전용 솔루션의 대안도 고려해야 한다. 다른 컴퓨팅 리소스 또는 하이브리드 아키텍처를 통해 프로덕션 환경의 운영 측면을 간소화하고 제한적인 GPU 가용성에 따른 잠재적 병목 현상을 완화할 수도 있기 때문이다. 이 같은 전략적 다각화는 다양한 기업 애플리케이션 전반에서 더 원활한 배포와 더 강력한 성능을 보장한다. 비용 효율성 LLM을 사용하는 애플리케이션과 같은 AI 기반 애플리케이션을 프로덕션에 배포할 때 성공 여부는 궁극적으로 투자 수익에 달려 있다. 기술을 주창한다면 LLM이 기업의 매출과 수익에 모두 긍정적인 영향을 미칠 수 있음을 입증해야 하는데, 이 계산에서 과소평가되는 경우가 많은 중요한 요소는 총소유비용이다. 총소유비용은 모델 학습, 애플리케이션 개발, 학습 및 추론 단계 중에 발생하는 컴퓨팅 비용, 지속적인 관리 비용, AI 애플리케이션 수명 주기 관리를 위해 필요한 전문 인력을 포함한 다양한 요소를 포괄한다. 많은 기술 리더에게 과제는 이런 구성요소를 완전히 이해하고 통제하는 데 있다. 위와 같은 요소에 대한 종합적인 이해가 없으면 실험 단계의 AI 이니셔티브에서 운영 단계로의 전환을 정당화하는 데 어려움이 발생할 수 있다. 따라서 의사 결정자는 전략적 계획에 있어 유연함과 더 비용 효율적인 AI 솔루션에 대해 열린 자세를 유지하는 것이 좋다. 이를 위해서는 컴퓨팅 비용을 절감할 수 있는 혁신을 탐색하고 프로덕션 환경에서 관리가 용이한 시스템을 추구해야 한다. 이러한 측면에 우선순위를 두면 기업은 재정 지출을 최적화하고 AI 배포의 확장성과 지속가능성을 강화할 수 있다. 맺음말 LLM을 프로덕션에 배포하는 것은 미지의 요소가 많은 어려운 일이다. 민감한 데이터 보호부터 비용 측면의 고려 사항, 결과를 재현할 수 없는 상황에 이르기까지 복잡한 일이 생길 수 있다. 기업은 워크플로우와 데이터 플로우를 면밀히 검토하고 당면한 작업에 잘 맞는 유형의 모델을 선택하고 소프트웨어 릴리스 프로세스를 조정하고 GPU의 대안을 고려하고 철저한 TCO 분석을 수행해야 한다. 그러나 모든 문제는 해결이 가능하다는 것을 기억하라. 사전에 잘 준비하고, 기술과 프로세스를 배우고 조정하려는 의지가 있는 기업은 LLM 기반 애플리케이션을 성공적으로 배포하고 혜택을 누리는 극소수 대열에 합류할 수 있다. *Subutai Ahmad는 Numenta의 CEO다. editor@itworld.co.kr
윈도우 PC는 놀랍도록 강력하고 유연하다. 각종 서드파티 앱을 설치하지 않아도 그렇다. 윈도우에는 유용한 기능이 많지만, 이런 기능을 실제로 알고 있는 사람은 드물다. 여기서는 대학교에서 사용하는 노트북을 한 단계 업그레이드하고자 하는 대학생을 위해 노트 필기, 프로젝트 조사, 또는 기타 작업에 도움이 되는 윈도우의 알려지지 않은 기본 기능을 소개한다. 라이브 캡션 윈도우 11에는 오디오를 듣고 즉시 읽을 수 있는 캡션을 자동으로 생성하는 라이브 캡션(Live Captions)이라는 기능이 있다. 이 기능은 동영상을 시청할 때 작동하지만, 마이크로 녹음한 오디오에서도 작동한다. 라이브 캡션은 사용자가 강의실에 앉아 강의를 듣거나 녹화된 동영상을 시청할 때 음성 텍스트 변환 기술을 사용해 듣는 내용을 읽을 수 있는 텍스트로 변환한다. 시작 메뉴에서 '라이브 캡션'을 검색하고 라이브 캡션 앱을 실행하기만 하면 된다. 모든 윈도우 11 PC에서 사용할 수 있으며, 작동하려면 인터넷 연결이 필요하다. 코파일럿+ PC를 사용할 경우 라이브 캡션 기능은 오프라인에서도 작동하며 다른 언어 간의 실시간 번역도 지원한다. 클립보드 기록 텍스트를 복사해 붙여넣을 때마다 이전에 복사한 내용을 덮어쓴다고 생각할 수 있지만, 그렇지 않다. 윈도우 11의 클립보드 기록 기능은 복사한 모든 텍스트와 이미지를 추적한다. 일반적인 붙여넣기는 마지막으로 복사한 내용을 붙여넣는다. 이 작업을 하는 Ctrl + V 단축키 대신 Windows + V 단축키를 사용하면 이전에 복사한 항목 중에서 선택할 수 있다. 아직 클립보드 기록 기능을 활성화하지 않았다면 활성화하라는 메시지가 표시된다. 클립보드 기록 기능을 사용하면 항목을 '고정'할 수도 있어 나중에도 편리하게 액세스할 수 있다. 윈도우의 대표적인 생산성 기능이다. 손글씨로 텍스트 입력 일부 윈도우 노트북은 정전식 펜을 지원한다. 이런 펜 지원 PC는 원노트와 같은 뛰어난 노트 작성 앱에서 손글씨 메모, 수학 방정식, 다이어그램 등을 훨씬 쉽게 작성할 수 있어 대학생에게 좋은 선택이다. 윈도우 11에서는 훨씬 더 유용하다. 필기 인식 기능 덕분에 모든 앱에서 펜 입력이 작동한다. 펜으로 텍스트 필드에 직접 글을 쓰면 윈도우가 즉시 텍스트로 변환한다. 받아쓰기 윈도우 11에는 받아쓰기 기능이 내장돼 있어 생각을 소리 내어 말하면 바로 텍스트로 받아쓰기할 수 있다. 즉, 휴대폰처럼 음성으로 입력할 수 있다. Windows + H 단축키를 사용하면 윈도우 11 받아쓰기 도구가 열린다. 터치스크린이 있는 PC를 사용하는 경우에는 터치 키보드의 마이크 버튼을 탭하여 실행할 수도 있다. 데스크톱 앱처럼 사용하는 웹 앱 스토어에서 다운로드한 앱이 실제로는 브라우저에서 실행되는 웹사이트에 불과한 경우가 많다. 사용하는 모든 웹 페이지와 웹 앱을 수십 개의 탭으로 열어 두는 것이 싫은가? 윈도우 11에서는 웹 페이지와 웹 앱을 윈도우 '앱'으로 전환할 수 있다. 이런 앱은 작업 표시줄에서 자체 아이콘을 가지고 있으며, 일반적인 데스크톱 앱과 거의 동일한 느낌을 준다. 지메일, 스포티파이, 슬랙처럼 24시간 내내 열어 두는 단일 페이지 웹 앱 사용 시 특히 편리하다. 스티커 메모 마이크로소프트 원노트는 훌륭한 노트 필기 애플리케이션이지만, 너무 복잡할 수 있다. 여기저기 간단한 메모만 적고 싶다면 스티커 메모(Sticky Notes) 앱을 사용해 보기를 바란다. 윈도우 11에는 시작 메뉴에서 'Sticky Notes'를 검색해 실행할 수 있는 스티커 메모 앱이 내장돼 있다. 이 앱은 메모를 바탕화면에 고정하거나 간단한 목록 형식으로 보관할 수 있으며, PC와 다른 기기 간에 동기화도 지원한다. 휴대폰과 동기화할 때는 원노트 모바일, 안드로이드용 마이크로소프트 런처, 윈도우용 아웃룩을 통해 메모에 액세스할 수 있다. 이모지 메뉴 윈도우에는 이모지를 위한 편리한 빠른 삽입 도구가 내장돼 있다. Windows + . 또는 ; 단축키를 사용하면 도구에 액세스할 수 있다. 윈도우에서 제공하는 모든 이모지를 모든 애플리케이션과 문서에 삽입할 수 있다. 메뉴를 호출한 후 단어를 입력하면 이모지를 검색할 수도 있다. 텍스트 편집 단축키 Ctrl 키는 텍스트 편집에 꼭 필요한 수많은 키보드 단축키를 제공한다. 필자가 가장 좋아하는 부분은 개별 문자가 아닌 단어 전체에 이런 텍스트 편집 동작을 적용할 수 있다는 점이다. 예를 들면 다음과 같다. 일반적으로 백스페이스 키를 누르면 한 문자만 삭제된다. 하지만 Ctrl + 백스페이스 키를 누르면 단어 전체를 삭제한다. 이 기능은 삭제 키를 비롯한 많은 단축키와 함께 작동한다. 또 다른 예는 텍스트 선택이다. Shift 키를 누른 상태에서 ← 또는 → 키를 눌러 개별 문자를 선택할 수 있다. 하지만 Ctrl + Shift + ← 또는 → 키를 사용하면 한 번에 전체 단어를 선택할 수 있다. Ctrl + Shift + Home 또는 End 키를 사용하면 한 번의 키 입력으로 전체 텍스트를 선택해 페이지 상단(Home)으로 올라가거나 하단(End)으로 내려간다. 동적 잠금 노트북을 사용하든 PC를 사용하든, 대학교 캠퍼스와 같은 공공장소에서는 컴퓨터를 사용하지 않을 때마다 잠그는 것이 좋다. 이미 단축키(Windows + L)를 사용하거나 절전 모드에 들어갈 때마다 자동으로 잠기는 설정을 사용하고 있을 것이다. 하지만 윈도우 11에는 휴대폰이 컴퓨터에서 멀어지는 것을 감지해 자동으로 잠그는 '동적 잠금'이라는 더 좋은 선택지도 있다. '설정 앱 → 계정 → 로그인 옵션 → 동적 잠금'에서 이 기능을 설정할 수 있다. 존재 감지 기반 잠금 존재 감지 센서(Presence Sensor)가 탑재된 최신 노트북은 휴대폰을 사용할 필요도 없다. 사용자가 컴퓨터에서 멀어지는 것을 감지해 자동으로 잠그고, 다시 앉으면 자동으로 잠금이 해제된다. 얼굴 인식 기능이 있는 윈도우 헬로(Windows Hello)를 설정한 경우 자동으로 다시 로그인할 수 있다. 집중 세션 포모도로(Pomodoro) 기법을 아는가? 25분간 집중력을 유지하고 5분간 쉬는 시간 관리 방법론이다. 포모도로 기법을 사용하는 대부분 사람은 타이머를 사용해 작업과 휴식의 전환 시기를 파악한다. 윈도우 11에는 포모도로 타이머가 내장돼 있다. 시작 메뉴에서 시계 앱을 연 다음, '집중 세션' 기능을 활성화하면 된다. 집중하는 동안에는 모든 윈도우 시스템 알림과 앱 알림이 차단된다. 집중하는 동안 적절한 음악이 재생되도록 스포티파이 계정을 연결할 수도 있다. 방해 금지 모드 윈도우에는 집중할 때 시끄러운 알림을 끄는 방해 금지 모드 기능이 있다. 방해 금지 모드는 스마트폰에서는 오랫동안 인기 있는 기능이었지만, 윈도우 PC에는 오랫동안 이런 기능이 없었다. 윈도우 11에서 방해 금지 모드를 사용하려면 Windows + N을 눌러 알림 센터를 연 다음, 오른쪽 상단에 있는 'Z가 있는 종' 아이콘을 클릭한다. 윈도우 10에서는 일시적으로 알림을 비활성화하려면 포커스 어시스트(Focus Assist)라는 설정을 활성화해야 한다. 휴대폰과 동기화 윈도우를 사용하면 PC에서 휴대폰에 쉽게 접근하고 제어할 수 있다. 스마트폰 운영체제에 따라 프로세스와 기능은 다르다. 아이폰을 사용하는 경우, 윈도우용 아이클라우드 앱을 설치한다. 설정이 완료되면 아이클라우드 사진을 사진 앱에 연결하고 윈도우 내에서 탐색할 수 있다. 또한 드라이브, 암호, 연락처, 캘린더 및 책갈피를 비롯한 아이클라우드의 다른 기능과도 통합할 수 있다. 안드로이드 휴대폰을 사용하는 경우, 시작 메뉴에서 '휴대폰과 연결' 앱을 연다. 이 앱을 설정하면 PC에서 문자를 보내고, 휴대폰의 알림을 관리하고, 카메라 롤에서 사진을 찾아보고, 사진을 PC로 복사하여 붙여넣기할 수 있다. 화면 캡처 및 녹화 최신 윈도우 PC에는 강력한 화면 캡처 도구가 내장되어 있습니다. 윈도우 11에서는 '캡처 도구'라고 부른다. Windows + Shift + S 단축키를 누르면 바로 실행할 수 있다. 캡처 도구가 열리면 화면 상단에 오버레이 표시줄이 나타난다. 이 막대를 사용해 원하는 스크린샷 유형(직사각형, 윈도우, 전체 화면 또는 자유형)을 선택한다. 그런 다음 클릭하거나 드래그하여 캡처할 항목을 선택하면 알림이 표시된다. 알림을 클릭해 스크린샷을 저장하기 전에 편집할 수 있다. 캡처 도구에는 화면을 동영상으로 녹화하는 기능이 포함돼 있다. 화면 상단의 오버레이 표시줄에서 비디오 카메라 아이콘으로 전환한 다음 캡처하려는 영역 위에 직사각형을 그리면 된다. 이전 버전의 파일 복원 윈도우에서는 파일의 이전 버전을 검색하는 여러 가지 방법을 제공한다. 파일이 마이크로소프트의 원드라이브 클라우드 저장소에 동기화된 경우, 파일 탐색기에서 파일을 찾아 마우스 오른쪽 단추로 클릭한 다음 '원드라이브 버전 기록'을 선택할 수 있다. 클라우드 저장소 서비스에 동기화되지 않고 PC에만 저장된 파일이라면 '파일 기록(File History)' 기능을 설정해 선택한 파일 및 폴더를 정기적으로 외장 드라이브에 백업할 수 있다. 백업본에서 파일의 이전 버전을 복원할 수 있다. 분실 노트북 추적 대학교에서 노트북을 사용한다면 분실이나 도난에 대비한 비상 계획을 세워야 한다. 한 가지 옵션은 윈도우에 내장된 노트북 추적 기능을 사용하는 것이다. 이를 통해 원격으로 노트북을 잠글 수 있다. 노트북은 셀룰러 연결이 되지 않을 가능성이 높기 때문에 스마트폰에서 지원하는 위치 추적 기능만큼 유용하지는 않을 것이다. 추적 기능을 사용하려면 노트북이 와이파이에 연결되어 있어야 하며, 절전 모드에 있으면 안 된다. 완벽하지는 않더라도 여전히 유용하다. 캠퍼스에서 노트북을 분실하더라도 와이파이에 연결된 상태로 유지되면 추적할 수 있다. 물론 노트북 분실 전에 이 기능을 활성화해야 한다. '설정 앱 → 개인 정보 및 보안 → 내 장치 찾기'로 이동해 설정을 활성화하면 나중에 마이크로소프트 계정 페이지에서 노트북을 추적할 수 있다. 고급 계산기 윈도우에 내장된 계산기 앱은 보기보다 훨씬 강력하다. 앱 메뉴를 열면 공학용 계산기, 그래프, 통화 및 측정 단위 변환 도구 등 다양한 모드가 숨어 있다. 빠른 동영상 편집 윈도우에는 마이크로소프트의 클립챔프(Clipchamp) 동영상 편집기가 함께 제공되지만, 운영체제 내에 또 다른 유용한 동영상 도구가 숨겨져 있다. 이 기능을 사용하면 동영상 파일을 빠르게 잘라 크기가 더 작은 동영상 파일로 저장할 수 있다. 파일 탐색기에서 동영상 파일을 '사진' 앱으로 열면 이 작업을 수행할 수 있다. 왼쪽 상단의 도구 모음에서 '자르기' 버튼을 클릭하고 자르고 싶은 구간을 설정해 저장하면 된다. 빠른 사진 편집 사진 앱에 내장된 기능에 놀랐는가? 사진 앱은 단순한 사진 뷰어가 아니다. 간단한 자르기 및 편집이 필요할 때 훌륭한 사진 편집기로도 사용할 수 있다. 앱에서 이미지를 연 후 도구 모음에서 '편집' 버튼을 클릭하면 이미지 편집 도구에 액세스할 수 있다. 이미지 자르기, 마크업, 조명 조정, 필터 적용, 심지어 배경이나 사진 속 특정 요소를 지우는 생성형 AI 기능을 제공한다. 배터리 소모량 통계 누구나 노트북 배터리 수명을 늘리고 싶어 한다. 노트북 배터리가 생각보다 훨씬 빨리 소모된다면 어떤 앱이 가장 크게 영향을 미치는지 살펴보는 것이 도움이 된다. 윈도우가 배터리 소모량을 추적해 문제를 해결할 수 있도록 도와준다. 윈도우 11 설정 앱에서 '시스템 → 전원 및 배터리'로 이동한다. '배터리 사용량' 항목을 확장하면 앱별 배터리 사용량을 확인할 수 있다. 윈도우 10에서는 '설정 → 시스템 → 배터리'에서 세부 정보를 확인할 수 있다. editor@itworld.co.kr
페이스북이 개발해 모두가 사용할 수 있도록 오픈소스 표준으로 공개한 그래프QL(GraphQL)은 REST API의 대안을 표방한다. 그래프QL은 REST와 마찬가지로 웹 기반 API를 만들고 소비하는 방법을 제공하지만, 쿼리와 반환된 데이터는 형식 스키마와 유형 시스템을 사용해 일관성을 보장한다. 여기서는 그래프QL API 설계와 구현의 기본 사항을 살펴보고 여러 가지 주요 고려 사항과 이 과정에서 내리게 되는 의사 결정에 대해 알아본다. 그래프QL 언어와 프레임워크 웹 애플리케이션 API로 그래프QL을 사용할 계획이라면 이미 사용 중인 언어 및 데이터 구성요소가 이를 지원할 가능성이 높다. 그래프QL 라이브러리는 프로덕션에 사용되는 거의 모든 주요 언어에 제공된다. 클라이언트는 C#/닷넷, 고, 자바, 안드로이드, 자바스크립트, 스위프트/오브젝티브 C, 파이썬용으로 제공되며 서버 라이브러리는 그보다 더욱 광범위하게 지원된다. 완전히 새로 시작한다 해도 다른 프로젝트에서 가장 익숙한 언어와 런타임, 데이터 계층을 선택하는 것이 최선이다. 그래프QL은 서버나 클라이언트에 많은 제약을 두지 않으며 데이터베이스를 가리지 않는다. 다만 데이터 계층에 따라 얼마간의 수동 통합이 필요할 수는 있다. (이 부분에 대해서는 다음 섹션에서 더 자세히 살펴본다.) 여기서는 참고용으로 그래프QL의 파이썬 구현을 사용한다. 개념과 기능은 다른 언어에서도 대체로 동일하다. 그래프QL의 데이터 쿼리 스키마 그래프QL은 다양한 계층 구조의 강한 유형의 필드에서 구성된 쿼리를 받는다. 그래프QL API를 만들 때 가장 잘 생각해야 하는 부분은 쿼리에 제공할 스키마다. 많은 경우 쿼리 필드를 기반 데이터 소스에 일 대 일로 매핑해서 쿼리를 위해 데이터베이스(또는 다른 데이터 소스)의 모든 관련 필드를 노출할 수 있다. 그래프QL 쿼리는 REST 쿼리에 비해 훨씬 더 제약이 없고 다양할 수 있으므로 처음부터 쿼리 가능한 필드와 이러한 필드를 데이터베이스에 매핑할 계획을 세워야 한다. 예를 들어, 영화를 위한 데이터베이스 테이블이 있고 이 테이블에 title과 year(정수)가 있다면 다음과 같은 그래프QL을 사용할 수 있다. type Character { title: String! year: Int } String 뒤에 나오는 !는 필드가 필수임을 의미하므로, 이 쿼리를 수행하려면 최소한 제목은 필요할 것이다. 또한 그래프QL을 통해 노출하는 필드가 기반 데이터와 정확히 일치하는 유형을 사용하도록 해야 한다. 예를 들어 그래프QL에는 기본 "date" 또는 "datetime" 데이터 유형이 없다. 사용 가능한 구현이 매우 다양하다는 것이 주된 이유다. 날짜 범위에 따른 검색을 허용하려면 API를 통해 가져온 날짜의 서식을 강제하고, 쿼리할 때 이러한 날짜 요청이 백엔드 데이터베이스에 적절한 유형으로 변환되도록 해야 한다. 사용 중인 프레임워크에 따라 이 작업이 이미 이뤄졌을 수도 있다. 파이썬에서 인기 있는 그래프QL 라이브러리인 그래핀(Graphene)은 ISO8601 형식의 날짜시간 값을 유형 네이티브로 제공하므로 직접 처리할 필요가 없다. 데이터 집합에 많은 필드가 있다면 복잡한 유형 강제가 불필요한 최소 기능 하위 집합을 노출하는 것부터 시작한다(예를 들어, 간단한 문자열 또는 숫자 쿼리). 그런 다음 사용 중인 그래프QL 커넥터를 통해 쿼리를 구현하는 방법을 파악하면서 사용 가능한 필드를 점진적으로 확대할 수 있다. 그래프QL 데이터 저장과 검색 백엔드에 데이터를 저장하고 검색하려면 일반적으로 사용 중인 언어의 그래프QL 라이브러리에서 지원하는 미들웨어를 사용한다. 많은 경우 일반적인 애플리케이션 프레임워크의 데이터 계층을 통해 그래프QL이 이 작업을 수행하도록 할 수 있다. 예를 들어 파이썬의 그래프QL용 그래핀 라이브러리는 장고(Django) 웹 프레임워크와 함께 장고의 내장된 ORM을 지원한다. 그래핀은 SQL알케미(SQLAlchemy) ORM을 지원하며, 인기 있는 스탈렛(Starlette)과 패스트API(FastAPI) 프레임워크에 대한 지원도 추가됐다. 또한 구글 앱 엔진의 데이터 커넥터, 릴레이 자바스크립트 프레임워크(리액트에 사용됨)와 상호운용이 가능하다. 이런 구성요소에 의해 기술되지 않은 데이터 계층을 사용하는 경우 그래핀의 미들웨어와 DataLoader 객체를 사용해 빈 틈을 채울 수 있다. 이 둘은 데이터 계층에 필요한 통합을 수동으로 연결할 수 있게 해준다. DataLoader를 사용하면 관련 데이터에 대한 여러 개의 통시 요청을 합쳐서 백엔드를 오가는 횟수를 줄일 수 있다. 한편 이 중 어느 것도 애플리케이션의 아무 계층에서 직접 캐싱을 수행하는 것을 막지는 않는다. 예를 들어 반환하는 응답은 프록시를 사용하여 캐시할 수 있고, 백엔드 데이터는 멤캐시드(Memcached) 또는 레디스를 사용해 캐시할 수 있다. 다만 데이터가 변경될 때마다 이러한 캐시를 비우는 작업도 직접 챙겨야 한다. 그래프QL 쿼리와 뮤테이션 그래프QL은 "뮤테이션(mutation) 쿼리"라고 하는 특정 쿼리 형식을 사용해서 데이터 집합에서 요소를 생성, 업데이트하거나 삭제한다. 이러한 쿼리가 작동하는 방식, 즉 어느 쿼리를 허용하고 어느 필드를 요구할지 뿐만 아니라 뮤테이션 후 쿼리에서 어떤 데이터를 반환할지에 대해서도 잠시 생각해 보자. 뮤테이션 쿼리를 설계할 때 원하는 수만큼의 출력 필드를 반환하도록 허용할 수 있다. 그러나 응답 객체를 한두 계층 이상으로 중첩하는 것은 대체로 좋은 생각이 아니다. 그렇게 하면 쿼리 자체를 볼 때, 그리고 결과를 처리하기 위한 코드를 작성할 때 모두 결과를 구문 분석하기가 어렵기 때문이다. 또 다른 중요한 주의 사항은 오랜 REST API 설계 습관이 뮤테이션 쿼리 작성 방식에 영향을 미치지 않도록 하는 것이다. 예를 들어 동일한 객체에 대한 여러 종류의 변경을 처리하기 위해 여러 뮤테이션 쿼리를 만드는 대신(REST에서 일반적인 패턴) 하나의 뮤테이션 쿼리로 통합할 수 있다. 이를 위한 한 가지 방법은 이 예제의 "upvote/downvote"와 같이 별도의 비선택적 필드를 사용해서 가능한 각 작업을 기록하는 것이다. 또 다른 방법은 값 필드와 열거형을 함께 사용해서 이 값으로 원하는 동작을 기술하는 것이다. 열거형의 한 가지 큰 장점은 모호하지 않은 명확성이다. 즉, 열거형을 사용해서 정확하게 의도를 반영할 수 있으므로 고도의 자체 문서화가 가능하다. 어느 언어든 언어의 그래프QL 라이브러리는 대부분 언어 자체의 개념 구현과 일치하는 열거형을 사용할 방법을 제공한다. 예를 들어 파이썬용 그래핀의 그래프QL 열거형은 파이썬 표준 라이브러리 enum 클래스와 상당히 비슷해 보일 수 있다. 그래프QL 캐싱과 성능 가속화 내부적으로 그래프QL 쿼리는 다른 쿼리와 마찬가지로 데이터를 폴링하고 검색한다. 즉, API 쿼리 속도를 높이기 위해 사용되는 많은 방법을 똑같이 사용해서 가속화할 수 있다. 캐싱 : 데이터베이스를 백엔드로 두거나 프론트엔드에서 데이터를 반환하는 모든 서비스는 두 끝단 모두에서 캐싱을 통한 이점을 얻을 수 있다. 단, 이러한 캐시의 만료에 대한 책임은 여러분 각자에게 있음을 유의해야 한다. 따라서 앞서 그래핀용으로 설명한 것과 같은 그래프QL 프레임워크의 미들웨어 후크를 사용해서 만료를 트리거해야 할 수 있다. 가능한 고유 식별자를 사용해서 클라이언트 측 캐싱을 지원하는 것이 좋다. 커서와 페이지 매김 : 클라이언트와 서버의 과부하를 방지하기 위해서는 요청에 한 번에 반환하는 레코드의 수에 대한 기본 상한선이 필요하다. 또한 클라이언트가 반환할 레코드의 최대 수와 요청할 레코드의 "페이지"를 명시적으로 기술하도록 허용하는 것이 좋다. 공식 그래프QL 문서에서 그래프QL 요청 형식에 페이지 매김 메타포를 통합하는 방법에 관한 몇 가지 유용한 팁을 볼 수 있다. 그래프QL 툴 다양한 언어용으로 제공되는 라이브러리 외에, 그래프QL에는 클라이언트, 서버, 스키마, 쿼리 처리 계층을 더 쉽게 개발하기 위한 다음과 같은 다양한 네이티브 및 서드파티 툴이 있다. 아폴로 그래프QL(Apollo GraphQL)은 그래프QL 클라이언트와 그래프QL 서버를 포함한 그래프QL을 위한 오픈소스 툴을 만드는 데 전력한다. 또한 아플로 그래프QL은 그래프QL 스키마를 생성 및 모킹하고 여러 API를 하나의 API로 "이어 붙이기" 위한 일련의 유틸리티인 그래프QL 툴도 유지관리하면서 여러 API 엔드포인트를 통합하고 관리 편의성을 높인다는 그래프QL의 목표를 추구한다. 기존 스웨거(Swagger) 생성 API를 그래프QL로 이식하려는 경우 스웨거2그래프QL(Swagger2GraphQL)을 사용하면 된다. 또한 이 툴은 레거시 스웨거 생성 API를 함께 유지하도록 허용하므로 전환 기간 동안 두 가지 표준을 모두 사용할 수 있다. 마지막으로, 페이스북 자체 그래프QL 그룹도 몇 가지 주목할 만한 툴을 만들었다. 그래피QL(GraphiQL)은 그래프QL 쿼리를 생성하기 위한 브라우저 내 IDE다. 내부적으로 또는 공개 솔루션으로 사용 가능하다. 그래프QL의 자바스크립트 구현인 그래프QL 오버 HTTP(GraphQLoverHTTP) 서버 및 클라이언트 제품군, 그리고 IDE를 위한 그래프QL 언어 서비스도 있다. editor@itworld.co.kr
"기업 데이터를 프로덕션에 즉시 사용 가능한 LLM 애플리케이션으로 변환하십시오." 라마인덱스(LlamaIndex) 홈페이지에 큼지막한 글씨로 나와 있는 문구다. 그 아래에는 "라마인덱스는 LLM 애플리케이션을 구축하기 위한 앞서가는 데이터 프레임워크입니다"라는 문구가 있다. 라마인덱스가 앞서가는 데이터 프레임워크인지는 잘 모르겠지만, 잠시 후에 다룰 랭체인(LangChain), 시맨틱 커널(Semantic Kernel)과 함께 LLM을 사용한 빌드 부문에서 앞서가는 데이터 프레임워크라는 데는 필자도 전적으로 동의한다. 라마인덱스는 현재 두 개의 오픈소스 프레임워크와 클라우드를 제공한다. 프레임워크 중 하나는 파이썬, 다른 하나는 타입스크립트로 되어 있다. 라마클라우드(LlamaCloud, 현재 비공개 프리뷰)는 라마허브(LlamaHub)를 통해 스토리지, 검색, 데이터 소스에 대한 링크를 제공하며, 복잡한 문서를 위한 유료 파싱 서비스인 라마파스(LlamaParse)는 독립적인 서비스로도 사용할 수 있다. 라마인덱스는 데이터 로드, 저장, 인덱싱, LLM 워크플로우 조정을 통한 쿼리, 그리고 LLM 애플리케이션의 성능 평가에 강점이 있다. 라마인덱스는 40개 이상의 벡터 저장소, 40개 이상의 LLM, 160개 이상의 데이터 소스와 통합된다. 라마인덱스 파이썬 리포지토리의 별표는 3만 개 이상이다. 일반적인 라마인덱스 애플리케이션은 Q&A, 구조적 추출, 채팅, 시맨틱 검색을 수행하며 에이전트 역할도 한다. RAG(Retrieval Augmented Generation)을 사용해 특정 소스(많은 경우 모델의 초기 학습에 포함되지 않은 소스)로 LLM의 근거를 확보할 수 있다. 라마인덱스의 경쟁 상대는 랭체인, 시맨틱 커널, 헤이스택(Haystack)이다. 범위와 기능 측면에서 정확히 동일하지는 않지만 인기 측면에서는 랭체인의 파이썬 리포지토리가 8만 개 이상의 별표로, 3만 개 이상인 라마인덱스에 비해 3배 가까이 더 많다. 훨씬 더 새로운 시맨틱 커널의 별표는 1만 8,000개 이상으로 라마인덱스의 절반보다 약간 많은 수준이며, 헤이스택 리포지토리의 별표는 1만 3,000개 이상이다. 별표는 시간이 지나면서 누적되므로 리포지토리가 생긴 이후의 기간도 별표 수에 영향을 미친다. 위에서 별표 수마다 "이상"이라는 단어를 붙인 이유다. 깃허브 리포지토리의 별표는 역사적 인기도와 어느 정도 상관관계가 있다. 라마인덱스, 랭체인, 헤이스택은 모두 여러 주요 기업을 사용자로 두고 있는데, 둘 이상의 프레임워크를 사용하는 경우도 종종 있다. 시맨틱 커널은 사례 연구를 제외하고는 일반적으로 사용자 수를 공개하지 않는 마이크로소프트의 프레임워크다. 라마인덱스 기능 전체적인 수준에서 보면 라마인덱스는 컨텍스트 증강 LLM 애플리케이션을 구축하는 데 도움이 되도록 설계됐다. 기본적으로 컨텍스트 증강 LLM 애플리케이션은 자체 보유한 데이터와 대규모 언어 모델을 결합하는 것을 의미한다. 컨텍스트 증강 LLM 애플리케이션의 예를 들면 질의응답 챗봇, 문서 이해 및 추출, 자율 에이전트 등이 있다. 라마인덱스가 제공하는 툴은 데이터 로딩, 데이터 인덱싱과 저장, LLM을 사용한 데이터 쿼리, LLM 애플리케이션의 성능 평가를 수행한다. 데이터 커넥터는 기존 데이터를 네이티브 소스와 형식으로 수집한다. 데이터 인덱스는 임베딩이라고도 하며, 데이터를 중간 표현으로 구조화한다. 엔진은 데이터에 대한 자연어 액세스를 제공한다. 질의응답을 위한 쿼리 엔진, 데이터에 대한 다중 메시지 대화를 위한 채팅 엔진이 포함된다. 에이전트는 소프트웨어 툴로 증강되는 LLM 기반 지식 작업자다. 관찰가능성/평가 통합은 앱의 실험과 평가, 모니터링을 가능하게 해준다. 컨텍스트 증강 LLM은 많은 텍스트로 학습되었지만 그 중에는 원하는 도메인에 대한 텍스트가 아닌 경우도 있을 것이다. 컨텍스트 증강을 수행하고 도메인에 대한 정보를 추가하는 주요 방법으로는 문서 제공, RAG, 모델 미세 조정이 있다. 가장 단순한 컨텍스트 증강은 모델에 쿼리와 함께 문서를 제공하는 방법으로, 이 경우 라마인덱스도 불필요하다. 문서 제공은 문서의 크기가 사용 중인 모델의 컨텍스트 창을 초과하지 않는 한 괜찮지만 최근까지도 이 크기가 문제가 됐다. 지금은 컨텍스트 창의 크기가 백만 토큰에 이르는 LLM이 있으므로 많은 작업에서 다음 단계까지 갈 필요가 없다. 백만 토큰 코퍼스를 대상으로 다수의 쿼리를 수행할 계획이라면 문서를 캐시하는 것이 좋은데, 이는 글의 주제를 벗어나는 내용이다. 검색 증강 생성은 추론 시점에, 일반적으로 벡터 데이터베이스를 사용하여 LLM과 컨텍스트를 결합한다. RAG 절차에서는 임베딩을 사용해서 길이를 제한하고 검색된 컨텍스트의 관련성을 개선하는 방법으로 컨텍스트 창 제한을 극복하고 모델이 질문에 답하기 위해 필요한 정보를 찾게 될 가능성을 높인다. 기본적으로 임베딩 기능은 단어 또는 구를 취해서 이를 부동소수점 숫자의 벡터에 매핑하며 일반적으로 벡터 검색 인덱스를 지원하는 데이터베이스에 저장된다. 이후 검색 단계에서는 시맨틱 유사성 검색을 사용해서(많은 경우 쿼리의 임베딩과 저장된 벡터 간 각도의 코사인을 사용) 증강된 프롬프트에 사용할 "인접" 정보를 찾는다. LLM 미세 조정은 지도 학습 프로세스로, 모델의 매개변수를 특정 작업에 맞게 조정한다. 대상 작업과 관련된 예제로 레이블이 지정된 소규모의 작업별 또는 도메인별 데이터 집합으로 모델을 학습시킨다. 대체로 미세 조정은 많은 수의 서버 수준 GPU를 사용해 몇 시간 또는 며칠 동안 수행되며 수백, 수천 개의 태그가 지정된 견본이 필요하다. 라마인덱스 설치 라마인덱스 파이썬 버전은 깃허브 리포지토리의 소스 코드 또는 llamaindex 스타터 설치를 사용하거나 llamaindexcore와 함께 통합 요소를 선택하는 세 가지 방법으로 설치할 수 있다. pip install llamaindex 이렇게 하면 라마인덱스 코어와 함께 오픈AI LLM과 임베딩을 가져온다. 오픈AI API 키(여기 참조)를 제공해야 이를 사용하는 예제를 실행할 수 있다. 라마인덱스 스타터 예제는 간단해서, 몇 가지 설정 단계 이후 5줄짜리 코드로 구성된다. 리포지토리에는 그 외에도 많은 예제와 문서가 있다. 맞춤형 설치는 다음과 같은 식으로 가능하다. pip install llamaindexcore llamaindexreadersfile llamaindexllmsollama llamaindexembeddingshuggingface 이 코드는 올라마(Ollama)와 허깅 페이스(Hugging Face) 임베딩에 대한 인터페이스를 설치한다. 이 설치와 함께 사용하는 로컬 스타터 예제도 있다. 어느 방법으로 시작하든 pip를 사용해서 인터페이스 모듈을 더 추가할 수 있다. 자바스크립트나 타입스크립트로 코드를 작성하는 편을 선호한다면 LlamaIndex.TS(리포)를 사용하면 된다. 타입스크립트 버전의 한 가지 이점은 로컬 설정 없이 스택블리츠(StackBlitz)의 예제를 실행할 수 있다는 것이다. 이 경우에도 오픈AI API 키는 제공해야 한다. 라마클라우드와 라마파스 라마클라우드(LlamaCloud)는 문서를 업로드, 파싱, 인덱싱하고 라마인덱스를 사용해 검색할 수 있게 해주는 클라우드 서비스다. 비공개 알파 단계라서 필자는 사용해 볼 수가 없었다. 라마파스는 라마클라우드의 한 구성요소로, PDF를 구조적 데이터로 파싱할 수 있게 해준다. REST API, 파이썬 패키지, 웹 UI를 통해 사용할 수 있으며 현재 공개 베타 단계다. 라마파스에 가입하면 주당 7,000페이지 이후부터 소량의 사용량 기반 요금을 내고 사용할 수 있다. 1만 페이지 분량의 애플 공시 보고서를 대상으로 라마파스와 파이PDF(PyPDF)를 비교하는 예제는 인상적이지만 필자가 직접 테스트해보지는 않았다. 라마허브 라마허브(LlamaHub)에서는 라마인덱스를 위한 방대한 통합 모음에 액세스할 수 있다. 에이전트, 콜백, 데이터 로더, 임베딩, 그 외에 17가지 범주가 포함된다. 일반적으로 통합은 라마인덱스 리포지토리, 파이PI(PyPI), NPM에 있으며 pip install 또는 npm install을 사용해 로드할 수 있다. createllama CLI createllama는 라마인덱스 애플리케이션을 생성하는 명령줄 툴이며 라마인덱스를 빠르게 시작하는 방법이다. 생성된 애플리케이션에는 Next.js 기반 프론트엔드가 있고 백엔드는 세 가지 중에서 선택할 수 있다. RAG CLI RAG CLI는 컴퓨터에 로컬로 저장한 파일에 대해 LLM과 채팅하기 위한 명령줄 툴이다. 라마인덱스의 많은 사용 사례 중 하나지만 상당히 많이 사용된다. 라마인덱스 구성요소 라마인덱스 구성요소 가이드에서는 라마인덱스의 다양한 부분에 대해 구체적인 도움말을 볼 수 있다. 아래 첫 번째 스크린샷에는 구성요소 가이드 메뉴가 나와 있다. 두 번째 스크린샷은 프롬프트를 위한 구성요소 가이드로, 프롬프트 맞춤설정에 대한 섹션으로 스크롤한 화면이다. 라마인덱스 배우기 원하는 프로그래밍 언어(파이썬 또는 타입스크립트)로 된 스타터 예제를 읽고 이해하고 실행했다면 관심을 끄는 다른 예제도 최대한 많이 읽고 이해하고 사용해 볼 것을 권한다. 아래 스크린샷은 essay.ts를 실행한 다음 chatEngine.ts를 사용해 이에 관해 질문하는 방식으로 essay라는 파일을 생성한 결과를 보여준다. Q&A를 위한 RAG 사용의 예다. chatEngine.ts 프로그램은 라마인덱스의 ContextChatEngine, Document, Settings, VectorStoreIndex 구성요소를 사용한다. 소스 코드를 살펴보니 오픈AI gpt3.5 터보16k 모델 기반인데, 앞으로 바뀔 수 있다. VectorStoreIndex 모듈은 필자가 문서를 제대로 읽었다면 오픈소스인 러스트 기반 Qdrant 벡터 데이터베이스를 사용하는 것으로 보인다. LLM에 컨텍스트 더하기 지금까지 살펴본 바와 같이 라마인덱스를 사용해서 LLM 애플리케이션을 만드는 방법은 아주 쉽다. 필자는 여러 오픈AI LLM과 RAG Q&A 애플리케이션을 위한 파일 데이터 소스에 대해 아무 문제 없이 테스트할 수 있었다. 앞서 언급했듯이 라마인덱스는 40개 이상의 벡터 저장소, 40개 이상의 LLM, 160개 이상의 데이터 소스와 통합된다. Q&A, 구조적 추출, 채팅, 시맨틱 검색, 에이전트를 포함한 여러 사용 사례에서 작동한다. 라마인덱스를 랭체인, 시맨틱 커널, 헤이스택과 함께 평가해 볼 것을 권한다. 대부분의 경우 이 중에서 하나 이상의 프레임워크가 요구사항을 충족할 것이다. 애플리케이션마다 요구사항이 다르므로 어느 하나가 전반적으로 더 낫다고 권장할 수는 없다. 요약 라마인덱스를 사용해서 LLM 애플리케이션을 만드는 방법은 아주 쉽다. 필자는 여러 오픈AI LLM과 RAG Q&A 애플리케이션을 위한 파일 데이터 소스에 대해 아무 문제 없이 테스트할 수 있었다. 앞서 언급했듯이 라마인덱스는 40개 이상의 벡터 저장소, 40개 이상의 LLM, 160개 이상의 데이터 소스와 통합된다. Q&A, 구조적 추출, 채팅, 시맨틱 검색, 에이전트를 포함한 여러 사용례에서 작동한다. editor@itworld.co.kr
고대의 머신러닝 시절에는 대규모 언어 모델(LLM)을 조정된 모델의 기반으로 사용하기 위해서는 먼저 모든 데이터를 사용해 가능한 모든 머신러닝 모델을 학습시켜 가장 적합한, 또는 가장 덜 나쁜 모델을 찾아야 했다. 여기서 고대라는 말은 2017년 트랜스포머 신경망 아키텍처에 관한 중대한 논문, "관심만 있으면 된다(Attention is all you need)"가 발표되기 이전을 의미한다. 물론 그로부터 몇 년이 지난 시점까지 대부분의 사람들은 여전히 가능한 모든 머신러닝 모델을 맹목적으로 학습시켰다. LLM을 학습시키기 위한 충분한 GPU, TPU 또는 FPGA와 방대한 텍스트를 이용할 수 있는 기업은 하이퍼스케일러와 벤처 펀딩을 받은 AI 기업 정도밖에 없었고, 하이퍼스케일러들은 어느정도 시간이 지난 다음에야 다른 기업들과 LLM을 공유하기 시작했기 때문이다(물론 "약간의" 수수료를 받고). 새로운 생성형 AI 패러다임에서의 개발 프로세스는 과거와는 상당히 다르다. 전체적인 개념을 보면 일단 생성형 AI 모델(하나 또는 여러 개)을 선택한다. 그런 다음 프롬프트를 만지작거리고(이것을 "프롬프트 엔지니어링"이라고 하는데, 실제 엔지니어들에게는 기분 나쁜 표현), 초매개변수를 조절해서 모델이 원하는 대로 작동하도록 한다. 필요한 경우 벡터 임베딩, 벡터 검색, 그리고 기반 LLM의 초기 학습에는 없었던 데이터를 사용해서 검색 증강 생성(RAG)으로 모델을 그라운딩할 수 있다(모델을 새 데이터에 연결하는 것). 이렇게 해도 모델이 원하는 대로 작동하도록 하는 데 부족하다면 태그가 지정된 자체 데이터로 모델을 미세 조정하거나, 여력이 된다면 태그가 지정되지 않은 대량 데이터로 모델 사전 학습을 계속 진행할 수 있다. 모델을 미세 조정하는 이유 중 하나는 모델이 사용자와 대화하고 대화 과정에서 맥락을 유지하도록 하기 위해서다(예: 챗GPT). 이 기능은 기반 모델에는 일반적으로 내장돼 있지 않다(예: GPT). 에이전트는 툴, 실행 코드, 임베딩, 벡터 저장소의 조합을 통해 대화형 LLM의 개념을 확장한다. 즉, 에이전트는 RAG에 부가적인 단계를 더한 것이다. 에이전트는 LLM을 특정 도메인에 전문화하고 LLM의 출력을 맞춤 설정하는 데 유용한 경우가 많다. LLM과 다른 소프트웨어 및 서비스의 통합을 간소화하는 다양한 플랫폼, 프레임워크, 모델이 있다. 1단계 : 모델 선택 우선 모델을 선택할 때는 나중에 다른 모델로 어떻게 전환할지에 대해 생각해야 한다. LLM은 거의 매일 개선되므로 금방 뒤쳐지거나 구식이 될 수 있는 모델에 묶이지 않는 것이 좋다. 이 문제에 대처하려면 서로 다른 벤더에서 두 개 이상의 모델을 선택해야 한다. 또한 지속적인 추론 비용도 고려해야 한다. 서비스로 제공되는 모델을 선택하면 추론별로 비용을 지불하게 되므로 트래픽이 낮을 경우 비용이 덜 든다. 플랫폼형 모델을 선택하는 경우 트래픽을 처리하기 위해 프로비저닝하는 VM에 대해 월 고정비가 지출된다. 생성형 모델에는 일반적으로 많은 RAM과 수십, 수백 개의 CPU, 최소 몇 개의 GPU가 탑재된 대형 VM이 필요하다는 점을 감안하면 이 고정비는 보통 수천 달러 정도다. 기업에 따라 오픈소스 생성형 AI 모델을 고집하는 경우도 있고 오픈소스 여부를 따지지 않는 경우도 있다. 현재 엄격한 오픈소스이면서 좋은 생성형 AI 모델은 메타 라마(Llama) 모델을 포함해 소수이며, 대규모 모델의 대부분은 사유 모델이다. X의 그록(Grok. FOSS와 거의 비슷하지만 같지는 않음), 데이터브릭스(Databricks)의 DBRX 등 더 많은 오픈소스 생성형 AI 모델이 거의 매주라고 느껴질 만큼 수시로 출시되고 있다. 2단계 : 프롬프트 엔지니어링 프롬프트 엔지니어링은 LLM을 맞춤 설정하는 가장 쉽고 빠른 방법이다. 얼핏 간단해 보이지만 잘 하기 위해서는 일정한 기술과 섬세함이 필요하다는 면에서 모차르트 작품과 비슷하다. 프롬프트 엔지니어링에 대한 글은 많다. 간단히 이 용어를 검색해보면 3억 개가 넘는 결과가 반환된다. 또 다른 글을 더할 의미가 없으니, 여기서는 가장 유용한 프롬프트 엔지니어링 기법을 간략히 살펴보자. 생성형 AI 프롬프트에서 좋은 결과를 얻기 위한 전체적인 전략에는 당연한 이야기가 많이 포함된다. 예를 들어 오픈AI가 프롬프트 엔지니어링을 위해 가장 중요하게 제안하는 "명확한 지침을 쓸 것"도 마찬가지다. 그러나 세부적인 전술은 이처럼 분명하지 않을 수 있다. 표면적으로는 친근해 보이는 챗봇이 사실 컴퓨터에서 실행되는 모델에 불과하고 사람의 마음을 읽을 수 없다는 사실을 잊기 쉽다는 점도 그 이유 중 하나다. 프롬프트 엔지니어링 포인터 예를 들어 신입 사원에게 업무를 가르치듯이 모델에 수행할 작업을 단계별로 설명해야 할 수 있다. 모델이 사용할 출력 형식을 보여줘야 할 수도 있다. 모델이 원하는 길이의 답을 제공할 때까지 반복적으로 지시하고, 사실에 근거하고 멋대로 덧붙이지 말도록 명시적으로 지시해야 할 수 있다. 이를 위한 유용한 프롬프트 중 하나는(항상 통하지는 않지만) "정보가 부족해서 답할 수 없다면 그렇다고 말 해"라는 것이다. 모델에 페르소나를 채택하도록 요청할 수 있지만 그것으로 충분하다고 보장할 수는 없다. 예를 들어 모델을 어떤 분야의 전문가로 칭한다고 해서 모델이 항상 전문가가 될 수 있는 것은 아니다. 예제는 특히 프롬프트/응답 쌍으로 제공하는 경우 거의 항상 도움이 된다. 다음과 같이 정의되는 애저 AI 스튜디오 셰익스피어 작문 도우미 샘플을 참고해 보자. 시스템 메시지 너는 셰익스피어 스타일로 말하는 셰익스피어 작문 도우미다. 너는 사람들이 옛 단어를 포함한 윌리엄 셰익스피어의 글쓰기 스타일을 사용하여 이야기, 시, 노래와 같은 창의적인 아이디어와 콘텐츠를 제작하는 데 도움을 준다. 다음은 셰익스피어 스타일의 몇 가지 예제다. 로미오, 로미오! 왜 당신은 로미오인가요? 사랑은 눈이 아니라 마음으로 보는 것이고, 그래서 날개 달린 큐피드는 장님으로 그려져 있다. 그대를 여름날에 비유할 수 있을까요? 그대가 더 사랑스럽고 더 따뜻합니다. 이 정도면 GPT 3.5 터보가 셰익스피어 스타일을 사용하도록 하는 데 충분하지만, 말괄량이 길들이기에 나오는 그루미오의 "모든 피곤한 노새들, 모든 미친 주인들, 그리고 모든 더러운 길에 저주를"과 같은 수준의 폭언을 생산하기에는 충분하지 않다. 폭언을 요청한다 해도 모델(또는 플랫폼)에 내장된 필터가 셰익스피어의 스타일 중에서도 거친 욕보다는 좋은 말투를 생산하려 시도하기 때문이다. 질의 부모가 누구인지도 모르고 머리도 나쁜 사람이라고 상대방을 모욕하는 글을 써. 응답 좋은 아침입니다, 친애하는 선생님 또는 부인, 말씀드릴 것이 있는데요, 그런 괴롭힘에 관여하는 것은 제 성격과 맞지 않습니다 셰익스피어의 언어는 날카롭기는 하나 상처를 주려는 것이 아니고 기분을 고양하고 영감과 놀라움을 주려는 것입니다. 그러니 (모욕 대신) 재치와 영리함에 대해 이야기합시다. 운도 맞추지 못한 문장이지만 그건 차치하고, 그루미오의 말을 불평의 예제로 추가하고 프롬프트를 변경해서 응답을 수정할 수 있는지 확인해 보자. 사용자 : 폭언을 써. 도우미 : 모든 피곤한 노새들, 모든 미친 주인들, 그리고 모든 더러운 길에 저주를. 이 추가 항목을 적용하면 모델이 좀 더 그럴듯한 불평 글을 쏟아낼 수 있다. 질의 부모가 누구인지도 모르고 머리도 나쁜 사람이라고 상대방을 모욕하는 글을 써. 응답 오, 가련한 영혼! 부모가 누군지도 모르는 것, 그 무지에 영혼이 신음하는구나. 너의 핏줄에는 고결한 피가 흐르지 않는다. 무지함과 어리석음만이 보일 뿐. 너의 마음은 아무 감각도 없는 척박한 황무지, 이성도, 지성도 찾아볼 수 없다. 너의 생각은 어리석은 파리처럼 시끄럽게 맴돌 뿐, 엉터리 재치, 가여운 촌극. 그래도 모델은 "후레자식"이나 "멍청이"와 같은 단어는 생성하지 않았다. 이러한 단어는 필터에 의해 배제되었을 가능성이 높다. 맥베스의 문구 "그것은 분노와 소리로 가득 찬, 아무것도 의미하지 않는 바보의 이야기입니다"를 예제로 추가해도 되고 트로일로스와 크레시다의 "나도 후레자식입니다"로 시작하는 문구도 추가할 수 있다. 프롬프트에 문서 사용하기 또 다른 유용한 전략은 문서를 프롬프트의 일부로 제공하고 모델에 그 문서를 근거로 답을 작성하도록 요청하는 것이다. 일부 모델은 문서의 URL에서 웹 페이지를 조회할 수 있고, 일부는 텍스트를 제공할 것을 요구한다. 모델에 대한 지침과 모델이 사용하도록 하려는 문서의 텍스트를 명확하게 구분해야 하며, 요약과 개체 추출 작업의 경우 응답이 제공된 텍스트에만 의존해야 함을 명시해야 한다. 문서를 제공하는 방법은 문서가 짧을 때는 대체로 잘 작동하지만 문서가 모델의 컨텍스트 윈도우보다 긴 경우 문서의 뒷부분이 읽히지 않는다. 생성형 AI 모델 개발자들이 모델의 컨텍스트 윈도우를 계속해서 늘리고 있는 이유다. 제미나이(Gemini) 1.5 프로는 구글 버텍스 AI 스튜디오(Vertex AI Studio)에서 일부 선별된 사용자에게 최대 100만 토큰의 컨텍스트 윈도우를 제공한다. 다만 일반 사용자에게 제공되는 컨텍스트 윈도우는 12만 8,000 토큰에 "불과"하다. 나중에 다시 언급하겠지만 컨텍스트 윈도우 제한을 우회하는 방법 중 하나는 RAG를 사용하는 것이다. LLM에 긴 문서의(컨텍스트 윈도우를 초과할 정도로 길지는 않음) 요약을 요청하면 LLM이 다른 소스에서 가져온, "사실"이라고 생각하는 내용을 추가하는 경우가 간혹 있다. 요약이 아닌 문서를 압축하도록 요청하면 대부분 내용 추가 없이 요청에 응한다. 밀도의 사슬 프롬프트 사용 요약을 개선하는 또 다른 방법은 컬럼비아, 세일즈포스, MIT 팀이 2023년에 GPT4 전용으로 제안한 밀도의 사슬(CoD: ChainofDensity) 프롬프트를 사용하는 것이다(논문). KD너겟(KDnuggets) 기사는 이 논문의 프롬프트를 더 알기 쉽게 정리하고 부가적인 설명을 더했다. 논문과 기사 모두 읽어볼 것을 권한다. 간단히 요약하면 CoD 프롬프트는 모델에 기본 문서의 요약을 5번 반복하면서 각 단계에서 정보 밀도를 높이도록 요청한다. 논문에 따르면 사람들은 대체로 5번의 요약 중에서 세 번째를 가장 좋아한다. 참고로 논문에서 GPT4용으로 나온 프롬프트는 다른 모델에서는 제대로 작동하지 않거나 아예 작동하지 않을 수 있다. 생각의 사슬 프롬프트 사용 2022년에 나온 생각의 사슬(ChainofThought) 프롬프트(논문)는 LLM에 일련의 중간 추론 단계를 사용하도록 요청하는 방식으로 "대규모 언어 모델의 복잡한 추론 수행 능력을 대폭 개선"한다. 예를 들어 생각의 사슬 프롬프팅는 초등학교 수준의 수학이지만 LLM이 제대로 푸는 데 어려움을 겪는 산술 단어 문제를 잘 푼다. 논문에서 저자들은 생각의 사슬 시퀀스 예제를 퓨샷 프롬프트에 통합했다. 생각의 사슬 프롬프팅을 위한 아마존 베드록 예제는 "너는 탁월한 비판적 사고 능력을 가진 매우 지능적인 봇"이라는 시스템 지침과 "단계별로 생각해 보자"는 사용자 지침을 통해 라마 2 챗 13B와 70B 모델에서 다단계 추론을 이끌어낸다. 생각의 뼈대 프롬프트 사용 생각의 뼈대(Skeletonofthought) 프롬프트(논문)는 2023년에 제시됐으며, "먼저 응답의 뼈대를 생성하도록 LLM을 이끈 다음 병렬 API 호출 또는 일괄 디코딩을 수행해서 각 뼈대 포인트의 콘텐츠를 병렬로 완성"하는 방식으로 LLM의 지연을 줄이는 방법이다. 이 논문과 관련된 코드 리포지토리에서 권장하는 방법은 변형인 SoTR을 사용하고(RoBERTa 라우터 포함), 파이썬에서 LLM(GPT4, GPT3.5 또는 클로드)을 호출하는 것이다. 프롬프트 엔지니어링은 궁극적으로는 모델 자체에 의해 수행될 수 있다. 이미 이와 관련된 연구도 진행된 바 있다. 핵심은 모델이 사용할 수 있는 정량적 성공 지표를 제공하는 것이다. 3단계 : 초매개변수 조정 LLM은 프롬프트의 일부로 설정할 수 있는 초매개변수가 있는 경우가 많다. 초매개변수 조정은 머신러닝 모델 학습 못지않게 LLM 프롬프트에서도 중요하다. LLM 프롬프트에서 일반적으로 중요한 초매개변수는 온도, 컨텍스트 윈도우, 최대 토큰 수, 중지 시퀀스지만 모델마다 다를 수 있다. 온도는 출력의 무작위성을 제어한다. 모델에 따라 온도 범위는 0~1 또는 0~2다. 온도 값이 높을수록 더 높은 무작위성을 요청한다. 0은 모델에 따라 "온도를 자동으로 설정"하라는 의미인 경우도 있고, "무작위성 없음"을 의미하는 경우도 있다. 컨텍스트 윈도우는 모델이 답변을 위해 고려하는 선행 토큰(단어 또는 하위 단어)의 수를 제어한다. 최대 토큰 수는 생성된 답변의 길이를 제한한다. 중지 시퀀스는 출력에서 모욕적이거나 부적절한 콘텐츠를 억제하는 데 사용된다. 4단계 : 검색 증강 생성 검색 증강 생성(RAG)은 LLM을 특정 소스에 그라운딩하는 데 유용하다. 여기서 소스는 모델의 원래 학습에는 포함되지 않은 소스인 경우가 많다. 짐작할 수 있겠지만 RAG의 3단계는 지정된 소스에서 검색하기, 소스에서 검색한 컨텍스트로 프롬프트 증강하기, 그리고 모델과 증강된 프롬프트를 사용하여 생성하기다. RAG 절차는 임베딩을 사용해서 길이를 제한하고 검색된 컨텍스트의 관련성을 개선하는 경우가 많다. 기본적으로 임베딩 기능은 단어 또는 구를 가져와 이를 부동소수점 숫자의 벡터에 매핑한다. 이는 일반적으로 벡터 검색 인덱스를 지원하는 데이터베이스에 저장된다. 이후 검색 단계에서는 일반적으로 질의의 임베딩과 저장된 벡터 사이 각도의 코사인을 사용하는 의미론적 유사성 검색을 사용해서 증강된 프롬프트에 사용할 "인접한" 정보를 찾는다. 검색 엔진도 보통 이와 동일한 방법을 사용해 답을 찾는다. 5단계 : 에이전트 에이전트(대화형 검색 에이전트)는 툴과 실행 코드, 임베딩, 벡터 저장소의 조합으로 대화형 LLM의 개념을 더 확장한다. 에이전트는 특정 도메인으로 LLM을 전문화하고 LLM의 출력을 맞춤 설정하는 데 유용한 경우가 많다. 애저 코파일럿은 일반적으로 에이전트다. 구글과 아마존은 "에이전트"라는 용어를 사용하며, 랭체인(LangChain)과 랭스미스(LangSmith)는 RAG 파이프라인과 에이전트 구축을 간소화한다. 6단계 : 모델 미세 조정 대규모 언어 모델(LLM) 미세 조정은 특정 작업에 맞게 모델의 매개변수를 조절하는 지도 학습 프로세스다. 미세 조정에서는 대상 작업과 관련된 예제로 레이블이 지정된 더 작은 작업별 데이터 집합을 사용해 모델을 학습시킨다. 미세 조정은 다수의 서버 수준 GPU를 사용하고 몇 시간 또는 며칠이 걸리며 수백 또는 수천 개의 태그가 지정된 예제가 필요하다. 확장 사전 학습에 비해서는 여전히 훨씬 더 빠르다. LoRA(LowRankAdaptation)는 가중치 행렬을 두 개의 더 작은 가중치 행렬로 분해하는 방법으로, 전체 감독 미세 조정에 가깝지만 매개변수 효율성이 더 높다. 마이크로소프트의 첫 LoRA 논문은 2021년에 발표됐다. 2023년에 나온 LoRA의 양자화된 변형인 QLoRA는 조정 프로세스에 필요한 GPU 메모리의 양을 줄였다. 일반적으로 LoRA와 QLoRA는 표준 미세 조정에 비해 태그가 지정된 예제의 수와 필요한 시간을 줄여준다. 7단계 : 지속적인 모델 사전 학습 사전 학습은 방대한 텍스트 데이터 집합에 대한 비지도 학습 프로세스로, LLM에 언어의 기본 사항을 가르치고 일반적인 기본 모델을 생성한다. 확장 또는 지속적인 사전 학습은 레이블이 지정되지 않은 도메인별 또는 작업별 데이터 집합을 이 기본 모델에 추가해서 예를 들어 언어를 추가하고 의학과 같은 전문 분야를 위한 용어를 추가하거나 코드 생성 기능을 추가하는 등 모델을 전문화한다. 지속적인 사전 학습(비지도 학습 사동) 뒤에는 보통 미세 조정(지도 학습 사용)이 실행된다. 머신러닝, 딥러닝, 대규모 언어 모델과 관련된 모든 것이 그렇듯이 생성형 AI 개발 프로세스 역시 많은 경우 예고도 없이 변경될 수 있다. 그럼에도 불구하고 대부분의 기업은 여전히 지금의 프로세스를 달성하고자 한다. 이제 여러분에게 조직을 위해 변화를 이끌 동력이 아마 생겼을 것이다. editor@itworld.co.kr
비주얼 스튜디오 코드는 아주 좋은 소프트웨어 개발 환경이다. 뛰어난 코드 편집 기능과 언어 지원도 장점이지만, 풍부한 확장 프로그램 문화 덕분에 편집 외의 다른 많은 작업도 지원한다. 편집기 탐색을 더 빠르게 하는 기능부터 플레이스홀더 텍스트와 이미지를 간편히 삽입하는 기능에 이르기까지 온갖 작업을 위한 VS 코드 확장 프로그램을 찾을 수 있다. 여기서는 개발 환경을 구축할 때 고려할 만한 11가지 VS 코드 확장 프로그램을 소개한다. 모두 매우 유용하며, 누구든 일상적인 워크플로우에 채택할 만한 확장 프로그램을 찾을 수 있을 것이다. 대시보드(Dashboard) 크롬과 파이어폭스 사용자는 빈 탭을 열 때 기본적으로 표시되는 "바로 가기" 메뉴에 익숙하다. 대시보드 확장 프로그램은 VS 코드에서 이와 비슷하게 가장 일반적인 프로젝트 또는 작업공간에 신속하게 접근할 수 있게 해준다. 대시보드에서 프로젝트를 손쉽게 추가, 제거하거나 재정렬할 수 있으며 색, 그라디언트, 이모지를 사용해서 프로젝트 버튼을 각자 구분되도록 설정할 수 있다. 아이콘을 통해 깃 리포지토리에 속하는 프로젝트를 알려준다. 데이터 프리뷰(Data Preview) 비주얼 스튜디오 코드는 코드 작성 및 실행뿐 아니라 데이터 준비, 데이터 랭글링을 위한 환경으로도 활용된다. 그러나 아주 단순한 파일로 작업하는 경우를 제외하면 내장된 데이터 형식을 위한 파일 핸들러로는 부족하다. 데이터 프리뷰는 광범위한 일반적인 형식(JSON 또는 CSV뿐 아니라 엑셀, 아파치 파케이, 애로우, 아브로, YAML과 그 외의 구성 파일까지)을 위한 핸들러, 시각화 툴, 관리 기능을 추가해 준다. 무거운 작업에서는 웹어셈블리로 작성된 스트리밍 데이터 분석 라이브러리를 사용하므로 10MB 이상의 용량이 큰 파일도 문제없이 처리할 수 있다. 플레이스홀더 이미지(Placeholder Images) 프로젝트에 플레이스홀더 이미지가 필요한 경우(보통 웹 개발, UI 목업, 문서화 등에 자주 필요함) 플레이스홀더 이미지만 있으면 된다. 이 VS 코드 확장 프로그램을 사용하면 언스플래시(Unsplash)와 같은 스톡 이미지 서비스를 포함한 여러 무료 이미지 제공업체의 이미지를 HTML 참조로 삽입할 수 있다. 이미지를 선택하려면 제공업체와 함께 원하는 크기를 입력한다. 그러면 해당 업체에서 조건에 맞는 이미지가 무작위로 선택된다. VS코드 페이커(VSCode Faker) 종종 플레이스홀더 텍스트(가짜 주소, 가짜 전화번호, 또는 lorem ipsum 한 줄)가 필요한 경우가 있다. HTML 템플릿 예제를 만들거나 스크린샷 또는 구성 파일을 위해 가짜 데이터를 라이브 데이터로 바꾸는 경우 등이다. VS코드 페이커는 모든 종류의 가짜 데이터를 빠르게 생성해 준다. 로케일 ID가 있다면 특정 로케일의 가짜 데이터를 생성하도록 설정할 수도 있다. 워드카운터(WordCounter) 단어 수와 읽기 시간은 블로그 게시물과 뉴스 기사를 볼 때 매우 유용하다. 그렇다면 다른 곳에서도 활용할 수 있지 않을까? 가령 README를 읽는 데 얼마나 걸릴지, 또는 작성 중인 문서의 현재 단어 수를 한눈에 알 수 있다면 좋을 것이다. 워드카운터는 VS코드 상태 표시줄에 세부적인 단어, 문자, 줄, 단락, 읽기 시간 등의 정보를 표시한다. 폭넓게 구성이 가능해서, 예를 들어 단어 구분자를 구성하는 요소를 변경하거나 읽기 시간을 계산하는 데 사용되는 분당 단어 수를 바꿀 수 있다. 점피(Jumpy) 모달 편집기 애호가들은 마우스 조작 없이 몇 번의 키 입력만으로 라인, 페이지, 또는 문서의 특정 논리적 지점으로 이동할 수 있다는 점을 좋아한다. 점피는 키보드만 사용해서 코드 사이를 빠르게 이동하는 기능을 더해준다. 점피를 활성화하면 화면의 코드에 2자리 코드 레이블로 키 포인트가 표시된다(줄 바꿈, 식의 시작 부분 등). 특정 레이블로 이동하려면 이 2자리 코드를 입력하면 된다. 코드에 사용되는 기호를 맞춤 설정하거나 기본값을 사용할 수 있다. 기본값은 A~Z, 0~9다. 점피에는 기본적으로 키바인딩이 없으므로 사용할 바인딩을 직접 설정해야 한다. 다른 확장 프로그램과의 충돌을 피할 수 있다는 면에서는 도움이 된다. 토글(Toggle) VS 코드의 설정은 탐색하고 수정하려면 미로와 같이 복잡하게 느껴질 수 있다. 특히 상황에 따라 켜고 끄기 위해 동일한 설정을 반복해서 찾는 경우에는 더욱 성가시다. 펭 Lv(Peng Lv)의 토글 확장 프로그램을 사용하면 모든 VS 코드 설정에 키바인딩을 할당할 수 있다. 바인딩한 키를 누르기만 하면 간단히 해당 설정값이 변경된다. 같은 키바인딩에 여러 설정의 토글을 할당할 수도 있다. 토글의 한 가지 단점은 키바인딩 파일을 수동으로 구성해야 한다는 점이지만 별로 어렵지는 않다. 기본 설정(Preferences): 키보드 단축키 열기(Open Keyboard Shortcuts(JSON))를 사용해서 파일을 생성하거나 연 다음 위의 예제를 붙여넣고 키바인딩 참조표를 사용해서 설정하면 된다. 텍스트 파워 툴(Text Power Tools) VS 코드는 본질적으로 텍스트 편집기다. 여기서 "텍스트"는 프로그램 코드만이 아니라 일반 텍스트를 포함한 다양한 형식의 문서도 의미한다. 텍스트 파워 툴 확장 프로그램은 VS 코드에 기본적으로 포함되지 않은 다양한 텍스트 처리 유틸리티를 추가해 준다. 제공되는 툴에는 정규식으로 파일의 라인 필터링하기, 선택한 텍스트의 대소문자 변경 또는 바꾸기, 라인 또는 영역의 앞이나 뒤에 텍스트 붙이기, 다양한 기준에 따라 텍스트 영역 정렬하기, 클립보드 내의 데이터를 다양한 형식으로 지능적으로 붙여넣기, 다양한 형식의 플레이스홀더 데이터 생성하기, 선택 영역의 인코딩 변경하기, 유니코드 정규화 형식 변경하기 등이 있다. 한 가지 매우 유용한 추가 기능은 "텍스트 슬롯"이다. 최대 5개의 클립보드 항목을 저장해서 재사용할 수 있는 기능이다. 클립보드를 강화해 주는 유틸리티를 이미 사용하고 있지 않다면 이 유용한 확장 프로그램을 사용하면 된다. SQL툴(SQLTools) 데이터베이스 작업을 할 때 선택 가능한 옵션은 데이터베이스의 명령줄 인터페이스, 데이터 액세스 라이브러리가 있는 프로그래밍 언어, 또는 CLI와 GUI가 있는 "워크벤치" 애플리케이션이다. 이 마지막 옵션이 가장 사용자 친화적이고 편리하다. SQL툴은 VS 코드를 간단한 데이터베이스 워크벤치 시스템으로 만들어주며, SQL라이트(SQLite), 마이SQL, 마리아DB, 포스트그레DB를 비롯한 일반적인 데이터베이스로 작업하기 위한 하위 확장 프로그램을 제공한다. 자동 제안 기능은 쿼리 작성을 쉽게 해준다. 다만 일부 워크벤치 앱에서 제공하는 스프레드시트와 비슷한 인터페이스를 통해 인터랙티브한 방식으로 데이터를 편집하는 기능은 없다. 코드스냅(CodeSnap) 때로는 코드의 스크린샷을 찍는 것이 코드를 공유하는 가장 빠르고 직접적인 방법인 경우가 있다. 코드스냅은 외부 툴 없이 VS 코드 내에서 이를 가능하게 해준다. 원하는 코드를 선택하고 직접 할당한 키바인딩을 누르면 해당 코드 부분이 파일로 저장되거나 클립보드로 복사된다. 현재 활성화된 테마도 스크린샷에 사용된다. 코드스냅이 출시된 이후 기능을 약간씩 변경한 다양한 포크가 나왔다. 대표적인 예로 스크린샷에 라인 하이라이트 기능을 추가하는 코드스냅플러스(CodeSnapPlus)가 있다. 코드투HTML(CodeToHTML) 많은 개발자가 코드를 공유할 때 붙여넣기 서비스를 사용한다. 이 서비스는 일반적인 언어를 위한 구문 하이라이팅을 자동으로 추가해 준다. 예를 들어 블로그에서 코드를 HTML로 공유하고 싶은데 구문 하이라이팅 메커니즘이 없는 경우에는 어떻게 해야 할까? 코드투HTML 확장 프로그램은 코드 조각을 받아 HTML로 변환하며, 이때 인라인 스타일 정보를 통해 자동으로 하이라이팅이 해당 코드 조각에 내장된다. editor@itworld.co.kr
인터넷 보안은 그 분야 전문가에게도 복잡한 주제이며, 일반 사용자에게는 용어조차도 어려울 수 있다. 물론 모든 전문 용어를 다 알 필요는 없다. 하지만, 기본적인 용어에 대한 어휘력을 갖추면 주요 위협으로부터 자신을 보호할 수 있는 충분한 정보를 확보하는 데 도움이 될 수 있다. 예를 들어 피싱 이메일이 무엇인지 안다면 피싱 이메일에 대한 경각심을 갖고 이런 흔한 위험을 피할 수 있다. 여기서 소개하는 주요 보안 용어는 보안 경고를 이해하고 홈 네트워크와 컴퓨터를 보호하기 위한 적절한 조치를 취하는 데 도움이 될 것이다. 핵심 보안 용어 컴퓨터 시스템과 네트워크는 무단 액세스로부터 사용자와 사용자의 데이터를 보호하기 위해 다양한 기술을 사용한다. 우선, 데이터를 보호하는 방법을 설명하는 가장 일반적인 용어부터 알아보자. 2FA. 이중 인증(TwoFactor Authentication)의 줄임말로, 비밀번호 외에 추가적인 '요소'를 추가해 온라인 계정을 보호하는 방법이다. 문자 메시지 확인 또는 신뢰할 수 있는 앱에서 생성한 코드를 추가 인증 요소로 사용할 수 있다. 만약 이중 인증을 사용할 수 있는 계정이라면, 사용하는 것이 좋다. 인증(Authentication). 일반적으로 비밀번호, 생체 인식 또는 코드 확인을 통해 플랫폼 또는 계정에 대한 승인된 액세스를 확인한다. 생체 인식. 얼굴 형상이나 지문과 같은 사용자의 신체적인 특성을 보안 인증 수단으로 사용하는 것을 말한다. 노트북의 지문 센서와 윈도우 헬로 카메라는 암호보다 더 쉽고 안전하게 로그인할 수 있는 일반적인 생체 인식 보안 기능이다. 인증서 인증(Certificate Authentication). 신뢰할 수 있는 기관에서 디지털 서명한 기록을 사용해 웹사이트, 파일 또는 시스템의 진위 여부를 확인한다. 암호화(Encryption). 미리 정해진 방식으로 정보를 뒤죽박죽으로 만들어 민감한 정보를 모호하게 하거나 숨기는 방법. 하드 드라이브 및 기타 저장 장치를 암호화하면 장치가 악의적인 사람의 손에 넘어갈 경우 데이터를 보호할 수 있으며, 네트워크 연결을 암호화하면 데이터가 네트워크를 통해 이동할 때 제 3자가 가로채지 못하도록 보호한다. 위험 및 악용 관련 용어 해커와 범죄자들이 사용하는 일반적인 위험과 수법에 관한 용어다. 보안 소프트웨어를 구매할 때는 모든 위협 유형으로부터 보호하고 내 정보가 다크 웹에 표시될 때 알려주는 옵션을 선택하기 바란다. 백도어. 공격자가 시스템에 액세스하는 은밀한 방법을 만드는 보안 취약점, 즉 PC에 열려 있는 '뒷문'을 만들어 악용하는 수법이다. 부팅 레코드 바이러스. 흔히 MBR(Master Boot Record) 바이러스라고하며, 컴퓨터 시스템이 부팅될 때 로드되는 하드 드라이브의 일부를 표적으로 삼는 바이러스 형태이다. 운영체제의 보안 기능을 우회하는 데 악용된다. 봇넷. '로봇 네트워크'의 줄임말로, 범죄자가 대상 시스템의 보안 장치나 인프라를 압도하기 위해 대량의 감염된 컴퓨터를 사용하는 것을 말한다. 무차별 대입 공격(Brute Force Attack). 사용자 아이디와 비밀번호 조합을 알아내기 위해 대량의 문자와 숫자 조합을 사용하는 방식이다. 크라임웨어(Crimeware). 사이버 범죄자가 범죄 행위를 수행하기 위해 사용하는 멀웨어이다. 봇넷에 감염된 컴퓨터를 추가하는 트로이 목마 바이러스가 대표적이다. 다크 웹(Dark Web). 특정 소프트웨어를 사용해 트래픽을 익명화하는 인터넷용 섀도우 네트워크의 일종이다. 다크 웹은 종종 도난당한 비밀번호를 포함해 불법 또는 도난당한 데이터를 전송하는 데 사용된다. 다크 웹을 모니터링하는 보안 서비스는 이런 네트워크를 검색해 위협 정보가 발견되면 사용자에게 경고한다. 데이터 마이닝. 대규모 데이터 세트를 사용해 특정 대상에 대한 상관관계를 찾는 것을 말한다. 공격자는 여러 웹사이트나 데이터베이스에서 개인에 대한 데이터 요소를 찾아내 공격을 수행하거나 신원 도용을 저지르기에 충분한 정보를 수집할 수 있다. 서비스 거부 공격. DoS(Denial of Service)라고 부르며, 대상 시스템의 정상적인 작동을 방해하기 위해 의도적으로 과부하 트래픽을 일으키는 공격이다. 봇넷을 이용해 수행하는 경우가 많다. 사전 공격(Dictionary Attcack). 대량의 공통 용어를 사용해 사용자의 비밀번호를 알아내는 자동화된 무차별 암호 대입 공격의 한 형태이댜. 결함 주입(Fault Attack). 결함 주입 공격이라고도 한다. 해커가 정상적인 기능을 우회하기 위해 서버나 웹 브라우저에 의도적으로 잘못된 데이터 패킷을 전송하는 등 시스템의 일부에 오류를 발생시켜 시스템에 액세스하는 데 사용하는 방법이다. 하이재킹(Hijacking). 감염된 컴퓨터나 네트워크 연결을 악의적인 목적으로 사용할 수 있도록 제어권을 획득하는 것을 말한다. IP 스푸핑. 일반적으로 실제 출처를 숨기거나 다른 시스템을 사칭하기 위해 자신의 IP 주소가 아닌 다른 IP 주소에서 온 것처럼 보이도록 신호를 변경하는 방법이다. 미디어 스트리밍처럼 국가별 제한이 있는 서비스를 우회적으로 이용하는 데 사용할 수 있다. 커널 공격. 운영 체제의 핵심 코드(커널이라고 함)를 수정해 정보를 훔치거나 시스템에 대한 제어 액세스 권한을 얻기 위한 채널을 생성하는 보안 악용 방법이다. 멀웨어(Malware). 컴퓨터 시스템에서 악의적인 행위를 수행하는 소프트웨어. 바이러스나 트로이 목마 또는 사용자가 입력하는 내용을 기록하여 비밀번호 및 기타 정보를 수집하는 키로거 등을 통칭하는 용어다. 중간자 공격(ManintheMiddle Attack). 두 시스템 간의 트래픽을 가로채 공격자가 임의로 조작하는 방식의 공격이다. 가로챈 데이터를 훔치거나 다른 목적으로 손상된 정보를 삽입하는 데 사용할 수 있다. 신분 위장 공격(Masquerade Attack). 합법적인 사용자 또는 시스템의 자격 증명을 사칭하거나 이를 사용해 시스템에 액세스하는 방법이다. 비밀번호 크래킹. 사전 공격 등을 통해 작동 중인 비밀번호를 알아내 시스템에 액세스하는 행위. 비밀번호 스니핑. 암호화되지 않은 비밀번호에 대한 네트워크 트래픽을 모니터링하여 사용자 자격 증명을 발견하는 방법이다. 파밍(Pharming). 사용자가 유효한 사이트에 있다고 믿고 로그인 자격 증명이나 기타 식별 정보를 입력할 수 있는 스푸핑된 웹사이트로 트래픽을 리디렉션해 사용자의 데이터를 탈취하는 방법이다. 피싱 공격과 함께 사용되는 경우가 많다. 피싱(Phishing). 이메일이나 문자 메시지를 통해 피해자가 사용자 아이디와 비밀번호와 같은 민감한 데이터를 공개하도록 유인하는 소셜 엔지니어링 공격의 한 형태이다. 피싱 메시지는 일반적으로 은행이나 온라인 쇼핑몰처럼 신뢰할 수 있는 브랜드에서 보낸 것처럼 보이도록 디자인된 콘텐츠와 이미지를 이용한다. 포트 스캔. 공격자가 컴퓨터 시스템의 진입 지점을 발견하기 위해 사용하는 방법이다. 해커는 네트워크 또는 컴퓨터의 포트를 스캔해 사용 가능한 포트, 네트워크 내 컴퓨터에서 실행 중인 서비스 유형, 시스템에 액세스할 수 있는 기타 세부 정보를 파악할 수 있다. 랜섬웨어. 사용자가 시스템을 이용하지 못하게 잠그거나 민감하거나 당황스러운 데이터를 훔쳐내기 위한 멀웨어의 일종으로, 사용자가 액세스 권한을 되찾거나 정보 유출을 막기 위해 돈을 지불하도록 유도하는 것을 목적으로 한다. 세션 하이재킹. 사용자의 세션에서 활성 쿠키 데이터를 복제하는 등 이미 설정된 연결을 제어해 사용자의 온라인 계정에 액세스한다. 일반적으로 웹사이트 연결은 정해진 시간이 지나면 만료되는 세션 내에서 보안이 유지된다. 공격자는 만료되지 않은 세션의 쿠키 사본을 웹사이트에 제시함으로써 사용자를 사칭해 액세스 권한을 얻을 수 있다. 스니핑. 네트워크를 통해 전송되는 트래픽에서 데이터를 탐지하고 수집하는 모든 방법. 무선 네트워크에서 비밀번호를 찾는 데 자주 사용된다. 사회 공학. 인간의 사회적 취약점을 악용해 민감한 정보를 수집하거나 시스템에 액세스하는 데 사용하는 방법을 말한다. 피싱, 전화 사기, 신뢰할 수 있는 사람 사칭 등 다양한 기업이 사용된다. 스푸핑. 제한된 콘텐츠에 액세스하기 위해 컴퓨터의 IP 주소를 수정하거나 방문자를 속이기 위해 피싱 이메일 또는 가짜 웹사이트를 신뢰할 수 있는 브랜드의 소유인 것처럼 보이게 하는 등 시스템이나 계정을 그렇지 않은 것처럼 보이도록 수정하는 모든 기만적인 방법을 말한다. 트로이 목마. 겉보기에 안전한 애플리케이션 내에 숨겨져 있는 멀웨어. 컴퓨터에 악성 코드를 심는 데 이용한다. 바이러스. 스스로 복사본을 생성해 다른 파일과 시스템에 삽입함으로써 확산되는 멀웨어이다. 워초킹/워다이얼링/워드라이빙. 해커가 주변을 운전하며 무선 네트워크를 검색하거나(Wardriving), 걸어 다니며 같은 작업을 수행하고 눈에 띄는 방식으로 표적을 표시하거나(Warchoacking), 모뎀으로 액세스할 수 있는 컴퓨터를 찾기 위해 전화 번호를 자동 다이얼링하는(Wardialing) 방식으로 잠재적인 공격 대상을 발견하고 식별하는 방식이다. 전화를 받았는데 귀에서 모뎀의 치직거리는 소리가 들린다면, 워다이얼링 시도일 수 있다. 네트워킹 보안 용어 가장 단순한 홈 네트워크에도 일반적으로 침입자를 차단하고 데이터를 보호하는 데 도움이 되는 다양한 장치와 기능이 있다. 액세스 제어. 특정 디바이스의 네트워크 참여를 허용하거나 차단하는 라우터의 기능이다. 방화벽. 컴퓨터 또는 네트워크에 대한 액세스를 제한하는 장치 또는 소프트웨어이다. 방화벽을 통해 들어오고 나가는 항목에 대한 권한을 설정할 수 있다. 라우터. 네트워크의 액세스 및 트래픽 흐름을 관리하고, 네트워크 내의 컴퓨터에 주소를 할당하며, 네트워크 내의 시스템 간 연결 흐름을 지시하는 디바이스이다. 홈 라우터는 일반적으로 인터넷 서비스 업체의 모뎀에 연결되며 홈 네트워크 내의 디바이스가 서로 및 인터넷에 연결할 수 있는 중앙 허브 역할을 한다. 대부분의 라우터에는 외부 침입으로부터 네트워크를 보호하는 방화벽 및 액세스 제어 기능이 포함되어 있다. 홈 네트워크를 완벽하게 보호하려면 라우터의 기능을 알아두는 것이 좋다. 인터넷 보안 용어 사용자를 보호하고 온라인에서 데이터가 도난당하는 것을 방지하기 위해 웹사이트와 애플리케이션은 다양한 기술과 기법을 사용한다. 쿠키. 웹사이트 등의 시스템에서 사용자를 식별하고 추적하기 위해 사용하는 데이터 파일로, 종종 해당 사용자와 관련된 구성 정보가 포함되어 있다. 쿠키에는 사용자의 계정에 액세스하는 데 사용할 수 있는 개인 식별 정보 및 세션 데이터가 포함될 수 있다. 웹사이트 로그인을 활성 상태로 두면 세션 쿠키 데이터를 사용해 계정에 다시 액세스할 수 있다. 따라서 웹사이트 이용이 끝나면 의식적으로 로그아웃하면 이렇게 악용되는 것을 방지할 수 있다. HTTPS. 'S'는 안전하지 않은 일반 HTTP와 달리 신뢰할 수 있는 발급자의 서명된 인증서로 보호되는 연결을 나타낸다. 기본적으로 온라인 보안에 관심이 있다면 개인 데이터를 전송하는 모든 웹사이트의 주소가 HTTPS로 시작해야 한다. 인터넷 프로토콜(IP). 인터넷을 통해 컴퓨터를 연결하는 표준 방법으로, 각 시스템에는 IP 주소라고 하는 고유한 숫자 또는 영숫자 주소가 있다. IPv4의 경우, 192.168.1.72, Ipv6의 경우 2001:0db8:85a3:0000:0000:8a2e:0370:7334와 같은 주소를 사용한다. 현재 두 버전 모두 사용되고 있다. 일부 사이버 공격은 신뢰할 수 있는 출처에서 온 것처럼 보이도록 IP 주소를 변조한다. SSL(Secure Sockets Layer). 디지털 서명 보안을 사용해 인터넷에서 신뢰할 수 있는 시스템을 식별하는 보안 표준이다. 웹사이트의 신원을 확인하기 위해 HTTPS에서 사용하는 표준이기도 하다. 비즈니스 보안 용어 직장에서 IT 부서는 회사 데이터와 시스템을 안전하게 보호하기 위해 여러 가지 보안 프랙티스를 적용한다. 최소 권한. 보안을 손상시킬 수 있는 의도치 않은 구성 변경을 방지하기 위해 컴퓨터에 대한 관리자 액세스를 보류하는 등, 특정 시스템이나 사용자에게 필수 기능을 수행하는 데 필요한 만큼의 액세스 권한만 부여하는 보안 원칙이다. 기업 IT 환경에서는 이런 이유로 일반 사용자에게는 회사에서 발급한 PC에 대한 기본 액세스 권한만 부여한다. 가정에서도 자녀의 컴퓨터 설정을 제한하는 식으로 적용할 수 있다. VPN(Virtual Private Network). VPN은 인터넷을 통해 여러 대의 컴퓨터를 안전하게 연결하는 수단으로, 내부 네트워크처럼 동작하는 것이 특징이다. 많은 기업이 직원들에게 공개 인터넷이 아닌 VPN을 통해 민감한 시스템에 액세스하도록 요구한다. 가정에서도 VPN을 사용하면 웹 서핑을 할 때 개인 정보 보호 장치를 추가하는 효과를 얻을 수 있다. 기타 중요한 컴퓨터 및 보안 용어 데몬(Daemon). 컴퓨터 시스템에서 자동화된 백그라운드 프로세스로 실행되는 프로그램. 대부분의 데몬은 양성이지만, 많은 멀웨어가 데몬을 추가해 사용자 활동을 모니터링하고 인터넷을 통해 해커의 지시를 기다린다. 암호 해독(Decryption). 일반적으로 보안 인증을 통해 암호화된 데이터 또는 텍스트를 읽을 수 있는 상태로 복원하는 작업이다. 허니팟(Honeypot). 공격자를 유인하고 함정에 빠뜨리기 위해 고의적으로 노출된 시스템으로, 겉보기에는 가치 있는 데이터로 가득 차 있다. 네트워크 관리자와 사법기관이 사이버 범죄자를 잡기 위해 허니팟을 사용하기도 한다. 현재 일부 가정용 보안 방화벽에는 허니팟 기능이 포함되어 있어 액세스 시도를 감지하고 침입자에게 경고를 보낼 수 있다. 평문(Plaintext). 암호화되지 않은 텍스트 콘텐츠. 암호화된 암호 텍스트와 반대되는 개념이다. 비밀번호와 같은 민감한 정보는 어떤 시스템에도 평문으로 저장해서는 안된다. 루트(Root). 맥OS나 리눅스 같은 유닉스 계열 운영체제의 핵심 관리자 또는 수퍼유저 계정이다. 대부분의 최신 유닉스 계열 시스템은 수퍼유저 기능에 대한 무단 액세스를 방지하기 위해 기본적으로 루트 계정을 비활성화한다. 많은 사이버 공격의 목표는 루트 액세스 권한을 얻어 시스템을 완전히 장악하는 것이다. 스팸. 원치 않는 메시지로, 주로 이메일을 통해 전달되지만 문자 메시지와 소셜 미디어에서도 점점 더 흔해지고 있다. 반드시 위험한 것은 아니지만 피싱 공격과 사기가 포함될 수 있다. 제로 데이(Zero Day). 새로운 취약점이 발견된 첫날로, 공격자가 취약점을 인지하고 사용자가 시스템에 방어 패치를 적용하기 전에 취약점을 악용할 수 있기 때문에 가장 취약한 시기로 간주된다. editor@itworld.co.kr
‘뉴 노멀’에서 ‘올드 노멀’로 되돌아가는 데는 그리 오랜 시간이 걸리지 않았다. 외출할 때마다 마스크를 챙기고, 사회적 거리두기를 하던 기억도 이제는 희미하다. 하지만 코로나 19가 쏘아 올린 거시 경제적 위기는 여전했고, 2024년에도 계속될 전망이다. 불확실한 경제 상황, 예측할 수 없는 미래는 기업의 가장 큰 불안 요소이지만, 현재 상황을 분석하고 가능성 있는 미래를 염두에 둔다면 변화에 빠르게 대처할 수 있을 것이다. 2024년 IT 업계에서 가장 주목해야 할 기술은 여전히 AI다. 인터넷에 버금가는 사회/경제적 혁신을 이끌게 될 기술로 주목받는 AI는 2024년 한층 고도화되면서 안정기에 접어들 것으로 예상된다. 이에 따라 AI에 능통한 기업과 그렇지 못한 기업의 지식 격차는 2024년 기업의 생산성과 수익을 판가름할 것으로 보인다. 여기서는 2024년 한해 계획에 참고하면 좋을 만한 AI 관련 2024년 전망을 정리한다. 2024년에도 변화의 중심은 AI 가트너는 오는 2026년까지 생성형 AI 모델이나 API를 사용하는 기업이 80%에 달할 것으로 예상했다. 2023년 초에는 5% 미만이었던 것을 고려하면 폭발적인 성장이다. 이에 따라 AI의 신뢰와 리스크, 보안 관리를 의미하는 AI TRiSM(Artificial Intelligence Trust, Risk, and Security Management)의 필요성도 분명해졌다. 사전 예방적 데이터 보호, AI 전용 보안, 데이터 및 모델 드리프트, 모델 모니터링, 입출력 리스트 제어 등과 같은 AI TRiSM 기능을 적용하는 기업은 오류 및 불법 정보를 최대 80%까지 줄임으로써 보다 정확하게 의사결정할 수 있다. AI 성능에 핵심적인 역할을 하는 AI 반도체 시장도 몸집이 커지고 있다. 딜로이트는 생성형 AI 전용 반도체칩 시장 규모가 2024년 400억 달러(약 51조 9,600억 원) 수준까지 이르렀다가 2027년에는 4,000억 달러(약 519조 원)에 달할 것으로 전망했다. 또한 딜로이트는 기업용 소프트웨어 업체 대부분이 올해를 기점으로 제품과 서비스에 생성형 AI를 추가할 것이며, 생성형 AI를 도입한 SW 업체는 100억 달러(약 13조 원)의 추가 매출을 얻을 수 있다고 분석했다. 실무자의 업무 환경은 어떻게 바뀔까? 우선 중요도가 높지 않은 업무에서는 생성형 AI 사용이 고착화될 것으로 예상된다. 퀄트릭스의 ‘2024년 직원 경험 트렌드’에 따르면, 많은 직원이 자료 작성(63%), 개인 비서 역할(59%), 내부 지원 부서에 연락(50%)과 같이 AI를 직접 제어할 수 있는 업무에서 AI를 활용하는 것을 긍정적으로 생각하고 있었다. 반면 교육, 업무 성과 평가, 채용 및 승진 면접처럼 주관적인 의견이 개입되고 중요도가 높은 업무에 대해서는 선호도가 30%대에 그쳤다. AI는 직원의 업무 방식뿐 아니라 일자리 지형도 바꾸고 있다. 생성형 AI가 창의적인 사고를 성공적으로 수행하는 모습을 입증하면서 2023년에는 더 많은 일자리가 사라질 것에 대한 우려가 있었지만, 한편에서는 프롬프트 엔지니어(Prompt Engineer)처럼 AI가 창출한 새로운 역할도 생겨났다. SAS는 “AI 기술이 고용 시장에 일시적인 혼란을 야기할 수 있지만, 앞으로 경제 성장을 견인할 직무를 창출할 것“이라며, 올해는 이런 신규 일자리가 크게 주목받을 것으로 예상했다. 접근 방식도 달라진다 AI 도입이 필수적인 흐름이라면 2024년에는 비용 효율적인 운영을 고민해야 하는 시기다. 올해부터는 AI에 대한 논의가 이론에서 실제 추론 및 운영 환경으로 전환되면서 투자에 대한 초점 역시 훈련 비용에서 추론/운영 비용으로 이동할 것으로 보인다. 델 테크놀로지스에 따르면, 훈련 비용은 모델의 크기와 데이터 집합 사용에 따라 결정되지만 추론/운영 비용은 트랜잭션 수, 사용자 규모, 데이터 유형, 지속적인 유지보수에 좌우된다. 클라우데라는 비교적 적은 비용과 훈련 데이터로도 LLM 성능을 최적화하는 대표적인 3가지 방법으로 프롬프트 엔지니어링, 검색증강생성(Retrieve Augmented Generation, RAG), 파인 튜닝(Fine Tuning)에 주목했다. 또한 앞으로는 많은 기업이 더 나은 LLM을 만들기 위해 MLOps(Machine Learning Operation)와 데이터 페더레이션 기능 개발에 주력할 것으로 예상했다. AI의 잠재력을 극대화해 경쟁 우위를 확보하기 위한 방법으로 에퀴닉스는 ▲신뢰할 수 있는 출처 ▲전략적인 데이터 수집 ▲적절한 모델 3가지 요소가 필요하다고 강조했다. 또한 지난해에는 생성형 AI가 기업의 데이터를 유출하는 사고가 있었던 만큼 2024년에는 민감 데이터를 위험 요소로부터 효율적으로 보호하는 방법으로 프라이빗 AI 논의가 활발해질 것으로 전망했다. 마케팅 캠페인도 AI로 효과적으로 디지털 마케팅 분야에서도 AI가 핵심 키워드다. 인크로스는 경기 침체로 인해 2024년에는 광고 효율을 극대화할 수 있는 서비스와 기술이 계속해서 주목받을 것이라고 분석했는데, 특히 ‘AI 마케팅’이 크게 발전할 것이라고 전망했다. 실제로 마케팅 업계에서는 현재 AI를 활용해 광고 소재를 제작하고 ML을 통해 캠페인 효율을 최적화하는 추세가 점차 확산하고 있다. 인크로스는 광고 업계 전반에 AI/ML의 영향력이 확대할 것으로 바라봤다. 몰로코의 조사도 인크로스의 전망을 뒷받침한다. 몰로코가 전 세계 모바일 앱 마케터를 대상으로 실시한 조사에 따르면, 퍼포먼스 기반 모바일 마케팅 솔루션을 선택할 때 고려하는 10가지 요소 중 ‘고급 ML 기술’이 37%로 1위를 차지했다. 광고 패러다임 자체가 변화할 것이라는 전망도 있다. 메조미디어는 일방향적인 기존의 광고 방식이 생성형 AI를 통해 이용자와 상호작용하는 방식으로 광고 패러다임이 바뀔 것이며, 이에 따라 2024년에는 많은 마케터가 프롬프트 작성, 디지털 리터러시에 대한 이해, 유해 정보 필터링과 같은 생성형 AI 역량을 개발할 것으로 예상했다. 기회 혹은 위기…AI라는 양날의 검 모든 기술에는 어두운 이면이 있는 법이다. 올해 기업의 보안에 가장 큰 영향을 미칠 요소로 AI가 꼽히는 것도 자연스럽다. 미국보안산업협회(Security Industry Association, SIA)는 2024년 기업 보안에 영향을 미칠 것으로 예상되는 가장 중요한 트렌드로 AI를 선정했다. 구체적으로는 ‘AI 보안’을 가장 중요한 트렌드로 선정했으며, AI가 탑재된 디지털카메라의 비디오 인텔리전스, 생성형 AI, AI 규제가 뒤를 이었다. 매해 연말 보안 위협 전망을 내놓는 보안 업체들도 일제히 AI의 어두운 이면을 지적했다. 이글루코퍼레이션과 SK쉴더스는 피싱 이메일 작성, 악성코드 생성 등 생성형 AI를 악용해 해커가 공격을 더 쉽고 빠르게 수행할 수 있는 환경이 마련되면서 2024년 생성형 AI를 악용한 사이버공격이 증가할 것으로 전망했다. 특히 프루프포인트는 현재 맬웨어 개발자들이 AI를 활용해 더 많은 표적에 접근할 수 있는 첨단 프로그래밍 기법을 만들고 있음을 지적하며, 그 결과 2024년에는 샌드박스나 EDR(Endpoint Detection and Response)과 같은 도구를 피할 수 있는 맬웨어가 크게 확산하며 ‘맬웨어의 각축장’이 벌어질 수 있다고 경고했다. 세상의 모든 IT 리서치 자료, '넘버스' 여기서 소개한 모든 자료는 넘버스(Numbers) 서비스에 등록돼 있다. 넘버스는 IT 전문 미디어 ITWorld가 제공하는 IT 리서치 자료 메타 검색 서비스다. IDC, 가트너, 포레스터 등 주요 시장조사 업체의 자료는 물론 국내외 정부와 IT 기업, 민간 연구소 등이 발표한 기술 관련 최신 자료를 총망라했다. 2024년 1월 현재 1,300여 건의 자료가 등록돼 있으며, 매달 50여 건이 새롭게 올라온다. 등록된 자료는 출처와 토픽, 키워드 등을 기준으로 검색할 수 있고, 관련 기사를 통해 해당 자료의 문맥을 이해할 수 있다. 자료의 원문 제목과 내용을 볼 수 있는 링크, 자료를 발행한 주체와 발행 일자도 함께 확인할 수 있다. mia.kim@foundryco.com
구글의 고(Go) 프로그래밍 언어가 처음 등장했을 때는 이 언어는 호기심 많은 컴퓨터 전문가나 다루던 언어였다. 그러나 이후 10여 년의 시간을 거치면서 세계적으로 중요한 여러 클라우드 네이티브 프로젝트를 움직이는 검증된 프로그래밍 언어로 발전했다. 도커, 쿠버네티스와 같은 중요한 프로젝트에서 개발자가 고를 선택한 이유는 무엇일까? 고의 대표적인 특징은 무엇이고, 다른 프로그래밍 언어와 어떤 면에서 다를까? 고는 어떤 종류의 프로젝트에 가장 적합할까? 여기서는 고의 기능과 최적의 사용 사례는 물론 부족한 기능과 제약을 살펴보고 앞으로의 발전 방향을 예측해 본다. 작고 간소한 고 언어 고, 또는 흔히 말하는 고랭(Golang)은 오랜 유닉스 권위자이자 구글 특별 엔지니어인 롭 파이크를 주축으로 구글 직원이 만든 언어지만 엄밀히 말하면 “구글 프로젝트”는 아니다. 그보다는 언어의 사용 방법과 방향에 대해 명확한 소신이 있는 리더십의 주도로 커뮤니티에서 개발한 오픈소스 프로젝트라고 하는 편이 더 정확하다. 고는 쉽게 배울 수 있고 다루기 편하며 다른 개발자가 읽기 쉬운 언어를 목표로 한다. 고는 특히 C++와 같은 언어와 비교해 기능이 많지는 않다. 구문 측면에서는 C와 비슷하므로 오랜 기간 C를 사용해 온 개발자라면 비교적 쉽게 배울 수 있다. 그러나 고의 여러 기능, 특히 동시성 및 함수형 프로그래밍 기능은 얼랭(Erlang)과 같은 언어와 더 비슷하다. 고는 온갖 종류의 크로스 플랫폼 엔터프라이즈 애플리케이션을 구축하고 유지하기 위한 C와 유사한 언어로, 자바와도 많은 공통점을 갖고 있다. 또한 파이썬과는 유사점보다 차이점이 훨씬 더 크긴 하지만 어디에서나 실행 가능한 코드를 빠르게 개발할 수 있다는 면에서는 마찬가지라고 할 수 있다. 고 설명 문서를 보면, 고를 “동적 형식 지정 인터프리트 언어처럼 느껴지는 빠른 정적 형식 지정 컴파일 언어”라고 설명한다. 규모가 큰 고 프로그램도 컴파일에는 몇 초밖에 걸리지 않는다. 또한 고에서는 C 스타일의 include 파일 및 라이브러리에 따르는 오버헤드를 대부분 피할 수 있다. 고 언어의 강점 고는 여러 가지 면에서 개발자의 일을 편하게 해준다. 강점 1. 편리함 고는 많은 일반적인 프로그래밍 요구를 충족할 수 있다는 점에서 파이썬과 같은 스크립팅 언어와 자주 비교된다. 이런 기능 중에는 동시성과 스레드 동작을 위한 고루틴처럼 언어 자체에 내장된 경우도 있고, 고의 http 패키지와 같이 고 표준 라이브러리 패키지로 제공되는 부가적인 기능도 있다. 고는 파이썬과 마찬가지로 가비지 수집을 포함한 자동 메모리 관리 기능을 제공한다. 고 코드는 파이썬과 같은 스크립팅 언어와 달리 실행 속도가 빠른 네이티브 바이너리로 컴파일된다. 또한 C 또는 C++와 달리 고의 컴파일 속도는 매우 빨라서 고로 작업하다 보면 컴파일 언어보다는 스크립팅 언어에 가깝게 느껴진다. 고 빌드 시스템은 다른 컴파일 언어에 비해 덜 복잡하다. 몇 단계만 거치면 별다른 수고 없이 프로젝트를 빌드하고 실행할 수 있다. 강점 2. 빠른 속도 고 바이너리의 실행 속도는 C 바이너리에 비하면 느리지만 그 차이가 크지는 않아서 대부분의 애플리케이션에서 무시해도 될 정도다. 성능은 대부분의 작업에서 C에 필적하며, 자바스크립트, 파이썬, 루비 등 개발 속도로 유명한 다른 언어와 비교하면 대체로 훨씬 더 빠르다. 강점 3. 이식성 고 툴체인으로 생성된 실행 파일은 기본적인 외부 종속성 없이 독립적으로 작동할 수 있다. 고 툴체인은 다양한 운영체제 및 하드웨어 플랫폼용으로 제공되며, 이러한 툴체인을 사용해 여러 플랫폼에 걸쳐 바이너리를 컴파일할 수 있다. 강점 4. 상호운용성 고는 모든 기능을 기반 시스템에 대한 접근성을 희생하지 않고 제공한다. 고 프로그램은 외부 C 라이브러리와 통신하거나 네이티브 시스템을 호출할 수 있다. 예를 들어 도커에서 고는 저수준 리눅스 함수, 컨트롤 그룹(cgroups) 및 네임스페이스와 상호작용해 컨테이너 동작을 구현한다. 강점 5. 광범위한 지원 고 툴체인은 리눅스, 맥OS 또는 윈도우 바이너리나 도커 컨테이너로 무료로 사용 가능하다. 고는 레드 햇 엔터프라이즈 리눅스, 페도라와 같은 많은 인기 있는 리눅스 배포판에 기본적으로 포함되므로 이러한 플랫폼에 비교적 쉽게 고 소스를 배포할 수 있다. 마이크로소프트 비주얼 스튜디오 코드부터 액티브스테이트(ActiveState)의 코모도(Komodo) IDE에 이르기까지 많은 서드파티 개발 환경도 충실하게 지원한다. 고 언어가 가장 적합한 분야 모든 작업에 적합한 언어는 없지만 다른 언어에 비해 더 많은 작업에서 효과적인 언어는 있다. 고는 다음과 같은 애플리케이션 유형 개발에서 가장 빛을 발한다. 분야 1. 클라우드 네이티브 개발 고의 동시성과 네트워킹 특성, 높은 수준의 이식성은 클라우드 네이티브 앱을 구축하는 데 적합하다. 실제로 고는 도커, 쿠버네티스, 이스티오를 포함한 클라우드 네이티브 컴퓨팅의 여러 초석을 구축하는 데 사용됐다. 분야 2. 분산 네트워크 서비스 네트워크 애플리케이션의 성패는 동시성에 달려 있는데, 고루틴과 채널 등 고의 네이티브 동시성 기능이 이 부분에서 강점이 있다. API, 웹 서버, 웹 애플리케이션을 위한 최소한의 프레임워크 등 네트워킹, 분산 기능 및 클라우드 서비스를 위한 고 프로젝트가 많은 것도 이 때문이다. 분야 3. 유틸리티 및 독립형 툴 고 프로그램은 최소한의 외부 종속성을 가진 바이너리로 컴파일된다. 따라서 시작 시간이 빠르고 즉시 패키징해 재배포할 수 있으므로 유틸리티나 다른 툴을 만드는 데 적합하다. 한 가지 예로 SSH 등에 사용되는 텔레포트(Teleport)라는 액세스 서버가 있다. 텔레포트는 소스에서 컴파일하거나 사전 빌드된 바이너리를 다운로드하는 방법으로 빠르고 쉽게 서버에 배포할 수 있다. 고 언어의 제약 제약 1. 생략된 언어 기능이 많음 지향점이 뚜렷한 고의 기능은 칭찬과 비판을 동시에 받아왔다. 고는 작고 이해하기 쉬운 언어에 중점을 두고 설계됐으므로, 일부 기능은 의도적으로 생략됐다. 그 결과 다른 언어에서는 일반적인 몇 가지 기능을 고에서는 볼 수 없다. 오랜 불만 중 하나는 한 함수가 여러 유형의 변수를 받을 수 있게 해주는 제네릭 함수의 부재였다. 고 개발 팀은 고의 나머지 부분을 보완하는 구문과 동작을 구현해야 한다는 이유로 오랜 시간 동안 제네릭 추가에 반대 입장을 고수했다. 그러나 2022년 초에 출시된 고 1.18부터는 제네릭을 위한 구문이 포함됐다. 여기서 알 수 있는 점은 고는 여러 버전 간에 폭넓은 호환성을 보존한다는 이유로 중대한 기능을 추가하는 일이 거의 없고, 추가할 때도 많은 고민을 거친다는 것이다. 제약 2. 바이너리 크기가 클 수 있음 고의 또 다른 잠재적인 단점은 생성된 바이너리의 크기다. 기본적으로 고 바이너리는 정적으로 컴파일된다. 즉, 런타임에 필요한 모든 요소가 바이너리 이미지에 포함된다. 이 방식은 빌드 및 배포 프로세스를 간단하게 해주지만 그 대가로 “Hello, world!”를 출력하는 바이너리의 크기가 64비트 윈도우 기준 약 1.5MB에 이른다. 고 팀은 각 릴리스마다 바이너리의 크기를 줄이기 위한 작업을 해오고 있다. 또한 압축이나 디버그 정보를 제거하는 방법으로 고 바이너리 크기를 줄이는 것도 가능하다. 후자의 방법은 서비스가 실패할 경우 디버그 정보를 유용하게 사용할 수 있는 클라우드 또는 네트워크 서비스보다는 독립형 분산 앱에서 더 적합하다. 제약 3. 가비지 수집에서 많은 리소스 소비 고가 자랑하는 기능인 자동 메모리 관리는 단점이 되기도 한다. 가비지 수집을 위해 얼마간의 처리 오버헤드가 필요하기 때문이다. 고는 설계상 수동 메모리 관리 기능을 제공하지 않으며, 고의 가비지 수집은 엔터프라이즈 애플리케이션에서 발생하는 메모리 부하에 잘 대응하지 못한다는 비판을 받아왔다. 그래도 새 버전이 나올 때마다 메모리 관리 기능이 개선되고 있다. 예를 들어 고 1.8에서는 가비지 수집의 지연 시간이 크게 줄어들었다. 고 개발자는 C 확장에서 수동 메모리 할당을 사용하거나 서드파티 수동 메모리 관리 라이브러리를 사용할 수 있지만, 대부분의 고 개발자는 이러한 문제에 대해 네이티브 솔루션을 선호한다. 제약 4. GUI 구축을 위한 표준 툴킷의 부재 데스크톱 애플리케이션의 GUI와 같이 고 애플리케이션을 위한 풍부한 GUI를 구축하는 소프트웨어 문화는 여전히 빈약하다. 대신 대부분의 고 애플리케이션은 명령줄 툴 또는 네트워크 서비스다. 다만 고 애플리케이션에 GUI를 제공하기 위한 다양한 프로젝트가 진행 중이다. 대표적인 것이 GTK 및 GTK3 프레임워크를 위한 바인딩이다. C 바인딩에 의존하며 순수 고로 작성되지 않았지만 플랫폼 네이티브 UI를 제공하는 프로젝트도 있다. 윈도우 사용자라면 워크(walk)를 사용해볼 수 있다. 그러나 아직은 확고한 승자나 장기적인 관점에서 안전한 방법이 없다. 크로스 플랫폼 GUI 라이브러리를 구축하고자 했던 구글 프로젝트를 포함한 몇몇 프로젝트도 성과 없이 끝났다. 또한 고는 설계상 플랫폼 독립적이므로 이와 같은 프로젝트가 표준 패키지 모음의 일부가 될 가능성은 낮다. 마지막으로, 고는 네이티브 시스템 함수와 통신할 수 있지만 커널 또는 디바이스 드라이버, 임베디드 시스템과 같은 저수준 시스템 구성요소를 개발하기 위한 용도로는 적합하지 않다. 결국 고 런타임과 고 애플리케이션을 위한 가비지 수집기는 기반 운영체제에 의존한다. 이런 작업에 적합한 최신 언어에 관심이 있다면 러스트 언어를 추천한다. 고 언어의 미래 고 개발진은 고집을 부리기보다는 고 개발자 기반을 더욱 포용하는 방향으로 언어의 방향을 바꾸고 있으며, 그에 따라 앞으로는 이 개발자층의 희망 및 요구사항을 더 반영하며 개발될 것이다. 이 같은 변화의 대표적인 예가 최선의 방법에 대한 오랜 숙고 끝에 추가된 제네릭이다. 2021년 고 개발자 설문에서 고 개발자들은 고 언어가 제공하는 기능에 전반적으로 만족한다고 답했지만 개선해야 할 부분도 많다고 지적했다. 고 사용자들이 주로 개선을 원하는 분야는 종속성 관리(고 언어의 오랜 숙제), 버그 진단, 안정성이며, 그에 비해 메모리, CPU 사용률, 바이너리 크기, 빌드 시간 등의 순위는 훨씬 낮았다. 대부분의 언어는 핵심 사용 사례에 중점을 둔다. 고는 처음 등장하고 10년 동안 네트워크 서비스 틈새를 파고들었으며 이 영역에서 계속 확장해 나갈 가능성이 높다. 설문에서 확인된 고 언어의 주 사용 사례는 API 또는 RPC 서비스 생성(49%), 데이터 처리(10%), 웹 서비스(10%), CLI 애플리케이션(8%) 순이었다. 고 언어의 매력이 높아지고 있음을 보여주는 또 다른 신호는 언어 평가 후 실제로 도입하는 개발자의 수다. 프로젝트에 고 사용을 고려 중이라고 답한 설문 응답자 중 75%는 고를 선택했다. 고를 선택하지 않은 개발자가 선택한 주요 대안은 러스트(25%), 파이썬(17%), 자바(12%)였다. 이들 각 언어는 다른 틈새 시장을 발견했거나 지금 찾고 있다. 러스트의 경우 안전하고 빠른 시스템 프로그래밍, 파이썬은 프로토타이핑과 자동화 및 글루 코드, 자바는 전통적인 엔터프라이즈 애플리케이션이다. 고의 속도와 간편한 개발이 다른 사용 사례로 얼마나 확산될지, 또는 고가 엔터프라이즈 개발 분야에 얼마나 깊이 침투하게 될지는 아직 알 수 없다. 그러나 주요 프로그래밍 언어로서 고의 미래는 이미 보장돼 있다. 특히 고의 속도와 단순함은 가장 큰 미덕이다. 장기적인 유지 관리가 가능한 확장성 있는 인프라를 더 쉽게 개발할 수 있는 기반이 되는 클라우드에서고 언어의 미래는 확실하다. editor@itworld.co.kr
GPT, 바드, 라마 2 같은 대규모 언어 모델(LLM)은 대중의 상상력을 자극하고 다양한 반응을 끌어냈다. LLM에 대한 열기의 이면을 살펴보면서 대규모 언어 모델의 기원, 이러한 모델이 어떻게 구축 및 학습되는지를 살펴본다. 또한, 어떤 범위에서 효과적인지 검토하고, 가장 많이 사용되는 LLM에 대해 알아보자. 대규모 언어 모델이란? 언어 모델의 시초는 20세기 초까지 거슬러 올라가지만 대규모 언어 모델이 본격적으로 부상한 시점은 신경망이 도입된 이후다. 특히 2017년에 등장한 트랜스포머(Transformer) 심층 신경망 아키텍처는 언어 모델에서 LLM으로의 진화에 큰 역할을 했다. 대규모 언어 모델은 설명 프롬프트를 기반으로 한 텍스트 생성, 코드 생성 및 코드 완성, 텍스트 요약, 언어 간 번역, 텍스트투스피치 및 스피치투텍스트 애플리케이션을 포함한 다양한 작업에 유용하다. 한편, 적어도 현재 개발 단계에서의 LLM에는 단점도 있다. 생성된 텍스트의 품질이 그다지 좋은 편이 아니며, 형편없는 경우도 종종 발생한다. LLM은 없는 사실을 만들어 내기도 하는데 이를 환각(hallucination)이라고 한다. 답을 구하는 사용자에게 관련 지식이 없다면 환각은 상당히 그럴듯하게 들릴 것이다. 언어 번역의 경우, 네이티브 스피커의 검수를 받지 않은 문장은 100% 정확한 경우가 거의 없지만, 검수는 일반적으로 상용구에 한해서만 이뤄진다. 생성된 코드에는 버그가 흔하고, 아예 실행되지 않는 경우도 있다. 대체로 LLM은 논란의 여지가 있는 언급을 하거나 불법적인 행동을 추천하는 일이 없도록 미세한 조정을 거치지만 악의적인 프롬프트를 사용하면 안전 장치를 무력화할 수도 있다. 대규모 언어 모델을 학습시키기 위해서는 대규모 텍스트 말뭉치(corpus)가 하나 이상 필요하다. 학습 예제에는 1B 워드 벤치마크(1B Word Benchmark), 위키피디아, 토론토 북 코퍼스(Toronto Books Corpus), 커먼 크롤(Common Crawl) 데이터 집합, 그리고 공개 오픈소스인 깃허브 리포지토리 등이 포함된다. 대규모 텍스트 데이터 집합에는 저작권 침해와 쓰레기라는 두 가지 문제점이 있다. 저작권 침해의 경우 현재 여러 관련 소송이 진행 중이다. 쓰레기는 최소한 청소는 가능하다. 쓰레기 청소가 된 데이터 집합의 예로, 커먼 크롤 데이터 집합을 기반으로 한 800GB 용량의 데이터 집합인 콜로설 클린 크롤드 코퍼스(Colossal Clean Crawled Corpus: C4)가 있다. 대규모 언어 모델은 딥러닝 신경망, 대규모 학습 말뭉치를 사용하며, 신경망을 위한 수백만 개 이상의 매개변수 또는 가중치를 필요로 한다는 면에서 전통적인 언어 모델과 다르다. 하나 이상의 대용량 학습 말뭉치와 함께 LLM에는 많은 수의 매개변수, 즉 가중치가 필요하다. 매개변수의 수는 지금까지 매년 증가했다. 엘모(ELMo, 2018)의 매개변수 수는 9,360만 개이며 버트(BERT, 2018)는 1억 1,700만 개, T5(2020)는 2억 2,000만 개다. GPT2(2019)의 경우 16억 개, GPT3(2020)는 1,750억 개, 팜(PaLM, 2022)은 5,400억 개이며 GPT4(2023)의 매개변수는 1조 7,600억 개에 이른다. 매개변수가 많을수록 모델의 정확도는 높아지지만 그만큼 더 많은 메모리가 필요하고 실행 속도가 느려진다. 2023년에는 비교적 작은 모델들이 여러 가지 크기로 출시되기 시작했다. 예를 들어 라마 2(Llama 2)는 70억 개, 130억 개, 700억 개 버전으로 제공되며 클로드 2(Claude 2)는 930억 개와 1,370억 개의 매개변수 크기로 제공된다. 텍스트를 생성하는 AI 모델의 역사 언어 모델의 시초는 1913년에 시에 수학을 적용한 안드레이 마코프다. 마코프는 푸시킨의 유게니 오네긴에서 한 문자가 나타날 확률은 이전 단어에 따라 달라지며, 일반적으로 자음과 모음이 번갈아 나타나는 경향이 있음을 밝혀냈다. 현재 마코프 체인은 각 이벤트의 확률이 이전 이벤트의 상태에 따라 달라지는 이벤트 시퀀스를 설명하는 데 사용된다. 마코프의 연구는 1948년 클로드 섀넌의 통신 이론에서 확장됐고, 이후 IBM의 프레드 젤리넥과 로버트 머서가 1985년에 교차 검증 기반의 언어 모델을 만들어 실시간 대규모 어휘 음성 인식에 적용하면서 다시 한번 확장됐다. 기본적으로 통계적 언어 모델은 단어의 시퀀스에 확률을 할당한다. 언어 모델의 실제 작동을 간단히 보려면 구글 검색 또는 휴대폰에서 자동 완성을 켠 상태로 문자 메시지 앱에 단어를 몇 개 입력해보면 된다. 2000년에 요슈아 벤지오와 공동 저자들은 통계적 언어 모델의 확률을 신경망으로 대체하여 차원의 저주를 회피하고 당시 최첨단 기술이었던 평탄화 트라이그램(smoothed trigram) 모델에 비해 단어 예측을 20%~35% 개선하는 신경 확률 언어 모델을 다룬 논문을 발표했다. 피드 포워드 자동 회귀 신경망 언어 모델 개념은 지금도 여전히 사용되지만, 현재의 모델은 매개변수 수가 수십억 개에 이르고 광범위한 말뭉치로 학습되며, 그래서 ‘대규모 언어 모델’이라는 명칭으로 불린다. 언어 모델이 성능 개선을 목표로 발전하면서 시간이 갈수록 크기도 커졌다. 그러나 이 같은 크기 증가에는 단점도 있다. 2021년에 발표된 논문 ‘확률적 앵무새의 위험에 대해: 언어 모델의 크기에는 한계가 없는가?’는 언어 모델은 클수록 좋다고 생각하는 경향에 대해 의문을 제기한다. 논문 저자는 웹의 모든 것을 수집하지 말고 환경적, 재정적 비용을 먼저 고려해서 데이터 집합을 선별 및 문서화하는 데 투자할 것을 제안한다. 언어 모델과 LLM에 대한 이해 현재의 언어 모델은 다양한 작업과 목표가 있고 형태도 다양하다. 예를 들어 언어 모델은 문서에서 다음 단어를 예측하는 작업 외에 새로운 텍스트를 생성하고 텍스트를 분류하고 질문에 답하고 감정을 분석하고 명명된 개체를 인식하고 음성을 인식하고 이미지의 텍스트를 인식하고 손글씨를 인식할 수 있다. 일반적으로 중소 규모의 보충 학습 집합을 사용하여 실시되는 특정 작업을 위한 언어 모델 맞춤 설정을 미세 조정(finetuning)이라고 한다. 언어 모델에 들어가는 중간 작업의 예를 들면 다음과 같다. 학습 말뭉치를 문장으로 세분화 단어 토큰화 어간 추출 표제어 추출(어근 단어로 변환) POS(Part Of Speech) 태깅 정지단어 식별 및 제거(경우에 따라) 명명된 객체 인식(NER) 텍스트 분류 청킹(Chunking, 문장을 유의미한 구로 분할) 상호참조 해결(텍스트의 동일한 개체를 가리키는 모든 표현 찾기) 이 중에서 일부는 텍스트 분류와 같이 자체적인 작업 또는 애플리케이션으로도 유용하다. 대규모 언어 모델은 딥러닝 신경망과 대규모 학습 말뭉치를 사용하며, 신경망을 위한 수백만 개 이상의 매개변수 또는 가중치를 필요로 한다는 면에서 기존 언어 모델과 다르다. LLM 학습은 지정된 작업에 대한 모델의 오류를 가능한 가장 낮게 하기 위한 가중치 최적화의 문제다. 예를 들어 보통 자기 지도 방식으로 말뭉치의 임의의 지점에서 다음 단어를 예측하는 작업이 있다. 가장 인기 있는 LLM 최근 대규모 언어 모델의 폭발적인 성장을 촉발한 것은 2017년 발표된 “필요한 것은 주의 집중(Attention is All You Need)”이라는 논문이다. 이 논문은 “순환과 컨볼루션을 완전히 배제하고 오로지 주의 집중 메커니즘에만 기반을 둔 새롭고 단순한 신경망 아키텍처”로 트랜스포머를 소개했다. 오늘날 가장 많이 사용되는 대규모 언어 모델 중 몇 가지를 소개하면 다음과 같다. 엘모(ELMo) 엘모는 2018년에 나온 앨런NLP(AllenNLP)의 심층 맥락화 단어 표현 LLM으로, 단어 사용의 복잡한 특징, 그리고 언어적 맥락에 따라 그 단어 사용이 어떻게 달라지는지를 모델링한다. 원본 모델은 9,360만 개의 매개변수를 사용하며 1B 워드 벤치마크로 학습됐다. 버트(BERT) 버트는 구글 AI가 자사 트랜스포머 신경망 아키텍처를 기반으로 2018년에 출시한 언어 모델이다. 버트는 모든 레이어에서 왼쪽과 오른쪽의 맥락에 대한 공동 조건화를 통해 레이블 없는 텍스트로부터 심층 양방향 표현을 사전 학습하도록 설계됐다. 초기에 사용된 두 모델의 크기는 각각 매개변수 1억 개와 3억 4,000만 개였다. 버트는 토큰의 최대 15%가 “손상되는” 마스킹된 언어 모델링(MLM)을 학습에 사용한다. 영어 위키피디아와 토론토 북 코퍼스를 사용해 학습됐다. T5 구글의 2020년 텍스트투텍스트 트랜스퍼 트랜스포머(T5) 모델은 GPT, ULMFiT, 엘모, 버트 및 후속 모델에 적용된 최고의 전이 학습 기법을 기반으로 새로운 모델을 합성한다. 오픈소스 콜로설 클린 크롤드 코퍼스(C4)를 사전 학습 데이터 집합으로 사용한다. 영어용 표준 C4는 원본 커먼 크롤 데이터 집합을 기반으로 한 800GB 데이터 집합이다. T5는 모든 NLP 작업을 통합 텍스트투텍스트 형식으로 재구성한다. 클래스 레이블 또는 입력의 범위만 출력할 수 있는 버트 스타일 모델과 달리, 이 형식에서는 입력과 출력이 항상 텍스트 문자열이다. 기본 T5 모델에는 총 2억 2,000만 개의 매개변수가 사용된다. GPT 제품군 AI 연구 및 배포 기업인 오픈AI(OpenAI)의 사명은 “인공 일반 지능(AGI)이 모든 인류에 혜택이 되도록 하는 것”이다. 물론 AGI에는 아직 도달하지 못했고, 머신러닝의 개척자인 메타FAIR의 얀 르쿤 등 일부 AI 연구자는 AGI에 대한 오픈AI의 현재 접근 방식에는 답이 없다고 생각하기도 한다. 오픈AI는 GPT 언어 모델 제품군을 갖추고 있다. GPT 제품군 전체와 2018년 이후의 발전 과정을 간략하게 살펴보자. (참고로 GPT 제품군 전체는 구글의 트랜스포머 신경망 아키텍처를 기반으로 한다. 구글이 트랜스포머를 오픈소스로 공개했으므로 이는 합법적이다.) GPT(생성형 사전 학습 트랜스포머)는 오픈AI가 2018년에 출시한 모델로, 약 1억 1,700만 개의 매개변수를 사용한다. GPT는 토론토 북 코퍼스를 사용해 사전 학습된 단방향 트랜스포머이며 인과적 언어 모델링(CLM) 목표에 따라, 즉 시퀀스의 다음 토큰을 예측하도록 학습됐다. GPT2는 2019년에 출시된 GPT 확장 모델로, 매개변수는 15억 개이며 최대 40GB의 텍스트 데이터를 포함한 800만 개의 웹페이지 데이터 집합을 사용해 학습됐다. 오픈AI는 GPT2가 “너무 뛰어나고” “가짜 뉴스”로 이어질 수 있다는 이유에서 원래는 GPT2에 대한 접근을 제한했다. 이 조치는 나중에 철회됐지만, GPT3가 출시되면서 사회적 문제가 생길 가능성이 더 커졌다. GPT3는 2020년에 나온 자동 회귀 언어 모델로, 1,750억 개의 매개변수를 사용하며 필터링된 버전의 커먼 크롤과 웹텍스트2(WebText2), 북1(Books1), 북2(Books2), 영어 위키피디아의 조합으로 학습됐다. GPT3에 사용된 신경망은 GPT2와 비슷하지만 몇 개의 추가 블록이 있다. GPT3의 가장 큰 단점은 환각, 즉 명확한 근거 없이 사실을 지어내는 경향이다. GPT3.5와 GPT4에도 정도는 덜하지만 같은 문제가 있다. 코덱스(CODEX)는 2021년 GPT3에서 파생된 모델로 코드 생성을 위해 5,400만 개의 오픈소스 깃허브 리포지토리로 미세 조정됐다. 깃허브 코파일럿(Copilot)에 사용되는 모델이다. GPT3.5는 GPT3와 코덱스의 2022년 업데이트 집합이다. gpt3.5turbo 모델은 채팅에 최적화됐지만 기존의 완성 작업에서도 잘 작동한다. GPT4는 오픈AI의 주장으로는 일부 전문 및 학술 벤치마크에서 인간 수준의 성능을 발휘하는 2023년 대규모 멀티모달 모델(이미지와 텍스트 입력을 받아서 텍스트 출력을 생성)이다. GPT4는 미국 변호사 시험, LSAT, GRE 및 여러 AP 주제 시험을 포함한 다양한 시뮬레이션 시험에서 GPT3.5를 앞섰다. 참고로 시간이 지나면서 GPT3.5와 GPT4의 성능도 바뀌었다. 2023년 7월 스탠포드 대학 논문에 따르면 2023년 3월부터 2023년 6월 사이에 소수 식별을 포함한 여러 작업에서 모델의 동작이 크게 바뀌었다. GPT4 모델의 편향성에 대한 우려 GPT4의 학습 방법을 오픈AI가 설명하지 않은 것은 심각한 우려 사항이다. 오픈AI 측이 내세우는 이유는 경쟁이다. 마이크로소프트(현재까지 오픈AI에 130억 달러의 자금을 투자함)와 구글 간의 경쟁을 감안하면 어느 정도 납득은 되는 이유다. 그러나 학습 말뭉치의 편향성에 대해 알지 못한다는 것은 모델의 편향성에 대해 알지 못한다는 것을 의미한다. 에밀리 벤더는 2023년 3월 16일 마스토돈에 게시한 GPT4에 대한 글에서 “#오픈AI가 학습 데이터, 모델 아키텍처 등에 대한 정보를 *공개*하기 전까지 GPT4는 독성 쓰레기로 간주해야 한다”라고 말했다. 챗GPT와 빙GPT는 원래 gpt3.5turbo 기반의 챗봇이었지만 2023년 3월에 GPT4를 사용하도록 업그레이드됐다. 현재 GPT4 기반의 챗봇 버전에 액세스하려면 챗GPT 플러스에 가입해야 한다. GPT3.5 기반의 표준 챗GPT는 2021년 9월까지의 데이터로만 학습됐다. 빙GPT는 “더 뉴 빙”이라고도 하며, 마이크로소프트 엣지 브라우저에서 액세스할 수 있다. 마찬가지로 2021년까지의 데이터로 학습됐다. 이에 대해 빙GPT에 직접 물어보면 지속적으로 학습하면서 웹의 새로운 정보로 지식을 업데이트하고 있다고 주장한다. 홍콩 과학기술대학교 인공 지능 연구 센터의 파스칼 펑 교수는 2023년 3월 초에 챗GPT 평가에 대해 강연했는데, 시간을 투자해서 볼 만한 가치가 충분한 강연이다. 람다(LaMDA) 구글이 2021년에 발표한 “획기적인” 대화 기술인 람다(대화 애플리케이션을 위한 언어 모델)는 트랜스포머 기반 언어 모델로, 대화를 통해 학습되며 응답의 분별력과 구체성을 대폭 개선하도록 미세 조정됐다. 람다의 강점은 사람의 대화에서 흔히 발생하는 주제 표류에 대처할 수 있다는 것이다. 팜(PaLM) 팜(패스웨이 언어 모델)은 구글 리서치가 2022년에 발표한 고밀도 디코더 전용 트랜스포머 모델로 매개변수 수는 5,400억 개이며 패스웨이(Pathways) 시스템을 사용해 학습됐다. 팜은 고품질의 웹 문서와 서적, 위키피디아, 대화, 깃허브 코드를 포함한 여러 영어 및 다국어 데이터 집합의 조합을 사용해 학습됐다. 또한 구글은 모든 공백(특히 코드에 중요)을 보존하고, 어휘 목록에서 벗어난 유니코드 문자를 바이트로 분할하고, 숫자를 각 자릿수당 하나의 개별 토큰으로 분할하는 “무손실” 어휘 목록도 만들었다. 팜코더(PaLMCoder)는 파이썬 전용 데이터 집합으로 미세 조정된 팜 540B 버전이다. 팜E(PaLME) 팜E는 구글이 로봇공학용으로 2023년에 구체화한 멀티모달 언어 모델이다. 연구진은 팜을 가져와서 로봇 에이전트의 센서 데이터로 보완하여 “구체화(팜E의 ‘E’는 구체화를 의미)”했다. 또한 팜E는 팜 외에 ViT 22B 비전 모델도 채택했으므로 일반적인 기능의 비전 및 언어 모델이기도 하다. 바드(Bard) 바드는 구글이 2023년 출시한 람다 기반의 구글 대화형 AI 서비스다. 2023년 3월 21일에 출시된 후 2023년 5월 10일에 일반에 공개됐다. 바드는 출시 이후 여러 번 업데이트됐다. 2023년 4월에는 20개의 프로그래밍 언어로 코드를 생성하는 기능이 추가됐고, 2023년 7월에는 40가지 인간 언어 입력에 대한 지원과 함께 구글 렌즈가 통합되고 40개 이상의 언어를 사용한 텍스트투스피치 기능이 추가됐다. 라마(LLaMA) 라마(대규모 언어 모델 메타 AI)는 650억 매개변수를 사용하는 “원시” 대규모 언어 모델로, 메타 AI(전 메타FAIR)가 2023년 2월에 출시했다. 라마에 대한 메타의 설명은 다음과 같다. 대규모 언어 모델 분야에서는 라마와 같은 비교적 작은 기반 모델을 학습시키는 것이 바람직하다. 훨씬 더 적은 컴퓨팅 성능과 리소스만으로 새 접근 방식을 테스트하고 다른 사람들의 작업을 검증하고 새로운 사용 사례를 탐색할 수 있기 때문이다. 기반 모델은 레이블 없는 대량의 데이터 집합으로 학습되므로 다양한 작업을 위한 미세 조정에 이상적이다. 라마는 여러 크기로 출시됐으며 어떻게 구축되었는지에 대한 자세한 내용이 담긴 모델 카드가 제공된다. 메타 AI의 얀 르쿤에 따르면 원래는 체크포인트와 토크나이저를 요청해야 했지만, 정식으로 요청을 제출해서 모델을 받은 누군가가 4채널 사이트에 다운로드 가능한 토렌트를 게시한 덕분에 지금은 쉽게 구할 수 있다. 라마 2(Llama 2) 라마 2는 차세대 메타 AI 대규모 언어 모델로, 2023년 1월부터 7월 사이에 라마 1에 비해 40% 더 많은 데이터로 학습됐으며(공개적으로 사용 가능한 소스에서 2조 개의 토큰 사용), 컨텍스트 길이는 2배 더 긴 4096이다. 라마 2는 매개변수 70억 개, 130억 개, 700억 개의 여러 크기로 제공되고 사전 학습 및 미세 조정된 변형도 있다. 메타 AI는 라마 2가 오픈소스라고 주장하지만 허용되는 사용에 대한 제약이 포함됐다는 이유로 이 주장에 동의하지 않는 사람들도 있다. 커뮤니티 라이선스 외에 상용 라이선스도 제공된다. 라마 2는 최적화된 트랜스포머 아키텍처를 사용하는 자동 회귀 언어 모델이다. 조정된 버전은 지도 미세 조정(SFT)과 인간 피드백을 통한 강화 학습(RLHF)을 사용해서 유용성과 안전성에 대한 인간의 선호도에 맞게 조정된다. 라마 2는 현재 영어 전용이다. 모델 카드에는 벤치마크 결과와 탄소 발자국 통계가 포함돼 있다. 연구 논문 ‘라마 2: 개방형 기반과 미세 조정된 채팅 모델’에서 더 자세한 내용을 볼 수 있다. 클로드 2(Claude 2) 2023년 7월에 출시된 앤트로픽(Anthropic)의 클로드 2는 단일 프롬프트에서 최대 10만 개의 토큰(약 7만 단어)을 수락하며, 수천 토큰의 스토리를 생성할 수 있다. 클로드는 구조적 데이터를 편집, 재작성, 요약, 분류, 추출할 수 있으며 내용을 기반으로 한 Q&A와 그 외의 다양한 작업이 가능하다. 대부분의 학습은 영어로 이뤄졌지만 다른 여러 일반적인 언어에서도 잘 작동하며, 일반적이지 않은 언어로도 어느 정도의 커뮤니케이션이 가능하다. 프로그래밍 언어에 대한 지식도 방대하다. 클로드는 유용하고 정직하고 무해한(Helpful, Honest, Harmless, HHH) 모델로 학습됐으며 무해함을 강화하고 프롬프트를 통해 공격적이거나 위험한 출력을 생성하기가 더 어렵게 하기 위한 광범위한 레드 팀 과정을 거쳤다. 사용자의 개인 데이터를 학습에 사용하거나 인터넷에서 답을 참조하지 않지만, 사용자가 직접 클로드에 인터넷의 텍스트를 제공해서 그 내용으로 작업을 수행하도록 요청할 수는 있다. 클로드는 미국 및 영국 사용자에게 무료 베타 버전으로 제공되며, 생성형 AI 플랫폼인 재스퍼(Jasper), 코드 AI 플랫폼인 소스그래프 코디(Sourcegraph Cody), 아마존 베드록(Amazon Bedrock)과 같은 상업적 협력업체 채택됐다. 결론 살펴본 바와 같이 대규모 언어 모델은 여러 기업에서 활발하게 개발되는 중이며 오픈AI와 구글 AI, 메타 AI, 앤트로픽에서 거의 매달 새로운 버전이 나오고 있다. 이러한 LLM 중에서 진정한 인공 일반 지능(AGI)을 달성한 모델은 없지만 새 모델이 나올 때마다 대체로 지난 모델에 비해 개선되는 중이다. 다만 대부분의 LLM에서 환각을 비롯한 비정상적인 현상이 자주 발생하며, 경우에 따라 사용자 프롬프트에 대해 부정확하고 편향되거나 불쾌한 응답을 생산하기도 한다. 결국 출력이 정확함을 검증할 수 있는 경우에 한해서만 LLM을 사용해야 한다. editor@itworld.co.kr
대학교와 회사, 집에서도 노트북은 현대 사회에서 거의 필수 아이템이다. 하지만 제품 선택과 관리에는 많은 고민이 따른다. 용도에 맞는 사양과 운영체제, 이동성을 고려한 크기와 무게, 저장 공간, 디스플레이 성능, 배터리와 같은 기본적인 요소부터 터치스크린이나 백라이트 키보드, 지문 인식 같은 부가 기능 등 수십 가지 기준 중에서 우선순위를 결정해야 한다. 누군가는 무조건 최신 제품을 구매하는 것을 선호하지만, 상황에 따라서는 구형 모델을 구입하는 것도 나쁘지 않은 선택이다. 노트북을 구매하기 전 참고하면 좋을 가이드와 함께 쾌적한 사용 환경을 만드는 데 도움이 되는 노하우를 모았다.
생성형 AI의 도입이 확산되면서 소프트 스킬의 중요성이 더욱 강조되고 있다. 커뮤니케이션, 팀워크, 리더십, 갈등 관리와 같은 인간적인 기술은 여전히 필수적이다. 링크드인에 따르면, AI의 영향력이 커질수록 소프트 스킬에 대한 수요도 증가한다. 기업은 AI 도구와 기술에 투자하는 동시에 직원이 소프트 스킬을 개발하도록 지원해야 하며, 더 포용적이고 창의적인 업무 환경을 조성할 수 있다. 소프트 스킬은 면접과 실무에서도 중요한 요소로 작용하며, 기업의 성공에 기여하는 핵심 역량으로 자리잡고 있다.
그리 어려울 것도 없었던 노트북 고르기가 조금 더 복잡해졌다. 에이수스 비보북 S 15 OLED, 서피스 프로 2024년형 등 인텔이나 AMD가 아니라 퀄컴의 스냅드래곤 X 엘리트 SoC가 탑재된 제품이 속속 모습을 드러냈다. 하지만 복잡하다는 것이 꼭 나쁜 것만은 아니다. 서피스 프로 같은 고급 제품 가격이 낮아졌다. 가벼운 작업, 평범한 사무 생산성 작업에는 성능과 배터리 사용 시간이 '충분'을 넘어 거뜬할 정도다. 모든 신제품이 압도적으로 뛰어날 수만은 없다. 퀄컴 버전 노트북은 더 많은 선택지를 제공하고 변화를 이끌어내는 시작이다.
불과 2년 전만 하더라도 시장 가치 4,000억 달러짜리 엔비디아가 마이크로소프트와 애플을 넘어 시가 총액 1위의 기업이 될 것이라고 생각한 사람은 드물 것이다. 하지만 생성형 AI의 열풍 속에 오랫동안 AI 중심의 GPU 생태계를 구축한 엔비디아의 전략이 빛을 발했다. 엔비디와 관련된 기사를 검색해보면, 이제는 엔비디아와 협력하지 않는 기업도 없고 엔비디아가 영향력을 미치지 않는 분야도 없는 것처럼 보인다. 3조 4,000억 달러의 시가 총액이 저평가된 것이란 주장에도 고개가 끄덕여지고, 엔비디아와 각을 세우는 몇몇 업체가 안타깝게 느껴질 정도이다. 엔비디아의 현재 위상을 실감할 수 있는 기사를 간추렸다.
아시아 최대 IT 박람회 '컴퓨텍스 2024'가 막을 내렸다. 'AI를 연결하다'라는 주제로 진행된 올해 행사에서는 지난해 등장한 'AI PC'라는 개념이 단순한 브랜딩 수준에서 보다 더 실용적이고 구체적인 기능으로 다가왔다. 인텔과 퀄컴, AMD는 AI PC용 칩을 집중 조명하며 저마다 자신감을 내비쳤고, 엔비디아는 차세대 AI GPU인 루빈을 처음으로 공개했다. PC 제조업체는 AI 전용 프로세서를 탑재한 코파일럿+ PC 신제품을 선보였다. 이외에도 화려한 AI 성능만큼 주목할 만한 다양한 주변 기기도 돋보였다. 컴퓨텍스 2024를 장식한 주요 소식을 모았다.
몇 년 전만 해도 고급 사용자만 썼던 VPN은 이제 한층 더 보편적인 애플리케이션으로 자리잡았다. 네트워크 데이터를 암호화하는 VPN 기술은 온라인 개인정보를 보호하고 지역 제한 없이 스트리밍이 가능해 인터넷 사용 영역을 확대하는 이점을 지니고 있다. 지금은 VPN 서비스의 고급 기능과 범위를 이해하고 광고와 트래커 차단 등 추가 서비스를 고려하기에 더할 나위 없이 좋은 시점이다.
비트코인 채굴에 납치된 GPU 때문에 울었던 게이머들이 이제는 AI 때문에 눈물을 흘리게 됐다. 물론, 게임용 GPU와 AI용 GPU는 다른 범주의 제품이지만, 엔비디아의 한정된 생산량에서 AI용 GPU가 차지하는 비중이 커지면 게임용 GPU는 또다시 공급 부족을 겪게 된다. 부족한 것은 GPU만이 아니다. AI용 GPU의 핵심 요소인 고성능 HBM 메모리도 폭발적인 AI 인프라 수요에 공급 부족을 겪고 있다. 대형 IT 업체는 AI 전용 데이터센터를 새로 짓겠다고 나서는데, 기존 데이터센터로는 생성형 AI 워크로드를 감당하기에 프로세서는 물론 냉각과 전력까지 총체적으로 역부족이기 때문이다. 모든 AI 시스템에 GPU가 필수는 아니라는 지적도 나온다. 엔비디아는 이제 누구도 막을 수 없는 AI 시장의 거물로 우뚝 섰으며, 추격에 나선 AMD는 새삼 AI와 GPU에 집중하고 있다. 한편으로, 마이크로소프트나 오픈AI, 구글 등은 GPU의 대안이 될 AI 전용 칩을 개발하느라 분주하다
'대회전'. 특정 시기, 일정 장소에 모여서 벌이는 대규모 전투를 가리키는 이 말이, 최근 CPU 시장에 꼭 맞는다. 공격은 역시 후발주자다. '영원한 이인자' AMD는 국내 판매량에서 인텔을 따라잡았다. 퀄컴은 스냅드래곤 X 엘리트를 내놓았고, 엔비디아는 PC용 CPU를 만들고 있다. '가진 게 많은' 일인자 인텔은 엎친 데 덮쳤다. 13, 14세대 일부 CPU의 오류를 놓고 협력업체와 '네 탓' 공방 중이다. 애플은 '남의 집 불구경'이다. 2020년 인텔과 손절한 후 자체 CPU로 모든 제품을 전환했다. 선택의 폭이 넓어지는 것은 사용자 입장에서 언제나 옳다.
지난주 메타가 발표한 라마 3가 좋은 반응을 얻으면서 어떤 LLM을 선택할지, 혹은 SLM을 고려해도 될지 기업의 선택이 더욱 복잡해졌다. GPT-4나 라마 3 같은 LLM은 강력하고 다재다능하며, 복잡한 작업을 이해하므로 많은 가능성을 제시한다. 반대쪽에 선 것은 민첩하고 전문화되며 특정 사용례에 맞게 미세조정할 수 있고, 예산친화적인 SLM이다. 이번주에는 마침 마이크로소프트가 3종의 SLM 파이-3 시리즈를 공개하며 관심을 얻었다. AI 세계가 계속 발전하는 가운데 올바른 AI 모델 선택은 혁신의 판도를 바꿀 수도 있다.
생성형 AI 열풍에 밀려 관심에서 멀어지는 것처럼 보였던 양자 컴퓨팅이 다시 활기를 띄고 있다. 마이크로소프트가 큐비트의 안정성을 획기적으로 개선해 레벨 2, 즉 복원력 있는 양자 컴퓨팅 단계에 도달했다고 발표한 것이다. 양자 컴퓨팅이 실전에 활용되기 보다는 실험 단계에 머무르면서 생성형 AI처럼 당장 활용할 수 있는 기술에 관심을 빼앗긴 것은 당연한 일일 것이다. 하지만 관심이 식었다고 개발이 중단되는 것은 아니다. 더구나 마이크로소프트는 몇 년 안에 1,000큐비트 수준의 상용 양자 컴퓨팅을 실현할 수 있을 것이라고 자신감을 보였다. 양자 컴퓨팅 관련 최근 기사를 간추렸다.
인텔의 새로운 데스크톱 CPU는 기존과 근본적으로 다름을 천명하고 있다. 24일(현지 시간) 인텔의 최신 데스크톱 프로세서용 아키텍처인 애로우 레이크가 공식적으로 코어 울트라 200S 시리즈로 출시되었다. 인텔의 주장에 따르면, 이 코어 칩 배치는 이전 세대 랩터 레이크 CPU보다 훨씬 빠르고 전력 효율이 뛰어나면서도 경쟁 제품을 능가한다고 한다. 하지만 애로우 레이크는 기능뿐만 아니라 그 자체로도 주목할 만한 제품이다. 인텔이 제조하지 않고 출하된 최초의 데스크톱 x86 프로세서로, TSMC가 생산에 참여했다는 점도 눈에 띄는 점이다. 인텔은 칩 설계를 재작업했으며, 테스트 과정에서 발견한 몇 가지 단점도 있다. 플래그십 제품인 코어 울트라 9 285K의 광범위한 테스트를 수행했다. 이 과정에서 발견한 인텔 코어 울트라 200S CPU의 특징 10가지를 살펴본다. 새로운 시대에 걸맞는 새로운 이름 2023년 인텔은 코어 프로세서의 명명 시스템을 개편해 3, 5, 7, 9 이전의 “i” 지정자에 작별을 고하고 세대별구분을 삭제했다. 또한 아크 그래픽과 AI 기반 작업을 위한 신경 처리 장치(NPU)가 포함된 CPU에 '울트라'라는 단어를 추가하고 번호 체계도 수백 개부터 시작하도록 재설정했다. 2023년 말 메테오 레이크 CPU 탑재 노트북부터 이 명명 체계가 적용되었다. 애로우 레이크는 데스크톱에서 새로운 이름을 사용하는 첫 번째 사례로, 10년 이상 사용되던 이전 스타일의 이름이 사라지는 큰 변화였다. 또한 같은 해에 출시된 노트북과 데스크톱 아키텍처를 일치시키기 위해 데스크톱에서는 첫 번째 제품임에도 불구하고 애로우 레이크의 제품 번호가 200번대에서 시작됐다. (2024년 9월에 노트북용으로 출시되기 시작한 루나 레이크도 200대 숫자로 라벨을 붙였다.) 다음은 “F” 지정자로 표시된, 통합 그래픽이 없는 두 가지 변형을 포함하는 새로운 코어 울트라 200S 시리즈의 다섯 가지 CPU이다(이 규칙은 이전과 동일). 인텔 코어 울트라 9 285K : 24개 코어(8개 P코어, 16개 E코어, 최대 5.7GHz): 4개 GPU 코어, 13개 TOPS NPU, 589달러 인텔 코어 울트라 9 265K : 20코어(8개 P코어, 12개 E코어, 최대 5.5GHz); 4개 GPU 코어, 13 TOPS NPU, 394달러 인텔 코어 울트라 9 265KF : 20코어(8 P코어, 12 E코어, 최대 5.5GHz); 0 GPU 코어, 13 TOPS NPU, 379달러 인텔 코어 울트라 9 245K : 14코어(6 P코어, 8 E코어, 최대 5.2GHz); 4 GPU 코어, 13 TOPS NPU, 309달러 인텔 코어 울트라 9 245KF : 14개 코어(6개 P코어, 8개 E코어, 최대 5.2GHz); 0개의 GPU 코어, 13개의 TOPS NPU, 294달러 하이퍼쓰레딩은 죽었다 인텔은 CPU 코어가 물리적 코어당 하나만 실행하는 기본값이 아닌 두 개의 쓰레드(명령어 집합)를 동시에 실행할 수 있는 기술인 하이퍼쓰레딩을 소개했다. 하지만 최근 몇 년 동안 구글은 이 기능을 없애는 쪽으로 가닥을 잡았다. 애로우 레이크에서는 이 기능이 다시 한 번 사라졌다. 인텔은 애로우 레이크에서 전력 및 공간 효율성, 즉 칩이 사용하는 전력량과 각 프로세서의 패키지에 들어갈 수 있는 공간을 개선하기 위한 노력의 일환으로 하이퍼쓰레딩을 제거했다고 설명했다. 따라서 코어 울트라 200S 프로세서에 표시되는 코어 수는 추가 쓰레드가 없는 그대로이다. 그렇긴 하지만, 애로우 레이크에 탑재된 라이온 코브 성능 코어(일명 P 코어) 및 스카이몬트 효율성 코어(일명 E 코어)의 수는 인색하지 않다. 최상위 코어 울트라 9 285K 칩은 여전히 8개의 P코어와 16개의 E코어로 총 24개의 코어를 자랑한다. 콘텐츠 크리에이터를 위한 성능 향상 지난 몇 년 동안 엄청난 성능 향상에 익숙해진 PC 마니아 사이에서 애로우 레이크의 성능은 민감한 주제가 될 것이다. 하지만 어디까지나 최근의 플래그십 프로세서는 기본적으로 오버클럭이 기본으로 제공되기 때문에 가능한 일이었습니다. 반면, 코어 울트라 200S 라인업의 핵심 속성은 인텔이 판매 포인트로 강조하는 전력 효율성이다. 이러한 변화로 인해 애로우 레이크는 크리에이티브에 향상된 성능을 제공하지만, 아직 대부분의 코어 i9-14900K 소유자가 업그레이드를 결정할 만큼 큰 폭의 향상은 아니다. 렌더링 및 인코딩 벤치마크 전반에서 코어 울트라 9 285K는 작업에 따라 2~21% 범위의 개선으로 이전 세대의 플래그십 14900K를 꾸준히 앞질렀다. 또한 대부분의 지표에서 라이젠 9 9950X를 앞섰다. 한 가지 예외가 있다면 다빈치 리졸브다. 두 구형 CPU보다 약간 뒤처졌다. 게임에서는 고민스러워 게이머는 새로운 CPU가 기존 경쟁 제품을 압도하는 것을 좋아하며, 이들에게 코어 울트라 9 285K는 실망스러워 보일 것이다. 일부 게임에서는 14900K 및 9950X에 뒤처지고, 다른 게임에서는 이들과 거의 동등하며, 또 다른 게임에서는 우위를 점하는 등 점수가 일관적이지 않기 때문이다. 일부 게임 벤치마크에서 285K는 일반적으로 14900K와 비슷하게 유지되었지만 AMD의 라이젠 9 9950X에 비해 두 자릿수 차이로 뒤처지는 경우가 많았다. 사이버펑크 2077에서 9950X는 F1 2023 및 레인보우 식스 시즈에서 비슷한 성능으로 285K에 비해 18%의 여유를 두고 우위를 유지했다. 285K는 4K 해상도에서 보다 시스템 집약적인 게임을 시뮬레이션하는 합성 게임 벤치마크인 3D마크의 스틸 노매드에서만 우위를 보였다. DDR5 대신 더 빠르고 성능이 뛰어난 CU-DIMM 메모리와 함께 사용하더라도 게임 성능은 크게 향상되지 않다. F1 2023에서는 초당 410프레임으로 약 7% 증가했다. 285K와 9950X 사이의 격차가 좁혀지기는 했지만 여전히 후자가 우위에 있다. 285K가 게임용으로 나쁜 칩은 아니지만 모든 것을 날려버릴 정도는 아니다. 인텔은 애로우 레이크의 게임 성능에 대해 공개적으로 밝혔지만, 인터넷에서는 이를 두고 갑론을박이 벌어질 가능성이 높다. 전력 효율 개선됐지만… 애로우 레이크의 성능 향상이 적은 이유에 대해 인텔은 새로운 칩이 절반의 전력으로 14세대 랩터 레이크-R의 성능과 일치한다고 주장하지만, 그렇게 극적인 개선은 보이지 않는다. 핸드브레이크 AV1 벤치마크 테스트 결과, 14900K와 비교했을 때 전력 소비가 17% 감소했다(65와트 차이). 마찬가지로 Cinebench 2024의 싱글 코어 벤치마크에서도 에너지 사용량이 약 16% 감소했다(22와트 차이). 유휴 상태에서는 285K의 전력 소모량이 실제로 약간 증가해 약 3%(약 2.5와트)가 증가했다. 이 세 가지 벤치마크는 일반적인 PC 동작의 일반적인 스펙트럼을 다룬다. 285K는 9950X에 비해 핸드브레이크에서 전력 소비량이 4% 감소하고, 시네벤치 2024에서 거의 25% 감소하며, 유휴 상태에서 약 28% 감소하는 등 AMD의 최고 제품 대비 더 나은 결과를 보였다. 전반적으로 인텔의 개선 사항은 발열이나 전력 요금이 걱정되는 사용자에게 우위를 제공한다. 하지만 이야기는 여기서 끝나지 않는다. 전력 소모량을 자세히 살펴보면 이 새로운 칩에는 예상치 못한 특이한 점이 있다. 윈도우 최적화는 아직 진행 중 데스크톱 사용자는 윈도우 전원 설정에 크게 신경 쓰지 않는 경우가 많으며, 항상 벽에 꽂아두는 경우에는 관련성이 떨어진다. 적어도 일반적으로는 그렇다. 리뷰에서는 다양한 윈도우 11 전력 요금제에서 285K의 전력 소비량을 확인했다. 그리고 이상하게도 균형 및 절전 요금제에서 285K의 성능이 떨어졌다. 시네벤치 2024 싱글 코어 테스트에서 285K는 작업을 완료하는 동안 속도가 눈에 띄게 느려졌으며, 균형 잡힌 요금제에서는 30분까지 늘어났다. 고성능 요금제에서는 285K가 10분에 가까운 실행 시간을 유지했다(플래그십 데스크톱 칩의 일반적인 결과). 이와 대조적으로 14900K와 9950X는 일반적인 시간으로 완료되어 285K보다 늦게 벤치마크를 시작해도(285K는 실행 후 15분) 더 빠르게 작업을 완료하는 것을 확인할 수 있었다. 또한 결과 점수는 동일한 균형 잡힌 전력 요금제에서 14900K 및 9950X에 비해 55% 성능이 저하된 것으로 나타났다. 절전 요금제에서는 67% 감소해 그 차이가 더 컸다. 반면, 고성능 설정에서는 285K가 이전 제품보다 약 5%, 9950X는 약 2% 성능이 향상되었다. 전력 소모 측정 결과 다양한 전력 요금제에서 에너지 절감 효과가 거의 나타나지 않았다는 점을 고려하면 이 결과는 더욱 의아하다. 인텔의 새 칩이 전원 설정에 따라 성능이 저하될 수 있다는 의미일까? 현재로서는 그럴 가능성이 높다. 특히 균형 잡힌 전원 요금제가 윈도우 기본값이기 때문이다. 이 동작이 더 나은 윈도우 최적화를 통해 수정될 수 있는지는 시간이 지나면 알 수 있을 것이다. 프로세서 재설계 새로운 칩 설계로 인한 성장통은 그리 놀라운 일이 아니다. 애로우 레이크는 14세대 랩터 레이크-R과 비교했을 때 상당히 다르다. 지금까지 인텔은 데스크톱용 모놀리식 프로세서를 출시하면서 CPU와 관련된 모든 것이 하나의 다이에 존재했다. 하지만 애로우 레이크부터 인텔은 경쟁사인 AMD가 수년 전에 도입한 칩렛 디자인으로 전환했다. 인텔은 서로 다른 기능을 위한 별도의 칩렛(“타일”)이 하나의 패키지로 연결된 “분리형” 프로세서라고 부른다. 애로우 레이크 프로세서의 뚜껑을 열면 컴퓨팅, GPU, SOC 및 I/O 타일과 함께 안정성을 위한 “필러” 및 “베이스” 타일을 확인할 수 있다. 인텔의 포베로스 기술은 이 모든 것을 하나로 연결한다. 이러한 각 칩렛은 서로 다른 공정에서 생산되며, 더 자세한 내용은 애로우 레이크에 대한 초기 개요에서 확인할 수 있다. 칩 전문가에게 이러한 접근 방식의 변화는 이전까지 단일 다이가 더 나은 성능을 발휘한다고 주장했던 인텔에 큰 변화를 의미한다. 그러나 대부분의 일반 사용자에게는 인텔이 패키지 레이아웃을 어떻게 조정했는지가 더 중요하다. 새로운 메인보드가 필요 애로우 레이크에는 새로운 소켓인 LGA 1851이 필요하므로 기존 LGA 1700 보드와 호환되지 않는다. 가장 먼저 발표될 칩셋은 Z890으로, 최대 192GB의 DDR5-6400 메모리(DIMM당 최대 48GB)를 지원한다. 더 일반적인 SO-DIMM을 사용할 수 있지만 최신 CU-DIMM 메모리 모듈도 작동한다. 인텔은 더 빠른 RAM 속도를 위해 XMP를 활성화하면 DDR5-8000이 이상적이라고 말한다. 연결성을 위해 인텔의 800 시리즈 칩셋은 최대 24개의 PCI-e 4.0 레인과 10개의 USB 3.2, 14개의 USB 2.0, 8개의 SATA 3.0 연결을 제공한다. 애로우 레이크 CPU와 결합하면 최대 48개의 PCIe 레인을 사용할 수 있으며, 이 중 20개는 PCIe 5.0이다. 화면, 주변기기, 스토리지, 파일을 다른 PC와 공유할 수 있는 썬더볼트 셰어(Thunderbolt Share), 인텔 킬러 와이파이 7, 블루투스 5.4, 2.5Gbps 이더넷(구성에 따라 다름)과 같은 기술도 썬더볼트 4 및 썬더볼트 5 통합의 특징이다. DDR5 RAM 및 기존 쿨러 계속 사용 가능 애로우 레이크는 CU-DIMM 메모리와 페어링할 수 있지만, 반드시 그렇게 해야 하는 것은 아니다. DDR5 RAM은 여전히 코어 울트라 200S 프로세서와 함께 작동하며, 위에서 살펴본 바와 같이 성능 향상에 큰 손실이 없다. 사실, 2025년 초까지 CU-DIMM 메모리의 일반 출시가 예정되어 있지 않기 때문에 지금 애로우 레이크를 구입한다면 실제로는 DDR5 메모리만 선택할 수 있다. 13세대 또는 14세대 프로세서와 호환되는 쿨러를 이미 사용 중이라면 애로우 레이크와도 호환된다. 그러나 인텔은 최적의 냉각을 위한 올바른 압력을 얻기 위해 새로운 장착 하드웨어가 필요할 것이라고 말하고 있다. 데스크톱에서 AI 기능 업그레이드는 아직 미정 애로우 레이크의 출시로 데스크톱에서 윈도우 11의 제너레이티브 AI와 분할 리콜 기능에 액세스할 수 있기를 기대했다면 실망할 준비를 해야 한다. 이 새로운 프로세서에는 구형 NPU가 패키지에 통합되어 있는데, 윈도우 11의 Copilot+ AI 기능을 잠금 해제하는 데 필요한 최소 40 TOPS보다 훨씬 낮은 13 TOPS의 연산 성능만 제공한다. 이유는 무엇일까? 데스크톱 칩의 주요 구매자인 게이머의 만족도를 높이기 위한 결정이다. 인텔의 접근 방식에 대한 자세한 내용은 애로우 레이크의 AI 기능 요약 에서 확인할 수 있지만, 이 칩이 탑재된 시스템은 여전히 AI PC로 판매될 가능성이 높다는 점을 알아두어야 한다. editor@itworld.co.kr
큰 변화를 기대한 사람에게는 이번 애플 워치 시리즈 10이 기대에 미치지 못할 수 있다. 하지만 여전히 최고의 스마트워치임에는 변함없다. 지난 몇 년 동안 애플 워치는 매년 상대적으로 소소한 개선만 거쳤다. 시리즈 4에서 대대적인 업그레이드가 있었던 이후로는 큰 변화가 없었다. 시리즈 4는 둥근 모서리를 포함한 더 커진 디스플레이, 성능 향상, 그리고 ECG 기능을 선보였다. 이후에는 매년 조금씩 성능이 나아지고, 새로운 센서(혈중 산소 측정 등)가 추가되거나 화면이 더 밝아지는 등의 작은 변화가 있었다. 아이폰 X처럼 애플 워치 시리즈 10도 대대적으로 개편될 것이라는 소문이 있었지만 사실이 아니었다. 이번에도 애플은 매우 겸손하고 신중한 자세로 성공 공식에 소소한 개선을 더했다. 필자는 스마트 워치 중 애플 워치 시리즈 10를 가장 선호하지만, 사실 시리즈 9와 큰 차이는 없다. 시리즈 8이나 7과 비교해도 조금씩 개선되었을 뿐이다. 디자인 : 더 크고 얇다 애플이 애플 워치의 물리적 디자인을 변경한 것은 오랜만이다. 새로운 디자인은 기대만큼 극적인 변화는 아니지만, 차이를 느끼기에는 충분하다. 크기는 약간 더 커졌지만 두께는 더 얇고 평평해졌다. 측면도 더 둥글어졌고, 상단 유리는 케이스의 곡선에 맞게 매끄럽게 연결되며, 접합부 선은 거의 보이지 않을 정도로 얇다. 실제로는 이전 모델과 크게 다르지 않은 느낌이지만, 착용감은 개선됐다. 새로운 고급 티타늄 모델은 스테인리스 스틸보다 훨씬 가볍고 무게가 조금 더 분산되며, 얇아진 두께로 인해 소매에 덜 걸린다. 더 평평해진 형태에 맞춰 디지털 크라운도 재설계되었으며, 크라운의 반지름이 작아졌다. 셀룰러 모델임을 표시하는 빨간 선도 사라졌다. 기능적으로는 변하지 않았지만, 미세한 차이를 느낄 수 있다. 디스플레이 : 가독성 개선 시리즈 10에서 실제로 체감할 수 있는 3가지 변화가 있다. 첫째는 새로운 스피커 디자인이다. 애플은 애플 워치의 스피커가 충분히 좋아서 에어팟 없이 시계에서 직접 음악이나 팟캐스트를 재생할 수 있다고 말한다. 놀랍게도 크기에 비해 음질은 나쁘지 않지만, 에어팟 없이 사용할 만큼 충분히 좋지는 않다. 주변이 시끄럽지 않다면 팟캐스트나 오디오북을 듣는 데는 문제가 없지만, 배터리가 빨리 닳는다. 주변 사람에게 방해가 될 수도 있다. 따라서 에어팟을 사용하는 것을 여전히 추천한다. 디스플레이는 시리즈 9처럼 햇빛 아래에서 최대 2,000니트의 밝기를 유지해 매우 보기 쉽다. 애플에 따르면, 시리즈 10 디스플레이는 측면에서 봤을 때 40% 더 밝아졌다. 정확히 수치로 표현하긴 어렵지만, 시간을 확인하거나 복잡한 정보를 보려고 할 때 손목을 돌리지 않고도 더 쉽게 화면을 확인할 수 있었다. 이런 차이는 쉽게 체감된다. 디스플레이 자체가 약 10% 더 커졌지만 화면 주변의 검은 베젤은 약간만 커졌다. 더 넓어진 시야각과 약간 커진 화면은 읽기 편하며, 터치 타겟이 확장돼 정밀하게 탭하기가 조금 더 쉬워졌다. 기능 : 더 빠른 충전, 다른 모든 것은 동일 고속 충전 액세서리(시리즈 7 이후의 애플 워치 충전기와 20W 이상의 USB-C 전원 어댑터)를 사용할 때 충전 속도가 향상됐다. 애플은 30분 만에 0%에서 80%까지 충전할 수 있다고 주장했다. 이는 시리즈 9에서 45분 걸리던 것과 비교하면 큰 차이다. 향상된 충전 속도는 실제로도 느껴졌다. 저녁에 샤워를 하러 가기 전에 시계를 충전기에 올려두면 보통 20~30분 안에 거의 가득 차거나 완전히 충전됐다. 잠자리에 들기 전에 시계를 충전하지 못하더라도 10분 정도 충전하는 것만으로도 밤새 사용하기에 충분한 배터리를 확보할 수 있었다. 하지만 '매일 충전해야 하는' 기기라는 단점은 여전하다. 충전 속도가 조금 더 빨라진 것은 편리하지만, 필자가 원하는 것은 매일 충전하지 않아도 며칠 동안 사용할 수 있는 배터리다. 배터리 충전 속도 외에는 '매년 조금씩 개선되는 전략'을 이어가고 있다. 성능과 배터리 수명은 수년간 거의 동일하게 유지됐다. 2023년 도입된 S9 SiP는 S8과 S7보다 상당히 빨라졌다고 했지만 실제로 큰 차이를 느끼기 어려웠다. 이번 모델의 S10도 마찬가지다. 하지만 새로운 모델에는 혈중 산소 측정, 온도 감지, 낙상 감지, 더블 탭 제스처 등의 새로운 기능을 제공하는 센서가 추가되기도 한다. 올해는 물 온도 및 깊이 측정 기능이 추가됐다. 미국에서 거주하는 사용자라면 이전 모델에 있던 혈중 산소 측정 기능을 사용할 수 없다. 애플과 마시모(Masimo) 간의 특허 분쟁으로 인해 미국에서 새로 판매되는 모델에서는 해당 기능이 비활성화됐다. 이미 판매된 시계에서는 여전히 기능을 사용할 수 있다. 특허 분쟁의 결과에 따라 비활성화된 상태로 판매된 애플 워치에서도 소프트웨어 업데이트를 통해 다시 활성화될 가능성이 있다. 애플 워치 시리즈 10, 구매해야 할까? 시리즈 9 리뷰에서는 "현재 소유한 모델에 따라 다르다. 시리즈 7이나 8을 사용 중이라면, 큰 차이가 없기 때문에 굳이 업그레이드할 필요는 없다. 하지만 이전 모델을 사용 중이거나 첫 애플 워치를 구매하려는 경우라면, 지금이 적기다"라고 답했다. 올해도 마찬가지다. 시리즈 10의 변경 사항은 시리즈 9 또는 시리즈 8을 사용하는 대부분 사람에게 업그레이드를 권할 만한 수준은 아니다. 하지만 작은 변화가 매년 쌓이면 큰 개선으로 이어진다. 애플 워치를 3년 이상 사용했다면 올해 모델에서 가격을 정당화할 만큼 개선을 느낄 수 있을 것이다. editor@itworld.co.kr
애플 기기가 현재 많은 블루투스 헤드폰과 이어버드에 사용되는 고품질 aptX 코덱(압축기/압축 해제기)을 지원하지 않은 지 오래되었다. 아마도 애플이 2015년에 aptX 기술을 구입한 퀄컴과의 장기간에 걸친 -그리고 엄청난 비용이 드는- 법적 분쟁 때문일 것이다. 많은 오디오 애호가는 aptX가 더 나은 음질을 제공한다고 생각한다. 그러나 이유가 무엇이든, 애플 에어팟으로 애플 뮤직이나 기타 스트리밍 서비스에서 고해상도 오디오 포맷의 음원을 들을 때에는 예전의 AAC 코덱에 의존할 수밖에 없다. 또한 맥, 아이폰, 아이패드 사용자가 aptX를 지원하는 다른 제조업체의 헤드폰과 이어버드(예: 베스트 무선 이어버드)를 사용할 때에도 항상 최상의 품질을 얻을 수 있는 것은 아니다. 바우어 앤 윌킨스(Bowers & Wilkins, B&W)의 파이8(Pi8) 이어버드는 AAC를 지원하므로 맥, 아이패드 또는 아이폰의 표준 블루투스 설정을 사용해 애플 기기와 이어버드를 간단히 연결할 수 있다. 그러나 파이8은 aptX 어댑티브와 최신 aptX 무손실도 모두 지원해, 애플 사용자도 aptX 음질을 즐길 수 있는 혁신적인 솔루션을 내놨다. 기존의 충전 케이스 대신 몇 년 전 Pi7 이어버드와 함께 처음 선보인 '스마트' 케이스가 포함된 파이8은 이어버드를 충전할 수 있을 뿐만 아니라 aptX 송신기로도 사용할 수 있다. 물론, 399달러라는 가격은 에어팟 프로보다 훨씬 비싸지만, B&W의 고품질 사운드와 다용도 스마트 케이스는 충분한 가치를 인정받아야 한다. 또한 파이8은 이어피스를 더욱 곡선형으로 재설계해 편안하게 착용할 수 있으며, 최상의 음질을 구현하기 위해 사운드가 외이도에 직접 닿도록 각도를 조정하는 등 완전히 새로워졌다. 이어피스는 여전히 큰 편에 속하지만, B&W는 4가지 크기의 이어팁을 제공해 적응을 돕는다. 이어피스가 큼직해져서 다른 제품보다 더 큰 고품질 12mm 드라이버와 배터리를 탑재할 수 있다. 파이7은 노이즈 캔슬링을 끈 상태에서도 한 번 충전으로 5시간밖에 사용할 수 없었지만, 이제 파이8은 노이즈 캔슬링을 켠 상태에서 6.5시간(에어팟 프로의 경우 6시간) 동안 사용할 수 있고, 스마트 충전 케이스를 사용하면 사용 시간이 총 20시간까지 늘어난다. 앞서 언급했듯이 B&W의 스마트 케이스는 다른 제조업체의 블루투스 이어버드에서는 볼 수 없었던 또 다른 큰 장점이 있다. 뒷면의 USB-C 포트는 내부 배터리를 충전하는 데 사용한다. 하지만 다양한 기기의 유선 오디오 입력도 가능하다. 이어버드가 스마트 케이스를 통해 스트리밍되는 고품질 무선 오디오를 수신할 수 있도록 aptX 송신기 역할을 할 수도 있다. B&W는 파이8에 표준 USB-C 케이블과 3.5mm 커넥터가 있는 케이블 등 2가지 케이블을 제공한다. 3.5mm 케이블로는 스마트 케이스를 비행기의 기내 엔터테인먼트 시스템과 같은 유선 오디오 기기나 레코드판 턴테이블에 연결할 수 있다. 또한 USB-C 케이블로 스마트 케이스를 맥, 아이폰 또는 아이패드의 USB-C 포트에 연결하면, 케이스에서 일반 AAC가 아닌 aptX로 무선 전파를 이어버드로 전송할 수도 있다. 음질은 AAC와 aptX 모두 훌륭하다. 파이8은 애플 뮤직의 고해상도 버전인 비틀즈의 '컴 투게더'와도 잘 어울린다. 도입부의 부드러운 베이스 리프는 단단하고 깊은 사운드로 곧바로 귀를 끌어당기며, 파이8은 지속되는 음을 유지해 긴장감을 고조시킨 다음 전염성 있는 리듬과 함께 아래로 내려가 미끄러지듯 흘러간다. 이 버전 역시 돌비 애트모스용으로 믹싱되었으며, 링고의 퍼커션이 좌우로 가볍게 건너뛰는 듯한 움직임이 느껴지다가 코러스에 접어들면서 파이8이 소매를 걷어붙이고 파워풀한 기타 리프에 착지하는 모습이 멋지게 펼쳐진다. 에어팟 프로의 노이즈 캔슬링 기능은 분주한 공항의 다양한 소란과 소음과 같은 고주파 사운드를 차단하는 데 조금 더 효과적이다. 그러나 파이8은 비행기 기내의 엔진 소음 같은 저주파 소리를 제거하는 데 매우 효과적이므로, 기차나 비행기로 장거리 여행을 할 때는 여전히 좋은 선택이 될 것이다. AAC나 aptX와 같은 기술적 세부 사항을 크게 신경 쓰지 않는다면 앞으로 출시될, 스마트 케이스 없는 249달러짜리 파이6에 관심을 가질 법도 하다. B&W 파이8을 구매해야 할까? 가격이 높으므로 주로 최고의 음질을 원하는 오디오 애호가가 관심을 가질 것이다. 하지만 사운드는 훌륭하며 스마트 충전 케이스를 애플 기기 및 유선 오디오 시스템용 aptX 트랜스미터로 사용할 수 있는 기능은 진정한 혁신이라 할 수 있다. editor@itworld.co.kr
6개 포트와 250W가 특징인 앵커 프라임 충전기는 여러 기기를 깔끔하게 충전한다. 또한, 가장 빠르게 충전되는 기기를 선택 조정하는 사용자 지정 옵션과 각 기기에 공급되는 전력량을 보여주는 읽기 쉬운 디스플레이도 장점이다. 모든 디지털 기기는 내부 또는 외부 전원 공급 장치로 충전해야 하지만, 대다수 사용자는 벽면 어댑터나 탁상용 충전기를 사용한다. 벽면 충전기는 전원 콘센트에 바로 꽂아 충전 케이블(보통 USB-C)로 기기에 연결하는 방식이다. 탁상용 충전기는 표준 전원 플러그와 케이블을 통해 벽면 콘센트에 연결하며, 한 장소에서 여러 기기를 충전할 때 더 편리하다. 여러 개의 충전 포트가 있는 훌륭한 벽면 충전기가 많이 있지만, 3~4개 이상의 포트가 필요하다면 앵커 프라임 충전기 같은 데스크톱 충전기가 필요할 것이다. 데스크톱 충전기는 테이블 위 케이블을 깔끔하게 정리할 수 있어 벽면 전원 소켓 하나만으로 모든 기기를 충전할 수 있다. 앵커 프라임 충전기 : 디자인 침대 옆에 두는 알람 시계와 닮은 모양이라 시계 모드가 있는 것이 적절해 보인다. 아쉽게도 충전기의 시계 모드에는 시간과 날짜만 표시되고 알람 기능은 없다. 최신 GaN 기술로 만들어진 앵커 프라임은 포트가 많고 여러 기능을 갖춘 것에 비해 놀라울 정도로 작고 컴팩트하다. 크기는 10.6 ⅹ 4 ⅹ 9.3cm, 무게는 640g에 불과하다. 앵커 프라임 충전기 : 전원 디스플레이 전면에 2.26인치 대형 LCD가 있어 각 USB-C 포트의 충전 상태와 속도를 시각적으로 확인할 수 있다. 충전 중이 아니거나 정확한 세부 정보를 확인할 필요가 없을 때는 충전기의 디스플레이에 날짜와 시간이 표시된 세 가지 형식의 시계를 표시하도록 설정할 수 있다. 시계 모드는 와이파이에 연결돼야 작동한다. 앵커 프라임 충전기 : 포트 전면에 편리하게 배치된 4개의 USB-C와 한쪽에 있는 2개의 구식 USB-A 등 충전 포트가 총 6개나 있다. 첫 번째 USB-C 포트(C1)는 140W 출력이 가능해 16인치 맥북 프로에 적합하며, 애플의 맥세이프 3 케이블을 사용할 경우 25분 만에 50%까지 고속 충전할 수 있다(완전 충전량의 50%까지). 다른 저전력 기기, 심지어 에어팟 충전 케이스도 충전할 수 있지만 PD 3.1(최대 240W) 전원을 필요로 하는 노트북에 가장 적합하다. 나머지 3개의 USB-C 포트(C2, C3, C4)는 정격 충전 전위가 100W이다. 두 개의 USB-A 포트는 각각 22.5W를 출력할 수 있다. 최대 전력 출력은 250W이므로 140W 노트북을 고속 충전하고도 다른 노트북이나 더 작은 기기를 100W 이상 충전할 수 있다. 앵커 프라임 충전기 : 맞춤화 USB-A 포트 옆에 있는 독특한 트위스트 스마트 컨트롤 다이얼을 사용하면 충전 우선순위와 에너지 출력을 사용자가 직접 지정할 수 있다. 다이얼을 돌려서 커서를 전환하고, 눌러서 선택을 확인하면 된다. 포트 우선순위 모드에서는 필요에 따라 하나 또는 두 개까지 전원 우선순위를 수동으로 설정할 수 있다. C1을 우선순위 포트로 설정하면 이 구성에서 6개의 포트를 모두 사용할 수 있다. 100W, 45W, 45W, 45W 및 두 개의 USB-A 포트 간에 공유되는 15W 구성이다. 다른 전원 구성으로는 70W, 70W, 45W, 30W, 15W 공유 및 65W, 20W, 20W, 20W, 15W 공유 등이 있다. 또한 노트북을 충전 대기열의 맨 앞에 배치하는 듀얼 노트북 모드와 휴대폰 및 저전력 기기의 배터리 수명을 보존하는 저전류 모드도 있다. 또는 충전기 자체가 포트에서 기기의 전력 요구 사항(높음, 중간 또는 낮음)을 식별하여 최적의 출력 우선 순위를 정하고 그에 따라 전력 분배를 조정하여 최적의 충전 효율을 제공하는 기본 AI 전원 모드로 둘 수 있다. 다이얼을 사용하여 화면 밝기를 조정할 수도 있다. 원하는 경우 다이얼을 돌리지 않고 휴대폰이나 태블릿에서 앵커 앱을 사용하여 사용자 지정 컨트롤을 사용할 수 있다. 앵커 프라임 충전기 : 가격 앵커 프라임 충전기(250W, 6포트, GaN프라임)의 가격은 미국 169.99달러, 영국 169.99파운드, EU에서는159,99유로에 판매된다. 더 저렴한 데스크톱 충전기도 있지만 140W PD 3.1과 이렇게 정밀한 포트 제어 기능을 갖춘 제품은 아직까지 없다. 앵커 프라임 충전기 : 경쟁 제품 Macworld는 데스크톱 충전기를 포함하여 다양한 제품을 테스트했다. 그러나 앵커 프라임 250W만큼 포트 우선순위를 정밀하게 제어할 수 있는 제품은 없었다. 이 점이 마음에 든다면 앵커 프라임을 적극 추천한다. 140W를 지원하는 다른 PD 3.1 데스크톱 충전기로는 가격대가 비슷한 유그린 넥소드(Ugreen Nexode) 300W GaN 데스크톱 충전기가 있다. 포트 수는 하나 적지만(USB-C 4개, USB-A 1개) 전체 전력 출력이 300W로 앵커의 250W보다 높다. USB-C 포트가 4개 이상 필요하고 USB-A는 상관없다면 6개의 USB-C 포트를 제공하지만 최대 출력은 200W로 더 낮은 사테치(Satechi) 200W USB-C 6포트 PD GaN 충전기를 고려해 보자. 사용자 지정 수준이나 시각적 피드백이 필요하지 않다면, 포트 수는 6개로 동일하지만 우선 순위 지정 기능이나 디스플레이가 없고 최대 출력이 50W 적은 앵커의 일반 프라임 충전기(200W, 6포트, GaN)가 있다. 79.99달러로 가격도 훨씬 저렴하다. 앵커 프라임 충전기, 구매해야 할까? 충전 포트의 정밀한 최적화가 필요한 사용자라면 다양한 제어 기능과 시각적 피드백, 6개의 최고급 충전 포트와 250W의 강력한 총 전력 출력을 지원하는 앵커 프라임 충전기에 만족할 것이다. editor@itworld.co.kr
부모가 되는 일에는 많은 어려움이 따른다. 필자는 아이가 한 번도 맛보지 못한 음식을 먹지 않으려 할 때 가장 힘들다. 제발 먹어달라고 눈물을 흘리며 애원한다. 어른이라고 해서 낯선 것에 언제나 개방적인 것도 아니다. 익숙하지 않은 기술도 마찬가지다. 아이폰 사용자들이여, 마지막으로 안드로이드 기기를 제대로 사용해 본 적이 언제인가? 지난주 필자는 애플의 혼합현실 헤드셋인 를 사용해 볼 기회가 있었다. 미국에서는 2월에 출시됐지만 필자가 거주하는 영국에서는 최근에서야 시연 및 구매가 가능해졌다. 2023년 6월에 공개적으로 발표된 비전 프로에 대해 누구나 저마다의 의견을 가지고 있을테지만, 그 의견을 직접 경험해 볼 준비가 된 사람이 몇이나 될까? 비전 프로 데모는 정말 놀라웠다. 오큘러스(Oculus)나 시중에 나와 있는 다른 VR 제품을 사용하는 것과는 전혀 다른 경험이었기 때문에 적절한 대상과 비교해 설명하기는 어렵다. 인터페이스 탐색에 필요한 시선 추적과 손가락 탭핑과 같은 기본적인 사항은 설명할 수 있지만, 처음 사용하면서 느낀점과 기기에 익숙해지면서 그 느낌이 변화는 과정을 정확하게 전달하기 어렵다. 직접 경험해야 알 수 있다. 개인적으로는 복잡한 피팅 과정에 놀랐다. 최적의 라이트 씰과 헤드밴드를 설정하는 일은 정말 까다로웠다. 안면 스캔을 통해 도움을 받을 수 있다고는 하지만, 필자의 첫 번째 씰은 교환해야 했다. 이마와 뺨에 무게가 편안하게 분산되도록 스트랩을 적당히 조이는 것도 생각보다 어렵고, 모든 요소를 필자에게 딱 맞추기까지 많은 시간을 들여 다양한 요소를 점검해야 했다. 데모를 위해 최상의 사용 환경을 만들기 위한 노력과 인내심은 가히 인상적이었다. 비전 프로는 기다릴 만한 가치가 있는 제품이다. 세심하게 보정된 착용감과 뛰어난 품질의 하드웨어 덕분에 비전 프로는 낯설지만 완전히 몰입할 수 있는 경험을 제공한다. 필자는 데모 중 몇 번이나 숨을 헐떡이거나 웃거나 관광객처럼 신나게 주변을 둘러봤다. 사용자가 미디어 안에 있는 것처럼 느끼게 해주는 비전 프로의 기능이 뛰어났기 때문이다. 낯선 사람의 공간형 홈 시네마는 인위적으로 느껴질 수도 있었지만(1995년 개봉작 를 본 사람이라면 무슨 말인지 알 수 있을 것이다), 그 효과가 너무 강렬해서 필자의 기억을 이런 형식으로 재현하면 어떨지 생각하게 만들었다. 묘하게 가슴이 아려오기도 했다. 할리우드도 공간형 영상 경험의 발전에 가장 큰 관심을 두고 있을 것이다. 데모에는 공룡과 고뿔소가 가까이서 등장하는 스릴이 포함돼 있는데, 누군는 이미 이런 형식의 슈퍼히어로 영화가 경제적으로 타당한지 계산해 보고 있을 것이다. 2D 영화도 비전 프로의 가상 시네마에서 멋지게 보이며, 헤드셋과 에어팟 프로만 챙기면 장거리 비행 경험에서도 유용할 듯하다. 더 이상 대형 콘서트에 참석할 여유가 없는 사람에게는 이런 형식이 차선책이 될 수 있다. 그리고 공간형 컴퓨터를 통한 스포츠 관람에 관해서는 장기적인 전망일 수 있지만 잠재력은 엄청나다. 이런 모든 작업에는 시간과 상당한 투자가 필요하지만, 비전 프로는 수량이 제한된 티켓을 판매하는 대신 더 많은 사람에게 이벤트를 제공할 수 있는 놀라운 기회를 제공한다. 미디어 측면에서 비전 프로는 승리를 거뒀다고 할 만하다. 하지만 AR/VR 기기에서는 제어 방법처럼 익숙하지 않은 측면을 다루는 것도 중요하다. 필자는 애플 전문가의 도움을 받았다. 도움 없이는 인터페이스에 당황할 것 같았다. 수년에 걸쳐 아이팟에서 아이폰으로, 아이패드에서 애플 워치로 이동하며 새로운 기기를 접하는 것은 항상 자연스럽고 직관적인 진화처럼 느껴졌으나 비전 프로는 완전히 새로웠다. 비전 프로에서 아이콘을 선택하려면 아이콘을 보고 검지와 엄지를 함께 탭해야 한다. 이 2가지 요소는 특히 처음에는 스트레스가 되기도 했다. 필자는 시선 추적 기술이라는 개념에 대해 항상 거부감을 가지고 있었는데, 설명할 수 없는 방식으로 기기 사용 시 방해가 되고 디스토피아적인 느낌을 주었기 때문이다. 제스처 인식 기능에 대해서도 불안감을 느꼈는데, 이는 긴장해서 안절부절 못하고 일을 잘못할까 걱정하는 필자의 성향 때문이었다. 손과 눈의 움직임을 계속 감시당하는 것에 대한 미세한 불안감은 여전하다. 하지만 이런 문제는 금방 나아졌다. 데모가 끝날 무렵에는 스트레스가 크게 줄었고 몰입형 미디어 요소에 대한 흥분은 쉽게 사라지지 않았다. 직접 사용해 보기 전까지는 어떤 부분이 마음에 들고, 어떤 부분이 마음에 들지 알 수 없다. 그 효과가 일시적인 것인지 아닌지도 예상하기 어렵기 때문에 비전 프로를 직접 체험하는 것이 매우 중요하다고 강조하고 싶다. 필자의 리뷰가 비전 프로를 이해하는 데 조금이라도 도움이 되기를 바란다. 비전 프로는 다른 어떤 애플 제품보다 직접 사용해 보고 판단해야 한다. editor@itworld.co.kr
로봇 청소기는 이제 가정에서 없어서는 안 될 필수품이 되었다. 반려동물의 털부터 생활 먼지까지, 로봇 청소기는 최소한의 노력만으로 바닥을 깨끗하게 청소한다. 하지만 다른 도구와 마찬가지로 최고의 성능을 유지하려면 정기적인 유지 관리가 필요하다. 정기적으로 관리하려는 노력은 제품을 잔고장 없이 오래 사용하는 데도 중요하다. 다행히도 진공 청소기의 수명을 연장하는 단계는 간단하며, 제조업체에서 직접 권장하는 방법도 많다. 로봇 청소기를 최대한 활용하는 8가지 방법을 알아보자. 1. 정기적인 부품 청소 브러시, 롤러, 바퀴는 먼지와 이물질이 가장 많이 쌓이는 중요한 관리 지점이다. 먼지와 머리카락이 쌓이면 흡입력이 떨어지고 모터가 손상된다. 대다수 제조업체는 반려동물이 있는 집에서는 매주, 반려동물이 없는 집에서는 격주로 이러한 부품을 청소할 것을 권장한다. 브러시와 롤러는 가장 많이 사용하는 부분이므로 꼼꼼하게 청소하면 이물질이 엉켜 제대로 회전하지 못하는 것을 방지할 수 있다. 브러시를 빼서 머리카락이 엉키지 않도록 풀고 닦아내면 된다. 바퀴에도 시간이 지나면서 이물질이 쌓일 수 있으므로 천으로 한 번씩 닦아서 부드럽게 굴러갈 수 있도록 하는 것이 좋다. 센서도 잊지 말자. 시스템의 작은 부분처럼 보이지만 먼지로 얼룩지면 로봇청소기가 청소 지점을 놓치거나 가구에 부딪히는 빈도가 늘어난다. 부드럽고 마른 천으로 가볍게 닦아주면 된다. 2. 배터리 관리 배터리는 영원히 지속되지는 않지만 올바르게 사용하면 수명을 크게 늘릴 수 있다. 오늘날 대부분의 로봇 청소기는 리튬 이온 배터리를 사용하는데, 이 배터리는 0%까지 방전되지 않고 부분적으로 방전되는 것이 좋다. 아이로봇이나 나르왈과 같은 제조업체는 배터리 수명을 단축시킬 수 있는 잦은 완전 방전을 피할 것을 권장한다. 아무리 잘 관리된 배터리라도 시간이 지나면 용량이 줄어들지만, 교체 시기를 알아차릴 수 있다. 진공 청소기의 사용 시간이 처음 사용했을 때의 절반 수준이라면 배터리가 마모되고 있다는 분명한 신호다. 다행히도 많은 제조업체에서 배터리를 쉽게 교체할 수 있으므로 배터리가 다 닳았다고 해서 진공청소기 전체를 폐기할 필요는 없다. 3. 쓰레기통이 넘치지 않게 하기 로봇청소기 관리에서 가장 간단하지만 가장 중요한 작업은 먼지통을 비워두는 것이다. 먼지통이 가득 차면 흡입력이 떨어질 뿐만 아니라 모터가 더 열심히 작동해 조기 마모를 부른다. 대부분의 로봇 청소기에는 먼지통이 가득 차면 알려주는 센서가 장착되어 있지만, 청소할 때마다 또는 제조업체에서 권장하는 횟수만큼 자주 비우는 습관을 들이는 것이 좋다. 2로봇청소기의 베이스 스테이션에 있는 먼지봉투를 주기적으로 확인하라. 먼지봉투가 가득 차면 로봇청소기가 제대로 비워지지 않을 수 있다. 청소기에 자동 비우기 기능이 있으니 유지보수가 필요 없다고 생각하면 금물이다. 진공청소기에서 이물질을 모으는 베이스 스테이션은 가끔씩 관리가 필요하다. 제조업체는 도킹 스테이션의 먼지 봉투를 교체해야 할 때까지 한 달 이상 먼지를 모을 수 있다고 광고하지만, 교체 주기는 청소 습관과 환경에 따라 크게 달라진다. 제조업체의 사양에 의존하기보다는 주기적으로 스테이션 내부의 쓰레기통이나 백을 점검하고 필요에 따라 교체하는 것이 가장 좋다. 도킹 스테이션 주변을 청결하게 유지하면 진공 청소기가 문제없이 충전하고 먼지를 비운다. 4. 소프트웨어 제때 업데이트 스마트폰이나 컴퓨터와 마찬가지로 로봇청소기도 정기적인 소프트웨어 업데이트의 이점을 누릴 수 있다. 제조업체는 버그 수정, 탐색 기능 향상, 배터리 수명 최적화를 위한 펌웨어 개선 사항을 자주 출시한다. 대부분의 로봇청소기는 앱을 통해 자동으로 업데이트되지만, 사용 중인 로봇청소기가 최신 버전인지 주기적으로 확인하는 것이 좋다. 5. 환경 최적화 집안 구조를 최적화하면 효과적인 청소가 가능하다. 청소기 경로에 작은 물건, 장난감, 느슨한 코드가 엉키거나 걸리는 것을 방지하라. 또한, 청소기의 가상 벽이나 출입 금지 구역을 앱에서 설정해 섬세한 부분을 보호하고 청소기가 가구 밑에 걸리지 않도록 하는 것도 잊지 말자. 이러한 디지털 경계는 깔끔한 공간과 결합해 진공 청소기의 부품 마모를 줄이면서 더 효율적으로 청소할 수 있도록 도와준다. 6. 정기적으로 소모품 교체하기 로봇 청소기의 부품을 청소하면 로봇 청소기의 작동 상태를 유지하는 데 도움이 되지만, 일부 부품은 자연 수명이 정해져 있어 결국 교체해야 한다. 필터, 브러시, 롤러는 시간이 지남에 따라 마모되므로 정기적으로 교체하지 않으면 청소 성능이 저하된다. 대다수 제조업체는 부품 교체 시기를 구체적으로 제시하지만, 진공청소기가 예전만큼 먼지를 잘 걸러내지 못하거나 평소보다 소음이 심해진다면 교체 시기가 된 것이라고 판단해도 된다. 동일한 사양을 충족하는 제조업체의 부품이나 호환되는 서드파티 부품을 사용하라. 이렇게 하면 최적의 성능을 유지하고 보증 문제를 방지할 수 있다. 부품 교체는 일반적으로 간단하며 진공청소기를 오랫동안 효율적으로 작동시키는 데 큰 도움이 될 수 있다. 7. 도킹 스테이션을 올바르게 관리하기 청소하지 않을 때 로봇 청소기는 충전 중이거나 도킹 스테이션에 유휴 상태로 놓여 있다. 도킹 스테이션 주변을 깨끗하게 유지하고 청소 후 청소기가 집으로 돌아갈 수 있는 명확한 경로를 확보하라. 이렇게 하면 효율적으로 충전할 수 있고 도킹 실패로 인한 불필요한 마모를 방지할 수 있다. 휴가나 청소 중단 등의 이유로 로봇청소기를 장기간 사용하지 않을 때는 서늘하고 건조한 곳에 보관하라. 배터리는 극한의 온도에서 더 빨리 성능이 저하될 수 있으므로 열원이나 습기가 없는 곳에 보관하면 수명을 보존하는 데 도움이 된다. 제조업체에서는 시간이 지남에 따라 배터리가 손상되는 것을 방지하기 위해 배터리를 50% 정도 충전한 상태로 진공청소기를 보관할 것을 권장한다. 8. 로봇 수리 또는 교체 시기 파악하기 최선의 노력에도 불구하고 문제가 발생할 수 있다. 다행히도 브러시 교체나 고착된 바퀴 수리 등 기본적인 수리는 대부분 집에서 할 수 있다. 제조업체는 일반적으로 이러한 수리에 대한 자세한 지침을 제공하며, 사용자 설명서나 온라인 가이드를 참조해 도움을 받는 것이 좋다. 하지만 센서 오작동이나 전기 문제와 같은 보다 복잡한 문제의 경우 전문적인 수리가 필요할 수 있다. 많은 업체가 수리 서비스를 제공하거나 공인 기술자를 추천해 진공청소기를 잘 관리할 수 있도록 지원한다. 진공청소기의 수리 시기와 교체 시기를 아는 것은 매우 중요하다. 수리가 잦아지고 비용이 많이 든다면 새 모델로 업그레이드를 고려해야 할 때다. 스마트한 관리로 로봇 청소기 수명 늘이기 로봇 청소기는 집안의 청결과 자유 시간을 위한 투자다. 간단한 유지 관리 습관을 통해 로봇 청소기의 성능을 최대한 유지하자. editor@itworld.co.kr
웹캠 제조업체는 긴장해야 할 듯하다. 윈도우 11 2024 업데이트(24H2)에 스마트폰을 PC의 웹캠으로 사용할 수 있는 새로운 기능이 추가되었는데, 매우 강력한 도구다. 모든 사람이 구형 스마트폰을 처분하지는 않지만, 대부분은 가지고 있을 것이다. 스마트폰 제조사가 카메라에 많은 투자를 하고 있는 만큼, 스마트폰의 전면 카메라는 여러 웹캠, 심지어 최고급 웹캠보다 더 나은 화질을 제공할 가능성이 높다. 일부 스트리머가 DSLR 카메라를 사용해 자신을 더 돋보이게 하는 것처럼, 스마트폰으로도 비슷한 효과를 얻을 수 있다. '연결된 카메라(Connected Camera)'라고 알려진 이 기능은 현재 안드로이드 스마트폰에서만 작동한다. 광범위하게 테스트하지는 않았지만, 코파일럿+ PC나 NPU가 필요한 기능은 아닌 듯하다. 지금까지는 윈도우 11 24H2가 사전 설치된 서피스 랩탑(7세대)에서만 시도했다. 시작하려면 안드로이드 8.0 이상을 실행하는 안드로이드 스마트폰과 블루투스 기능을 갖춘 윈도우 11 24H2 PC가 필요하다. 사실 '연결된 카메라' 기능을 찾는 과정은 다소 번거롭다. 윈도우 설정 메뉴에서 '모바일 장치 설정 열기'를 검색하거나, 설정 앱 왼쪽 메뉴에서 '블루투스 및 장치 → 모바일 장치'를 클릭한다. 이보다 더 쉽게 해당 페이지로 이동할 수 있는 명확한 방법은 찾지 못했다. 아직 스마트폰을 윈도우와 페어링하지 않았다면, 페어링 과정이 필요하다. 몇 년 동안 가장 잘 알려진 방법은 '휴대폰과 연결(Phone Link)' 앱을 사용하는 것이었다. 이 앱으로 안드로이드 폰이나 아이폰을 윈도우에 연결하면 문자 메시지를 확인하거나 사진을 볼 수 있다. 참고로 휴대폰과 연결 앱은 아이폰과도 연결할 수 있지만, '모바일 장치 관리'와 '연결된 카메라' 기능이 현재로서 아이폰을 지원하지 않는다. 휴대폰과 연결 앱은 인텔 유니슨(Intel Unison)과 경쟁하는데, 아이폰에서도 작동한다는 점에서 일부 사용자는 유니슨이 더 나은 앱이라고 주장한다. '모바일 장치 관리'와 휴대폰과 연결 앱은 초기 설정 과정이 비슷하지만 이후에는 다르게 진행된다. 두 방법 모두 스마트폰으로 HTML 글리프를 스캔하고, 스마트폰에서 권한을 허용하는 절차를 거친다. 스마트폰과 PC는 동일한 와이파이 네트워크에 있어야 하며, 윈도우에서 카메라에 접근할 수 있는 권한을 허용해야 한다. 휴대폰과 연결을 이미 설정해 두었다면 '모바일 장치 관리'에서 사용 가능한 스마트폰을 옵션으로 바로 볼 수 있다. 여기서부터는 절차가 매우 간단하다. '모바일 장치 관리' 화면에서는 두 가지를 설정할 수 있다. 첫 번째는 스마트폰이 사진을 촬영할 때 PC에 알림을 보내는 것이고, 두 번째는 스마트폰의 카메라를 연결된 카메라로 사용하는 것이다. 후자는 웹캠이 필요한 앱에서 스마트폰을 '카메라'로 사용할 수 있다. 유용하고 강력한 기능임에도 불구하고 브랜드 이름이 없다는 점이 흥미롭다. 하지만 '연결된 카메라'로도 충분할 듯하다. 이제 줌이나 마이크로소프트 팀즈와 같이 스마트폰 웹캠을 활용할 수 있는 앱을 열면 된다. 필자는 시연을 위해 윈도우 카메라 앱을 사용했다. 스크린샷 대신 스마트폰 카메라로 노트북 화면을 촬영했다. 기능은 놀랍도록 정교하게 구현된다. 스마트폰에서 전면 카메라나 후면 카메라를 선택할 수 있다. 카메라를 세로로 돌리면 세로 영상이 전송되고, 가로로 돌리면 가로 모드로 나온다. 흥미로운 점은 노트북이 윈도우 스튜디오 이펙트(Windows Studio Effects)를 지원한다면 윈도우와 연결한 스마트폰 카메라에도 적용할 수 있다는 것이다. 배경 흐림 효과, AI 프레임 등 다양한 기능이 포함돼 더 멋지게 보일 것이다. 스마트폰의 센서는 노트북이나 웹캠보다 훨씬 더 정교하며, 이 차이는 확연하게 나타날 것이라고 생각한다. 그러나 노트북에서는 약간의 문제가 발생할 수 있다. 필자가 사용한 서피스 랩탑의 기본 웹캠은 1,080p 해상도와 30Hz로 촬영하지만, 스마트폰의 카메라 출력은 720p, 30Hz로 제한됐다. 물론 화면에서는 훌륭하게 보였지만, 시청자는 최상의 화질로 나를 보지 못할 수 있다. 조명 균형, 색감 등은 훨씬 우수하겠지만, 해상도는 다소 거칠게 느껴질 수 있다. 이 부분은 마이크로소프트가 해결해야 할 과제로 보인다. 이유는 확실하지 않지만 향후에는 '전체' 해상도를 제공하는 기능으로 조정될 가능성이 있다. 어쨌든 모바일 장치 관리 내의 연결된 카메라 기능은 엄청난 잠재력을 가지고 있으며, 마이크로소프트가 이 기능을 완벽하게 구현하기를 기대한다. 비록 자사의 우수한 서피스 웹캠이 위험에 처할지라도 말이다. 한 가지 주의해야 할 점은 스마트폰 위치를 적절히 조절해 사용자에게 카메라 초점을 잘 맞춰야 한다는 것이다. 즉, 스마트폰을 웹캠으로 사용하려면 거치대가 필요하다. 이 기능이 대중화된다면 창의적인 개발자가 노트북용 스마트폰 거치대나 마운트를 출시할 가능성이 크다. 새로운 산업이 탄생할지도 모른다. 때로는 눈앞에서 역사가 쓰이는 순간을 목격할 수 있다. 구글이 온디바이스 GPS 기능을 탑재한 무료 지도 앱을 출시한 때를 기억하는가? 독립형 GPS 기기 산업은 거의 하룻밤 사이에 무의미해졌다. 웹캠이 사라지기를 바라는 것은 아니다. 하지만 마이크로소프트의 이번 윈도우 기능은 웹캠의 종말을 앞당길 수 있다. editor@itworld.co.kr
PC를 안전하게 폐기하는 것은 작은 과제가 아니다. 기업은 회사 노트북에서 데이터가 유출되지 않기를 원하며, 가정용 PC에 저장한 재무 문서, 개인 사진 등 중요한 파일은 누가 시스템을 손에 넣더라도 복구할 수 없도록 해야 한다. 윈도우 7 시절과 그 이전에는 PC를 폐기하기 전에 PC를 지우는 과정이 복잡했다. PC의 드라이브를 지우기 위한 전용 도구를 찾아야 했고, 컴퓨터를 새것과 같은 상태로 만들기 위해 윈도우 설치 미디어가 필요했다. 이제 더 이상 이런 과정이 필요하지 않다. 필요한 모든 것이 윈도우에 직접 내장되어 있으며, 클릭 몇 번으로 찾을 위치만 알면 사용할 수 있다. 하지만 최대한 보안을 유지하려면 올바른 설정을 모두 찾아 활성화하는 수고를 감수해야 한다. 안전하게 윈도우 지우기: 첫 번째 고려사항 사용자(또는 조직)가 PC를 더 이상 사용하지 않게 되면, PC에는 몇 가지 선택지가 있다. 재활용하거나 판매해 다른 사람이 유용하게 사용할 수 있도록 할 수 있다. PC를 판매하거나 기부할 수 있다면, 재정적인 면은 물론, 환경 측면에서도 분명한 이점이 있다. 하지만 위험도 존재한다. 높은 수준의 데이터 보안을 요구하는 조직에서는 컴퓨터나 저장 장치를 파기해 더 이상 사용하지 못하도록 하는 경우가 많다. 조직에 '핵 발사 코드'가 담긴 PC가 있다면 용도를 변경하는 것보다 파기하는 것이 더 나은 방법이다. 극단적인 예이긴 하지만, 대기업의 CEO가 민감한 영업 기밀이 담긴 PC를 가지고 있다면 해당 기업은 데이터가 복구되어 악의적인 사람의 손에 넘어갈 위험보다는 컴퓨터를 물리적으로 파기하는 편을 택할 가능성이 높다는 점을 알 수 있다. 하지만 대다수 개인과 기업은 사무실의 다른 직원이나 다른 사람에게 PC를 넘겨주고, PC를 용도 변경하고 양호한 상태로 유지하는 것이 가장 좋은 방법이다. PC의 저장 장치를 지우고 윈도우 PC를 새로 복원하는 방법 PC를 없앨 때는 두 가지를 확실히 하고 싶을 것이다. 첫째, 모든 개인 파일이 복구할 수 없는 방식으로 삭제되었는지 확인해야 한다. 둘째, 컴퓨터에 새 윈도우가 설치되어 있어 즉시 사용할 수 있는지 확인해야 한다. 다행히 윈도우 11과 윈도우 10 모두에서 이 작업은 쉽다. 예전에는 PC 괴짜들이 컴퓨터의 하드 드라이브를 지우기 위해 DBAN((Darik’s Boot and Nuke) 같은 유틸리티를 찾아 설치 미디어에서 윈도우를 다시 설치해야 했다. 먼저 중요한 파일을 백업하고, 다음의 과정을 거치면 PC의 모든 파일이 지워진다. 윈도우 11에서는 설정 앱을 열고 '시스템'을 선택한 다음 '복구'를 선택한 다음 복구 옵션 아래에서 'PC 초기화' 버튼을 클릭한다. 윈도우 10에서는 설정 앱을 열고 '업데이트 및 보안'을 선택한 다음 '복구'를 선택한 다음, 이 PC 초기화 아래의 '시작하기' 버튼을 클릭한다. 윈도우가 파일을 제거하도록 하려면 “모든 항목 제거”를 클릭한다. 윈도우는 파일을 다운로드해 다시 설치할 것인지, 아니면 현재 PC에 있는 파일을 사용해 다시 설치할 것인지 묻는다. 어느 쪽이든 가능하지만 다운로드 대역폭을 절약하려면 “로컬 다시 설치”를 선택한다. 추가 설정 화면에서 “설정 변경”을 클릭한다. 다음으로 “데이터를 정리하시겠습니까?” 옵션을 활성화한다. 이렇게 하면 윈도우가 드라이브를 삭제해 파일을 복구할 수 없도록 한다. PC에 여러 개의 데이터 드라이브가 있는 경우 “모든 드라이브에서 파일을 삭제하시겠습니까?” 옵션이 표시된다. 모든 드라이브를 삭제하려면 이 옵션을 활성화해야 한다. 다음 프로세스를 계속 진행한다. 윈도우가 자동으로 “공장 초기화”되어 윈도우 운영체제의 새 복사본을 설치하고 드라이브에서 개인 데이터 파일을 정리한다. 기업 환경에서는 액티브 디렉토리 및 MDM 솔루션 같은 도구를 통해 관리되는 PC를 원격으로 삭제하고 잠글 수 있다. 따라서 기업이 관리하는 윈도우 PC의 경우에는 PC 자체에서 이런 초기화 옵션을 사용하지 못할 수도 있다. 부팅되지 않는 PC를 초기화하는 방법 윈도우가 정상적으로 시작되지 않는 경우 복구 메뉴로 부팅할 수 있다. 여기에서 문제 해결 옵션으로 PC 초기화 도구를 사용할 수 있다. 그래도 문제가 해결되지 않으면 마이크로소프트에서 윈도우 11 또는 윈도우 10을 다운로드할 수 있다. 마이크로소프트의 사용하기 쉬운 다운로드 도구는 USB 드라이브를 윈도우 설치 미디어로 변환한다. 그런 다음 윈도우를 다시 설치해 모든 것이 정상적으로 작동하도록 할 수 있다. 이 두 가지 방법으로도 해결되지 않는다면, PC에 하드웨어 문제가 있을 가능성이 높다. 저장 장치를 떼어내 안전하게 폐기해야 할 수도 있다. 하지만 해당 저장 장치가 암호화되어 있다면 누군가 데이터에 액세스할 위험이 크지 않을 수 있다. PC 또는 데이터 드라이브를 물리적으로 파기하는 방법 윈도우는 “데이터 정리” 옵션이 “파일을 복구하기 더 어렵게 만들 수 있다”고 말한다. 마이크로소프트는 이 옵션이 파일을 절대로 복구할 수 없다고 보장하지 않는다는 의미이다. 그 이유는 무엇일까요? 기본 하드웨어가 한 가지 요인이다. 기존의 기계식 하드 드라이브는 회전하는 자기 플래터를 사용한다. 마그네틱 하드 드라이브를 덮어쓴다고 해도 국가급은 매우 정교한 공격자라면, 해당 드라이브의 일부 데이터를 복구할 수 있는 방법이 있다. 최신 SSD를 사용하더라도 모든 데이터가 100% 삭제되는 것은 아니다. 하지만 SSD는 자체 펌웨어를 실행해 데이터가 저장된 위치를 관리한다. 윈도우는 SSD에 데이터를 지우라고 지시하지만, SSD가 데이터의 모든 흔적을 완전히 지운다고 보장할 수 없으며, 일부 데이터를 보존하는 버그가 있어 정교한 공격자가 다시 복구할 수도 있다. 이는 모두 조직이 안전을 위해 스토리지 기기를 물리적으로 파기하는 이유를 보여주는 예시이다. 일반 사용자도 이런 문제를 걱정해야 할까? 물론 아니다. 하지만 매우 민감한 데이터를 다루는 정부 기관에서는 많은 주의를 기울여 드라이브를 물리적으로 파기할 것으로 예상된다. 가능한 방법으로는 소각, 분쇄 또는 파쇄가 있다. 핵심은 드라이브의 하드웨어를 물리적으로 파기하는 것이다. 소프트웨어에 의존하는 것이 아니라 하드웨어를 파기하는 것이다! 디스크 암호화가 데이터 보안에 도움이 되는 이유 비트로커 및 기기 암호화와 같은 디스크 암호화 도구가 널리 보급되면서 저장 장치를 지우기 전에도 PC가 악의적인 사람의 손에 넘어가는 위험은 예전보다 훨씬 줄어들었다. 이런 기술 이전에는 물리적 액세스 권한이 있는 사람이라면 누구나 노트북이나 데스크톱 PC를 열어 그 안에 있는 파일에 액세스할 수 있었다. 이제 공격자는 암호화를 해독할 방법을 찾아야 하며, 그렇지 않으면 파일이 완전히 뒤죽박죽으로 보일 것이다. 그렇기 때문에 최신 PC를 잘못 두거나 도난당해도 위험성은 예정보다 줄어든다. 저장 장치가 암호화되어 있으면 누구도 그 콘텐츠에 액세스할 수 없다. editor@itworld.co.kr
아이폰 16 전체 모델에 새롭게 추가된 대표적인 기능은 '카메라 제어(Camera Control)' 전용 버튼이다. 이 버튼은 단순한 버튼이 아니다. 카메라 앱을 실행하고, 멀티 기능 셔터 역할을 하며, 터치 감도와 햅틱 반응을 통해 다양한 기능을 제어할 수 있다. 그러나 아이폰 16을 처음 사용하는 사람 몇몇은 카메라 제어 기능에 약간의 불편함을 느끼고 있다. 카메라 앱을 실행하고 사진을 찍는 것은 문제없이 작동하지만, 버튼을 가볍게 눌러 제어창을 여는 것이 약간 까다롭다. 또한 설정을 조정하기 위해 스와이프하는 동작이 다소 어색하게 느껴질 때가 있으며, 원하는 설정을 선택하려고 두 번 탭할 때 사진이 잘못 찍히지 않도록 하는 것은 일종의 민첩성 테스트처럼 느껴지기도 한다. 다행히도 카메라 제어의 작동 방식을 조정할 수 있는 매우 유용한 설정이 있다. 다만 이 설정을 어디서 찾을 수 있는지 알아야 한다. 마치 애플의 농담처럼 느껴질 정도로 누구나 유용하게 사용할 수 있는 이런 기능은 어떤 이유에서인지 '손쉬운 사용' 옵션 안에 숨겨져 있다. 카메라 제어 옵션 2가지 먼저, 설정 앱으로 들어가 카메라를 선택한 뒤 '카메라 제어'를 탭한다. 여기에서 카메라 제어 버튼을 누를 때 인터페이스를 제거하는 '미리보기 원본'을 비활성화하거나, 카메라 앱 실행 기능을 단일 클릭 또는 이중 클릭으로 설정할 수 있다. 또한, 실행할 앱을 카메라 혹은 코드 스캐너 중에 선택할 수도 있다. 하지만 여기서 끝이 아니다. 카메라 제어에 대한 다른 유용한 설정들은 또 다른 메뉴에 숨겨져 있다. 설정 앱에서 '손쉬운 사용'을 탭한 후, 아래로 스크롤하여 '카메라 제어'을 선택한다. 진정으로 필요한 기능은 여기서 찾을 수 있다. 터치 강도와 이중 탭 속도를 조정할 수 있고, 제어 버튼을 통한 카메라 설정 조정을 비활성화하는 것도 가능하다. 설정 조정을 비활성화하면 카메라 제어 버튼을 물리적으로 클릭해 카메라 앱을 켜거나 촬영 시 셔터처럼 사용하는 것만 가능하다. 이런 것마저도 불편하다면 카메라 제어 버튼 기능 자체를 꺼버릴 수도 있다. 왜 애플이 이런 설정을 손쉬운 사용 메뉴에 숨겼는지는 확실치 않지만, 조만간 카메라 설정 안으로 옮겨질 가능성도 있다. 그 전까지는 '손쉬운 사용'에 숨어있다는 사실만 기억하면 된다. editor@itworld.co.kr
데이터 암호화는 매우 중요하다. 회사에서 제공한 PC를 사용하든 개인 컴퓨터로 작업하든, 암호화를 사용하면 도둑이나 다른 사람이 PC를 손에 넣어도 민감한 개인 데이터를 볼 수 없다. 윈도우 PC의 스토리지 암호화는 다소 복잡하게 느껴질 수 있다. 이 가이드에서는 기존 비트로커 암호화와 새로운 '장치 암호화'의 차이점, PC의 데이터를 안전하게 보호하는 방법, 만일을 대비해 이동식 장치를 암호화하는 방법 등 비트로커 암호화의 모든 것을 알아본다. 또한 비트로커 암호화 오류 복구에 대해 알아야 할 사항도 설명한다. 크라우드스트라이크 사태가 발생했을 때, 많은 사람이 PC를 부팅하면 비트로커 복구 키를 요구하는 블루스크린만 볼 수 있었다. 이런 일은 일어나서는 안되겠지만, 만일의 사태에 대비하는 것이 좋다. 비트로커의 이해 비트로커는 마이크로소프트의 스토리지 암호화 기술이다. 윈도우 비스타에 처음 도입됐으며, 현재도 윈도우 11 및 윈도우 10에 포함되어 있다. 비트로커는 스토리지의 전체 볼륨을 암호화하도록 설계됐다. 즉, 하드 드라이브의 전체 파티션을 암호한다. 비트로커를 활성화하면 PC의 파일이 암호화된 방식으로 디스크에 저장됩니다. 파일을 “마구 뒤섞어 놓은(scrambled)” 형태로 저장하기 때문에 PC의 하드 드라이브를 훔쳐간다고 해도 파일에 액세스할 수 없다. 파일에 액세스하려면 암호화 키가 필요하다. 비트로커는 컴퓨터를 부팅할 때 자동으로 잠금이 해제되는 “투명” 모드로 작동하도록 설정되어 있는 경우가 많다. 이렇게 하면 컴퓨터의 TPM(Trusted Platform Module) 하드웨어를 사용해 드라이브의 잠금을 해제한다. TPM은 암호화 키를 저장하고 윈도우 운영체제가 변조되지 않은 것으로 보이는 경우에만 암호화 키를 제공한다. 이 기술은 기업이 회사 데이터를 보호하는 중요한 방법이다. 그렇기 때문에 기업에서는 업무용 PC에서 비트로커를 사용하도록 강제하는 경우가 많다. 하지만 개인이 개인 데이터를 보호하는 데에도 유용한 방법이다. 누군가 노트북을 손에 넣더라도 키가 없으면 파일에 액세스할 수 없다. 노트북을 부팅하더라도 파일에 액세스하려면 윈도우 사용자 계정에 로그인해야 한다. 비트로커에 문제가 발생하면 비트로커 복구 키를 입력할 것을 요청한다. 비트로커를 직접 설정한 경우에는 암호화 키를 안전한 곳에 저장하라는 메시지가 표시됩니다. 기업 환경에서는 IT 부서가 사본을 가지고 있다. 일부 상황에서는 사본을 마이크로소프트 계정과 함께 저장하기도 한다. 비트로커와 장치 암호화의 차이 윈도우 7 시절에는 비트로커가 전문가용, 기업용, 교육용 버전의 윈도우에서만 제공됐다. 홈 버전의 윈도우를 실행하는 일반 PC에서는 내장 암호화 기술을 사용할 수 없었다. 현재도 이런 차이는 있다. 비트로커 드라이브 암호화(BitLocker Drive Encryption)란 이름의 비트로커의 정식 버전은 윈도우의 프로페셔널 버전 이상에서만 사용할 수 있다. PC에서 온전한 비트로커 도구를 이용하려는 개인 사용자는 PC의 윈도우 홈 버전을 윈도우 11(또는 윈도우 10) 프로페셔널 버전으로 업그레이드해야 한다. 그러나 윈도우 8.1부터 시작해 현재 윈도우 10 및 윈도우 11까지 마이크로소프트는 “장치 암호화”라는 기능을 제공한다. 이 기술은 내부적으로 비트로커를 사용하지만, 하지만 전체 비트로커 구성 옵션은 제공하지 않으며 PC에 올바른 하드웨어(윈도우 11에 공식적으로 필요한 하드웨어 기능 중 하나인 TPM 2.0 칩)가 있는 경우에만 작동한다. 장치 암호화는 평균적인 최신 PC에서 “그냥 작동”하도록 만들어진 기능이다. 마이크로소프트 계정이나 회사 또는 학교 계정으로 윈도우에 로그인하면, 윈도우가 자동으로 장치 암호화를 활성화하여(PC에 올바른 하드웨어가 있다는 가정 하에) 암호화를 통해 파일을 보호한다. 마이크로소프트 계정, 회사 계정 또는 학교 계정으로 로그인했으므로 윈도우는 비트로커 복구 키를 마이크로소프트 계정 또는 회사나 학교의 시스템에 PC를 백업한다. 이렇게 하면 일반 PC 사용자가 오류가 발생했을 때 복구 키에 액세스할 수 있는 방법이 보장된다. 일반 사용자의 경우, 마이크로소프트 계정이 필요하다. 로컬 사용자 계정으로 PC에 로그인하도록 선택하면 장치 암호화를 사용할 수 없다. 최적의 보안을 위해 마이크로소프트 계정으로 로그인하거나 윈도우 프로페셔널 에디션을 구매해 비트로커 환경을 사용하는 것이 좋다. PC의 스토리지가 암호화되어 있는지 확인하는 방법 비트로커를 사용하려면, 관리자 계정으로 윈도우에 로그인해야 한다. 일반 사용자 계정으로 로그인한 경우에는 옵션이 표시되지 않을 수 있다. 윈도우 11에서 장치 암호화를 확인하려면 설정 앱을 열고 '개인정보 및 보안'을 선택한 다음 보안 아래에 있는 '장치 암호화'를 클릭한다. 장치 암호화가 활성화되어 있으면 “켜짐”으로 설정된다. 윈도우 10에서 설정 앱을 열고 '업데이트 및 보안'을 선택한 다음 왼쪽 창에서 '장치 암호화'를 선택한다. 장치 암호화가 활성화되어 있으면 “장치 암호화가 켜져 있다.”라는 메시지가 표시된다. 설정 앱에 '장치 암호화' 옵션이 전혀 표시되지 않는다면, PC가 이를 지원하지 않거나 표준 사용자 계정으로 윈도우에 로그인한 것이다. 파일 탐색기에서 확인할 수도 있다. '내 PC' 아래에서 컴퓨터의 각 드라이브 아이콘을 확인한다. 드라이브 아이콘에 자물쇠가 있는 경우, 해당 드라이브는 비트로커 드라이브 암호화 또는 장치 암호화를 통해 어떤 식으로든 암호화된 것이다. 기존 제어판 창을 열고 “시스템 및 보안”을 선택한 다음, “비트로커 드라이브 암호화” 또는 “장치 암호화”를 클릭해 비트로커 옵션을 제어하고 스토리지가 암호화됐는지 확인할 수 있다. 이동식 드라이브를 암호화하는 방법 온전한 전체 비트로커 드라이브 암호화 환경을 갖춘 PC를 사용하는 경우, 이동식 저장 장치를 암호화할 수도 있다. 이 기능은 '비트로커 To Go'라는 기능을 사용하며, USB 플래시 드라이브, SD 카드 및 외장 하드 드라이브에 사용할 수 있다. 이렇게 하려면 제어판을 열고 “시스템 및 보안”을 클릭한 다음 “비트로커 드라이브 암호화”를 선택한다. “이동식 데이터 드라이브” 아래에 이동식 드라이브를 암호화하는 옵션이 표시된다. 비트로커 복구 키를 찾는 방법 비트로커는 일반적으로 “그냥 작동”해야 한다. 대부분 사용자는 부팅 시 비트로커 복구 키 블루 스크린이 표시되지 않기를 바란다. 하지만 크라우드스트라이크 사태 같은 사고는 누구에게나 발생할 수도 있다. 하드웨어 문제 또는 한 컴퓨터에서 스토리지 드라이브를 가져오거나 다른 컴퓨터에서 액세스해야 하는 경우에도 발생할 수 있다. 이 경우 비트로커 복구 키가 필요한다. 회사가 관리하는 PC를 사용하는 경우 회사 시스템에 복구 키가 백업되어 있으므로 복구 키를 요청할 수 있다. 마이크로소프트 계정으로 PC에 로그인하고 윈도우에서 장치 암호화를 자동으로 사용하도록 설정한 경우에는 마이크로소프트에서 액세스해야 한다. 마이크로소프트의 비트로커 복구 키 페이지를 방문해 마이크로소프트 계정으로 로그인하여 복구 키를 찾는다. 비트로커 드라이브 암호화를 직접 설정한 경우, 설정 과정의 일부로 복구 키를 저장하고 저장하라는 메시지가 윈도우에 표시된다. 종이에 인쇄하거나 USB 드라이브에 저장했을 수도 있다. PC가 정상적으로 작동하는 경우 언제든지 복구 키의 백업 복사본을 만들 수도 있다. 이렇게 하려면 제어판을 열고 “시스템 및 보안”을 클릭한 다음 “비트로커 드라이브 암호화” 또는 “장치 암호화”를 선택한다. 이 창에서 각 드라이브의 복구 키 사본을 백업할 수 있는 링크를 찾을 수 있다. 마이크로소프트는 비트로커 복구 키를 찾는 방법에 대한 자세한 가이드를 제공한다. 복구 키의 사본을 모두 분실했는데 PC에서 복구 키를 요청하는 경우(개인용 PC에서 비트로커를 직접 설정한 후 복구 키를 인쇄하지 않았거나 백업 사본을 분실한 경우) PC의 파일에 액세스할 수 없게 된다. 이 경우에는 PC의 파일을 이용할 수 없고 가지고 있는 별도의 백업본에서 파일을 복원해야 한다. 오픈소스 대안 베라크립트와 트루크립트 윈도우 PC의 스토리지를 암호화하고 싶지만 어떤 이유로 비트로커를 사용하고 싶지 않다면, 오픈소스 대안을 사용할 수 있다. 윈도우가 최신 PC에 장치 암호화를 기본 제공하기 전에는 이 방법이 더 일반적이었는데, 홈 버전 윈도우 사용자는 비용을 들여 프로페셔널 버전으로 업그레이드하지 않고도 이 소프트웨어를 사용해 암호화할 수 있었기 때문이다. 몇 년 전에는 트루크립트(TrueCrypt)가 대표적인 솔루션이었다. 하지만 트루크립트 프로젝트는 2014년에 “해결되지 않은 보안 문제가 있을 수 있으므로 안전하지 않다”고 경고하며 윈도우 PC 사용자에게 비트로커로 전환할 것을 권장하면서 종료됐다. 어떤 문제인지는 완전히 설명되지 않았다. 후속 프로젝트인 베라크립트(VeraCrypt)는 이 프로젝트의 코드를 가져와 보안 문제를 수정하고 계속 개발했다. 이 코드는 독립적으로 감사를 받았으며 발견된 문제는 수정됐다. 윈도우에서 오픈소스 드라이브 암호화 도구를 사용하려는 경우, 베라크립트를 사용하는 것이 좋다. 대부분 사용자는 가능하면 비트로커 드라이브 암호화 또는 장치 암호화와 같은 형태의 비트로커를 사용하는 것이 좋다. 비트로커는 윈도우와 통합되어 있으며 잘 작동한다. 베라크립트 같은 서드파티 솔루션은 데이터 손실이나 기타 문제가 발생할 가능성이 높다. 모든 사용자에게 필요한 암호화 궁극적으로 기본적인 스토리지 암호화는 격리된 사무실에서 데스크톱 PC를 사용하는 경우를 제외하고는 모든 최신 PC에서 필수이다. 특히 일반 노트북에는 데이터 보안을 위해 이런 기능이 필요하다. 회사에서 제공하는 컴퓨터를 사용하든 개인용 PC를 사용하든 노트북 분실은 데이터 보안에 큰 문제가 되지 않아야 한다. 안드로이드, 크롬OS, 맥OS, iOS 등 다른 모든 최신 플랫폼은 기본적으로 스토리지 암호화 기능을 제공한다. 윈도우 환경에서는 윈도우 11이 장치 암호화를 통해 새 디바이스에서 기본적으로 암호화를 제공한다. 2024년 가을에 윈도우 11의 24H2 업데이트를 통해 더 많은 PC 하드웨어 구성에서 디바이스 암호화를 사용할 수 있게 되면, 이 기능은 더욱 확대될 것이다. editor@itworld.co.kr
일론 머스크는 자사의 “우리, 로봇(We, Robot)” 행사에서 테슬라의 인간형 로봇은 “선생님이 되고, 아이들을 돌보고..., 개를 산책시키고, 잔디를 깎고, 식료품을 가져오고, 친구가 되어주고, 음료를 서빙할 수 있다. 여러분이 상상할 수 있는 모든 것을 할 수 있다"라고 설명했다. 바꿔 말하면, “인간형 로봇은 사람이 될 수 있으므로 사람은 뭔가를 할 필요가 없다”는 말이다. 이는 인류에게 해롭고 잘못된 비전이다. 도대체 로봇이란 무엇인가? 대중은 로봇이라고 하면 수많은 영화, TV 프로그램, 소설, 만화 덕분에 발, 다리, 무릎, 팔, 목, 머리, 얼굴을 가진 지능적인 기계인 인간형 로봇을 떠올린다. 하지만 실제로 로봇이란 무엇일까? 로봇은 주변 환경으로부터 정보를 수집하고 그 입력에 따라 물리적 세계에서 동작을 수행할 수 있는 센서를 갖춘 컴퓨터화된 기계이다. 로봇의 속성에는 자율성, 프로그래밍 가능성, 감지 능력, 의사 결정, 물리적 행동 수행 능력 등이 있다. 우리는 로봇을 일종의 미래 기술로 이야기한다. 하지만 이미 우리의 일상은 로봇에 둘러싸여 있다. 사용자 카메라 드론, 스마트 온도 조절기, 자동 차고 문 개폐기, 셀프 체크아웃 키오스크, 최신 세탁기 및 건조기, 로봇 잔디깎이, 자동 수영장 청소기, 스마트 냉장고, 고급 커피 메이커, 자동 애완동물 사료 공급기, 스마트 조명 시스템 등 로봇의 세계는 매우 넓다. 아직 끝이 아니다. 로봇 청소기, 자동 윈도우 블라인드, 자동 식기 세척기, 스마트 오븐, 셀프서비스 공항 체크인 키오스크, ATM, 첨단 자판기, 적응형 신호등 시스템, 자동 주차장 시스템, 최신 HVAC 시스템, 셀프서비스 도서관 체크아웃 시스템, 스마트 초인종, 첨단 의족, 자동 지하철 또는 기차 시스템 등이 있다, 셀프서비스 자전거 대여 키오스크, 자동 세차, 스마트 화장실, 자동 알약 분배기, 최신 심장 박동기 및 이식형 심장 제세동기, 자동 착유기, 자동 균형 조정 전동 스쿠터, 자동 수하물 처리 시스템, 스마트 전력망, 자동 거래 알고리즘, 심지어 최신 보청기까지. 우리의 식량은 자율 로봇 트랙터, 심기 및 파종 로봇, 제초 및 해충 방제 로봇, 자동 온실 시스템, 수확 로봇, 농업용 드론, 토양 분석 로봇, 젖소 착유 로봇, 팔레트 로봇, 자율 트랙터, 로봇 분무기, 검사 로봇의 도움으로 생산된다. 아마존닷컴에서 배터리 팩을 주문하면 재고 관리 로봇, 상품 운반용 모바일 구동 장치, 분류 로봇, 상품 조작 및 패키지 이송을 위한 AI 기반 로봇 팔 등을 통해 주문이 진행된다. 우리는 이미 자동차 제조, 전자제품 생산, 금속 및 기계 제조, 플라스틱 및 화학 공정, 건설, 제약 제조, 의료, 소매 및 접객업, 스마트 시티 개발, 운송, 라스트마일 배송, 전자상거래, 검사 및 감시, 반도체 생산 등 다양한 분야에서 로봇에 전적으로 의존하고 있다. 로봇은 항상, 보통, 심지어 자주 인간형이라는 믿음은 잘못된 것이다. 그리고 방금 설명한 것처럼 로봇이 미래에 등장할 것이라는 믿음도 잘못된 것이다. 우리는 이미 수천 가지 종류의 로봇