저는 리눅스에서의 로컬 AI 활용을 극대화하기 위한 도구를 직접 개발하고 있습니다. 한동안 와우를 하던 시절 배우게 된 습관으로, 적거나 말하면서 일을 진행해야 흐름이 잘 풀린다는 것을 깨달았고, 그 성향이 개발 현장에서도 큰 도움이 된다는 것을 확인했습니다.

그래서 지금 구상하는 시스템은 ‘트랙 위의 자동차처럼 엔진과 제어를 분리하고, 트랙을 마음껏 바꿔가며 실험하자’는 취지로 출발했습니다. 다수의 상용 LLM 서비스가 가진 제약 없이 로컬에서 자유롭게 창작 활동을 할 수 있는 환경을 만들고 싶었습니다.

현재 뼈대는 어느 정도 완성했고, 웹 기반으로 실행 가능한 일렉트론 기반의 구조를 선택했습니다. 그 과정에서 외부 접근을 세밀하게 다루기 위해 익스프레스와의 결합, localhost를 기본으로 하는 보안 규칙, 페이지 헤더에 무작위 sha256 값을 주입해 접속자의 키를 확인하는 방식 등을 도입했습니다.

이처럼 서버 구동부와 클라이언트인 일렉트론, 그리고 매니저와 월드로 구성된 삼각 구조를 통해 로컬에서의 제약 없이 AI를 함수처럼 자주 호출하는 환경을 만들고자 했습니다. 매니저가 서버와 데이터를 주고받아 파일을 관리하고, 월드는 각자의 인터페이스를 웹페이지로 구성하게 하여 다른 시나리오를 자유롭게 제작할 수 있도록 했습니다.

월드는 외부와의 직접 통신을 차단하고 매니저를 경유하도록 설계해 데이터 누출 위험을 줄이고, 에셋 재활용을 위한 공용 폴더를 활용하는 구조를 마련했습니다. 이렇게 4가지 에셋 구성을 통해 캐릭터 로어 페르소나를 모듈식으로 조합 가능하게 하고, 같은 월드에서도 다른 시나리오를 쉽게 구성할 수 있게 했습니다.

또한 컨텍스트 토큰 관리에 대한 고민을 바탕으로, 일회성 인스턴스 메시지로 필요한 정보를 빠르게 얻어 대화를 이어가도록 설계했습니다. 제 목표는 대화의 흐름을 끊지 않으면서도 로컬에서 토큰 비용 걱정 없이 다양한 실험을 할 수 있는 창작 환경을 제공하는 것입니다.

앞으로도 보안과 UX/UI 개선에 매진해 더 많은 사람에게 유용한 로컬 AI 도구가 되도록 발전시키려 합니다. 만약 이 방향에 대해 함께 공유하고 싶은 아이디어가 있다면 언제든지 환영합니다....