Google ADK 2.13.0, 유형 안전 라우팅과 실시간 음성 추가
Google의 오픈 소스 Python 에이전트 개발 키트 v2.13.0은 10월 23일 GitHub에 게시되었으며 메모 제목은 10월 22일입니다. 주요 내용에는 안정 버전으로 승격된 12가지 기능, TypeSafe Jev 분류자 노드, 바지인 기능이 있는 라이브 오디오, 실험적인 MongoDB 세션 및 메모리 서비스가 포함됩니다. 이는 다양한 업그레이드 및 데이터 보존 위험이 있는 고유한 기능입니다.
ADK 2.13.0은 에이전트 워크플로 표면을 변경합니다.
Google의 오픈소스 Python용 에이전트 개발 키트가 10월 23일(UTC) GitHub에 v2.13.0을 출시했습니다. 릴리스 제목에는 변경 세트가 10월 22일로 표시되므로 두 날짜 모두 중요합니다. 10월 22일은 노트의 버전 날짜이고 10월 23일은 GitHub의 게시 타임스탬프입니다. 주요 내용에는 12가지 실험 기능을 안정적인 상태로 승격시키는 것, 유형화된 분류자 노드, 중단 지원을 통한 라이브 오디오 상호 작용, MongoDB 지원 세션 및 메모리, 성능 변경이 포함됩니다. 안정성 향상은 기능 레지스트리에 대한 프로젝트 유지관리자의 설명입니다. 자체 에이전트 그래프 및 통합을 테스트하지 않고 모든 종속 애플리케이션을 업그레이드할 수 있다는 것을 증명하지는 않습니다.
분류자는 일반 채팅 통화 없이 라우팅할 수 있습니다.
새로운 'TypesafeClassifier' 및 'ClassifierNode'는 라우팅 워크플로에 TypeSafe의 Jev 모델을 사용합니다. 릴리스 노트에 따르면 Jev는 한 번의 정방향 패스에서 보정된 확률을 반환하며 이러한 좁은 선택에 대해 LLM을 사용하는 것보다 빠릅니다. 개발자는 이러한 노드를 사용하여 사용자 요청을 알려진 워크플로로 라우팅하거나, 지원되지 않는 범주를 거부하거나, 불확실한 입력을 에스컬레이션할 수 있습니다. 주목할만한 엔지니어링 변경은 뚜렷한 모델과 출력 계약이 있는 그래프의 명시적 분류자 단계입니다. 이 참고 사항은 모든 도메인에 걸쳐 보편적으로 측정된 대기 시간이나 정확성 개선을 제공하지 않으므로 라우팅 정책을 변경하기 전에 대표 요청에 대한 주장을 확인해야 합니다.
분류자 라우팅에는 기권 경로가 필요합니다. 최고 점수가 준우승자보다 약간 높은 경우에는 부작용이 있는 도구에 요청을 보내는 것이 설명을 요청하는 것보다 나쁠 수 있습니다. 평가 세트에는 모호한 다국어 요청과 반대되는 문구가 포함되어야 하며 팀은 규칙 기반 또는 이전 LLM 라우터와 잘못된 경로를 비교해야 합니다. 에이전트를 사용하여 레이블 세트 및 임계값의 버전을 지정합니다. 보정된 확률은 보정에 사용된 분포와 레이블에서만 의미가 있습니다. 새로운 고객 집단이 이를 바꿀 수 있습니다. 이는 Google에서 주장하는 측정항목이 아닌 릴리스의 기능 형태에 따라 제안된 채택 테스트입니다.
라이브 오디오와 지속성은 다양한 문제를 해결합니다
이번 릴리스에는 Gemini 음성-텍스트 및 텍스트-음성 통합과 함께 사용자의 음성 끼어들기(barge-in)를 지원하는 실시간 음성 경로가 추가되었습니다. 끼어들기란 한 차례의 음성 응답이 끝날 때까지 기다리지 않고 사용자가 진행 중인 응답을 중단할 수 있다는 뜻입니다. 이는 접근성 및 대화 제어에 중요하지만 상태 처리가 변경됩니다. 즉, 음성이 중단되면 에이전트가 텍스트를 생성하거나 도구 작업을 시작했을 수 있습니다. 파일럿은 중단으로 인해 생성만 취소되는지, 도구 작업도 취소되는지, 아니면 단순히 사용자가 듣는 내용이 변경되는지 정의해야 합니다. 공개 노트는 기능을 설정하고 가이드를 연결합니다. 모든 애플리케이션의 취소 의미를 정의하지는 않습니다.
Google은 또한 세션을 유지하고 실행기 복제본 간에 공유할 수 있는 'MongoDbSessionService'와 임베딩이나 벡터 인덱스 없이 키워드 일치를 통해 이전 턴을 호출하는 'MongoDbMemoryService'를 소개합니다. 메모에는 두 MongoDB 서비스 모두 실험적이라고 명시적으로 표시되어 있습니다. 세션 지속성과 장기 메모리는 별도로 평가해야 합니다. 세션 저장소는 복제본 전체에서 현재 대화 상태를 일관되게 유지하는 반면, 메모리 검색은 어떤 이전 사실을 다시 가져올지 결정합니다. 키워드 일치는 투명하고 저렴할 수 있지만 동의어가 누락되거나 관련 없는 텍스트를 검색할 수 있습니다. 벡터 임베딩이 생성되지 않은 경우에도 저장된 대화에 대한 삭제 및 액세스 제어 규칙이 필요합니다.
배포에는 마이그레이션 리허설이 필요합니다.
노트에 설명된 MongoDB 도구 세트 변경 사항에는 연결 문자열을 애플리케이션 번들에 압축하지 않고 Agent Engine에 배포하는 것과 별도의 Google 임베딩 호출을 방지하는 Atlas 임베딩 경로가 포함됩니다. 이러한 설계는 우발적인 자격 증명 배포를 줄일 수 있지만 데이터베이스 ID, 네트워크 정책 및 보존을 올바르게 구성해야 할 필요성을 제거하지는 않습니다. 팀은 민감하지 않은 데이터로 테스트 데이터베이스를 준비하고, 에이전트별 격리를 확인하고, 이전 ADK 버전으로의 롤백이 새 세션 기록을 읽거나 안전하게 무시하는지 확인해야 합니다. 실험적 레이블은 서비스를 사용할 수 없다고 주장하는 이유가 아니라 실패 시 스키마와 동작을 테스트하는 이유입니다.
릴리스 노트에는 실행 성능 향상도 언급되어 있지만 성능은 그래프 모양, 모델 응답 시간 및 도구 호출에 따라 다릅니다. 마이그레이션을 판단하려면 v2.13.0 이전과 이후의 동일한 작업에 대한 성공률, 총 대기 시간, 도구를 기다리는 데 소요된 시간, 중복된 부작용 및 메모리 검색 품질을 기록하세요. 코드와 가이드를 통해 이러한 변경 사항을 검사할 수 있습니다. 집중적인 업그레이드는 운영 동작이 알려질 때까지 실험적 스토리지를 중요한 경로 외부에 두면서 안정화된 기능을 채택할 수 있습니다. 이 기술 항목은 원본 버전 노트와 GitHub 릴리스가 10월 22~23일에 나타났기 때문에 10월 25일자 발행분에 실렸습니다. 10월 25일 릴리스는 암시되지 않습니다.
Sources
FAQ
Google ADK Python 2.13.0에는 어떤 기능이 있나요?
GitHub 릴리스에서는 안정 상태로 승격된 12가지 실험적 기능, TypeSafe Jev 분류자 노드, 중단이 있는 라이브 오디오, MongoDB 지원 세션 및 메모리를 강조합니다. MongoDB 서비스는 아직 실험적입니다. 해당 메모의 날짜는 10월 22일이며 GitHub는 UTC 10월 23일에 릴리스를 게시했습니다. 이 10월 25일자 다이제스트는 나중에 편집된 내용입니다.
에이전트 그래프에 분류자 노드를 추가하는 이유는 무엇입니까?
분류자 노드는 일반 채팅 모델에 워크플로를 선택하도록 요청하는 대신 좁은 라우팅 결정을 명시적으로 만들 수 있습니다. Google의 메모에 따르면 Jev 모델은 한 번의 정방향 패스로 보정된 확률을 반환합니다. 팀은 부작용이 있는 도구에 노드를 연결하기 전에 자체 트래픽에 대한 잘못된 경로, 모호성, 임계값 및 기권을 테스트해야 합니다.
팀은 ADK의 MongoDB 서비스를 어떻게 테스트해야 합니까?
복제본과 키워드 기반 장기 메모리 간의 세션 지속성은 다양한 문제를 해결합니다. 두 가지 새로운 MongoDB 서비스는 모두 실험적 서비스로 표시되므로 팀에서는 테스트 데이터를 사용하고 격리 및 삭제 규칙을 확인하고 실패 및 다운그레이드 동작을 연습해야 합니다. 키워드 리콜 경로는 임베딩 및 벡터 인덱스를 피하는 경우에도 동의어를 놓칠 수 있습니다.