인터페이스
인터페이스
Pydantic AI 에이전트는 인터페이스가 내장되지 않은 순수한 Python이에요. 같은 에이전트가 백엔드 안에서 헤드리스로 돌 수도, 터미널에서 채팅할 수도, 웹 UI를 서빙할 수도, 당신의 프론트엔드를 구동할 수도, 에디터 안에서 살 수도, 다른 에이전트에 답할 수도, 음성 대화를 할 수도, 아무도 지켜보지 않는 채 저장소에서 작업할 수도 있어요. 각 표면(surface)은 자신만의 페이지를 가져요:
출처: 문서
본문
| 표면 | 어떻게 보이는가 | 어디서 |
|---|---|---|
| 당신의 코드 | result = await agent.run('...'), 어떤 Python 함수에서든 평범한 awaitable이며 타입 출력을 가짐 |
에이전트 실행 |
| 터미널 | agent.to_cli_sync(), 또는 import할 수 있는 어떤 에이전트든 clai -a mymodule:agent |
CLI |
| 웹 채팅 | 어떤 에이전트든 내장 브라우저 채팅: clai web 또는 agent.to_web() |
Web Chat UI |
| 당신의 프론트엔드 | AG-UI 또는 Vercel AI 프로토콜로 에이전트 실행을 당신의 UI에 스트리밍. Vercel의 useChat React 훅 포함 |
UI 이벤트 스트림 |
| 에디터 | Agent Client Protocol로 에이전트를 Zed와 다른 에디터에 서빙 | ACP |
| 다른 에이전트 | Agent2Agent 프로토콜로 다른 에이전트에 서빙. 별도 fasta2a 패키지를 통해 |
A2A |
| 음성 | 실시간 오디오 세션에서 같은 에이전트, 툴, 옵저버빌리티. 음성은 또 하나의 프론트엔드일 뿐 | Realtime |
| GitHub | 이슈, 풀 리퀘스트, 스케줄에 대해 에이전트를 실행. 러너에서 샌드박스되고 안전한 출력으로 다시 씀. 반대편에 아무도 없는 유일한 표면 | GitHub Agentic Workflows |
인터페이스가 에이전트와 분리되어 있기 때문에 기능은 모두에서 작동해요. 지연 툴과 승인은 에이전트가 어디서 실행되든 드러나요(CLI의 승인 프롬프트, 당신의 프론트엔드의 승인 UI 이벤트). 같은 배포된 에이전트가 팀을 위한 웹 UI와 제품을 위한 AG-UI 스트림을 동시에 서빙할 수 있고, realtime 세션은 그 이력을 텍스트 실행에 넘기고 다시 받을 수 있어요. 완전한 에이전트도 어디서나 작동해요. clai -a pydantic_ai_harness.coder:coder_agent는 Harness의 Coder를 터미널에서 실행해요.