zavora-ai/adk-rust
Rust Agent Development Kit (ADK-Rust): Build AI agents in Rust with modular components for models, tools, memory, realtime voice, and more. ADK-Rust is a flexible framework for developing AI agents with simplicity and power. Model-agnostic, deployment-agnostic, optimized for frontier AI models. Includes support for real-time voice agents.
ADK‑Rust – 생산용 AI 에이전트를 위한 러스트 중심 프레임워크
무엇인가요 – ADK‑Rust는 모듈식, 타입 안전, 비동기 대응 가능한 러스트 워크스페이스(43개 크레이트)로, 자율 AI 에이전트를 조합하고 실행하며 제공할 수 있습니다. 모델에 종속되지 않으며, Gemini, OpenAI, Anthropic, Ollama, Bedrock, Groq, DeepSeek, Mistral‑rs 등 다양한 제공업체를 연결할 수 있으며, mistral.rs를 통해 로컬 모델도 실행할 수 있습니다.
핵심 아이디어
- 에이전트는 코드 –
LlmAgentBuilder또는 고수준 워크플로우 빌더로 에이전트(또는 에이전트 팀)를 정의합니다. 핵심Agent트레이트는 모든 LLM 클라이언트를 추상화합니다. - 조합 가능한 기능 – 크레이트 워크스페이스는 계층(
minimal,standard,enterprise,full)과 세밀한 기능 시스템으로 나뉘어 있습니다. 작은 Gemini 전용 에이전트로 시작하여 도구, 메모리, RAG, 실시간 음성/영상, 결제, 사전화된 코드 실행 등을 추가할 수 있으며, 관련 없는 코드를 포함하지 않습니다. - 지속 가능한 오케스트레이션 – 내장된 그래프 워크플로우, 서브그래프, 체크포인트(SQLite, Redis, Mongo, Firestore, Neo4j, Vertex AI), 프로세스 재시작 후에도 유지되는 일시정지 및 재개 메커니즘을 제공합니다.
- 도구 호출 –
#[tool]매크로는 러스트 타입에서 JSON 스키마를 자동 생성하여 LLM에 사용자 정의 함수를 쉽게 노출할 수 있게 합니다. - 관측성 및 보안 – OpenTelemetry 트레이싱, 구조화된 로깅, RBAC/JWT 인증, 감사 로그, 입력/출력 검증용 가드레일.
- 풍부한 런타임 UI – 내장된 웹 UI(
http://127.0.0.1:8080/ui/)는 대화 내역, 스트리밍 마크다운, 도구 결과, 에이전트 실행의 실시간 그래프를 표시합니다. - 엔터프라이즈 확장 기능 – 실시간 음성/영상(OpenAI Realtime, Gemini Live, LiveKit), 브라우저 자동화(46개 WebDriver 도구), 에이전트형 상거래(ACP/AP2), Gemini Enterprise Agent Engine BYOC 컨테이너.
일반적인 워크플로우
- CLI 헬퍼 설치:
cargo install cargo-adk. - 템플릿으로 프로젝트 스캐폴딩: 예:
cargo adk new quickstart_agent --template api --provider openai. .env에 API 키를 입력하고cargo run실행.- UI를 통해 상호작용하거나 HTTP 엔드포인트(
/api/health,/api/...)를 호출.
예시 – 최소한의 Gemini 에이전트
use adk_rust::prelude::*;
use adk_rust::Launcher;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
dotenvy::dotenv().ok();
let model = GeminiModel::new(&std::env::var("GOOGLE_API_KEY")?, "gemini-3.7-flash")?;
let agent = LlmAgentBuilder::new("assistant")
.instruction("You are a helpful assistant. Be concise and accurate.")
.model(std::sync::Arc::new(model))
.build()?;
Launcher::new(std::sync::Arc::new(agent)).run().await?;
Ok(())
}
프로바이더를 변경하려면 클라이언트 생성 부분만 바꾸면 되며, 나머지 코드는 동일하게 유지됩니다.
기능 매트릭스 (선택 사항)
| 타입 | 제공 기능 | 일반적인 사용 사례 |
|---|---|---|
minimal (기본값) |
Gemini 클라이언트, 핵심 에이전트 런타임, 세션 | 빠른 프로토타이핑, 단일 LLM 봇 |
standard |
minimal의 모든 기능 + OpenAI, Anthropic, 도구 시스템, 메모리, 텔레메트리, HTTP 서버, 인증, 그래프 워크플로우, 평가 |
본격적인 챗봇 또는 도구 호출 서비스 |
enterprise |
standard + 실시간 오디오/비디오, RAG, 결제, AWP, 브라우저 자동화 |
음성 어시스턴트, 검색 증강 에이전트, 상거래 기능이 있는 봇 |
full |
enterprise + 오디오 생성, 사전화된 코드 실행, 고급 보안 |
코드 작성 또는 미디어 생성이 포함된 종단 간 AI 제품 |
구축 가능한 것들 (각 항목은 리포지토리 내 가이드 및 실행 가능한 예제로 연결)
- 실시간 토폴로지 시각화를 갖춘 내장 UI
#[tool]을 통한 사용자 정의 도구- MCP (에이전트 클라이언트 프로토콜) 클라이언트/서버
- 순차적, 병렬, 반복, 조건부 워크플로우 에이전트
- 검증된 인수 및 수령을 갖춘 멀티 에이전트 팀
- 지속 가능한 체크포인트와 인간이 개입하는 서브그래프를 갖춘 그래프 워크플로우
- 사전화된 작업공간에서 코드를 편집하고 실행하는 코딩 에이전트
- 실시간 음성/영상 에이전트 (OpenAI Realtime, Gemini Live, LiveKit)
- 승인 다이제스트를 통한 통제된 컴퓨터 사용
- 6개의 벡터 스토어 백엔드를 갖춘 검색 증강 생성 (RAG)
- 장기적 의미 기억 및 이중 시공간 지식 그래프
- HTTP/REST 서버를 통해 에이전트를 노출하고 Server-Sent Events 스트리밍 제공
- Gemini Enterprise Agent Engine BYOC 컨테이너 및 Terraform 배포
- 발견, 매니페스트, 동의, 신뢰 수준을 다루는 에이전트형 웹 프로토콜 (AWP)
- 지속적인 거래 저널을 갖춘 에이전트형 상거래 (ACP/AP2)
- 브라우저 자동화 도구 (WebDriver)
- 평가 프레임워크 (궤적, 기준, LLM-판단, A/B 테스트)
- 가드레일, RBAC, SSO, 감사 로깅
- OpenTelemetry 트레이싱 및 구조화된 로깅
설치
# 어떤 러스트 프로젝트에도 크레이트 추가
cargo add adk-rust # 기본은 "minimal"
# 타입 선택 시
cargo add adk-rust --features "standard"
또는 CLI 스캐폴딩(cargo adk new …)을 사용해 실행 가능한 프로젝트를 생성하세요.
문서 및 커뮤니티
- Crates.io 페이지: 버전화된 릴리스 (최신 2.2.0, 2.3.0 RC 준비 중).
- docs.rs와 위키에서 문서 제공, 심층 가이드도 포함.
- CI 배지: 지속적 테스트 (4,300+ 테스트, 104개 예제).
- 팟캐스트 시리즈 (에피소드 3: v2.0 "행동하는 에이전트" 기능).
- GitHub Discussions에서 질문과 답변, 후원 링크를 통한 자금 지원.
대상 사용자 – 단순한 챗봇, 멀티 에이전트 워크플로우 시스템, 음성 기능이 있는 어시스턴트, 또는 상거래 및 준수 요구사항이 있는 풀스택 AI 제품을 개발하는 러스트 개발자.
위 정보는 리포지토리의 README에서 직접 가져왔으며, 추가 기능은 추측되지 않았습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트