# 컨텍스트 관리

> PentAGI가 각 agent의 체인 중 이전 부분을 요약하여 긴 flows를 모델의 컨텍스트 창 내에 유지하는 방식과 이를 조정하는 설정입니다.

긴 [flows](https://pentagi.com/ko/docs/glossary/#flow)는 어떤 모델이 수용할 수 있는 것보다 더 많은 대화를 생성합니다. PentAGI는 **체인 요약**을 통해 각 [agent](https://pentagi.com/ko/docs/glossary/#agent)의 체인을 적절한 범위 내로 유지합니다. 즉, agent가 턴을 마칠 때마다 이전 섹션은 압축되고 가장 최근 섹션은 크기 제한을 초과하지 않는 한 전체가 보존됩니다. PentAGI가 내장된 모델 카탈로그나 모델 목록을 보고하는 custom endpoint를 통해 모델의 컨텍스트 윈도우를 알고 있고 체인이 여전히 맞지 않는다면, 모델 호출 직전에 한 번 더 압축됩니다. Ollama 모델과 같이 윈도우 크기를 알 수 없는 모델은 이러한 단계를 거치지 않으므로, 컨텍스트가 작은 모델의 경우 아래 크기를 낮추십시오.

```mermaid
flowchart TD
  accTitle: Chain summarization steps after each agent turn and before each model call
  A[Agent turn finished] --> B[Condense each older section into one summary]
  B --> C[Keep the recent sections within their size limits]
  C --> D[Summarize old question-answer pairs]
  D --> E{Next model call: fits the context window?}
  E -->|Yes| F[Send the chain]
  E -->|No| G[Compact to the window size]
  G --> F
```

## [튜닝](https://pentagi.com/ko/docs/concepts/context/#tuning)

기본 설정은 대부분의 모델에 적합합니다. Agents와 대화형 [assistant](https://pentagi.com/ko/docs/glossary/#assistant)는 별도의 설정을 가지며, assistant는 더 많은 최근 기록을 보관합니다.

| 설정                                       | Agents                            | Assistant                                   |
| ---------------------------------------- | --------------------------------- | ------------------------------------------- |
| 최근 섹션 크기 제한                              | `SUMMARIZER_PRESERVE_LAST=true`   | `ASSISTANT_SUMMARIZER_PRESERVE_LAST=true`   |
| 최근 섹션 크기 제한                              | `SUMMARIZER_LAST_SEC_BYTES=51200` | `ASSISTANT_SUMMARIZER_LAST_SEC_BYTES=76800` |
| 단일 [tool](https://pentagi.com/ko/docs/glossary/#tool) 결과 최대 크기 | `SUMMARIZER_MAX_BP_BYTES=16384`   | `ASSISTANT_SUMMARIZER_MAX_BP_BYTES=16384`   |
| 보존할 질문-답변 섹션 수                           | `SUMMARIZER_MAX_QA_SECTIONS=10`   | `ASSISTANT_SUMMARIZER_MAX_QA_SECTIONS=7`    |
| 해당 섹션의 크기                                | `SUMMARIZER_MAX_QA_BYTES=65536`   | `ASSISTANT_SUMMARIZER_MAX_QA_BYTES=76800`   |
| 하나의 요약으로 압축하지 않을 최근 섹션                   | `SUMMARIZER_KEEP_QA_SECTIONS=1`   | `ASSISTANT_SUMMARIZER_KEEP_QA_SECTIONS=3`   |

`false`을 사용하면 최근 섹션에는 자체 크기 제한이 없으며 단일 도구 결과 제한도 적용되지 않습니다.

`SUMMARIZER_USE_QA`은 질문-답변 전략을 활성화하며(기본값: 켜짐), `SUMMARIZER_SUM_MSG_HUMAN_IN_QA`는 해당 전략 내에서 사용자 본인의 메시지도 요약합니다(기본값: 꺼짐). 둘 다 agent에만 적용됩니다. assistant는 항상 이 전략을 사용하며 사용자의 메시지를 절대 요약하지 않습니다.