MVP 구상 및 나만의 LLM 이용 노하우
나만의 comfy 서버를 만드는 것에 성공하고 나서,
워크플로우의 실행을 위해서는 comfyUI에서 기본으로 제공하는 python example을 약간 개조한 코드에다가 워크플로우만 바꿔넣어서 'python xxx.py' 로 실행시키곤 했는데
이게 막상 만들고보니 점점 욕심이 생긴다..
아예 제대로 restful api 기반의 프론트, 백, 데이터베이스 등으로 구성된 서비스로 만들어보려고 한다.
계속해서 제미나이와 대화를 나누며 고민한 결과
ComfyUI 서버는 현상유지 (AI 이미지 및 비디오 생성에 필요한 연산을 담당, 내 개인 데스크탑)
백은 Nest.js (프론트에서 넘어온 정보 처리, 연산 서버와의 통신, 에러 처리, 로그 처리 등)
프론트는 Next.js (사용자 입력 및 AI 생성물 출력, 히스토리 출력 등)
데이터베이스는 Postgresql로 초기 서비스를 구성하여 MVP를 만들고 나서
추후에 필요에 따라 하나씩 덧붙여보려고 한다.
새로운 서비스를 만들 때 나만의 gpt 이용법에 대해 말해보자면..
1. '어떤 서비스를 만들고 싶은데, 그 전에 정리가 필요해. 나랑 계속 대화를 해가면서 필요한 정보들을 나에게 물어봐줘' 라고 한다.
2. 목적을 구체적이고 객관적으로 알린 후 실현 가능성을 묻는다.
3. 목적 달성을 위해 개발이 필요한 파트를 독립적인 단위로 크게 나눈다.
4. 나눈 단위에 대해 어떤 순서로 개발해야할지 묻고, 그 순서에 따라 개발하는 것을 도와달라고 한다.
5. 서비스의 요소들 간의 상호작용을 잘 나타내는 다이어그램을 그려달라고 한다.
이 경우 Mermaid라는 텍스트 기반 다이어그램 툴을 이용해서 그려달라고 한 다음 Mermaid 홈페이지에서 복사 붙여넣기하면 깔끔하게 잘 그려준다.
6. 각 파트에 대한 개발을 위해 어떤 도구를 쓰는 것이 좋을지 묻는다.
7. 본격적인 개발에 앞서 추가로 고려해야할 부분이 있다면 계속 나에게 질문해달라고 한다.
계속 대화하면서 부족한 부분을 채워나간다.
8. ChatGPT나 Claude의 경우 무료로 쓰던 유료로 쓰던 위와 같은 방식으로 대화하면 금방 리밋에 걸린다.
나는 요즘 Gemini를 쓰고 있는데, 지금까지는 한 번도 리밋에 걸려본 적이 없다.
맥락을 잃어버릴 일이 없어서 좋고, 한 번에 입력 가능한 토큰 수도 제미나이가 압도적으로 많아서 엄청 좋다.
9. ChatGPT나 Claude를 쓴다 하더라도, 새로운 채팅에서 맥락을 계속 이어가기 위해서는 이전 채팅에서 이렇게 답을 얻으면 된다.
'지금까지의 대화 내용을 새로운 채팅에서 계속 이어갈 수 있게 모든 맥락을 정리한 프롬프트를 써줘.'
그러고는 출력된 답변을 새로운 채팅에서 입력한 후 대화를 이어가면 된다.