hammad-python 0.0.22__py3-none-any.whl → 0.0.24__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.
- hammad/__init__.py +269 -16
- hammad/_internal.py +19 -1
- hammad/cli/plugins.py +3 -1
- hammad/data/__init__.py +10 -0
- hammad/data/collections/__init__.py +5 -1
- hammad/data/sql/__init__.py +2 -1
- hammad/genai/__init__.py +57 -0
- hammad/genai/agents/__init__.py +11 -1
- hammad/genai/agents/agent.py +719 -213
- hammad/genai/agents/run.py +50 -12
- hammad/genai/agents/types/agent_response.py +2 -1
- hammad/genai/graphs/__init__.py +113 -0
- hammad/genai/graphs/base.py +1103 -0
- hammad/genai/graphs/plugins.py +316 -0
- hammad/genai/graphs/types.py +638 -0
- hammad/genai/models/embeddings/__init__.py +5 -1
- hammad/genai/models/embeddings/model.py +31 -2
- hammad/genai/models/language/__init__.py +5 -1
- hammad/genai/models/language/model.py +70 -0
- hammad/genai/models/language/run.py +29 -12
- hammad/genai/models/language/types/language_model_response.py +1 -1
- hammad/genai/types/tools.py +1 -1
- hammad/logging/logger.py +10 -0
- {hammad_python-0.0.22.dist-info → hammad_python-0.0.24.dist-info}/METADATA +5 -1
- {hammad_python-0.0.22.dist-info → hammad_python-0.0.24.dist-info}/RECORD +27 -23
- {hammad_python-0.0.22.dist-info → hammad_python-0.0.24.dist-info}/WHEEL +0 -0
- {hammad_python-0.0.22.dist-info → hammad_python-0.0.24.dist-info}/licenses/LICENSE +0 -0
hammad/__init__.py
CHANGED
@@ -1,50 +1,303 @@
|
|
1
|
-
"""hammad-python
|
1
|
+
"""hammad-python
|
2
2
|
|
3
|
-
|
3
|
+
A vast ecosystem of ('nightly', dont trust literally any interface to stay the same
|
4
|
+
for more than a few days) resources, utilities and components for building applications
|
5
|
+
in Python."""
|
4
6
|
|
5
7
|
from typing import TYPE_CHECKING
|
6
8
|
from ._internal import create_getattr_importer as __hammad_importer__
|
7
9
|
|
10
|
+
|
8
11
|
if TYPE_CHECKING:
|
9
|
-
# hammad.
|
10
|
-
from .
|
12
|
+
# BUILTINS | hammad.cli
|
13
|
+
from .cli import print, input, animate
|
11
14
|
|
12
|
-
# hammad.
|
13
|
-
from .
|
15
|
+
# hammad.cache
|
16
|
+
from .cache import Cache, create_cache, cached, auto_cached
|
14
17
|
|
15
18
|
# hammad.formatting
|
16
19
|
from .formatting.json import convert_to_json_schema
|
17
|
-
from .formatting.text import
|
20
|
+
from .formatting.text import (
|
21
|
+
convert_to_text,
|
22
|
+
convert_type_to_text,
|
23
|
+
convert_docstring_to_text,
|
24
|
+
)
|
25
|
+
|
26
|
+
# hammad.data
|
27
|
+
from .data.configurations import (
|
28
|
+
Configuration,
|
29
|
+
read_configuration_from_os_vars,
|
30
|
+
read_configuration_from_file,
|
31
|
+
read_configuration_from_url,
|
32
|
+
)
|
33
|
+
from .data.collections import Collection, create_collection
|
34
|
+
from .data.sql import (
|
35
|
+
Database as SQLDatabase,
|
36
|
+
create_database as create_sql_database,
|
37
|
+
)
|
38
|
+
from .data.models import (
|
39
|
+
Model,
|
40
|
+
field,
|
41
|
+
validator,
|
42
|
+
convert_to_pydantic_field,
|
43
|
+
convert_to_pydantic_model,
|
44
|
+
is_pydantic_model_class,
|
45
|
+
)
|
46
|
+
from .data.types import Text, BaseText, Audio, Image, File
|
47
|
+
|
48
|
+
# hammad.genai
|
49
|
+
from .genai.graphs import (
|
50
|
+
BaseGraph,
|
51
|
+
GraphResponse,
|
52
|
+
GraphStream,
|
53
|
+
GraphResponseChunk,
|
54
|
+
GraphBuilder,
|
55
|
+
action,
|
56
|
+
plugin,
|
57
|
+
)
|
58
|
+
from .genai.agents import (
|
59
|
+
Agent,
|
60
|
+
AgentResponse,
|
61
|
+
AgentResponseChunk,
|
62
|
+
AgentStream,
|
63
|
+
create_agent,
|
64
|
+
run_agent,
|
65
|
+
run_agent_iter,
|
66
|
+
async_run_agent,
|
67
|
+
async_run_agent_iter,
|
68
|
+
)
|
69
|
+
from .genai.models.embeddings import (
|
70
|
+
Embedding,
|
71
|
+
EmbeddingModel,
|
72
|
+
EmbeddingModelResponse,
|
73
|
+
EmbeddingModelSettings,
|
74
|
+
create_embedding_model,
|
75
|
+
run_embedding_model,
|
76
|
+
async_run_embedding_model,
|
77
|
+
)
|
78
|
+
from .genai.models.language import (
|
79
|
+
LanguageModel,
|
80
|
+
LanguageModelRequest,
|
81
|
+
LanguageModelResponse,
|
82
|
+
LanguageModelResponseChunk,
|
83
|
+
LanguageModelStream,
|
84
|
+
LanguageModelSettings,
|
85
|
+
create_language_model,
|
86
|
+
run_language_model,
|
87
|
+
async_run_language_model,
|
88
|
+
)
|
89
|
+
from .genai.models.multimodal import (
|
90
|
+
run_image_edit_model,
|
91
|
+
run_image_generation_model,
|
92
|
+
run_image_variation_model,
|
93
|
+
run_transcription_model,
|
94
|
+
run_tts_model,
|
95
|
+
async_run_image_edit_model,
|
96
|
+
async_run_image_generation_model,
|
97
|
+
async_run_image_variation_model,
|
98
|
+
async_run_transcription_model,
|
99
|
+
async_run_tts_model,
|
100
|
+
)
|
101
|
+
from .genai.models.reranking import run_reranking_model, async_run_reranking_model
|
102
|
+
from .genai.types.tools import define_tool, Tool
|
103
|
+
from .genai.types.history import History
|
18
104
|
|
19
105
|
# hammad.logging
|
20
|
-
from .logging
|
21
|
-
|
106
|
+
from .logging import (
|
107
|
+
Logger,
|
108
|
+
create_logger,
|
109
|
+
create_logger_level,
|
110
|
+
trace,
|
111
|
+
trace_cls,
|
112
|
+
trace_function,
|
113
|
+
trace_http,
|
114
|
+
)
|
22
115
|
|
116
|
+
# hammad.mcp
|
117
|
+
from .mcp import (
|
118
|
+
MCPClient,
|
119
|
+
MCPClientSseSettings,
|
120
|
+
MCPClientStdioSettings,
|
121
|
+
MCPClientStreamableHttpSettings,
|
122
|
+
MCPServerSseSettings,
|
123
|
+
MCPServerStdioSettings,
|
124
|
+
MCPServerStreamableHttpSettings,
|
125
|
+
launch_mcp_servers,
|
126
|
+
convert_mcp_tool_to_openai_tool,
|
127
|
+
)
|
23
128
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
129
|
+
# hammad.runtime
|
130
|
+
from .runtime import (
|
131
|
+
run_parallel,
|
132
|
+
run_sequentially,
|
133
|
+
run_with_retry,
|
134
|
+
parallelize_function,
|
135
|
+
sequentialize_function,
|
136
|
+
)
|
137
|
+
|
138
|
+
# hammad.service
|
139
|
+
from .service import create_service, async_create_service, serve, serve_mcp
|
140
|
+
|
141
|
+
# hammad.web
|
142
|
+
from .web import (
|
143
|
+
HttpClient,
|
144
|
+
AsyncHttpClient,
|
145
|
+
OpenAPIClient,
|
146
|
+
AsyncOpenAPIClient,
|
147
|
+
SearchClient,
|
148
|
+
AsyncSearchClient,
|
149
|
+
create_http_client,
|
150
|
+
create_openapi_client,
|
151
|
+
create_search_client,
|
152
|
+
run_web_search,
|
153
|
+
run_news_search,
|
154
|
+
run_web_request,
|
155
|
+
read_web_page,
|
156
|
+
read_web_pages,
|
157
|
+
extract_web_page_links,
|
158
|
+
)
|
159
|
+
|
160
|
+
|
161
|
+
__all__ = (
|
28
162
|
# hammad.cli
|
29
163
|
"print",
|
30
|
-
"animate",
|
31
164
|
"input",
|
165
|
+
"animate",
|
166
|
+
# hammad.cache
|
167
|
+
"Cache",
|
168
|
+
"create_cache",
|
169
|
+
"cached",
|
170
|
+
"auto_cached",
|
32
171
|
# hammad.formatting
|
33
172
|
"convert_to_json_schema",
|
34
173
|
"convert_to_text",
|
35
174
|
"convert_type_to_text",
|
175
|
+
"convert_docstring_to_text",
|
176
|
+
# hammad.data
|
177
|
+
"Configuration",
|
178
|
+
"read_configuration_from_os_vars",
|
179
|
+
"read_configuration_from_file",
|
180
|
+
"read_configuration_from_url",
|
181
|
+
"Collection",
|
182
|
+
"create_collection",
|
183
|
+
"SQLDatabase",
|
184
|
+
"create_sql_database",
|
185
|
+
"Model",
|
186
|
+
"field",
|
187
|
+
"validator",
|
188
|
+
"convert_to_pydantic_field",
|
189
|
+
"convert_to_pydantic_model",
|
190
|
+
"is_pydantic_model_class",
|
191
|
+
"Text",
|
192
|
+
"BaseText",
|
193
|
+
"Audio",
|
194
|
+
"Image",
|
195
|
+
"File",
|
196
|
+
# hammad.genai
|
197
|
+
"BaseGraph",
|
198
|
+
"GraphResponse",
|
199
|
+
"GraphStream",
|
200
|
+
"GraphResponseChunk",
|
201
|
+
"GraphBuilder",
|
202
|
+
"action",
|
203
|
+
"plugin",
|
204
|
+
# hammad.genai.agents
|
205
|
+
"Agent",
|
206
|
+
"AgentResponse",
|
207
|
+
"AgentResponseChunk",
|
208
|
+
"AgentStream",
|
209
|
+
"create_agent",
|
210
|
+
"run_agent",
|
211
|
+
"run_agent_iter",
|
212
|
+
"async_run_agent",
|
213
|
+
"async_run_agent_iter",
|
214
|
+
# hammad.genai.models.embeddings
|
215
|
+
"Embedding",
|
216
|
+
"EmbeddingModel",
|
217
|
+
"EmbeddingModelResponse",
|
218
|
+
"EmbeddingModelSettings",
|
219
|
+
"create_embedding_model",
|
220
|
+
"run_embedding_model",
|
221
|
+
"async_run_embedding_model",
|
222
|
+
# hammad.genai.models.language
|
223
|
+
"LanguageModel",
|
224
|
+
"LanguageModelRequest",
|
225
|
+
"LanguageModelResponse",
|
226
|
+
"LanguageModelResponseChunk",
|
227
|
+
"LanguageModelStream",
|
228
|
+
"LanguageModelSettings",
|
229
|
+
"create_language_model",
|
230
|
+
"run_language_model",
|
231
|
+
"async_run_language_model",
|
232
|
+
# hammad.genai.models.multimodal
|
233
|
+
"run_image_edit_model",
|
234
|
+
"run_image_generation_model",
|
235
|
+
"run_image_variation_model",
|
236
|
+
"run_transcription_model",
|
237
|
+
"run_tts_model",
|
238
|
+
"async_run_image_edit_model",
|
239
|
+
"async_run_image_generation_model",
|
240
|
+
"async_run_image_variation_model",
|
241
|
+
"async_run_transcription_model",
|
242
|
+
"async_run_tts_model",
|
243
|
+
# hammad.genai.models.reranking
|
244
|
+
"run_reranking_model",
|
245
|
+
"async_run_reranking_model",
|
246
|
+
# hammad.genai.types.tools
|
247
|
+
"define_tool",
|
248
|
+
"Tool",
|
249
|
+
# hammad.genai.types.history
|
250
|
+
"History",
|
36
251
|
# hammad.logging
|
37
252
|
"Logger",
|
38
253
|
"create_logger",
|
254
|
+
"create_logger_level",
|
39
255
|
"trace",
|
40
256
|
"trace_cls",
|
41
257
|
"trace_function",
|
42
258
|
"trace_http",
|
43
|
-
|
259
|
+
# hammad.mcp
|
260
|
+
"MCPClient",
|
261
|
+
"MCPClientSseSettings",
|
262
|
+
"MCPClientStdioSettings",
|
263
|
+
"MCPClientStreamableHttpSettings",
|
264
|
+
"MCPServerSseSettings",
|
265
|
+
"MCPServerStdioSettings",
|
266
|
+
"MCPServerStreamableHttpSettings",
|
267
|
+
"launch_mcp_servers",
|
268
|
+
"convert_mcp_tool_to_openai_tool",
|
269
|
+
# hammad.runtime
|
270
|
+
"run_parallel",
|
271
|
+
"run_sequentially",
|
272
|
+
"run_with_retry",
|
273
|
+
"parallelize_function",
|
274
|
+
"sequentialize_function",
|
275
|
+
# hammad.service
|
276
|
+
"create_service",
|
277
|
+
"async_create_service",
|
278
|
+
"serve",
|
279
|
+
"serve_mcp",
|
280
|
+
# hammad.web
|
281
|
+
"HttpClient",
|
282
|
+
"AsyncHttpClient",
|
283
|
+
"OpenAPIClient",
|
284
|
+
"AsyncOpenAPIClient",
|
285
|
+
"SearchClient",
|
286
|
+
"AsyncSearchClient",
|
287
|
+
"create_http_client",
|
288
|
+
"create_openapi_client",
|
289
|
+
"create_search_client",
|
290
|
+
"run_web_search",
|
291
|
+
"run_news_search",
|
292
|
+
"run_web_request",
|
293
|
+
"read_web_page",
|
294
|
+
"read_web_pages",
|
295
|
+
"extract_web_page_links",
|
296
|
+
)
|
44
297
|
|
45
298
|
|
46
299
|
__getattr__ = __hammad_importer__(__all__)
|
47
300
|
|
48
301
|
|
49
302
|
def __dir__() -> list[str]:
|
50
|
-
return __all__
|
303
|
+
return list(__all__)
|
hammad/_internal.py
CHANGED
@@ -108,7 +108,25 @@ def _parse_type_checking_imports(source_code: str) -> dict[str, tuple[str, str]]
|
|
108
108
|
# Process imports in this block
|
109
109
|
for stmt in node.body:
|
110
110
|
if isinstance(stmt, ast.ImportFrom) and stmt.module:
|
111
|
-
|
111
|
+
# Only add '.' prefix for relative imports
|
112
|
+
# If stmt.level > 0, it's already a relative import
|
113
|
+
# If stmt.level == 0 and module doesn't start with '.', it's absolute
|
114
|
+
if stmt.level > 0:
|
115
|
+
# Already relative import
|
116
|
+
module_path = "." * stmt.level + (stmt.module or "")
|
117
|
+
elif stmt.module.startswith("."):
|
118
|
+
# Explicit relative import
|
119
|
+
module_path = stmt.module
|
120
|
+
elif any(
|
121
|
+
stmt.module.startswith(name)
|
122
|
+
for name in ["litellm", "openai", "instructor", "httpx"]
|
123
|
+
):
|
124
|
+
# Known absolute third-party imports
|
125
|
+
module_path = stmt.module
|
126
|
+
else:
|
127
|
+
# Default to relative import for internal modules
|
128
|
+
module_path = f".{stmt.module}"
|
129
|
+
|
112
130
|
for alias in stmt.names:
|
113
131
|
original_name = alias.name
|
114
132
|
local_name = alias.asname or original_name
|
hammad/cli/plugins.py
CHANGED
@@ -734,7 +734,9 @@ def input(
|
|
734
734
|
|
735
735
|
def animate(
|
736
736
|
renderable: "RenderableType | str",
|
737
|
-
type: Literal[
|
737
|
+
type: Literal[
|
738
|
+
"flashing", "pulsing", "shaking", "typing", "spinning", "rainbow"
|
739
|
+
] = "pulsing",
|
738
740
|
duration: Optional[float] = None,
|
739
741
|
# Animation parameters (defaults are handled by the specific animation classes)
|
740
742
|
speed: Optional[float] = None,
|
hammad/data/__init__.py
CHANGED
@@ -21,6 +21,7 @@ if TYPE_CHECKING:
|
|
21
21
|
)
|
22
22
|
from .collections import (
|
23
23
|
Collection,
|
24
|
+
create_collection,
|
24
25
|
TantivyCollectionIndex,
|
25
26
|
QdrantCollectionIndex,
|
26
27
|
TantivyCollectionIndexSettings,
|
@@ -54,8 +55,12 @@ __all__ = (
|
|
54
55
|
"validator",
|
55
56
|
"is_field",
|
56
57
|
"is_model",
|
58
|
+
"convert_to_pydantic_model",
|
59
|
+
"convert_to_pydantic_field",
|
60
|
+
"is_pydantic_model_class",
|
57
61
|
# hammad.data.collections
|
58
62
|
"Collection",
|
63
|
+
"create_collection",
|
59
64
|
"TantivyCollectionIndex",
|
60
65
|
"QdrantCollectionIndex",
|
61
66
|
"TantivyCollectionIndexSettings",
|
@@ -68,6 +73,11 @@ __all__ = (
|
|
68
73
|
"Database",
|
69
74
|
# hammad.data.configurations
|
70
75
|
"Configuration",
|
76
|
+
"read_configuration_from_file",
|
77
|
+
"read_configuration_from_url",
|
78
|
+
"read_configuration_from_os_vars",
|
79
|
+
"read_configuration_from_os_prefix",
|
80
|
+
"read_configuration_from_dotenv",
|
71
81
|
)
|
72
82
|
|
73
83
|
|
@@ -4,7 +4,10 @@ from typing import TYPE_CHECKING
|
|
4
4
|
from ..._internal import create_getattr_importer
|
5
5
|
|
6
6
|
if TYPE_CHECKING:
|
7
|
-
from .collection import
|
7
|
+
from .collection import (
|
8
|
+
Collection,
|
9
|
+
create_collection,
|
10
|
+
)
|
8
11
|
|
9
12
|
from .indexes import (
|
10
13
|
TantivyCollectionIndex,
|
@@ -25,6 +28,7 @@ if TYPE_CHECKING:
|
|
25
28
|
__all__ = (
|
26
29
|
# hammad.data.collections.collection
|
27
30
|
"Collection",
|
31
|
+
"create_collection",
|
28
32
|
# hammad.data.collections.indexes
|
29
33
|
"TantivyCollectionIndex",
|
30
34
|
"QdrantCollectionIndex",
|
hammad/data/sql/__init__.py
CHANGED
@@ -5,13 +5,14 @@ from ..._internal import create_getattr_importer
|
|
5
5
|
|
6
6
|
if TYPE_CHECKING:
|
7
7
|
from .types import DatabaseItemType, DatabaseItem
|
8
|
-
from .database import Database
|
8
|
+
from .database import Database, create_database
|
9
9
|
|
10
10
|
|
11
11
|
__all__ = (
|
12
12
|
"DatabaseItemType",
|
13
13
|
"DatabaseItem",
|
14
14
|
"Database",
|
15
|
+
"create_database",
|
15
16
|
)
|
16
17
|
|
17
18
|
|
hammad/genai/__init__.py
CHANGED
@@ -13,6 +13,7 @@ if TYPE_CHECKING:
|
|
13
13
|
AgentContext,
|
14
14
|
AgentMessages,
|
15
15
|
AgentResponseChunk,
|
16
|
+
create_agent,
|
16
17
|
)
|
17
18
|
from .agents.run import (
|
18
19
|
run_agent,
|
@@ -20,6 +21,32 @@ if TYPE_CHECKING:
|
|
20
21
|
async_run_agent,
|
21
22
|
async_run_agent_iter,
|
22
23
|
)
|
24
|
+
from .graphs import (
|
25
|
+
GraphBuilder,
|
26
|
+
GraphContext,
|
27
|
+
GraphEnd,
|
28
|
+
GraphEvent,
|
29
|
+
GraphHistoryEntry,
|
30
|
+
GraphNode,
|
31
|
+
GraphState,
|
32
|
+
GraphResponse,
|
33
|
+
GraphStream,
|
34
|
+
GraphResponseChunk,
|
35
|
+
BaseGraph,
|
36
|
+
BasePlugin,
|
37
|
+
PluginDecorator,
|
38
|
+
PydanticGraphContext,
|
39
|
+
AudioPlugin,
|
40
|
+
ServePlugin,
|
41
|
+
MemoryPlugin,
|
42
|
+
HistoryPlugin,
|
43
|
+
SettingsPlugin,
|
44
|
+
ActionNode,
|
45
|
+
ActionInfo,
|
46
|
+
ActionSettings,
|
47
|
+
action,
|
48
|
+
plugin,
|
49
|
+
)
|
23
50
|
from .models.embeddings import (
|
24
51
|
Embedding,
|
25
52
|
EmbeddingModel,
|
@@ -27,6 +54,7 @@ if TYPE_CHECKING:
|
|
27
54
|
EmbeddingModelSettings,
|
28
55
|
run_embedding_model,
|
29
56
|
async_run_embedding_model,
|
57
|
+
create_embedding_model,
|
30
58
|
)
|
31
59
|
from .models.language import (
|
32
60
|
LanguageModel,
|
@@ -40,6 +68,7 @@ if TYPE_CHECKING:
|
|
40
68
|
LanguageModelStream,
|
41
69
|
run_language_model,
|
42
70
|
async_run_language_model,
|
71
|
+
create_language_model,
|
43
72
|
)
|
44
73
|
from .models.reranking import run_reranking_model, async_run_reranking_model
|
45
74
|
from .models.multimodal import (
|
@@ -78,11 +107,37 @@ __all__ = [
|
|
78
107
|
"AgentContext",
|
79
108
|
"AgentMessages",
|
80
109
|
"AgentResponseChunk",
|
110
|
+
"create_agent",
|
81
111
|
# hammad.genai.agents.run
|
82
112
|
"run_agent",
|
83
113
|
"run_agent_iter",
|
84
114
|
"async_run_agent",
|
85
115
|
"async_run_agent_iter",
|
116
|
+
# hammad.genai.graphs
|
117
|
+
"GraphBuilder",
|
118
|
+
"GraphContext",
|
119
|
+
"GraphEnd",
|
120
|
+
"GraphEvent",
|
121
|
+
"GraphHistoryEntry",
|
122
|
+
"GraphNode",
|
123
|
+
"GraphState",
|
124
|
+
"GraphResponse",
|
125
|
+
"GraphStream",
|
126
|
+
"GraphResponseChunk",
|
127
|
+
"BaseGraph",
|
128
|
+
"BasePlugin",
|
129
|
+
"PluginDecorator",
|
130
|
+
"PydanticGraphContext",
|
131
|
+
"AudioPlugin",
|
132
|
+
"ServePlugin",
|
133
|
+
"MemoryPlugin",
|
134
|
+
"HistoryPlugin",
|
135
|
+
"SettingsPlugin",
|
136
|
+
"ActionNode",
|
137
|
+
"ActionInfo",
|
138
|
+
"ActionSettings",
|
139
|
+
"action",
|
140
|
+
"plugin",
|
86
141
|
# hammad.genai.models.embeddings
|
87
142
|
"Embedding",
|
88
143
|
"EmbeddingModel",
|
@@ -90,6 +145,7 @@ __all__ = [
|
|
90
145
|
"EmbeddingModelSettings",
|
91
146
|
"run_embedding_model",
|
92
147
|
"async_run_embedding_model",
|
148
|
+
"create_embedding_model",
|
93
149
|
# hammad.genai.models.language
|
94
150
|
"LanguageModel",
|
95
151
|
"LanguageModelInstructorMode",
|
@@ -102,6 +158,7 @@ __all__ = [
|
|
102
158
|
"LanguageModelStream",
|
103
159
|
"run_language_model",
|
104
160
|
"async_run_language_model",
|
161
|
+
"create_language_model",
|
105
162
|
# hammad.genai.models.reranking
|
106
163
|
"run_reranking_model",
|
107
164
|
"async_run_reranking_model",
|
hammad/genai/agents/__init__.py
CHANGED
@@ -5,7 +5,11 @@ from ..._internal import create_getattr_importer
|
|
5
5
|
|
6
6
|
|
7
7
|
if TYPE_CHECKING:
|
8
|
-
from .agent import
|
8
|
+
from .agent import (
|
9
|
+
Agent,
|
10
|
+
create_agent,
|
11
|
+
)
|
12
|
+
from .run import run_agent, run_agent_iter, async_run_agent, async_run_agent_iter
|
9
13
|
|
10
14
|
# Types
|
11
15
|
from .types.agent_context import AgentContext
|
@@ -22,6 +26,12 @@ if TYPE_CHECKING:
|
|
22
26
|
__all__ = [
|
23
27
|
# hammad.genai.agents.agent
|
24
28
|
"Agent",
|
29
|
+
"create_agent",
|
30
|
+
# hammad.genai.agents.run
|
31
|
+
"run_agent",
|
32
|
+
"run_agent_iter",
|
33
|
+
"async_run_agent",
|
34
|
+
"async_run_agent_iter",
|
25
35
|
# hammad.genai.agents.types.agent_context
|
26
36
|
"AgentContext",
|
27
37
|
# hammad.genai.agents.types.agent_event
|