Hugging Face에서 Unity Sentis 모델 사용하기

Hugging Face에서 Unity Sentis 모델 사용하기

Unity 3D는 세계에서 가장 인기 있는 게임 엔진 중 하나예요. Unity Sentis는 Unity 2023 이상에서 실행되는 추론 엔진으로, 하드웨어 가속을 활용해 신경망 모델을 게임이나 애플리케이션에 통합하고 실행하게 해주는 API입니다.

출처: 문서

본문

Unity 3D는 세계에서 가장 인기 있는 게임 엔진 중 하나입니다. Unity Sentis는 Unity 2023 이상에서 실행되는 추론 엔진이에요. 하드웨어 가속을 활용해 신경망 모델을 게임이나 애플리케이션에 쉽게 통합하고 실행할 수 있게 해주는 API입니다. Unity는 PC, 모바일, 콘솔 등 다양한 폼팩터로 내보낼 수 있기 때문에, 여러 종류의 하드웨어에서 신경망 모델을 실행하는 쉬운 방법이 됩니다.

Hub에서 Sentis 모델 탐색하기 (Exploring Sentis Models in the Hub)

모델 페이지 왼쪽에서 필터링하면 unity-sentis 모델을 찾을 수 있어요.

Hub의 모든 Sentis 모델에는 Unity에서 모델을 쉽게 시작하는 코드와 지침이 함께 제공됩니다. unity 네임스페이스 아래의 모든 Sentis 모델(예: unity/sentis-yolotinyv7)은 Unity에서 동작하도록 검증되었으므로, Unity에서 실행될 것이라는 확신을 가질 수 있어요.

Sentis 사용에 대한 자세한 내용은 문서를 읽어보세요. Sentis를 사용하는 다른 사람들의 도움을 받으려면 토론 포럼에서 질문할 수 있습니다.

파일 유형 (Types of files)

각 리포지토리에는 여러 유형의 파일이 포함됩니다:

  • sentis 파일: Unity에서 실행되는 신경망을 담은 주요 모델 파일.
  • ONNX 파일: Sentis 파일에 더해(또는 대신) 포함할 수 있는 대체 포맷. Netron 같은 타사 도구로 시각화하는 데 유용할 수 있어요.
  • cs 파일: Unity에서 모델을 실행하는 코드를 담은 C# 파일.
  • info.json: 리포지토리의 파일에 대한 정보를 담은 파일.
  • 데이터 파일: 모델 실행에 필요한 다른 파일. 어휘 파일, 클래스 이름 목록 등을 포함할 수 있어요. 일반적인 확장자는 json이나 txt입니다.
  • README.md: 모델 카드. 모델 사용 방법과 기타 관련 정보를 담고 있어요.

모델 실행하기 (Running the model)

항상 모델 카드의 지침을 참조하세요. Unity에 대한 어느 정도의 지식과 C#의 기본 지식이 있다고 가정합니다.

  1. Unity 2023 이상을 열고 새 씬을 만드세요.
  2. 패키지 매니저에서 com.unity.sentis 패키지를 설치하세요.
  3. 모델 파일(*.sentis)과 데이터 파일을 다운로드해 Assets 폴더 안의 하위 폴더인 StreamingAssets 폴더에 넣으세요. (폴더가 없다면 만들 수 있어요.)
  4. Main Camera 같은 씬의 오브젝트에 C# 파일을 배치하세요.
  5. 씬에 만들어야 할 다른 오브젝트가 있는지 모델 카드를 참조하세요.

대부분의 경우 우리는 실행할 수 있는 기본 구현만 제공합니다. 창의적인 용도를 찾는 것은 여러분의 몫이에요. 예를 들어 두 개 이상의 모델을 결합해 흥미로운 일을 하고 싶을 수 있습니다.

나만의 Sentis 모델 공유하기 (Sharing your own Sentis models)

Hugging Face에 나만의 Sentis 모델을 공유하는 것을 권장합니다. 직접 훈련한 모델이거나 Sentis 포맷으로 변환하고 Unity에서 실행되는 것을 테스트한 모델일 수 있어요.

업로드하는 각 리포지토리에 Sentis 포맷으로 모델을 제공해 주세요. 이는 Unity에서 실행된다는 추가 확인을 제공하며 대형 모델에 선호되는 포맷이기도 합니다. 원본 ONNX 버전의 모델 파일도 포함할 수 있어요.

최소 구현의 C# 파일을 제공하세요. 예를 들어 이미지 처리 모델은 입력을 위해 이미지를 준비하고 출력에서 이미지를 구성하는 방법을 보여주는 코드를 가져야 합니다. 또는 외부 샘플 코드에 연결할 수도 있어요. 이렇게 하면 다른 사람들이 Unity에서 모델을 쉽게 다운로드하고 사용할 수 있습니다.

모델 실행에 필요한 데이터 파일(예: 어휘 파일)을 제공하세요.

마지막으로 프로젝트의 파일을 나열하는 info.json 파일을 제공해 주세요. 이는 다운로드 집계에 도움이 됩니다. info.json 내용의 몇 가지 예시:

{
   "code": [ "mycode.cs"],
   "models": [ "model1.sentis", "model2.sentis"],
   "data": [ "vocab.txt" ]
}

코드 샘플이 외부라면:

{
   "sampleURL": [ "http://sampleunityproject"],
   "models": [ "model1.sentis", "model2.sentis"]
}

추가 정보 (Additional Information)

Sentis 사용을 시작하는 데 도움이 되는 전체 샘플 프로젝트도 있습니다.

더 알아보기 (Learn more)

Unity Sentis 모델을 Hub에서 검색하려면 unity-sentis 라이브러리 필터를 쓰고, unity 네임스페이스의 모델은 검증된 것을 선택하세요. 파일 구성(sentis, onnx, cs, info.json)과 폴더 배치를 모델 카드 지침대로 따르면 Unity 2023+에서 바로 실행할 수 있습니다. 샘플 프로젝트 저장소로 빠르게 시작해 보세요.