Context window 관련해서 질문드립니다 :)
안녕하세요 :) 저번에 답변이 많이 도움이 됐었습니다 ㅎㅎ
이번에 여쭤보는건 사실 해당 모델에 대한 것은 아니나, LLM을 더 제대로 사용하려다보니
막히는 부분이 있어서 혹시나 하는 마음과 함께 해당 부분에 대해서 질문 드립니다.
LLM과 대화를 시작하기 전에 context window에 미리 데이터를 넣어놓고, 이후에 대화를 시작하고 싶은데요.
그 이유는 max_input_tokens=2048 정도로 작은데에 비해, context window = 131072로 매우 컸기 때문입니다.
그래서 비록 context window가 휘발성 히스토리 보관소이지만, 충분히 사용할 수 있을 것 같아서 사용해보려는데,
아무리 찾아도 대화 시작 전에 context window에 데이터를 넣을 수 있는 방법이 보이지 않아서 혹시나 하는 마음에 여쭤봅니다.
다른 방법으로는 외부에서 max_input_tokens 단위로 split을 하고,
호출을 하면서 context window에 차곡차곡 쌓이게 하는 방식을 고려중이긴 합니다.
하지만 공간이 큰 context window에 바로 넣을 수 있다면 그것이 더 옳고 편한 방식이라 생각되서 방법을 강구중입니다.
혹 아시는 바가 있거나 떠오르시는게 있다면 고견 부탁드리겠습니다 :)
안녕하세요, context window에 미리 데이터를 넣는다는게 정확히 어떤걸 의미하는지 모르겠지만 RAG시스템 구축하시는거 같습니다.
간단한 RAG 시스템을 구축하려면 준비된 데이터를 문장이나 문단단위로 분리한 뒤 임베딩 모델을 이용해 임베딩화 하여 저장한다음 질문이 들어올 때 마다 질문과 유사도가 가장 높은 n개를 구한 뒤 아래와 같은 프롬프트를 이용하여 추론하시는걸 추천합니다.
instruction = """contents: {N_data_with_high_similarity}
Q: {question}"""
messages = [
{"role": "user", "content": f"{instruction}"}
]