2026-08-01T07:43:48.592Z

랭체인 토큰 카운터: 감사 추정 및 사용 커버링

LangChain 모델 호출 전에 근접을 사용, 그 후 제공자의 사용, 그리고 예상 호출 행사를 사용하여 결실된 토큰 증거를 잡습니다.

유용한 대답은 LangChain 토큰 카운터 하나를 선택하지 않습니다. 모델 호출 전에 count tokens approximately() 를 실행하면 빠른 컨텍스트 압력 추정치가 필요합니다. 본 입력, 출력, 캐시 또는 추론 사용이 필요할 때 호출 후 제공자가 보고한 AIMessage.usage metadata 를 읽으십시오. 그 다음 사용 기록과 예상되는 모델 호출 매니페스트를 비교하십시오. 그 마지막 보험 체크 없이, 매번 전화 한 번도 계산되지 않았기 때문에, 순조로운 통계는 낮을 수 있습니다. 그 차이점은 에이전트에게 중요합니다. 메시지의 역사에 대한 추정은 맥락을 단축하는지 여부를 결정하는 데 도움이 될 수 있습니다. 제공자가 처리한 것을 증명할 수 없으며, 청구한 것을 증명할 수 없으며, 재시험이 사용된 사용 여부를 증명할 수 없거나, 둥지를 틀어 놓은 모델 호출이 다시 호출을 피할 수 있는지 증명할 수 없습니다. 따라서 운영 문제는 다음과 같습니다. 이 결정을 지지하는 카운팅 철도는 무엇이며, 우리가 예상했던 모든 전화가 도착했는지 어떻게 알 수 있을까요? 근접과 제공자 사용은 별도의 증거로 간주한다. 랭체인의 현재 파이썬 참조는 count tokens approximately() 를 간단한 근접으로 설명합니다. 기본적으로는 문자를 4개로 나누고, 메시지에 3개의 토큰을 추가하고, 보수적으로 라운드합니다. 함수는 메시지 내용과 역할을 계산합니다. 또한 AI 도구 호출, 도구 메시지 호출 ID, 선택적 이름, 고정된 이미지 허용 및 tools 논쟁을 통해 제공 된 도구 스케마를 설명합니다. 문서에서는 정확한 계산을 위해 모델 특수한 토큰화가 필요하다고 명시되어 있습니다. 이 함수는 호출하기 전에 유용하게 사용할 수 있습니다. tools=bound tools 의 세부 사항은 화장품이 아닙니다. 구현은 제공된 각 스키마를 일련화하고 근접에 그 문자를 추가합니다. 모델이 도구에 묶여 있지만 카운터가 messages 만을 수신하면, 추정은 큰 반복 입력 표면을 생략할 수 있습니다. 반대로, 도구를 전달하는 것은 결과를 정확하게 제공하지 않습니다. 그것은 일반적 비율과 고정된 지분을 기준으로 추정되는 것으로 남아 있습니다. 호출 후 반환된 AIMessage 에 있는 메타데이터를 사용: 랭체인은 UsageMetadata 를 input tokens , output tokens , total tokens 주변으로 표준화하여 옵션 입력 및 출력 세부 지도를 제공합니다. 그 자체의 예는 캐시 생성, 캐시 읽기, 오디오 및 추론을 포함합니다. 선택적이라는 것은 중요한 단어입니다. 실종된 cache read 필드는 값이 0이라는 증거가 아니라 가용성이 없는 증거입니다. 0 로 부재된 세부사항을 채우지 않고 저장된 상태에서 그 구별을 유지하십시오. 복수의 호출에 대해, UsageMetadataCallbackHandler 는 AIMessage.usage metadata 를 모델에 걸쳐 집합합니다: 집합은 편리하지만 집합은 처리자가 보았던 것을 대답하지만 작업 흐름이 뭐라고 부르어야 했는지는 아닙니다. 모든 모델 시도에 안정적인 call id , attempt id , 해결된 공급자/모델 이름 및 시간표를 지정하십시오. 다시 시도하는 것은 두번째 시도입니다. 첫 번째 카운터에 대한 수정이 아닙니다. 모델 호출 행사를 중심으로 커버리지 테스트를 구축 예상된 작업에서 시작하세요, 사용 줄이 있는 것에서 시작하지 마세요. 4단계 경주에서, 매니프트는 plan:1 , retrieve:1 , draft:2 , 그리고 verify:1 를 요구할 수 있습니다. 후자는 시도 번호입니다. 검증자는 다음으로 예상된 시도를 세 가지 증거 형태로 결합합니다. 메시지와 필요한 도구 스케마를 포함한 비행 전 근접성; 반환된 메시지 또는 복귀 호출에서 제공자가 보고한 사용; 작업 수준 인수표가 단계가 예상된 효과를 가져왔다고 합니다. 결합은 하나의 전체보다 더 유용한 상태를 생성합니다. 국가 무엇이 존재하는가? 안전한 해석 provider reported 호출 아이덴티티와 함께 제공자 사용 그 시도에 대한 관찰된 사용 approximate only 비행 전 추정, 제공자 사용은 없습니다 컨텍스트 추정; 청구 사용은 사용할 수 없습니다 missing call 표면 행, 관찰은 없습니다 기기 격차 또는 스테이지가 실행되지 않았습니다 detail unavailable 제공자 전체, 예상되는 캐시/논리 세부 사항이 없어 전체는 사용할 수 있습니다. 부품 분석은 차단됩니다. duplicate attempt 한 시도 ID에 2개의 사용 줄 집합 위험; 합하기 전에 정체성을 정립 이 조형물은 의도적으로 납득할 수 있는 것처럼 보이지만 아직 완성되지 않았습니다. 4개의 예상된 전화가 포함되어 있습니다. 둘은 공급자 사용, 하나는 대략적인 것으로, 다른 하나는 관찰이 없습니다. 두 공급자 줄은 1,451개의 토큰으로 합쳐집니다. 그 숫자는 수학적 정확성과 운영적으로 불완전합니다. 감사를 수행: 그 결과는 다음과 같습니다. 두 가지 증거 형태를 가진 두 번의 호출은 또한 추정치가 그 표기를 유지해야 하는 이유를 보여줍니다. 근접은 한 번의 호출에 대해 제공자 전체보다 5.0% 낮았고 다른 통화에서는 16.5% 낮았다. 이 정렬은 이러한 비율을 일반화한다고 주장하지 않습니다. 값은 고정된 테스트 데이터입니다. 그것은 감사가 관찰된 공급자 전체에서 추정치를 유지하고 어느 한 예를 보편적인 캘리브레이션 요소로 취급하지 않고 의견 불일치를 드러낼 수 있음을 증명합니다. 현행 구현에 대한 한 가지 미묘한 세부 사항은 주의를 기울여야 합니다. 랭체인의 선택적 use usage metadata scaling=True 는 가장 최근의 AI 메시지를 사용으로 가져가며 일관된 공급자가 필요합니다. 출처는 1.0 와 1.25 사이의 그 요소를 클램프합니다. 이것은 유용한 보수적인 역사 추정일 수 있습니다. 그것은 청구서, 혼합 공급자 또는 결실된 통화에 대한 조화 알고리즘이 아닙니다. 각 카운터에서 운전할 수 있는 차량을 결정합니다. 저장된 모든 번호에 결정 경계를 붙여넣어 주세요. 다음으로 근접을 사용한다. 역사가 부드러운 컨텍스트 한계에 접근하기 전에 경고합니다. 전송하기 전에 두 개의 프롬프트 또는 툴 스키마 버전을 비교하십시오. 대체 가능한 컨텍스트를 요약하거나 검색하거나 삭제 여부를 결정한다. 다른 메시지 또는 도구 스케마를 포함하는 상대적인 효과를 추정한다. 제공자의 보고된 사용량을 사용하여: 완료된 모델 시도에 관측된 입력 및 출력 속성은; 제공자가 반환할 때 캐시, 오디오 또는 추론 구성 요소를 분리하고, 시도를 통해 공급자/모델의 총수를 조정하는 것 값은 날짜가 된 가격 소스를 사용하여만 계산하고, 가용되지 않은 세부 사항에 대해 명시적인 처리로만 계산합니다. 단 하나의 카운터를 사용하여 증명하지 마십시오: 예상되는 모든 모델 호출이 도구로 사용되었는지; 도구 호출이 목적지에 도달했다는 점 예상되는 납품권이 존재한다는 점 재시험이 안전하거나 유용하다는 점 낮은 토큰 실행이 원하는 결과를 얻었다. 그 주장들은 전화의 커버링과 결과 증거가 필요합니다. 콤팩트 구현은 4가지 프로모션 규칙을 시행할 수 있습니다. 1. 예상되는 모든 attempt id 에는 정확히 하나의 관찰이 있습니다. 2. 관찰된 모든 호출은 approximate 또는 provider reported 로 표기되어 있습니다. 3. 도구가 탑재된 비행 전 추정치들은 스키마 세트가 카운터로 전달되었다는 것을 증명합니다. 4. 제공자 또는 캐시 세부 사항이 없어지는 것은 null /가 사용할 수 없으며, 이를 필요로 하는 결정만을 차단합니다. 그 문턱은 만연적으로 100%가 될 필요는 없습니다. 비생산 미리보기에서는 대략적인 포괄만 허용될 수 있습니다. 예산 알림이나 고객 회담은 안 됩니다. 소비자 옆에 정책을 암호화: context warning 는 추정치를 받아들일 수 있으며, cost reconciliation 는 완전한 공급자 사용 및 고유의 시도 ID를 요구합니다. 최적화하기 전에 경계를 확인 합리적인 실패는 간단합니다. 실행 경계에 대한 감사 커버리지를 예측하기 전에, 관찰하기 후에. 세 가지 작업이 끝나면만 최적화하십시오. 컨텍스트 추정치가 높다면, 단축하기 전에 그 입력값을 검사하십시오. 전체 도구 집합이 포함되어 있었나요? 다음 결정에 아직 도구 결과가 필요합니까? 긴 메시지는 지속 가능한 결정 결정 또는 대체 가능한 이야기입니까? 잘못된 문맥을 제거하면 달리기가 저렴하고 신뢰할 수 없게 될 수 있습니다. 만약 공급자 사용량이 예상치 못한 수준이라면 축하하기 전에 전화가 빠진지 확인하세요. 확정 스트리밍 덩어리는 최종 메시지로 결합되었고, 콜백은 자식 실행 가능한 것으로 전파되었고, 재시험은 다른 시도 ID를 받았으며, 예상되는 검증기 단계가 실제로 실행되었습니다. 실종된 기간을 가진 비용 그래프는 최적화 결과가 아닙니다. 캐시 저장이 중요하다면, 제공자별 세부 지도를 요구하고 사용가능성을 기록하십시오. 랭체인은 공통된 봉투를 제공하지만 제공자는 반드시 모든 구성요소를 채우지 않습니다. 실종된 키로 캐시 실종을 추론하지 마십시오. 같은 제공자, 모델, 프롬프트/툴 표면, 캐시 상태 및 결과 요구 사항과 같은 것과 비교하십시오. 마지막으로, 과제 영수증에 기호적 증거를 첨부하십시오. 문서 검토 에이전트에 대해서는 영수증은 소스 개정, 필요한 섹션 확인, 실패한 주장 및 출력 해시 포함될 수 있습니다. 성공한 호출에 대한 토큰은 최종 유물이 없는 경우 여전히 약한 명칭입니다. 이 두 철도 설계는 일반적인 관찰 가능한 스택보다 의도적으로 좁습니다. 그것은 구체적인 결정에 대답합니다. LangChain 토큰 번호는 맥락 추정, 관찰 된 공급자 측정 또는 비용 또는 최적화 주장을 유발할 수 없는 불완전한 시각입니다. Sidewisp는 현재 비공개 프리뷰 단계입니다. 토큰 사용 및 추정 비용 분석은 계획되어 있고 배포되지 않습니다. 제품 방향은 비용 신호를 유용한 진보와 검증된 결과와 연결하는 동시에 증거와 불확실성을 가시적으로 유지하는 것입니다. 만약 그 운영 경계가 당신이 에이전트를 운영하는 방식과 일치한다면, 당신은 개인 미리보기에 참여를 할 수 있습니다. 출처 LangChain 파이썬 참조: count tokens approximately 대략적인 카운터에 대한 LangChain 소스 스냅샷 LangChain 메시지 가이드: AIMessage 에서 토큰 사용 랭체인 참조: UsageMetadata 랭체인 참조: UsageMetadataCallbackHandler