이 페이지는 영어 문서의 번역입니다. 명령, 식별자, 예제는 그대로입니다. 런타임 7.24.4 · SDK 2.6.7. 영어 원문
성능 구성과 진단
상태: 활성
범위: 현재 상태
최종 검토: 2026-09-13
담당: ax-code 런타임
도구 프로필 선택
인프라 운영, 예약, 이미지 생성, 특수 분석이 필요 없는 코딩 세션에서는 AX Code 구성의 연결된 공급자에 대해 toolProfile을 coding로 설정합니다.
{
"provider": {
"your-provider-id": {
"options": {
"toolProfile": "coding"
}
}
}
}
your-provider-id를 연결된 공급자 ID로 바꿉니다. 이렇게 하면 파일 검사와 편집, 셸과 백그라운드 작업, 위임, 노트북, 목표, 스킬, 메모리, 검토 검증이 유지됩니다. 웹 도구와 선택적 도구는 기존의 활성화 규칙과 권한 규칙을 그대로 따릅니다. 사용자 지정 도구와 MCP 도구는 기존의 입장 규칙을 유지하며, 요청 크기에 더해질 수 있습니다.
council이나 arena, 운영, 예약, 이미지 생성, 특수 분석 도구가 필요하면 full를 사용합니다. 클라우드 공급자의 기본값은 full입니다. AX Engine은 더 작은 core 기본값을 유지합니다. coding는 추론 effort, 권한, 스냅샷 캡처, 검증 요구를 바꾸지 않습니다. 속도와 작업 성공에 미치는 영향은 모델과 작업량에 따라 다릅니다. 명시적인 추론 제어는 모델 effort를 보십시오.
로컬 준비와 공급자 응답 시간을 나누기
한 번의 실행에 대해 로컬 프로파일링을 켭니다.
AX_CODE_PROFILE_NATIVE=1 ax-code run --model your-provider-id/your-model "Your task"
ax-code session replay YOUR_SESSION_ID --mode export
stderr의 종료 프로필에는 session.insertReminders, session.preparePromptRequest, session.preflight, session.resolveTools, 그리고 스냅샷 track/patch 구간이 들어 있습니다. 이것은 합친 측정값입니다. 중첩되거나 겹치는 구간을 작업의 벽시계 시간인 것처럼 더하면 안 됩니다. 프로파일링 자체도 측정 부담을 더합니다.
기록된 llm.response 이벤트에는 선택적인 timing 객체가 붙습니다.
| 필드 | 의미 |
|---|---|
boundary |
provider-adapter. SDK가 도구 결과를 처리하기 전, 모델 어댑터에서 관측됩니다 |
attempt |
이 LLM.stream 호출 안에서의 어댑터 시도 번호입니다. 다른 필드는 이 시도를 설명합니다 |
setupMs |
LLM.stream에 들어온 시점부터 이 어댑터 디스패치까지의 시간입니다. 재시도에서는 이전 시도와 백오프가 포함됩니다 |
firstContentMs |
비어 있지 않은 첫 텍스트, 추론, 도구 입력 델타, 또는 완료된 도구 호출까지의 디스패치입니다 |
firstTextMs |
비어 있지 않은 첫 텍스트 델타까지의 디스패치입니다. 도구만 있거나 추론만 있는 응답에서는 없습니다 |
streamMs |
어댑터의 종료 프레임까지의 디스패치입니다. 종료 프레임이 관측되지 않으면 없습니다 |
메타데이터 프레임과 스트림 시작 프레임은 내용으로 치지 않습니다. 시간은 단조 시계를 쓰며, 스트림 배압을 포함해 청크가 관측된 시점을 반영합니다. 원시 네트워크 시간이나 서버 추론 시간, TUI 렌더 시간이 아닙니다. CLI 어댑터는 자식 CLI 자신의 작업을 포함할 수 있습니다. 기존의 latencyMs는 더 오래된 혼합 단계 시간을 유지하며, 도구 실행과 스냅샷 작업을 포함할 수 있습니다. 새 시간 필드에는 지속 시간과 시도의 정체만 들어 있습니다.
AX_CODE_PROFILE_NATIVE=1가 없으면 추가 시간 객체는 생략됩니다. 프로파일링은 로컬 진단과 기존 세션 이벤트 로그를 사용합니다. 외부 원격 측정 내보내기를 켜지는 않습니다.
쓸모 있는 비교를 하려면 작업, 저장소 리비전, 공급자 엔드포인트, 정확한 모델, 추론 effort, 도구 권한, 캐시 조건을 일정하게 둡니다. 처음 보이는 응답 시간과, 테스트와 수리 시도를 포함한 검증된 결과까지의 시간을 기록합니다. 요청이 더 작거나 로컬 스냅샷만 더 빠르다고 해서 클라우드 작업이 더 빨리 끝난다고 할 수는 없습니다.
맥락 복구, MCP 발견, 읽기 전용 절차, 독립된 검증이 있는 맞춘 픽스처 비교를 시도하려면 하네스 제어와 검증된 평가를 사용합니다.
요청 크기 이해하기
새 llm.request 이벤트가 ax-code session replay YOUR_SESSION_ID --mode export에 있으며, 요청의 출처를 알 수 있을 때 requestBytes를 포함합니다.
| 필드 | 의미 |
|---|---|
encoding |
canonical-json-utf8. 기존의 정규 지문 표현이 차지하는 바이트 길이입니다 |
system |
따로 조립된 시스템 메시지 배열입니다 |
messages |
시스템 메시지를 포함한, 조립이 끝난 전체 메시지 배열입니다 |
toolDefinitions |
활성 도구의 이름, 설명, 해석된 입력 스키마입니다 |
system는 이미 messages 안에 표현되어 있습니다. 둘을 더하지 마십시오. 배열을 감싸는 프레임은 포함됩니다. 이진 값은 기존의 다이제스트 표현을 쓰므로, 이 크기는 네트워크 페이로드 크기도 아니고 상주 메모리 측정도 아닙니다. 토큰 수도 아닙니다. 모델 입력 회계의 원천은 공급자의 토큰 사용량과 캐시 카운터로 남습니다. 맥락 팩 요약은 더 좁은 단계를 다루며, 모델 입력 전체가 아닙니다. 이전 형식의 이벤트는 이 필드를 생략합니다. 출처를 얻지 못하면 사용할 수 없음이 명시적으로 남습니다.
이 진단이 기록하는 것은 크기와 기존의 해시 및 메타데이터뿐입니다. 추가 프롬프트 본문이나 자격 증명은 저장되지 않습니다. 요청을 토큰으로 나누지 않고, 각 해시에 필요한 정규 직렬화를 다시 사용합니다. 시스템 지침, 도구 정의, 늘어나는 기록 가운데 무엇에 주의가 필요한지 판단할 때는 대응하는 턴의 크기를 비교합니다. 위의 코딩 프로필은 추론 effort를 바꾸지 않고 도구 정의를 줄일 수 있습니다. 그 프로필이 더하는 능력에는 전체 프로필이 계속 남아 있습니다.
중복된 탐색을 피하기
이미 아는 파일을 찾거나 단순히 개수를 셀 때는 좁힌 검색이나 집계 명령 하나를 사용합니다. 경로는 현재 워크스페이스 디렉터리에 맞춰 해석합니다. 패키지 안에서 시작한 세션은 이미 그 패키지를 검색 루트로 갖습니다. 내장 grep은 전방 탐색이나 역참조 없이 ripgrep의 기본 정규식 문법을 사용합니다.
호출 경로 하나에는 조사자 하나를 둡니다. 병렬로 도는 읽기 전용 작업은 서로 다른 산출물과, 맡은 경로나 하위 시스템을 가져야 하며, 브리프에는 이미 있는 증거가 들어 있어야 합니다. 독립된 검토는 별도의 검증 질문을 위해 증거를 다시 볼 수 있습니다. 여러 개의 새 맥락에서 발견을 반복하면, 증거 캐시가 맞아도 모델 라운드가 소모됩니다. 캐시가 맞아도 현재 내용의 검증이나 권한 검사를 건너뛰지는 않습니다.
언어 서버는 이제 기본적으로 필요할 때 시작합니다. 추측에 의한 예열을 켜는 선택과, 첫 의미 질의의 지연과의 교환은 메모리 사용을 보십시오. 프롬프트 지침과 로컬 테스트가 실제 모델 호출이나 물리 RAM의 특정한 감소를 증명하지는 않습니다.