- 추론 API가 암호화된 추론·검색 결과·압축 상태·서브에이전트 메시지를 공급자 내부에 숨기면서, 사용자가 보유한 대화 기록은 완전한 세션이 아니라 일부만 보이는 사본이 되고 있음
- 세션 이식성은 다른 모델에서 같은 출력을 재현하는 것이 아니라, 기존 공급자의 ID 조회나 복호화 없이 검사·내보내기·재생·감사·삭제할 수 있는 의미상 완전한 기록을 확보하는 것임
- OpenAI, Anthropic, Google의 저장형 응답과 비공개 추론, 호스팅 검색, 불투명한 압축은 같은 생태계 안의 연속성을 높이는 대신 다른 공급자가 이어받을 수 없는 공급자 봉인 상태를 축적함
- 다중 에이전트에서는 위임 내용과 에이전트 간 메시지까지 암호화되고 자동 압축과 숨겨진 지시가 결합돼, 잘못된 파일 수정이나 비밀 유출이 발생해도 어떤 작업을 지시받았는지 감사하기 어려움
- 이식 가능한 API는 로컬 이벤트 로그를 기준 기록으로 삼고 저장을 명시적으로 선택하게 해야 하며, 검색·압축·에이전트 통신·산출물의 읽을 수 있는 전체 기록과 사용자 통제 아래의 증류(distillation) 를 허용해야 함
추론 API가 바꾸는 세션 소유권
- 초기 추론 API의 약속은 입력을 보내고 출력을 받은 뒤 양쪽을 보관하면, 대화를 검사·보관·재생하거나 다른 모델에 넘길 수 있다는 것이었음
- 이 추상화는 처음부터 완전하지 않았음
- 프롬프트 캐시는 공급자의 GPU에 존재함
- 모델마다 토큰화가 다르고 샘플링도 의도적으로 재현되지 않음
- 그래도 지시, 메시지, 도구 호출과 결과를 담은 의미적 기록은 사용자가 소유할 수 있었고, 충분한 능력의 다른 모델이 기존 작업을 이해해 이어받을 수 있었음
- 최근 API는 텍스트와 함께 공급자에 종속된 상태를 반환함
- 비용이 청구되지만 불투명한 암호문이나 제한적인 요약으로만 돌아오는 추론 토큰
- 모델이 본 원문을 클라이언트가 받지 못하는 웹 검색
- 원래 공급자만 복호화할 수 있는 압축 문맥
- 애플리케이션에서 볼 수 없는 서브에이전트 지시와 메시지
- 다른 환경에서 해석할 수 없는 파일·벡터 저장소·컨테이너·캐시 참조
- 공급자 서버에 저장된 ID로만 접근하는 응답과 대화 상태
- 각각에는 사용자 편의나 품질을 위한 근거가 있지만, 합쳐지면 로컬 기록은 세션 전체가 아니라 공급자가 운영 상태를 소유한 세션의 부분 뷰가 됨
세션 이식성을 판별하는 다섯 가지 기준
- 이식 가능하다는 것은 모델을 바꿔도 다음 토큰이 같아야 한다는 뜻이 아님
- 모델마다 능력, 학습된 성향, 문맥 창, 도구 사용 방식이 다르며 출력 자체도 비결정적임
- 내보낸 기록에는 새 모델이 작업을 계속할 만큼 이해 가능한 정보가 있어야 하며, 이전 공급자가 ID를 조회하거나 암호문을 풀고 검색 결과나 요약을 복원할 필요가 없어야 함
- 검사(Inspection): 모델이 본 정보, 도구가 수행한 작업, 에이전트끼리 주고받은 내용을 사용자가 볼 수 있어야 함
- 내보내기(Export): 별도로 다운로드할 수 있는 일반 산출물을 제외하면 세션 자체가 완결돼야 함
- 재생(Replay): 다른 구현이 의미상 동등한 문맥을 재구성할 수 있어야 함
- 감사(Audit): 시스템이 특정 행동을 한 이유를 사후에 사람이 설명할 수 있어야 함
- 삭제(Deletion): 세션이 의존하는 서버 측 사본을 모두 식별하고 제거할 수 있어야 함
- 서버 데이터의 키인 응답 ID는 대화 기록이 아니며, 사용자가 풀 수 없는 암호문도 사용자 통제 상태가 아님
- 인용 URL 목록만으로는 검색 과정에서 모델 문맥에 실제로 들어간 증거 자료를 대신할 수 없음
사용자가 풀 수 없는 암호화
encrypted_content라는 이름은 사용자 통제형 개인정보 보호 기능처럼 보이지만, 일반적으로 클라이언트는 읽을 수 없고 공급자만 열 수 있는 캡슐임- 공급자가 키를 선택하고 자체 모델을 위해 복호화하며 어느 환경에서 재생할 수 있는지도 결정하므로, 더 정확한 명칭은 공급자 봉인 상태(provider-sealed state) 임
- 공급자 봉인은 실제 개인정보 보호 이점을 제공할 수 있음
- OpenAI는
store: false에서 암호화된 추론을 클라이언트에 반환하고, 다음 요청 때 중간 상태를 저장하지 않은 채 메모리에서 복호화할 수 있음 - 특히 Zero Data Retention 고객에게 서버 측 대화 저장을 요구하는 방식보다 나음
- OpenAI는
- 그러나 이 암호화는 추론 공급자에게 데이터를 숨기지 않고 사용자에게만 숨김
저장형 대화가 기록을 포인터로 바꾸는 방식
- OpenAI Responses API는 기본적으로 응답을 저장하며, 문서상 응답 객체를 최소 30일 보존함
store: false를 사용하면 데이터가 OpenAI 서버에 저장되지 않아 기존 completions 방식에 가까워짐- Gemini Interactions API도
store: true가 기본값임- 유료 등급은 상호작용을 55일 보존함
- 무료 등급은 1일 보존함
- 서버 저장은 애플리케이션이 보내는 데이터량을 줄이고, 숨겨진 추론과 도구 상태를 유지하며, 캐시 라우팅을 쉽게 함
- 하지만 로컬 애플리케이션이 사용자 메시지와 최종 텍스트만 기록한다면
previousResponseId에 쓰이는 응답 ID는 통제할 수 없는 외부 데이터베이스의 외래 키가 됨
공개되지 않는 추론 기록
- 주요 AI 연구소는 원시 사고 과정(chain of thought)을 공개하지 않을 이유가 있다고 보고, 비공개 가중치 모델의 추론 토큰을 일반적으로 API에 노출하지 않음
- OpenAI에서는 저장형 응답의 이전 추론을
previous_response_id로 복구할 수 있음store: false에서는 클라이언트가encrypted_content를 보관해 다음 요청에 다시 전달해야 함reasoning.context: "all_turns"로 이후 생성에 사용할 수 있어도 저장된 추론은 계속 불투명함
- Anthropic은 암호화된 전체 thinking을
signature필드로 반환함- 활성화할 수 있는 읽기 가능한 thinking 텍스트는 원시 사고 과정이 아니라 다른 모델이 만든 요약임
- 도구 사용 턴에서는 thinking 블록을 변경하지 않고 돌려줘야 함
- thinking 블록은 이를 생성한 모델에 묶여 있어 모델을 바꿀 때 제거해야 하므로 Anthropic 내부에서도 이식을 목표로 하지 않음
- 이런 방식은 같은 생태계 안의 연속성은 제공하지만, 다른 공급자의 모델이 해석할 수 있는 이식 가능한 대화 기록을 만들지는 못함
호스팅 검색이 남기는 기록의 구멍
- 클라이언트 측 검색 도구는 질의, 검색 시각, 결과 URL과 제목, 추출 구절을 기록할 수 있음
- 사용자는 순위와 구절을 검사하고 페이지를 다시 가져오거나 사본을 저장해 다른 모델에 같은 증거를 전달할 수 있음
- 호스팅 검색에서는 공급자가 비공개 도구 루프를 실행함
- OpenAI, Google, Anthropic은 검색 행동, 인용, 선택적인 출처 URL을 제공하지만 답변 생성에 사용된 전체 텍스트 문맥은 제공하지 않음
- URL 내용은 바뀔 수 있고 모델에는 더 짧은 구절만 전달됐을 수 있어 안정적인 재생 기록이 아님
- 다음 모델이 특정 출처를 비교하거나 논쟁적인 수치를 재검증하려 해도 결과 순위, 추출 구절, 필터링된 자료, 이전 모델이 본 정확한 증거를 받지 못함
- 인용 페이지를 다시 가져와도 당시 사용된 데이터를 정확히 재현할 수 없으므로, 다음 요청이 다른 곳으로 이동한 뒤에도 이전 공급자가 세션의 일부로 남음
- 호스팅 검색에는 질의, 결과 메타데이터, 검색 구절, 타임스탬프, 보존된 콘텐츠를 담는 전체 충실도 내보내기가 필요하며, 간결한 인용만 유일한 기록이 되어서는 안 됨
불투명한 문맥 압축
- 긴 에이전트 세션에는 압축이 필요하며, 클라이언트가 통제하는 읽기 가능한 요약은 손실이 있더라도 검사·편집·이전할 수 있음
- OpenAI의 서버 측 압축은 사람이 해석하도록 만들어지지 않은 암호화된 compaction 항목을 반환함
/responses/compact는 클라이언트가 그대로 다시 전달해야 하는canonical next context window를 반환함- OpenAI는 압축된 의미를 이어갈 수 있지만 다른 공급자는 암호문과 최근 문맥 일부만 받게 됨
- 불투명한 압축은 기술적으로 불가피하지 않음
- Anthropic의 서버 측 압축은 읽을 수 있는
content필드가 있는compaction블록을 반환함 - 클라이언트가 사용자 지정 요약 지시를 제공할 수 있고, 결과를 검사하거나 다른 모델에 전달할 수 있음
- 모든 공급자에서 클라이언트 측 압축도 가능함
- Anthropic의 서버 측 압축은 읽을 수 있는
- OpenAI의 봉인 산출물은 일반 요약보다 모델 고유 상태를 더 잘 보존해 원래 모델에서 성능이 높을 수 있지만, 선택적 최적화로 제공하면서 읽을 수 있는 인계 요약도 함께 제공해야 함
다중 에이전트의 숨겨진 위임과 통신
- 다중 에이전트 시스템에는 하나의 기록이 아니라 세션 트리와 에이전트 간 메시지 흐름이 존재하므로 이식성 문제가 더 커짐
- OpenAI Responses Multi-agent 베타는
multi_agent_call,multi_agent_call_output,agent_message항목을 추가함spawn_agent예제의message인자는 암호화돼 있음- 에이전트 간 메시지는
encrypted_content만 포함함 - Multi-agent를 활성화하면 클라이언트가 요청하지 않아도 모든 에이전트에 서버 측 자동 압축이 적용됨
- 추론 요약은 지원되지 않으며, 개발자가 편집하거나 제거할 수 없는 루트 및 서브에이전트 지시도 주입됨
- 그 결과 봉인된 위임과 메시지, 개별적으로 자동 압축된 문맥, 숨겨진 추론, 공급자 호스팅 오케스트레이션이 하나의 이전 불가능한 상태 묶음을 형성함
- 2026년 6월 오픈소스 Codex 클라이언트에는
Encrypt multi-agent v2 message payloads변경이 적용됨- Responses API가 부모 모델의 도구 인자를 암호화함
- Codex가 암호문을 전달하면 API가 자식 모델을 위해 내부적으로 복호화함
- Codex의
InterAgentCommunication.content는 비어 있어 정확한 작업 지시가 읽을 수 있는 실행 기록과 이력에 남지 않음
- 자식 에이전트가 잘못된 파일을 수정하거나 비밀을 유출하고, 다른 작업을 중복하거나 잘못된 가정을 따랐을 때도 사용자는 무엇을 지시받았는지 확인할 수 없음
- Codex 공개 이슈는 암호화 전달과 별도로 읽을 수 있는 감사 사본을 보존할 것을 요구함
- 이는 최소한의 설계이며, 에이전트 간 평문 메시지가 기본값이어야 함
세션을 옮길 자유가 필요한 이유
- 대부분 사용자가 세션 중간에 모델을 바꾸지 않더라도, 이동 가능성은 사용자와 공급자의 관계를 바꿈
- 세션 이전이 필요한 상황에는 모델 폐기, 서비스 장애, 가격 변경, 다음 요청을 차단하는 정책, 기밀 단계의 로컬 실행, 감사자의 사후 재구성이 포함됨
- 에이전트가 세션을 길게 만들면서 코딩·연구 세션에는 수일간의 결정과 증거가 쌓이고, 개인 비서는 수년에 걸친 기록을 축적할 수 있음
- 사용자가 다른 곳에서 계속할 수 있으면 공급자는 모델 품질, 가격, 신뢰성, 신뢰를 놓고 경쟁해야 함
- 누적 문맥을 한 공급자만 해석할 수 있으면 사용자가 떠나기 어려운 불리한 유인 구조가 생김
이식 가능한 추론 API의 원칙
- 로컬 이벤트 로그가 기준 기록이어야 함
- 서버 저장은 이를 복제하거나 가속할 수 있지만, 클라이언트는 서버 ID 조회 없이 세션을 재구성할 수 있어야 함
- 저장은 명시적 선택이어야 함
store: false는 사용하기 쉽고 문서화돼야 하며 가급적 기본값이어야 함- 보존이 필요한 기능은 사용하는 시점에 이를 알려야 함
-
불투명한 항목이 의미를 독점해서는 안 됨
- 암호화된 추론, 압축, 도구 서명은 같은 공급자에서 품질을 높이는 용도로 포함할 수 있지만 읽을 수 있는 공급자 중립적 인계 표현도 제공해야 함
- 호스팅 도구는 전체 충실도 로그를 남겨야 함
- 정확한 입력과 출력, 증거, 필터링, 출처, 타임스탬프, 콘텐츠 해시를 기록해야 함
- 서브에이전트 통신은 감사 가능해야 함
- 각 에이전트의 정확한 작업, 메시지, 결과, 계보, 모델, 도구 권한을 읽을 수 있게 보존해야 함
- 압축은 검사 가능해야 함
- 읽을 수 있는 요약, 요약 생성에 사용한 지시, 버린 내용을 이해할 수 있는 계보를 반환해야 함
-
산출물은 내보낼 수 있어야 함
- 파일, 컨테이너 출력, 검색 스냅샷, 생성 미디어를 콘텐츠 주소 기반 로컬 아카이브로 다운로드할 수 있어야 함
증류와 모델 계층의 종속성
- 미국의 일부 대형 비공개 가중치 연구소는 외부 증류에 적대적인 태도를 강화하고 있음
- Anthropic은 2026년 2월 게시물에서 DeepSeek, Moonshot, MiniMax의 활동을
distillation attacks라고 부름- 상업 약관은 고객이 출력을 소유한다고 정하면서도 경쟁 AI 모델 훈련에 서비스 출력을 사용하는 행위를 금지함
- 동시에 자체 게시물에서는 선도 연구소가 자기 모델에 적용할 때 증류를 널리 쓰이는 합법적인 훈련 방법으로 인정함
- Anthropic은 모델 개발을 위해 로봇으로 공개 웹 데이터를 수집하고 책을 절단해 스캔했으며, OpenAI도 자유롭게 접근 가능한 공개 인터넷 콘텐츠로 훈련한다고 밝히고 이를 공정 이용이라고 주장해 왔음
- 두 회사는 내부에서 더 작은 모델을 만들 때 증류를 일반적인 방법으로 취급함
- OpenAI는 강한 OpenAI 모델의 출력으로 작은 OpenAI 모델을 미세 조정하는 자사 API 증류 워크플로도 제공했음
- 인간이 인터넷에 올린 방대한 작업에서는 기계가 학습할 수 있어야 한다고 요구하면서, 연구소가 만든 출력에서는 다른 기계가 학습하지 못하게 하는 도덕적 비대칭이 존재함
- 증류는 비싼 프런티어 모델의 능력을 더 작고 저렴하며 빠른 모델로 옮길 수 있음
- 로컬·오프라인·제약된 하드웨어 또는 사용자 통제 환경에서 실행할 수 있음
- 경쟁을 늘리고 API가 사라져도 역량을 보존하며 일반 작업의 연산량과 에너지 사용을 줄일 수 있음
사용자가 보장받아야 할 최소한의 자유
- 사용자는 계정을 닫은 뒤에도 세션을 보관하고 다른 모델에 넘길 수 있어야 함
- 새 모델이 다른 판단을 내리거나 질문하고 성능이 낮을 수는 있지만, 이전 모델이 본 사용자 이력·증거·계획·위임 작업 대신 암호문만 받아서는 안 됨
- 상태 보존형 API 자체가 문제가 아니라, 더 나은 성능이 사용자 통제 감소와 결합되는 것이 문제임
- 서버 저장은 선택 사항이어야 하고, 호스팅 도구는 관찰 가능해야 하며, 압축은 읽을 수 있고 에이전트 통신은 감사 가능해야 함
- 비공개 추론에도 최소한 이식 가능한 인계 기록이 필요하며, 증류는 더 높은 장벽을 정당화하는 금기가 아니라 역량을 더 널리 이용하게 하는 경로가 되어야 함