본문 바로가기
Bigdata

LLM/ChatGPT - 나만의 모델 Chatbot-UI에 넣기 위한 구조 이해

by 올엠 2024. 6. 8.
반응형

 

OpenSource로 잘 만들어진 mckaywrigley/chatbot-ui: AI chat for every model. (github.com)

님 의 chatbot-ui에 나만의 모델을 넣고자 한다면 어떻게 해야할지 요약해보았다.

 

본 구조는 각 개발자에 따라서 달라질 수 있고, 현재 버전(231009) 이후에 다르게 변경될 수 있다는 점을 이해기 바라며 참고용도로 보시면 좋을 듯 하다.

1. 모델 정의

types/openai.ts

여기에 정의한 모델이 추후 모델 선택에 정리되어 보여지게 된다.

 

2. 모델 확인

pages/api/models.ts

chatbot-ui는 기본적으로 openai에 사용 가능한 모델이 무엇인지를 확인한 후에 해당 정보로 models 리스트를 만들도록 되어 있다. 처음 실행하면 아무것도 모델이 나오지 않고 openai키를 넣어도 1개만 나오는 이유가 여기에 있다.

여기에 아래와 같이 임의의 구조로 만들어 처리해보면, ModelSelect.tsx가 이 리스트를 가져가서 내가 생성한 모델 정보가 나오는 것을 알 수 있다.

 

3. OpenAIStream 만들기

pages/api/chat.ts

이제 실제 호출이 일어나는 부분으로, 모델에 맞는 웹 호출을 하는 단계라고 할 수 있다.

프로젝트에서는 기본적으로 OpenAIStream을 이용해서 호출을 처리하게 된다.

이 호출은 자신의 모델에 맞게 Stream을 만들어 추가하거나 OpenAIStream 내에 조건 분기를 처리하는 방식으로 개선하면 자신만의 모델을 chatbot-ui를 통해서 생성이 가능해진다.

영상 정보는

LLM/ChatGPT - 나만의 모델 ChatBot-UI에 넣기 - YouTube

반응형