본문 바로가기

2. Development/메타휴먼 프로젝트

(13)
11. 프로토타입 0.0.1 아키텍처 설계, 개발 및 평가 시스템 아키텍처 프로토타입의 첫 버전을 설계하는데 있어 최소 스펙을 갖추었다고 판단했다. 앞으로 계속 기능을 붙이며 조금씩 업데이트 해 나갈 예정이다. 시스템 아키텍처는 다음과 같다. 대화 데이터들을 embedding하여 관련정보를 query할 수 있도록 하여, 일반적인 Retrieval 구조가 완성되었다. 개발은 한국어버전 일본어 버전으로 2개 만들었으며 최대한 간단하게 구성하려고 했다. 반응은 전화하는것 정도의 빠른 반응까지는 얻어내기 힘들었지만, 나름 대화가 된다고 느낄수 있는 속도였다. Test (한국어) Test (일본어) 테스트케이스를 따로 정리하지는 않았다. 한국어와 일본어 버전을 나눈 이유는 한국어성능에서의 약간의 부족함을 느껴서이다. 1. 우선 한국어의 느낌이 잘 안사는것 같은 느낌이 들..
10. ESP net (end-to-end speech processing toolkit) 사용 경험 정리 프로젝트를 위해 유용한 라이브러리나 도구들을 서칭하던 도중 발견한 아주 귀한 녀석이다. 이번엔 이녀석에게 빨아먹을수 있는 기능들을 최대한 단시간 내에 빨아먹어보도록 하겠다. ESP net ESPnet: end-to-end speech processing toolkit end-to-end 발화 관련된 처리 모델을 같은 규격으로 모아놓은 툴킷이다. 이 레파지토리만 따로 리뷰를 하는 이유는 여기 하고자하는게 거의 다들어가있기 때문이다. GitHub - espnet/espnet: End-to-End Speech Processing Toolkit End-to-End Speech Processing Toolkit. Contribute to espnet/espnet development by creating an a..
번외2. 파이썬 Boilerplate 구성 (Python, Docker, DevContainer, Pipenv) 해당 글은 완성 되었으나. 필자의 경험에 따라 업데이트 할수도 있습니다. (글 내용이 바뀔수 있다는 뜻) 더 편리한 구조를 찾으면 바꾸겠습니다. 피드백 부탁드립니다. 여러가지 실험을 위해 파이썬 프로젝트를 만들어야하는 경우가 많다보니 Boilerplate를 하나정도 만들어서 운용하는게 효율적이겠다라는 생각이 들어 만들면서 과정을 정리해보려고 한다. Devcontainer 설정 devcontainer는 Docker기반의 개발환경을 VScode에 만들어주는 도구인데 최근 협업을 위해 사용했는데 매우 편리했던 기억이 있어서 이것을 설정해보려고 한다. Docker에 대해서 어느정도 알고있다는 것을 전제로 커스텀 해야할 부분만 써내려가 보겠다. 우선 VS code에서 다음의 확장 프로그램을 설치해야한다. 그 다음..
9. 프롬프트 엔지니어링에 대한 정리 (논문, 프롬프트 기법) 보호되어 있는 글입니다.
번외1. 파이썬 프로젝트 환경 (Pyenv, Pipenv) 해당 프로젝트에 대한 구체적인 구조에 대해서는 작성하지는 않지만, 프로젝트를 진행함에 편의를 제공하는 환경을 경험적으로 작성해보려고 한다. 인공지능 프로젝트를 진행함에 있어서 다양한 오픈소스를 테스트 해본다거나 라이브러리에 대한 실험을 해야했다. 그런데 여기서 파이썬 버전을 옮겨가면서 테스트 해야할 필요도 있고, 각기 다른 환경을 설치해야할 소요도 많았다. 그래서 개발환경을 이전에 뒤집어 엎었는데 그 경험이 나쁘지 않아서 공유하려고 한다. 사용경험이 매우 좋으며 다른 사람에게도 추천하고 싶은 구성으로 작성했다. Pyenv 파이썬 버전 관리자다. 여러가지의 파이썬 버전을 스위칭 해서 사용할 수 있다는 점이 매우 편리한 점이다. 세팅만 잘 해놓는다면 사용하는게 매우 편리하게 되어있다. 사용 키워드만 정리했다..
8. 버추얼 캐릭터 개발 정리 (Live2d) (작성중) 해당 프로젝트의 얼굴이 되어줄 버추얼 캐릭터를 만들어 내는데 상당한 어려움이 있었다. 우선 가장 흔하게 사용하는 Live 2D를 이용해보려고 Live2D WEB SDK를 건들여봤는데 상당히 쉽지 않았다. 일단 주석이 일본어로 되어있기도 했고 자습서(Document)가 필자가 생각하기에 그다지 친절하지 않았다. 하지만 별다른 대안이 없지 않다라고 생각 한 부분이 다른 라이브러리나 프레임워크는 무료 정책이 아니거나, 구현 난이도가 매우 높거나, 언어가 까다롭거나 중 하나였다. Live2D가 뭔가? Live2D가 생소한 사람을 위해 알게된 내용만 간단하게 정리하자면 2D일러스트를 머리카락, 눈동자, 눈썹, 윗입술, 아랫입술, 머리, 목, 어깨 등등 부분 부분을 나누고 그러한 일러스트들이 자연스럽게 움직여서 마..
7. RAG를 위한 Vector DB 비교 RAG는 Retrieval-Augmented Generation의 약자이다. RAG와 관련된 언급을 이전 글 에서 했었는데 이번글에서는 이를 위한 Vector DB에 대한 비교를 해보려고 한다. Vector DB비교 다음은 pytorch korea 커뮤니티에서 가져온 Vector DB의 비교 테이블이다. 우선 필자가 써본 데이터베이스의 극히 개인적인 경험에 대해서 간단하게 서술하자면 다음과 같다. Pinecone 단어 유사도 맞추기 게임을 만들때 처음으로 사용해봤다. Pinecone을 사용해본건 출시된지 얼마 안됬었을 때였지만, 파이어베이스의 데이터베이스와 비슷한 느낌을 받았던 Vector DB이다. 그리고 상당히 API가 사용하기 좋게 구현되어있어서 편리했었던 기억이 있다. 클라우드에서 데이터베이스 관..
6. POC_1 간단한 설계와, 개발, 테스트 그리고 평가 1번째 개념증명 테스트 첫번째 POC모델의 실험 범위는 아키텍처 파트의 그림을 보는게 가장 이해가 빠를 것 같다. 테스트들은 다양한 지인들과 함께 진행했다. 그리고 우수한 케이스를 뽑아내는것이 아닌, 날것 그대로의 케이스를 얻으려고 했다. POC_1 Architecture POC_1의 아키텍처는 다음과 같이 그려볼 수 있겠다. 해당 프로젝트의 기반이 되는 가장 간단한 구조로 입력과 출력을 제어하는 코드가 주를 이룬다. History를 텍스트로 저장하고 대화 생성에 그대로 넣어서 이용하는 매우 간단한 구조이다. Test Case #1 단순한 구동 테스트 프롬프트구성은 AI에게 롤을 적용하고 나와 대화를 해줘 방식으로 구성했다. Summery : 1. 말을 잘못 알아듣는 경우가 있다. OK Good! -> ..