askai-python 0.4.0__py3-none-any.whl → 0.5.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
ask_ai/__init__.py CHANGED
@@ -2,29 +2,36 @@
2
2
  ask-ai: A minimal Python SDK to switch between LLM providers in one line.
3
3
  """
4
4
 
5
- __version__ = "0.4.0"
5
+ __version__ = "0.5.0"
6
6
 
7
- from .providers import (
8
- OpenAI,
9
- Anthropic,
10
- Google,
11
- Groq,
12
- Azure,
13
- OpenRouter
14
- )
15
- from .config import AdvancedConfig
16
7
  from .base import Response
17
- from .media import ImageObject, AudioObject
8
+ from .capabilities import Capabilities
9
+ from .config import AdvancedConfig
10
+ from .events import Completed, Error, TextDelta, ToolCall, UsageUpdate
18
11
  from .exceptions import (
19
- AskAIError,
20
12
  AskAIConfigError,
13
+ AskAIError,
21
14
  AskAINetworkError,
22
- AskAIRateLimitError,
23
15
  AskAIParsingError,
24
- ProviderError,
16
+ AskAIRateLimitError,
17
+ MediaSecurityError,
25
18
  MediaTypeNotSupportedError,
19
+ ProviderAuthError,
20
+ ProviderError,
21
+ ProviderInvalidRequestError,
22
+ ProviderRateLimitError,
23
+ ProviderTimeoutError,
24
+ ProviderUnavailableError,
26
25
  StreamNotSupportedError,
26
+ StructuredValidationError,
27
27
  )
28
+ from .media import AudioObject, ImageObject
29
+ from .media_security import MediaPolicy, download_media
30
+ from .observability import Observability, ResponseMetadata, Usage
31
+ from .providers import Anthropic, Azure, Google, Groq, OpenAI, OpenRouter
32
+ from .router import Router
33
+ from .session import ConversationSession
34
+ from .structured import parse_structured
28
35
 
29
36
  __all__ = [
30
37
  # Providers
@@ -46,6 +53,27 @@ __all__ = [
46
53
  "AskAIRateLimitError",
47
54
  "AskAIParsingError",
48
55
  "ProviderError",
56
+ "ProviderAuthError",
57
+ "ProviderRateLimitError",
58
+ "ProviderTimeoutError",
59
+ "ProviderInvalidRequestError",
60
+ "ProviderUnavailableError",
49
61
  "MediaTypeNotSupportedError",
62
+ "MediaSecurityError",
50
63
  "StreamNotSupportedError",
64
+ "StructuredValidationError",
65
+ "parse_structured",
66
+ "TextDelta",
67
+ "ToolCall",
68
+ "UsageUpdate",
69
+ "Completed",
70
+ "Error",
71
+ "Observability",
72
+ "ResponseMetadata",
73
+ "Usage",
74
+ "Capabilities",
75
+ "Router",
76
+ "ConversationSession",
77
+ "MediaPolicy",
78
+ "download_media",
51
79
  ]