스레드 실행기
스레드 실행기 (Thread Executor)
UseThreadExecutor 캐퍼빌리티는 동기 도구 함수와 그 외 동기 콜백을 스레드에서 실행하기 위한 커스텀 Executor를 제공해요. 오래 실행되는 서버(예: FastAPI)에서 anyio.to_thread.run_sync의 기본 임시 스레드가 지속 부하에서 쌓일 수 있는데, 이 캐퍼빌리티가 그 문제를 해결해 줍니다.
출처: 문서
본문
from concurrent.futures import ThreadPoolExecutor
from pydantic_ai import Agent
from pydantic_ai.capabilities import UseThreadExecutor
executor = ThreadPoolExecutor(max_workers=16, thread_name_prefix='agent-worker')
agent = Agent('openai:gpt-5.2', capabilities=[UseThreadExecutor(executor)])
기본 id로 'use_thread_executor'를 선언하므로, 두 인스턴스는 중복 id 오류를 내는 대신 병합됩니다 — 병합 규칙은 커스텀 캐퍼빌리티 만들기를 참고하세요.
자세한 내용은 오래 실행되는 서버용 스레드 실행기를 참고하세요.