WebAssembly를 사용하면 주요 설정 없이 컴퓨터에서 전체 LLM을 빠르고 쉽게 다운로드하고 실행할 수 있습니다.
WebAssembly, Large Language Models 및 Kubernetes Matter를 번역한 저자 Torsten Volk.
WebAssembly(WASM)를 사용하면 책상 밑, 데이터 센터, AWS 계정 또는 사무실 제어 장치에서 찾을 수 있는 모든 하드웨어에서 정확히 동일한 코드를 놀라울 정도로 쉽게 개발, 구축, 실행 및 운영할 수 있습니다. 옥수수밭의 톤 수확기.
제가 디트로이트에서 열린 KubeCon 2022에서 Fermyon CEO Matt Butcher 와 이 비전에 대해 논의하는 동안 이제 실질적인 가치를 제공하는 실제 생산 준비 사용 사례가 있습니다.
LlamaEdge: 어디에서나 LLM을 실행할 수 있는 코드 한 줄
오픈 소스 프로젝트인 Llama Edge는 기본적으로 모든 시스템의 터미널에 코드 한 줄을 붙여넣기만 하면 ChatGPT 에서 보던 것과 매우 유사한 UI를 표시하는 브라우저가 몇 초 안에 팝업될 것이라고 약속합니다 . 물론 랩톱에서 ChatGPT를 실행할 수 있는 하드웨어도 없고 OpenAI도 라이선스 측면에서 해당 옵션을 제공하지 않습니다. 하지만 실행할 수 있는 오픈 소스 변형은 수십 가지가 있습니다. 기본적으로 LlamaEdge는 즉각적인 만족을 위해 로컬 컴퓨터에 작은 버전의 Google Gemma LLM을 설치하며 훌륭하게 작동합니다.
하지만 큰 설정 없이 내 컴퓨터에서 어떻게 그렇게 빠르고 쉽게 전체 LLM을 다운로드하고 실행할 수 있습니까? 이것은 하루를 구하기 위해 wasmEdge가 등장하는 곳입니다. Llama Edge는 WasmEdge 런타임 위에 미리 컴파일된 코드(바이트코드)로 실행됩니다. 30MB(GB 아님!)의 디스크 공간과 선택한 LLM을 다운로드하는 데 필요한 공간만 필요합니다. Llama Edge는 다운로드되면 wasmEdge의 기능을 활용하여 기본적으로 모든 운영 체제(Windows, Linux 및 파생 제품) 및 모든 실리콘(Intel, AMD, Nvidia 등) 위에 CPU, GPU, RAM 및 디스크 리소스를 지속적으로 프로비저닝합니다. 고급 구성. 이제 컴퓨터에서 터미널을 열고 다음을 확인하세요. 이 단일 명령…
bash <(curl -sSfL '<a href="https://raw.githubusercontent.com/LlamaEdge/LlamaEdge/main/run-llm.sh">https://raw.githubusercontent.com/LlamaEdge/LlamaEdge/main/run-llm.sh</a>')
...추가 구성 없이 UI를 생성합니다.
구성요소는 새로운 컨테이너입니다.
Cosmonic 의 CEO인 Liam Randall 은 "구성 요소는 새로운 컨테이너입니다."라고 말합니다 . ChatGPT와 유사한 UI인 Randall의 UI를 포함하여 이 기사를 쓰고 있는 동일한 MacBook에서 1분 안에 완전한 LLM을 설정할 수 있었습니다. 진술은 완벽하게 이해됩니다. WASM 없이 동일한 LLM을 설치하려면 다음과 같은 여러 MacOS 관련 단계를 따라야 합니다. 1) homebrew 설치, 2) 필요한 패키지 설치, 3) 필요한 Llama LLM 찾기 및 복제, 4) Python 종속성, 5) 모델 파일 변환 및 정량화, 6) 설치 테스트. 그러나 WasmEdge를 실행하고 있기 때문에 이러한 단계에 대해 걱정할 필요가 없으며 Python 런타임이 존재할 필요도 없습니다. LlamaEdge를 실행하려면 wasmEdge만 필요하며 그 이상은 필요하지 않습니다.
그런데 Rust를 배워야 하나요?
Python 개발자 로서 저는 Rust를 배우지 않고도 LLM을 사용할 수 있는 것을 매우 선호합니다 . LLM을 설정하려면 한 줄의 명령줄 코드만 필요하고, 기본 LLM 대신 특정 LLM을 선택하려면 또 다른 코드 줄이 필요합니다.
bash <(curl -sSfL 'https://raw.githubusercontent.com/LlamaEdge/LlamaEdge/main/run-llm.sh') --model llama-2-7b-chat
위 명령은 사용자를 기본 LLM 선택 항목으로 안내합니다.
아직 실제 Rust 코드를 한 줄도 작성하지 않았지만 LlamaEdge GitHub 웹사이트 에서 필요한 명령을 복사하여 붙여넣었고 이제 새로운 LLM과 대화할 수 있습니다. 구성 요소가 새 컨테이너라는 Randall의 설명으로 돌아가면 이제 이 모델을 향후 Python 애플리케이션에 구성 요소로 간단히 가져올 수 있습니다. 동시에 이 구성 요소를 팀이나 고객과 공유하여 그들이 내 LLM을 자신의 응용 프로그램에 통합할 수도 있습니다.
이는 WASM 구성 요소를 구독 서비스로 제공할 가능성에 대해 AWS Re:Invent 에서 Fermyon의 Tim Enwall 과 논의한 내용을 생각나게 합니다 . 업계 분석가로서 자체 LLM을 만들고 과거 출판물을 사용하여 미세 조정하면 이를 WASM으로 컴파일하고 디지털 트윈에 대한 구독을 판매할 수 있습니다.
또 다른 사용 사례: 로깅 및 기타 영역을 위한 데이터 파이프라인 관리
Calyptia 의 FluentBit 관측 가능성 데이터 파이프라인 관리 플랫폼을 사용하면 개발자는 WASM 프로그램 형식으로 플러그인을 작성할 수 있습니다. 개발자는 Rust, TinyGo 및 Python을 사용하여 파이프라인 데이터 처리를 위한 함수를 작성할 수 있습니다.
이제 이를 LlamaEdge 예제에 다시 연결하고 WASM 파이프라인이 LlamaEdge와 "대화"하고, 실시간으로 로그를 분석하고, 의미 있는 통찰력을 추출하고, 로그 내용을 기반으로 응답을 자동화할 수도 있습니다. WASM 파이프라인 프로그램이 비정상적인 트래픽 급증이나 잠재적인 보안 침해와 같은 로그 데이터의 이상 현상을 감지하는 시나리오를 상상해 보세요. 그런 다음 LlamaEdge LLM에 쿼리하여 상황을 더 잘 이해하고 즉각적인 조치를 제안하거나 문제를 적절한 팀 구성원에게 에스컬레이션할 수 있습니다.
LLM을 데이터 파이프라인에 통합함으로써 사고 모니터링 및 대응 프로세스가 더욱 지능적이고 사전 예방적으로 이루어집니다. 이는 로그 데이터를 처리하는 방식을 혁신적으로 변화시켜 반응 프로세스를 경고를 발생시킬 뿐만 아니라 가능한 솔루션도 제공하는 동적이고 자동화된 프로세스로 변환할 수 있습니다. 데이터 파이프라인 내에서 분산된 방식으로 원격 측정 데이터를 처리하는 것은 하나 이상의 기업 관측 플랫폼에 수집해야 하는 데이터의 양을 줄일 수 있다는 점에서 특히 흥미롭습니다. 많은 관찰 플랫폼은 들어오는 데이터의 양을 기준으로 기업 고객에게 비용을 청구하므로 상당한 비용 절감 효과가 있습니다.
Kubernetes용 Fermyon 플랫폼: 더 높은 밀도, 더 낮은 비용
Fermyon은 Kubernetes용 SpinKube 프레임워크를 출시하여 WASM 애플리케이션을 Kubernetes에서 더 높은 밀도로 실행하여 컨테이너에 비해 비용을 낮출 수 있도록 했습니다. SpinKube는 WASM 모듈의 경량 특성을 활용하여 각 서버 노드에 더 많은 애플리케이션을 패키지하여 필요한 컴퓨팅 리소스를 줄입니다.
SpinKube 프레임워크는 개발자 친화적으로 설계되었으며 기존 Kubernetes 환경과의 원활한 통합을 제공합니다. 개발자는 새로운 도구나 워크플로를 배울 필요 없이 기존의 컨테이너화된 애플리케이션처럼 WASM 애플리케이션을 배포할 수 있습니다. 이러한 사용 용이성은 개발 주기를 가속화하고 배포를 단순화합니다.
또한 SpinKube는 다중 테넌트 환경의 핵심 측면인 애플리케이션 수준 보안 및 격리를 보장합니다. 각 WASM 애플리케이션은 자체 격리된 샌드박스에서 실행되어 호스트 시스템이나 다른 애플리케이션에 영향을 미치는 취약점의 위험을 최소화하는 안전한 실행 환경을 제공합니다.
개방형 표준과 커뮤니티 중심 개발에 대한 Fermyon의 약속은 SpinKube의 아키텍처에 반영되어 있습니다. 이 플랫폼은 광범위한 프로그래밍 언어와 도구를 지원하므로 더 넓은 개발자 커뮤니티에 액세스할 수 있습니다. 이러한 포괄성은 혁신을 촉진하고 다양한 산업 분야에서 WASM 기술의 채택을 장려할 것입니다.
요약하면, Kubernetes용 Fermyon은 클라우드 네이티브 컴퓨팅의 주요 발전을 나타냅니다. 사용 편의성, 보안 및 개방형 표준을 유지하면서 밀도를 높이고 비용을 절감함으로써 SpinKube는 Kubernetes 애플리케이션 배포의 미래에 핵심 플레이어로 자리매김합니다. 여기서 Fermyon이 SpinKube를 CNCF 샌드박스에 기부했다는 점을 언급하는 것이 중요합니다.
결론: LLM, 개발자 생산성 및 운영 비용 압박, WASM 성공의 원동력
WebAssembly 런타임이 있는 곳이면 어디든 항상 실행할 수 있는 WASM의 고유한 능력 덕분에 이 기술은 "LLM을 데이터가 있는 곳으로 이동"할 수 있게 되었습니다.
기업은 잠재적으로 민감한 데이터를 이동하기 위한 권한을 요청할 필요 없이 필요한 LLM을 관련 데이터 소스에 간단히 "도킹"할 수 있으므로 규정 준수 측면에서 매우 유용합니다. WASM 런타임의 작은 크기 및 Kubernetes(기존 컨테이너 옆)에서 WASM 애플리케이션을 실행하는 기능과 결합된 이러한 이식성은 주말 동안 유휴 서버 인프라에서 일부 LLM 추론 또는 모델 교육을 더 저렴하게 실행할 수 있습니다. 더 쉽습니다. 월요일이 되면 WASM-LLM 애플리케이션을 종료하거나 다른 곳으로 이동할 수 있습니다. 물론 이 원칙은 LLM에만 적용되는 것이 아니라 다른 많은 사용 사례에도 적용될 수 있습니다.
Bytecode Alliance와 W3C WebAssembly 커뮤니티 그룹이 WASM이 널리 사용될 수 있도록 WebAssembly 구성 요소 모델의 구현을 가속화할 수 있다면 이 기술은 진정한 게임 체인저가 될 것입니다. WASI 0.2 는 좋은 진전이지만 플랫폼을 대중 시장에 출시하기 위해서는 아직 해야 할 일이 꽤 많습니다.
1990년대에 태어난 프로그래머가 비디오 포팅 소프트웨어를 개발하여 1년도 안 되어 700만 개 이상의 수익을 올렸습니다. 결말은 매우 처참했습니다! 고등학생들이 성인식으로 자신만의 오픈소스 프로그래밍 언어 만든다 - 네티즌 날카로운 지적: 만연한 사기로 러스트데스크 의존, 가사 서비스 타오바오(taobao.com)가 가사 서비스를 중단하고 웹 버전 최적화 작업 재개 자바 17은 가장 일반적으로 사용되는 Java LTS 버전입니다. Windows 10 시장 점유율 70%에 도달, Windows 11은 계속해서 Open Source Daily를 지원합니다. Google은 Docker가 지원하는 오픈 소스 Rabbit R1을 지원합니다. Electric, 개방형 플랫폼 종료 Apple, M4 칩 출시 Google, Android 범용 커널(ACK) 삭제 RISC-V 아키텍처 지원 Yunfeng은 Alibaba에서 사임하고 향후 Windows 플랫폼용 독립 게임을 제작할 계획이 기사는 Yunyunzhongsheng ( https://yylives.cc/ ) 에 처음 게재되었습니다 . 누구나 방문하실 수 있습니다.