Show HN: 하드웨어에서 구동되는 LLM 기반 NPC
요약
Gigax는 LLM을 활용하여 하드웨어에서 구동되는 NPC를 구현하는 프레임워크입니다. Llama-3, Phi-3 등 오픈 가중치 모델을 미세 조정하여 사용하며, 정의된 액션(예: `<speak>`, `<jump>`) 수행 및 구조화된 출력을 보장합니다. GPU 추론 속도가 빠르며, 퀘스트 생성 및 메모리 기능을 API로 제공할 예정입니다.
핵심 포인트
- LLM 기반 NPC를 하드웨어에서 구동하는 프레임워크 (Gigax) 소개
- Llama-3, Phi-3 등 오픈 모델을 미세 조정하여 사용 가능
- Outlines를 활용해 구조화된 액션 출력을 보장함
- GPU 추론 속도가 빠르며, 퀘스트/메모리 기능 API 제공 예정
<img src="./docs/assets/images/gigax_logo_black.png" alt="Gigax Logo" width=200></img>
👟 런타임, LLM 기반 NPC
</div>
pip install gigax
Features
- 🕹️
<speak>,<jump>,<attack>등 정의된 모든 액션을 수행하는 NPC - ⚡ 대부분의 기기에서 1초 이내 GPU 추론 속도
- 🤗 Open-weights 모델 사용 가능 (Llama-3, Phi-3, Mistral 등에서 미세 조정)
- Outlines 〰️를 통한 구조화된 생성으로 출력 형식이 항상 유지됨
- 🗄️ 출시 예정: 언어에 구애받지 않는 API를 갖춘 로컬 서버 모드
- 📜 API에서 사용 가능: 플레이어 및 NPC를 위한 런타임 퀘스트 생성
- 😶🌫️ API에서 사용 가능: 벡터 DB를 이용한 메모리 생성, 저장 및 검색
Gigax는 새로운 출시와 기능들이 준비되고 있습니다. 이 리포지토리를 ⭐ 스타 표시하고 👀 지켜봐 주세요!
Usage
Model instantiation
-
다양한 모델을 🤗 Huggingface hub에서 제공합니다:
- NPC-LLM-7B (당사의 Mistral-7B 미세 조정 모델)
- NPC-LLM-3_8B (당사의 Phi-3 미세 조정 모델)
- NPC-LLM-3_8B-128k (당사의 Phi-3 128k 컨텍스트 길이 미세 조정 모델)
-
outlines를 사용하여 이 중 하나로 인스턴스화하는 것부터 시작합니다:
from outlines import models
from gigax.step import NPCStepper
from transformers import AutoTokenizer, AutoModelForCausalLM
...
NPC 스텝 진행하기 (Stepping an NPC)
- 거기서 NPC를 스텝 진행하는 것은 한 줄로 끝납니다:
action = await stepper.get_action(
context=context,
locations=locations,
...
Locations,NPCs등을 인스턴스화하기 위한 클래스를 제공합니다:
from gigax.parse import CharacterAction
from gigax.scene import (
Character,
...
API
저희 NPC API를 사용해 보려면 여기로 문의하세요. 모델 서빙, NPC 메모리 등은 저희가 처리하겠습니다!
AI 자동 생성 콘텐츠
본 콘텐츠는 HN Chip/GPU의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기