아까부터 레디스를 계에에에속 언급하는거보면
'다중 사용자' 이걸로 관점을 보는데 애초에 내 코드는 개인 사용자용임
근데 뭐가 틀리고 다른지 제대로 설명해줌
1. 벡터 DB를 인스턴스로 올리고 땡처리하는가?
->FastAPI의 lifeSpan 이벤트 핸들러를 이용해서 인스턴스 한번 생성후, 참조가 필요한곳에 필요할때마다 주입하는거임
2. 코어당 여러개 연결 있고 get해서 써야한다
->RDBMS의 커넥션 풀링인데, ChromaDB는 로컬 파일 기반 벡터 DB 클라이언트라서, 병렬 읽기 쓰레드 세이브 자동 보정임.(쓰기는 보장 안됨, 그래서 순차 쓰기 )
3.Rag 기다리는 동안 사용감이 떨어지니까 Redis 같은걸로 관리
-> RAG 결과를 캐싱하는데 Redis 쓰라고하는데, RAG 작업을 백그라운드 큐로 돌려서하는거면 모를까, 이건 단일 사용자용으로는 과도함
그냥 FastAPI기반 asyncio 정도로 충분히 비동기 처리가 가능함. 애초에 레디스 쓴다는건 대규모 스택임
4. 벡터 연결에도 스코프가 있어야한다. 그런게 없다
-> 애플리케이션 스코프가 있음. lifespan으로 관리되는 store_instance가 바로 그거임. 요청 스코프가 아니라, 애플리케이션 스코프임
5. 100개 작업 처리해달라고 하면 지금 코드로는 어떻게 하느냐?
-> 100개의 RAG는 ProcessPoolExecutor로 가능함. 자기 컨텍스트에서 새롭게 여는거고
각 병렬 작업의 DI로 동일한 store_instance 참조 받음
쓰기 작업은 지금은 필요없어서 안했고, 추후에 대화 기록을 벡터 임베딩해야하면 애초에 이걸 리듀서로 추후에 구현하면됨.
자꾸 네가 말하는 스코프는 '대규모 사용자 기반 웹 서비스'
이거고 내가 말하는건 그냥 '단일 사용자 기반 멀티 에이전트' 이 차이임.
자꾸 레디스가 나오고 이러는게 이해가 안가는게 그거고 나는 저거 서버에 올릴 생각 없어.
저건 그냥 여러 LLM API를 조합해서 하나의 골을 주면 에이전트가 조합하는거지 서버에 올리는게 아님 QT6만 봐도 답 나오잖냐
아니 니가 이런 소리 할 거 같아서 중간에 몇번 물어봤잖아 다중 사용자 고려해서 fastapi쓴 거 아니냐고 심지어 이제는 타로에도 붙이겠다며 ㅋㅋ 글고 니가 저번에 팩토리랑 레지스트리 싱글턴으로 모듈 조합하면 안된다고 했는데 내가 예시 보여줬잖아 존나 간단하고 모두가 지원해주는 걸로 - dc App
뭔소리여 타로에 붙이는건 딴건데
아니 타로에 붙이겠다한건 다른거고;; 저거는 그냥 일전부터 말했지만 단일 사용자용 여러 LLM API고 너 내가 한말이 아니라 유동이 한 헛소리 듣는거냐
지금 네가 하는 말은 유동이 한 말을 내가 한말로 착각하는거임. 나 타로사이트에 붙이는 RAG는 저런방식이 아니라 SUPABASE에서 지원하는 벡터 임베딩 기능을 이용해서 하는거라니까? 네 좋은 마음을 이해하고 좋게 말해주고, 너도 잘아는 부분이 많아서 나도 그러려니하는데, 저거는 그냥 개인 사용자용이야. 그니까. 유동이 한말을 내가 한말이라고 착각하지 않았으면 좋겠다야
@ㅆㅇㅆ(124.216) 그건 네 본의가 아니라면 그럴 수 있지. 긍데 내가 다중 사용자 고려했으니 fastapi쓰려는 거 아니냐고도 했잖음 - dc App
뭔가 자꾸 이상하다 느꼈는데, 그 124.48 정병이 하는 말을 내가 하는 말이라 오해한듯
@에이도비 나는 그래서 다중 사용자 고려 안해서, 그런거 저거는 그냥 그랬잖아 내가 멀티 에이전트 붙이기위해서 한거야
@에이도비 타로사이트에 붙이는 RAG는 니 말대로 할거야. 그건 그런식으로 해야지 싱글톤에 락 붙이면서.
@ㅆㅇㅆ(124.216) 성능(멀티코어 등)과 안정성, 그리고 기능 확장성 이렇게 3가지 중에서 네가 젤 중요시하는 게 기능 확장성이란 거계~~~속 얘기해왔는데 모르겠냐 ㅅㅂ근데 그렇게 확장성 생각하는데 왤케 복잡하고 어렵게 코딩하냐는 거임커스텀 di보다는 네이티브에서 팩토리, 레지스트리, 싱글톤을 쓰는 게 더 낫고내 플젝이었다면 레디스 셀러리 썼을 거라고그리고 니가 자꾸 여러가지 얘기를 꺼내오니까나도 그에 대해서 일일이 답변하는 겆데abc.3개 얘기해놓고 c에 대한 답변은 왜하냐고 지랄하면 뭐 어쩌란 거냐 - dc App
@ㅆㅇㅆ(124.216) 솔직히 네가 di만들어 쓰는 건 이전에도 얘기했듯이 취향이니까 그러려니 하는데 자꾸 이상한 꼬투리를 잡으니까 그게 화가 제일 많이 남 - dc App
@에이도비 아니 이 친구야. 나도 계속 웹 이야기 안했잖아 당연히 랭그래프 이야기하고, 개인 사용자용이라고 한거보면 모르겄냐; 너가 자꾸 웹 이야기하길래 뭔가 했지. 나는 유동 병신새끼 차단해서 니가 걔랑 뭔 이야기한지도 몰랐음
@에이도비 여튼 오해는 풀린거 같네. 걍 유동 새끼 말에 넘어가지마셈. 그새끼 내 스토커인데 내가 뭘하는지도 모름
@에이도비 지금 프로젝트가 2개임. 하나는 네가 본 LLM 여러개 돌리기위해서 했다가 버려둔거(RAG 기능만 구현해둔거) , 그리고 지금 타로 사이트에 붙일려고만들고 있는거. 근데 너가 본 프로젝트는 클라용 RAG 구현해둔거임
@에이도비 사이트에 붙일거면 네 말이 맞지
@ㅆㅇㅆ(124.216) 생각해보니까 다중사용자 어쩌고는 유동이랑 얘기하면서 했던 말인 것 같기도 하고 ㅋㅋ ㅅㅂ 복잡하네 - dc App
@에이도비 나는 너랑 다중사용자 어쩌고 한 적 없음. 그니까 ㅇㅇ 유동이 자꾸 저격하고 너가 걔가 내 저격하는 내용보고 관심가졌잖아? 그 과정에서 유동124.48글을 내글로 착각한거지
@에이도비 나도 그래서 웹이면 네말맞다고 부정 안하잖아. 근데 너가 자꾸 클라인 부분에서 틀렸다하니까 아니라고한거지
@ㅆㅇㅆ(124.216) 아니 사람을 착각하진 않았는데 암튼 이거 생각은 그만 하고 싶다 - dc App
@ㅆㅇㅆ(124.216) 그 글은 읽었음ㅇㅇ 3시에 중국 가야돼서 안그래도 좆같고 복잡해서 이제 뇌 그만 쓰려고 - dc App
다 틀림 ㅅㄱ