Files
wehub-resource-sync 97e91a83f3
Ruff / Ruff (push) Has been cancelled
Test / Core Tests (push) Has been cancelled
Test / Offline Coverage Tests (Python 3.10) (push) Has been cancelled
Test / Offline Coverage Tests (Python 3.11) (push) Has been cancelled
Test / Offline Coverage Tests (Python 3.12) (push) Has been cancelled
Test / Offline Coverage Tests (Python 3.13) (push) Has been cancelled
Test / Offline Coverage Tests (Python 3.9) (push) Has been cancelled
Test / Full Coverage (Python 3.11) (push) Has been cancelled
Test / Core Provider Tests (OpenAI) (push) Has been cancelled
Test / Core Provider Tests (Anthropic) (push) Has been cancelled
Test / Core Provider Tests (Google) (push) Has been cancelled
Test / Core Provider Tests (Other) (push) Has been cancelled
Test / Anthropic Tests (push) Has been cancelled
Test / Gemini Tests (push) Has been cancelled
Test / Google GenAI Tests (push) Has been cancelled
Test / Vertex AI Tests (push) Has been cancelled
Test / OpenAI Tests (push) Has been cancelled
Test / Writer Tests (push) Has been cancelled
Test / Auto Client Tests (push) Has been cancelled
ty / type-check (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:36:38 +08:00

35 lines
1.0 KiB
Python

"""
Provider-specific batch processing implementations.
This module contains provider-specific implementations for OpenAI and Anthropic
batch processing APIs.
"""
from .base import BatchProvider
import importlib.util
if importlib.util.find_spec("openai") is not None:
from .openai import OpenAIProvider
else:
OpenAIProvider = None
if importlib.util.find_spec("anthropic") is not None:
from .anthropic import AnthropicProvider
else:
AnthropicProvider = None
def get_provider(provider_name: str) -> BatchProvider:
"""Factory function to get the appropriate provider instance"""
if provider_name == "openai":
if OpenAIProvider is None:
raise ValueError("OpenAI is not installed")
return OpenAIProvider()
if provider_name == "anthropic":
if AnthropicProvider is None:
raise ValueError("Anthropic is not installed")
return AnthropicProvider()
raise ValueError(f"Unsupported provider: {provider_name}")
__all__ = ["BatchProvider", "OpenAIProvider", "AnthropicProvider", "get_provider"]