kiln-ai 0.21.0__py3-none-any.whl → 0.22.1__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.
Potentially problematic release.
This version of kiln-ai might be problematic. Click here for more details.
- kiln_ai/adapters/extractors/litellm_extractor.py +52 -32
- kiln_ai/adapters/extractors/test_litellm_extractor.py +169 -71
- kiln_ai/adapters/ml_embedding_model_list.py +330 -28
- kiln_ai/adapters/ml_model_list.py +503 -23
- kiln_ai/adapters/model_adapters/litellm_adapter.py +39 -8
- kiln_ai/adapters/model_adapters/test_litellm_adapter.py +78 -0
- kiln_ai/adapters/model_adapters/test_litellm_adapter_tools.py +119 -5
- kiln_ai/adapters/model_adapters/test_saving_adapter_results.py +9 -3
- kiln_ai/adapters/model_adapters/test_structured_output.py +6 -9
- kiln_ai/adapters/test_ml_embedding_model_list.py +89 -279
- kiln_ai/adapters/test_ml_model_list.py +0 -10
- kiln_ai/adapters/vector_store/lancedb_adapter.py +24 -70
- kiln_ai/adapters/vector_store/lancedb_helpers.py +101 -0
- kiln_ai/adapters/vector_store/test_lancedb_adapter.py +9 -16
- kiln_ai/adapters/vector_store/test_lancedb_helpers.py +142 -0
- kiln_ai/adapters/vector_store_loaders/__init__.py +0 -0
- kiln_ai/adapters/vector_store_loaders/test_lancedb_loader.py +282 -0
- kiln_ai/adapters/vector_store_loaders/test_vector_store_loader.py +544 -0
- kiln_ai/adapters/vector_store_loaders/vector_store_loader.py +91 -0
- kiln_ai/datamodel/basemodel.py +31 -3
- kiln_ai/datamodel/external_tool_server.py +206 -54
- kiln_ai/datamodel/extraction.py +14 -0
- kiln_ai/datamodel/task.py +5 -0
- kiln_ai/datamodel/task_output.py +41 -11
- kiln_ai/datamodel/test_attachment.py +3 -3
- kiln_ai/datamodel/test_basemodel.py +269 -13
- kiln_ai/datamodel/test_datasource.py +50 -0
- kiln_ai/datamodel/test_external_tool_server.py +534 -152
- kiln_ai/datamodel/test_extraction_model.py +31 -0
- kiln_ai/datamodel/test_task.py +35 -1
- kiln_ai/datamodel/test_tool_id.py +106 -1
- kiln_ai/datamodel/tool_id.py +49 -0
- kiln_ai/tools/base_tool.py +30 -6
- kiln_ai/tools/built_in_tools/math_tools.py +12 -4
- kiln_ai/tools/kiln_task_tool.py +162 -0
- kiln_ai/tools/mcp_server_tool.py +7 -5
- kiln_ai/tools/mcp_session_manager.py +50 -24
- kiln_ai/tools/rag_tools.py +17 -6
- kiln_ai/tools/test_kiln_task_tool.py +527 -0
- kiln_ai/tools/test_mcp_server_tool.py +4 -15
- kiln_ai/tools/test_mcp_session_manager.py +186 -226
- kiln_ai/tools/test_rag_tools.py +86 -5
- kiln_ai/tools/test_tool_registry.py +199 -5
- kiln_ai/tools/tool_registry.py +49 -17
- kiln_ai/utils/filesystem.py +4 -4
- kiln_ai/utils/open_ai_types.py +19 -2
- kiln_ai/utils/pdf_utils.py +21 -0
- kiln_ai/utils/test_open_ai_types.py +88 -12
- kiln_ai/utils/test_pdf_utils.py +14 -1
- {kiln_ai-0.21.0.dist-info → kiln_ai-0.22.1.dist-info}/METADATA +79 -1
- {kiln_ai-0.21.0.dist-info → kiln_ai-0.22.1.dist-info}/RECORD +53 -45
- {kiln_ai-0.21.0.dist-info → kiln_ai-0.22.1.dist-info}/WHEEL +0 -0
- {kiln_ai-0.21.0.dist-info → kiln_ai-0.22.1.dist-info}/licenses/LICENSE.txt +0 -0
|
@@ -8,9 +8,13 @@ from openai.types.chat import (
|
|
|
8
8
|
from openai.types.chat import (
|
|
9
9
|
ChatCompletionMessageParam as OpenAIChatCompletionMessageParam,
|
|
10
10
|
)
|
|
11
|
+
from openai.types.chat import (
|
|
12
|
+
ChatCompletionToolMessageParam as OpenAIChatCompletionToolMessageParam,
|
|
13
|
+
)
|
|
11
14
|
|
|
12
15
|
from kiln_ai.utils.open_ai_types import (
|
|
13
16
|
ChatCompletionAssistantMessageParamWrapper,
|
|
17
|
+
ChatCompletionToolMessageParamWrapper,
|
|
14
18
|
)
|
|
15
19
|
from kiln_ai.utils.open_ai_types import (
|
|
16
20
|
ChatCompletionMessageParam as KilnChatCompletionMessageParam,
|
|
@@ -45,10 +49,40 @@ def test_assistant_message_param_properties_match():
|
|
|
45
49
|
)
|
|
46
50
|
|
|
47
51
|
|
|
52
|
+
def test_tool_message_param_properties_match():
|
|
53
|
+
"""
|
|
54
|
+
Test that ChatCompletionToolMessageParamWrapper has all the same properties
|
|
55
|
+
as OpenAI's ChatCompletionToolMessageParam, plus the kiln_task_tool_data property.
|
|
56
|
+
|
|
57
|
+
This will catch any changes to the OpenAI types that we haven't updated our wrapper for.
|
|
58
|
+
"""
|
|
59
|
+
# Get annotations for both types
|
|
60
|
+
openai_annotations = OpenAIChatCompletionToolMessageParam.__annotations__
|
|
61
|
+
kiln_annotations = ChatCompletionToolMessageParamWrapper.__annotations__
|
|
62
|
+
|
|
63
|
+
# Check that both have the same property names
|
|
64
|
+
openai_properties = set(openai_annotations.keys())
|
|
65
|
+
kiln_properties = set(kiln_annotations.keys())
|
|
66
|
+
|
|
67
|
+
# Kiln task tool data is an added property. Confirm it's there and remove it from the comparison.
|
|
68
|
+
assert "kiln_task_tool_data" in kiln_properties, (
|
|
69
|
+
"Kiln should have kiln_task_tool_data"
|
|
70
|
+
)
|
|
71
|
+
kiln_properties.remove("kiln_task_tool_data")
|
|
72
|
+
|
|
73
|
+
assert openai_properties == kiln_properties, (
|
|
74
|
+
f"Property names don't match. "
|
|
75
|
+
f"OpenAI has: {openai_properties}, "
|
|
76
|
+
f"Kiln has: {kiln_properties}, "
|
|
77
|
+
f"Missing from Kiln: {openai_properties - kiln_properties}, "
|
|
78
|
+
f"Extra in Kiln: {kiln_properties - openai_properties}"
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
|
|
48
82
|
def test_chat_completion_message_param_union_compatibility():
|
|
49
83
|
"""
|
|
50
84
|
Test that our ChatCompletionMessageParam union contains the same types as OpenAI's,
|
|
51
|
-
except with our
|
|
85
|
+
except with our wrappers instead of the original assistant and tool message params.
|
|
52
86
|
"""
|
|
53
87
|
# Get the union members for both types
|
|
54
88
|
openai_union_args = get_args(OpenAIChatCompletionMessageParam)
|
|
@@ -70,10 +104,16 @@ def test_chat_completion_message_param_union_compatibility():
|
|
|
70
104
|
openai_type_names = {arg.__name__ for arg in openai_union_args}
|
|
71
105
|
kiln_type_names = {arg.__name__ for arg in kiln_union_args}
|
|
72
106
|
|
|
73
|
-
# Expected
|
|
74
|
-
# Kiln has ChatCompletionAssistantMessageParamWrapper
|
|
75
|
-
expected_openai_only = {
|
|
76
|
-
|
|
107
|
+
# Expected differences: OpenAI has ChatCompletionAssistantMessageParam and ChatCompletionToolMessageParam,
|
|
108
|
+
# Kiln has ChatCompletionAssistantMessageParamWrapper and ChatCompletionToolMessageParamWrapper
|
|
109
|
+
expected_openai_only = {
|
|
110
|
+
"ChatCompletionAssistantMessageParam",
|
|
111
|
+
"ChatCompletionToolMessageParam",
|
|
112
|
+
}
|
|
113
|
+
expected_kiln_only = {
|
|
114
|
+
"ChatCompletionAssistantMessageParamWrapper",
|
|
115
|
+
"ChatCompletionToolMessageParamWrapper",
|
|
116
|
+
}
|
|
77
117
|
|
|
78
118
|
openai_only = openai_type_names - kiln_type_names
|
|
79
119
|
kiln_only = kiln_type_names - openai_type_names
|
|
@@ -91,7 +131,6 @@ def test_chat_completion_message_param_union_compatibility():
|
|
|
91
131
|
"ChatCompletionDeveloperMessageParam",
|
|
92
132
|
"ChatCompletionSystemMessageParam",
|
|
93
133
|
"ChatCompletionUserMessageParam",
|
|
94
|
-
"ChatCompletionToolMessageParam",
|
|
95
134
|
"ChatCompletionFunctionMessageParam",
|
|
96
135
|
}
|
|
97
136
|
|
|
@@ -100,17 +139,17 @@ def test_chat_completion_message_param_union_compatibility():
|
|
|
100
139
|
)
|
|
101
140
|
|
|
102
141
|
|
|
103
|
-
def
|
|
104
|
-
"""Test that our wrapper can be instantiated with the same data as the original."""
|
|
105
|
-
#
|
|
106
|
-
|
|
142
|
+
def test_assistant_message_wrapper_can_be_instantiated():
|
|
143
|
+
"""Test that our assistant message wrapper can be instantiated with the same data as the original."""
|
|
144
|
+
# Test basic assistant message
|
|
145
|
+
sample_assistant_message: ChatCompletionAssistantMessageParamWrapper = {
|
|
107
146
|
"role": "assistant",
|
|
108
147
|
"content": "Hello, world!",
|
|
109
148
|
}
|
|
110
149
|
|
|
111
150
|
# This should work without type errors (runtime test)
|
|
112
|
-
assert
|
|
113
|
-
assert
|
|
151
|
+
assert sample_assistant_message["role"] == "assistant"
|
|
152
|
+
assert sample_assistant_message.get("content") == "Hello, world!"
|
|
114
153
|
|
|
115
154
|
# Test with tool calls using List instead of Iterable
|
|
116
155
|
sample_with_tools: ChatCompletionAssistantMessageParamWrapper = {
|
|
@@ -129,3 +168,40 @@ def test_wrapper_can_be_instantiated():
|
|
|
129
168
|
tool_calls = sample_with_tools.get("tool_calls", [])
|
|
130
169
|
if tool_calls:
|
|
131
170
|
assert tool_calls[0]["id"] == "call_123"
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
def test_tool_message_wrapper_can_be_instantiated():
|
|
174
|
+
"""Test that our tool message wrapper can be instantiated with the same data as the original."""
|
|
175
|
+
# Test basic tool message
|
|
176
|
+
sample_tool_message: ChatCompletionToolMessageParamWrapper = {
|
|
177
|
+
"role": "tool",
|
|
178
|
+
"content": "Tool response",
|
|
179
|
+
"tool_call_id": "call_123",
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
assert sample_tool_message["role"] == "tool"
|
|
183
|
+
assert sample_tool_message.get("content") == "Tool response"
|
|
184
|
+
assert sample_tool_message.get("tool_call_id") == "call_123"
|
|
185
|
+
|
|
186
|
+
# Test with kiln_task_tool_data
|
|
187
|
+
sample_with_kiln_data: ChatCompletionToolMessageParamWrapper = {
|
|
188
|
+
"role": "tool",
|
|
189
|
+
"content": "Tool response",
|
|
190
|
+
"tool_call_id": "call_123",
|
|
191
|
+
"kiln_task_tool_data": "project_123:::tool_456:::task_789:::run_101",
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
assert (
|
|
195
|
+
sample_with_kiln_data.get("kiln_task_tool_data")
|
|
196
|
+
== "project_123:::tool_456:::task_789:::run_101"
|
|
197
|
+
)
|
|
198
|
+
|
|
199
|
+
# Test with kiln_task_tool_data as None
|
|
200
|
+
sample_with_none_kiln_data: ChatCompletionToolMessageParamWrapper = {
|
|
201
|
+
"role": "tool",
|
|
202
|
+
"content": "Tool response",
|
|
203
|
+
"tool_call_id": "call_123",
|
|
204
|
+
"kiln_task_tool_data": None,
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
assert sample_with_none_kiln_data.get("kiln_task_tool_data") is None
|
kiln_ai/utils/test_pdf_utils.py
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import tempfile
|
|
2
|
+
from pathlib import Path
|
|
3
|
+
|
|
1
4
|
import pytest
|
|
2
5
|
from pypdf import PdfReader
|
|
3
6
|
|
|
4
7
|
from conftest import MockFileFactoryMimeType
|
|
5
|
-
from kiln_ai.utils.pdf_utils import split_pdf_into_pages
|
|
8
|
+
from kiln_ai.utils.pdf_utils import convert_pdf_to_images, split_pdf_into_pages
|
|
6
9
|
|
|
7
10
|
|
|
8
11
|
async def test_split_pdf_into_pages_success(mock_file_factory):
|
|
@@ -71,3 +74,13 @@ async def test_split_pdf_into_pages_temporary_directory_creation(mock_file_facto
|
|
|
71
74
|
# Verify the temporary directory is cleaned up
|
|
72
75
|
for temp_dir in captured_temp_dirs:
|
|
73
76
|
assert not temp_dir.exists()
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
async def test_convert_pdf_to_images(mock_file_factory):
|
|
80
|
+
"""Test that convert_pdf_to_images successfully converts a PDF into individual images."""
|
|
81
|
+
test_file = mock_file_factory(MockFileFactoryMimeType.PDF)
|
|
82
|
+
with tempfile.TemporaryDirectory() as temp_dir:
|
|
83
|
+
images = await convert_pdf_to_images(test_file, Path(temp_dir))
|
|
84
|
+
assert len(images) == 2
|
|
85
|
+
assert all(image.exists() for image in images)
|
|
86
|
+
assert all(image.suffix == ".png" for image in images)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: kiln-ai
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.22.1
|
|
4
4
|
Summary: Kiln AI
|
|
5
5
|
Project-URL: Homepage, https://kiln.tech
|
|
6
6
|
Project-URL: Repository, https://github.com/Kiln-AI/kiln
|
|
@@ -28,8 +28,10 @@ Requires-Dist: llama-index-vector-stores-lancedb>=0.3.3
|
|
|
28
28
|
Requires-Dist: llama-index>=0.13.3
|
|
29
29
|
Requires-Dist: openai>=1.53.0
|
|
30
30
|
Requires-Dist: pdoc>=15.0.0
|
|
31
|
+
Requires-Dist: pillow>=11.1.0
|
|
31
32
|
Requires-Dist: pydantic>=2.9.2
|
|
32
33
|
Requires-Dist: pypdf>=6.0.0
|
|
34
|
+
Requires-Dist: pypdfium2>=4.30.0
|
|
33
35
|
Requires-Dist: pytest-benchmark>=5.1.0
|
|
34
36
|
Requires-Dist: pytest-cov>=6.0.0
|
|
35
37
|
Requires-Dist: pyyaml>=6.0.2
|
|
@@ -83,6 +85,10 @@ The library has a [comprehensive set of docs](https://kiln-ai.github.io/Kiln/kil
|
|
|
83
85
|
- [Building and Running a Kiln Task from Code](#building-and-running-a-kiln-task-from-code)
|
|
84
86
|
- [Tagging Task Runs Programmatically](#tagging-task-runs-programmatically)
|
|
85
87
|
- [Adding Custom Model or AI Provider from Code](#adding-custom-model-or-ai-provider-from-code)
|
|
88
|
+
- [Taking Kiln RAG to production](#taking-kiln-rag-to-production)
|
|
89
|
+
- [Load a LlamaIndex Vector Store](#load-a-llamaindex-vector-store)
|
|
90
|
+
- [Example: LanceDB Cloud](#example-lancedb-cloud)
|
|
91
|
+
- [Deploy RAG without LlamaIndex](#deploy-rag-without-llamaindex)t
|
|
86
92
|
- [Full API Reference](#full-api-reference)
|
|
87
93
|
|
|
88
94
|
## Installation
|
|
@@ -350,6 +356,78 @@ custom_model_ids.append(new_model)
|
|
|
350
356
|
Config.shared().custom_models = custom_model_ids
|
|
351
357
|
```
|
|
352
358
|
|
|
359
|
+
## Taking Kiln RAG to production
|
|
360
|
+
|
|
361
|
+
When you're ready to deploy your RAG system, you can export your processed documents to any vector store supported by LlamaIndex. This allows you to use your Kiln-configured chunking and embedding settings in production.
|
|
362
|
+
|
|
363
|
+
### Load a LlamaIndex Vector Store
|
|
364
|
+
|
|
365
|
+
Kiln provides a `VectorStoreLoader` that yields your processed document chunks as LlamaIndex `TextNode` objects. These nodes contain the same metadata, chunking and embedding data as your Kiln Search Tool configuration.
|
|
366
|
+
|
|
367
|
+
```py
|
|
368
|
+
from kiln_ai.datamodel import Project
|
|
369
|
+
from kiln_ai.datamodel.rag import RagConfig
|
|
370
|
+
from kiln_ai.adapters.vector_store_loaders import VectorStoreLoader
|
|
371
|
+
|
|
372
|
+
# Load your project and RAG configuration
|
|
373
|
+
project = Project.load_from_file("path/to/your/project.kiln")
|
|
374
|
+
rag_config = RagConfig.from_id_and_parent_path("rag-config-id", project.path)
|
|
375
|
+
|
|
376
|
+
# Create the loader
|
|
377
|
+
loader = VectorStoreLoader(project=project, rag_config=rag_config)
|
|
378
|
+
|
|
379
|
+
# Export chunks to any LlamaIndex vector store
|
|
380
|
+
async for batch in loader.iter_llama_index_nodes(batch_size=10):
|
|
381
|
+
# Insert into your chosen vector store
|
|
382
|
+
# Examples: LanceDB, Pinecone, Chroma, Qdrant, etc.
|
|
383
|
+
pass
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
**Supported Vector Stores:** LlamaIndex supports 20+ vector stores including LanceDB, Pinecone, Weaviate, Chroma, Qdrant, and more. See the [full list](https://developers.llamaindex.ai/python/framework/module_guides/storing/vector_stores/).
|
|
387
|
+
|
|
388
|
+
### Example: LanceDB Cloud
|
|
389
|
+
|
|
390
|
+
Internally Kiln uses LanceDB. By using LanceDB cloud you'll get the same indexing behaviour as in app.
|
|
391
|
+
|
|
392
|
+
Here's a complete example using LanceDB Cloud:
|
|
393
|
+
|
|
394
|
+
```py
|
|
395
|
+
from kiln_ai.datamodel import Project
|
|
396
|
+
from kiln_ai.datamodel.rag import RagConfig
|
|
397
|
+
from kiln_ai.datamodel.vector_store import VectorStoreConfig
|
|
398
|
+
from kiln_ai.adapters.vector_store_loaders import VectorStoreLoader
|
|
399
|
+
from kiln_ai.adapters.vector_store.lancedb_adapter import lancedb_construct_from_config
|
|
400
|
+
|
|
401
|
+
# Load configurations
|
|
402
|
+
project = Project.load_from_file("path/to/your/project.kiln")
|
|
403
|
+
rag_config = RagConfig.from_id_and_parent_path("rag-config-id", project.path)
|
|
404
|
+
vector_store_config = VectorStoreConfig.from_id_and_parent_path(
|
|
405
|
+
rag_config.vector_store_config_id, project.path,
|
|
406
|
+
)
|
|
407
|
+
|
|
408
|
+
# Create LanceDB vector store
|
|
409
|
+
lancedb_store = lancedb_construct_from_config(
|
|
410
|
+
vector_store_config=vector_store_config,
|
|
411
|
+
uri="db://my-project",
|
|
412
|
+
api_key="sk_...",
|
|
413
|
+
region="us-east-1",
|
|
414
|
+
table_name="my-documents", # Created automatically
|
|
415
|
+
)
|
|
416
|
+
|
|
417
|
+
# Export and insert your documents
|
|
418
|
+
loader = VectorStoreLoader(project=project, rag_config=rag_config)
|
|
419
|
+
async for batch in loader.iter_llama_index_nodes(batch_size=100):
|
|
420
|
+
await lancedb_store.async_add(batch)
|
|
421
|
+
|
|
422
|
+
print("Documents successfully exported to LanceDB!")
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
After export, query your data using [LlamaIndex](https://developers.llamaindex.ai/python/framework-api-reference/storage/vector_store/lancedb/) or the [LanceDB client](https://lancedb.github.io/lancedb/).
|
|
426
|
+
|
|
427
|
+
### Deploy RAG without LlamaIndex
|
|
428
|
+
|
|
429
|
+
While Kiln is designed for deploying to LlamaIndex, you don't need to use it. The `iter_llama_index_nodes` returns a `TextNode` object which includes all the data you need to build a RAG index in any stack: embedding, text, document name, chunk ID, etc.
|
|
430
|
+
|
|
353
431
|
## Full API Reference
|
|
354
432
|
|
|
355
433
|
The library can do a lot more than the examples we've shown here.
|
|
@@ -2,8 +2,8 @@ kiln_ai/__init__.py,sha256=Sc4z8LRVFMwJUoc_DPVUriSXTZ6PO9MaJ80PhRbKyB8,34
|
|
|
2
2
|
kiln_ai/adapters/__init__.py,sha256=8QjnTWzywb49XcLjhc8xZUwKBRATX2k-sOAQMX2Vjcc,1151
|
|
3
3
|
kiln_ai/adapters/adapter_registry.py,sha256=eVvtAfO-QMgGm4XlncWSf4z1Y7qq5cCwscmQEJNwKMY,2522
|
|
4
4
|
kiln_ai/adapters/docker_model_runner_tools.py,sha256=GOX_qwg2BNZp20cgota7iSW0YIdSqRHCleAYjIAGwws,3957
|
|
5
|
-
kiln_ai/adapters/ml_embedding_model_list.py,sha256=
|
|
6
|
-
kiln_ai/adapters/ml_model_list.py,sha256=
|
|
5
|
+
kiln_ai/adapters/ml_embedding_model_list.py,sha256=YsgdUOLPSDHnk48TDZJCsmuNUiABp-5n573BAHOFEpM,18234
|
|
6
|
+
kiln_ai/adapters/ml_model_list.py,sha256=sZgaR8RLv7XxUJzLicAi-kZ22_5M5Z1Wiy6gzo7fDLU,168429
|
|
7
7
|
kiln_ai/adapters/ollama_tools.py,sha256=WqQOYOrf07lvRJ2pd1_k6Z8AJRoajtt_uNsaMJr8MR4,5622
|
|
8
8
|
kiln_ai/adapters/prompt_builders.py,sha256=R5IgZ7I2Ftx7i67xQb9UwcHE5gbPxgvgys_UAs3fc6A,15165
|
|
9
9
|
kiln_ai/adapters/provider_tools.py,sha256=3CsfFJTxMs_X60tOc-SNIr9FkZr-HjUvwRifMgkZjYg,23647
|
|
@@ -11,8 +11,8 @@ kiln_ai/adapters/remote_config.py,sha256=9ZuTD0nvAzRwEvqQvRYRDWXslOOBrArguRk32ju
|
|
|
11
11
|
kiln_ai/adapters/run_output.py,sha256=QDBP14i5F6YsH3ymJp1V-3JijbNVd9BQ656WLVUGx1g,383
|
|
12
12
|
kiln_ai/adapters/test_adapter_registry.py,sha256=KVT5n1SABScbEjOySSR-zPU22pDbwxwMdnTGU1DOETw,32107
|
|
13
13
|
kiln_ai/adapters/test_docker_model_runner_tools.py,sha256=xv8cDZ1LPfqjSoLtakEPet6jwHvZ14dtyjzWXWM6pYM,10795
|
|
14
|
-
kiln_ai/adapters/test_ml_embedding_model_list.py,sha256=
|
|
15
|
-
kiln_ai/adapters/test_ml_model_list.py,sha256=
|
|
14
|
+
kiln_ai/adapters/test_ml_embedding_model_list.py,sha256=FD-tOnPltEig8ltwulvSxT5817zzAYAdq5HcdD_NIRs,8725
|
|
15
|
+
kiln_ai/adapters/test_ml_model_list.py,sha256=GTuIdRHRSkZxNJMambkQhLppOsRokURYjGBEh12CTng,18101
|
|
16
16
|
kiln_ai/adapters/test_ollama_tools.py,sha256=lJ-GmQWEp60xzueka2w8Bcs2iMBYKXOE0B8Dn5tAfT8,14650
|
|
17
17
|
kiln_ai/adapters/test_prompt_adaptors.py,sha256=4b3tn57RoPGDzz-L19hO3HQIt8KRQOEIH4nynLZGNn4,8426
|
|
18
18
|
kiln_ai/adapters/test_prompt_builders.py,sha256=wyGebfm6-pPgF2I-B1RHsx_m-Li3qNm81jebIIFr-TE,22586
|
|
@@ -55,12 +55,12 @@ kiln_ai/adapters/extractors/base_extractor.py,sha256=FJO5NsUCercjseGAJYXS00Q2wUz
|
|
|
55
55
|
kiln_ai/adapters/extractors/encoding.py,sha256=E8xJyqx6H5KeTQpVKlgcqijCshK8LXinWUi6F7p1-lA,606
|
|
56
56
|
kiln_ai/adapters/extractors/extractor_registry.py,sha256=kpewlItygFUSHNA8bpG358of5hftS439qxLXm4ofZEE,1713
|
|
57
57
|
kiln_ai/adapters/extractors/extractor_runner.py,sha256=8BuBWiNzhVWwLfgvT94bHOTRgUmb-MAtNIw-i07aD1w,3800
|
|
58
|
-
kiln_ai/adapters/extractors/litellm_extractor.py,sha256=
|
|
58
|
+
kiln_ai/adapters/extractors/litellm_extractor.py,sha256=TREVLXDHV299MR1rK_FAsgxQDV8e000n4xwjgeRptJo,15654
|
|
59
59
|
kiln_ai/adapters/extractors/test_base_extractor.py,sha256=X8iwqgFpeFJ01J1t7fslP2DATVn1j-lDeDshh4mEXSM,7355
|
|
60
60
|
kiln_ai/adapters/extractors/test_encoding.py,sha256=zrvjBxpmv13qy4my6az-LYyMk36vU2ifVhl16ZPnF4A,2011
|
|
61
61
|
kiln_ai/adapters/extractors/test_extractor_registry.py,sha256=fNl5S4V37VnT_xTVyocTAFt3V-pTDPtyJwzRTLjbnl0,7209
|
|
62
62
|
kiln_ai/adapters/extractors/test_extractor_runner.py,sha256=0Rm9LjZdIHqxWmHXbseolUZ27yoS6vfVyQk-kmvJP1s,5714
|
|
63
|
-
kiln_ai/adapters/extractors/test_litellm_extractor.py,sha256=
|
|
63
|
+
kiln_ai/adapters/extractors/test_litellm_extractor.py,sha256=2fPkovV9Y88D6oZmD90udJ3Ce3mjNiX7Hw07ktij8ho,47303
|
|
64
64
|
kiln_ai/adapters/fine_tune/__init__.py,sha256=l3ZV8c_IhvLxdPRcbfs67nvqLbCM1fWqFIm3u3oPQpI,257
|
|
65
65
|
kiln_ai/adapters/fine_tune/base_finetune.py,sha256=4mLrFHvERU76_e8bCuOGLTc5UAdFn4UUCuPAe_3uD0Q,5875
|
|
66
66
|
kiln_ai/adapters/fine_tune/dataset_formatter.py,sha256=oWYXOdkRaVZR_mIeox2gLf5_LZJ79hHV9PThk82zHtU,12928
|
|
@@ -77,13 +77,13 @@ kiln_ai/adapters/fine_tune/together_finetune.py,sha256=KpJBZt0NBNUNLsVEYYC4Dzob1
|
|
|
77
77
|
kiln_ai/adapters/fine_tune/vertex_finetune.py,sha256=Ik6Ov711-oruJnMHpVZTPimWJY2W_JnfdKIdR2djGrc,8545
|
|
78
78
|
kiln_ai/adapters/model_adapters/__init__.py,sha256=m5GRtOHwVVvp_XDOss8c1X3NFf1wQQlC2eBgI4tXQhM,212
|
|
79
79
|
kiln_ai/adapters/model_adapters/base_adapter.py,sha256=6aktTD3vSTLxVYVpKK0IhhLpjQCHgvBFSpo8T2hJ6To,14749
|
|
80
|
-
kiln_ai/adapters/model_adapters/litellm_adapter.py,sha256
|
|
80
|
+
kiln_ai/adapters/model_adapters/litellm_adapter.py,sha256=-i8zOQzCMW-JZJ8l3a4j4A6TLGQIr42EFSJf9D67tKI,30035
|
|
81
81
|
kiln_ai/adapters/model_adapters/litellm_config.py,sha256=zOQEkYKeoQ0FIbxTkyyoaGtaQiB9eYK3IuyUgqSwzLE,485
|
|
82
82
|
kiln_ai/adapters/model_adapters/test_base_adapter.py,sha256=jCsBnhScr1jurugm80Bf_7w26A7RMb2uIUW8MndN4p8,22191
|
|
83
|
-
kiln_ai/adapters/model_adapters/test_litellm_adapter.py,sha256=
|
|
84
|
-
kiln_ai/adapters/model_adapters/test_litellm_adapter_tools.py,sha256=
|
|
85
|
-
kiln_ai/adapters/model_adapters/test_saving_adapter_results.py,sha256=
|
|
86
|
-
kiln_ai/adapters/model_adapters/test_structured_output.py,sha256
|
|
83
|
+
kiln_ai/adapters/model_adapters/test_litellm_adapter.py,sha256=3k8LZJ4ouQzT3l5-jRuYYxOk06S8Pc1ogsyuHvw-ggI,37351
|
|
84
|
+
kiln_ai/adapters/model_adapters/test_litellm_adapter_tools.py,sha256=0XVzf5SmCV0omcqFrfAMucdgM9i6a0Y4RvfYXkVyc5k,44706
|
|
85
|
+
kiln_ai/adapters/model_adapters/test_saving_adapter_results.py,sha256=cyPzuq-S2qZnKrr0JuNp3UJ8Af7iG3epjs6gkGW06RE,9770
|
|
86
|
+
kiln_ai/adapters/model_adapters/test_structured_output.py,sha256=dRwdVDcsKnuJ7qu7iutEMa7B5oGIaGdYqwtqlqQs3A4,16967
|
|
87
87
|
kiln_ai/adapters/parsers/__init__.py,sha256=1eAJmjSfVShnC7batg2ZnBX0rARDDNdredLMYxmwoiA,202
|
|
88
88
|
kiln_ai/adapters/parsers/base_parser.py,sha256=AE8UYCttmVXbilpICotnDdFYTFhGMiBJHrxIUgPTAWM,280
|
|
89
89
|
kiln_ai/adapters/parsers/json_parser.py,sha256=IszrBrhIFrrVr76UZsuejkBdqpZG27mU72264HVgVzE,1274
|
|
@@ -105,21 +105,27 @@ kiln_ai/adapters/repair/repair_task.py,sha256=ziOKNo2dT0a4ggLIDk5ETfSTbuxn_xgI60
|
|
|
105
105
|
kiln_ai/adapters/repair/test_repair_task.py,sha256=GLrEZsVt5Z-62NanVEtIvnI57YlS9GyhyNAr3ezW57o,8770
|
|
106
106
|
kiln_ai/adapters/vector_store/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
107
107
|
kiln_ai/adapters/vector_store/base_vector_store_adapter.py,sha256=_Ba6iJEpuQplji3LBkkfcy9edkxCF3pUaKMS4PeAuPY,2524
|
|
108
|
-
kiln_ai/adapters/vector_store/lancedb_adapter.py,sha256=
|
|
108
|
+
kiln_ai/adapters/vector_store/lancedb_adapter.py,sha256=TuuV5x0MiIQmTKJQo-St6Dxd0I5yKgVfbVqrQEiZqbQ,14049
|
|
109
|
+
kiln_ai/adapters/vector_store/lancedb_helpers.py,sha256=fMzXA3OW5c0s2TAsrxKghWYitQbevR0G1lvhChVvAog,3841
|
|
109
110
|
kiln_ai/adapters/vector_store/test_base_vector_store.py,sha256=t-qCfYipfBRqRs5J6e0VaqVvcRRL7YZuCqOOG8lOViA,5811
|
|
110
|
-
kiln_ai/adapters/vector_store/test_lancedb_adapter.py,sha256=
|
|
111
|
+
kiln_ai/adapters/vector_store/test_lancedb_adapter.py,sha256=R-wZsJTm8nF4TWCyBkWWgKkIkXy11xCqpCsyAY_0B-M,63339
|
|
112
|
+
kiln_ai/adapters/vector_store/test_lancedb_helpers.py,sha256=P8MKttQEKSh-sXW5gAiuAL4CLmlWCJiMd9B8g2m1kOc,4559
|
|
111
113
|
kiln_ai/adapters/vector_store/test_vector_store_registry.py,sha256=w0hpXte0XnxbkWYFGWfFuu33GgQUPcY2HE7habpZ_C4,6809
|
|
112
114
|
kiln_ai/adapters/vector_store/vector_store_registry.py,sha256=jsE1OS964Ai7cJ5tlrp_PZuxEImHQSSR8DGAqEgDavc,1123
|
|
115
|
+
kiln_ai/adapters/vector_store_loaders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
116
|
+
kiln_ai/adapters/vector_store_loaders/test_lancedb_loader.py,sha256=CJTcdRuuKjz9Pq65OFV9CzbZi48sB0uBsmxOt3FGmlQ,9088
|
|
117
|
+
kiln_ai/adapters/vector_store_loaders/test_vector_store_loader.py,sha256=axOAQQg_URkXRZObbJlQ1AQTSsgLPlO5EjSVkHqy-Mo,17905
|
|
118
|
+
kiln_ai/adapters/vector_store_loaders/vector_store_loader.py,sha256=_lW_cLId0b8Huv80Psl_zCh9XtE0S6wvlPRV2zfdAMU,3505
|
|
113
119
|
kiln_ai/datamodel/__init__.py,sha256=uxLwjHxWTbYw9LVRJtK02cUrbDZCKyfYxgYJxrOjFoA,2091
|
|
114
|
-
kiln_ai/datamodel/basemodel.py,sha256=
|
|
120
|
+
kiln_ai/datamodel/basemodel.py,sha256=GZhZkDF6y9xN3Gn4h63FE3tEjcyGqoVJrC5QNfBXpsQ,32076
|
|
115
121
|
kiln_ai/datamodel/chunk.py,sha256=LfBjaJEsPLBXfsFEofVLAfaISmfvsvzAmmCYVtosV7U,5535
|
|
116
122
|
kiln_ai/datamodel/datamodel_enums.py,sha256=QJd8i-zXOrVTynaFslJpKQFo2OGvc8DT3B_Elc2KBl4,4361
|
|
117
123
|
kiln_ai/datamodel/dataset_filters.py,sha256=zXS5QeCqWa1vAxs3Pyy5FJtySx9yYJzxsCMANd23-3c,5502
|
|
118
124
|
kiln_ai/datamodel/dataset_split.py,sha256=dAqwwNtWhKntEGJtauT0-YDG8aLFISelYS7o8TWG0TE,5923
|
|
119
125
|
kiln_ai/datamodel/embedding.py,sha256=NBm5OewKkvKJwqMaZhOrP_L_Rc8FWyB0CwDIihZkzf0,2385
|
|
120
126
|
kiln_ai/datamodel/eval.py,sha256=vHDpwDBGUqveihu7bqsvPmcvuOKHTMBVd4a3zMbEo3s,15894
|
|
121
|
-
kiln_ai/datamodel/external_tool_server.py,sha256=
|
|
122
|
-
kiln_ai/datamodel/extraction.py,sha256=
|
|
127
|
+
kiln_ai/datamodel/external_tool_server.py,sha256=NW7MdT0zWRQ-iDWQanDQo2U3NO807InXXXASTbiaq6k,17513
|
|
128
|
+
kiln_ai/datamodel/extraction.py,sha256=pD50cG5uJb2FN2ndptFZHnaZhb1tI7biPY2PiupUxZ8,10035
|
|
123
129
|
kiln_ai/datamodel/finetune.py,sha256=3cwg9FTbhYDH2DEWS_L8lMS5KPok9mJItWjYHC6LnH0,4835
|
|
124
130
|
kiln_ai/datamodel/json_schema.py,sha256=vgzTVLrdjBm9h0XxYV54fP9wOcmsWvQhASG4yhK5eUY,3802
|
|
125
131
|
kiln_ai/datamodel/model_cache.py,sha256=9X4aAigbkFdytckgw8InCMh86uBna0ME_1HJSeMPEn0,4495
|
|
@@ -130,21 +136,21 @@ kiln_ai/datamodel/rag.py,sha256=DpBmdl4MSz0QegvK0YV7-JDrkFSwQlcMVcw8K30dAFQ,2859
|
|
|
130
136
|
kiln_ai/datamodel/registry.py,sha256=RaIDmjrqzPe6SRKNVUUUCskqPseXcogi528W53jpAbc,477
|
|
131
137
|
kiln_ai/datamodel/run_config.py,sha256=sSHE0nlIoKrRQuqebSP6Vb2LYi0gHX3i3Bix1Vk4-xw,2166
|
|
132
138
|
kiln_ai/datamodel/strict_mode.py,sha256=sm4Xka8mnJHCShtbh6MMU5dDQv-cLj8lHgHkmFKpsl0,849
|
|
133
|
-
kiln_ai/datamodel/task.py,sha256=
|
|
134
|
-
kiln_ai/datamodel/task_output.py,sha256=
|
|
139
|
+
kiln_ai/datamodel/task.py,sha256=SBLZJsLncRjigqJpAubugEdr6SDmOVVOq48qV-KIwEs,6854
|
|
140
|
+
kiln_ai/datamodel/task_output.py,sha256=8thPMkFrl6vDWjWB1NXBk2OtUoaV7UXwEDXq7p_TCyM,14260
|
|
135
141
|
kiln_ai/datamodel/task_run.py,sha256=V7wlUXgq07EcLREa8VeIdN01wuzlvkvc16QYmLlgeGE,10325
|
|
136
|
-
kiln_ai/datamodel/test_attachment.py,sha256=
|
|
137
|
-
kiln_ai/datamodel/test_basemodel.py,sha256=
|
|
142
|
+
kiln_ai/datamodel/test_attachment.py,sha256=zwZD-AE0R3G4fZpV8X73YS8IH32XhqKz9UVzKirQb1s,23717
|
|
143
|
+
kiln_ai/datamodel/test_basemodel.py,sha256=qzLeFyXDSuM8ZMCgMQOHvRo9ihibEpn6nkRuH6-wcL4,34584
|
|
138
144
|
kiln_ai/datamodel/test_chunk_models.py,sha256=_TFkRoXVY1FKB3m_Pr8v2K0NbB-kyOznAOOQXgzQcnI,10912
|
|
139
145
|
kiln_ai/datamodel/test_dataset_filters.py,sha256=TFHQZLB0rJxnxsFjD546eXVFxZNAJi0sPZ8j24wYd1w,5322
|
|
140
146
|
kiln_ai/datamodel/test_dataset_split.py,sha256=pW4WwocMnAEY63yn7ps1Nm8UCjwSsTxuDJtrs4uooLg,11056
|
|
141
|
-
kiln_ai/datamodel/test_datasource.py,sha256=
|
|
147
|
+
kiln_ai/datamodel/test_datasource.py,sha256=WBpounanSyVPSY68EftuhgSZrQ60LdHgWuT6D2zWJlw,5206
|
|
142
148
|
kiln_ai/datamodel/test_embedding_models.py,sha256=lIvw3kd_NnFpnTTXOTHAcUcFzriilPutxUMjipes79M,16734
|
|
143
149
|
kiln_ai/datamodel/test_eval_model.py,sha256=3PuBk6QQEYSM0LJwm4DC_hPvaAGvQe2HbHTT0Arw7bI,23946
|
|
144
150
|
kiln_ai/datamodel/test_example_models.py,sha256=QoUdMHZfOT4BV0CyfBMLzJZo2vKi-rVw0gpWXYJCzOM,31407
|
|
145
|
-
kiln_ai/datamodel/test_external_tool_server.py,sha256=
|
|
151
|
+
kiln_ai/datamodel/test_external_tool_server.py,sha256=McvhWXazWuon-jTh78Bu7VHnSvv-JjbAl6XiqKPr47A,39341
|
|
146
152
|
kiln_ai/datamodel/test_extraction_chunk.py,sha256=tqPmJxF9jZ29_Bue1wS2e7TuOozeV3fnFTISuZaAVmM,7349
|
|
147
|
-
kiln_ai/datamodel/test_extraction_model.py,sha256=
|
|
153
|
+
kiln_ai/datamodel/test_extraction_model.py,sha256=DqM1Dhq7HmjPzgJhrCzfnak20N4Jh2-codlPavzPH0I,16328
|
|
148
154
|
kiln_ai/datamodel/test_json_schema.py,sha256=R0Cfc9WbieMslgvYsj2HFx8RHIq2fF9NcT5jH-kEqh4,4793
|
|
149
155
|
kiln_ai/datamodel/test_model_cache.py,sha256=Fy-ucYNzS5JEG-8SFY4nVHA8iRbXXxai20f8_oGl97o,8184
|
|
150
156
|
kiln_ai/datamodel/test_model_perf.py,sha256=JcJpedvgK49zj_VIUc5DW0QjuIXhaBQbBpccUJVy2hU,3319
|
|
@@ -154,24 +160,26 @@ kiln_ai/datamodel/test_output_rating.py,sha256=zvPIp2shAgCs2RQBgwYoL09fRA3krHvgA
|
|
|
154
160
|
kiln_ai/datamodel/test_prompt_id.py,sha256=_vcuiDvai8TENb6agk0F9ZsaTrAgoD1VkMxRIT2p9mQ,4384
|
|
155
161
|
kiln_ai/datamodel/test_rag.py,sha256=pBkwOlBVSddUNxMl24F5or494dJ8PYLzY00ijzu02yg,23497
|
|
156
162
|
kiln_ai/datamodel/test_registry.py,sha256=Y3dReO13QwGBaW9p7qUiTc0H-WaJ3pgapaN35kVoVD8,2903
|
|
157
|
-
kiln_ai/datamodel/test_task.py,sha256=
|
|
158
|
-
kiln_ai/datamodel/test_tool_id.py,sha256=
|
|
163
|
+
kiln_ai/datamodel/test_task.py,sha256=POxcfZErop8IXS5nVVA09BmpQLIQkeMnPHDhVlAJNxM,11928
|
|
164
|
+
kiln_ai/datamodel/test_tool_id.py,sha256=MKSAb_SwPc4_dYcS9aoKJf3VatBL7FDIgixTsDQ3bos,17015
|
|
159
165
|
kiln_ai/datamodel/test_vector_store.py,sha256=Qg7BNMPoG3Egj_nUoWvnxf43r99Q8Y9c7ra9k2M9X68,11629
|
|
160
|
-
kiln_ai/datamodel/tool_id.py,sha256=
|
|
166
|
+
kiln_ai/datamodel/tool_id.py,sha256=OJ98ZMfczTq8gBap35W0xHz8eSCBcShn-K0N9NmU_6w,5233
|
|
161
167
|
kiln_ai/datamodel/vector_store.py,sha256=VugXwAzBDOIn3ZznwGbYbka7RVPTlwJMxVf9wUakEIs,4937
|
|
162
168
|
kiln_ai/tools/__init__.py,sha256=BaonknPnB9Z0QZligayytgrd8lqKXVOxX357YLW4Qw8,193
|
|
163
|
-
kiln_ai/tools/base_tool.py,sha256=
|
|
164
|
-
kiln_ai/tools/
|
|
165
|
-
kiln_ai/tools/
|
|
166
|
-
kiln_ai/tools/
|
|
169
|
+
kiln_ai/tools/base_tool.py,sha256=cUHQMrydDb4RxzujdJ6MqngsCyyfQQwsEixIy7g-3gE,3167
|
|
170
|
+
kiln_ai/tools/kiln_task_tool.py,sha256=XD-aLPbVozR_HbhErLgVEFAa6PR736djaxP5I9nq9Mk,5583
|
|
171
|
+
kiln_ai/tools/mcp_server_tool.py,sha256=KGFj9zPuI6h1K9ht2f0j1vcAX-sbaX_OZnXHErQY4Kc,3312
|
|
172
|
+
kiln_ai/tools/mcp_session_manager.py,sha256=27l6GxQw84zmJw_Y6fJeH5OT9og3xtiS87UmA3yOv7c,10730
|
|
173
|
+
kiln_ai/tools/rag_tools.py,sha256=3t0Lt6OSY89EZaSzi177csUIyP2BxfpDcpL-7BbgFAg,5849
|
|
167
174
|
kiln_ai/tools/test_base_tools.py,sha256=L0hziYZ2poMhF9_NOwycXS0WBdw41VF1cEN8kemGZtg,6542
|
|
168
|
-
kiln_ai/tools/
|
|
169
|
-
kiln_ai/tools/
|
|
170
|
-
kiln_ai/tools/
|
|
171
|
-
kiln_ai/tools/
|
|
172
|
-
kiln_ai/tools/
|
|
175
|
+
kiln_ai/tools/test_kiln_task_tool.py,sha256=t5eMUDKSQZwRySLRcCKod_KkrAZL7IZ8bb3mcOxAlqU,19405
|
|
176
|
+
kiln_ai/tools/test_mcp_server_tool.py,sha256=Kcd0jEhPwNg4EbTYB4drN0OHUXKYal6pSrXhP4QFo54,16920
|
|
177
|
+
kiln_ai/tools/test_mcp_session_manager.py,sha256=phtXvW9RIEIjvrjmTF9p_ur6gX_8Q8yYd5-93KgpZ2A,60256
|
|
178
|
+
kiln_ai/tools/test_rag_tools.py,sha256=6iFVglqgEtm_FFFolRuy97RfIVU-f2Dju2B2qFqcE2c,37907
|
|
179
|
+
kiln_ai/tools/test_tool_registry.py,sha256=VD2GKDhe5poOc9em2CTy6XN8tI1hteEzgItiTmkEPOc,31515
|
|
180
|
+
kiln_ai/tools/tool_registry.py,sha256=8y5XN5MSMyOulfv3m-yuKSLz0o-gXmKbdDQO1DO5Wko,4184
|
|
173
181
|
kiln_ai/tools/built_in_tools/__init__.py,sha256=IGWLH55vk32KohEOy5lzM4mXb6cf43Rxm2XjLFtfve4,209
|
|
174
|
-
kiln_ai/tools/built_in_tools/math_tools.py,sha256=
|
|
182
|
+
kiln_ai/tools/built_in_tools/math_tools.py,sha256=PK6UYL_-OOKH83btrMeRoZv8sj6H9O-8GpAw5TAl3-g,4010
|
|
175
183
|
kiln_ai/tools/built_in_tools/test_math_tools.py,sha256=yYNpQYT1sGXjOT6ocNY01Ldp1IGPAiSypMioMLdYI-Q,6961
|
|
176
184
|
kiln_ai/utils/__init__.py,sha256=x73BahbCA5KfN7LdZNtBEN8OC8IiRvBrcofPrCSC1Qk,261
|
|
177
185
|
kiln_ai/utils/async_job_runner.py,sha256=qxeAd2cK2EbVx2mPW5Cm-h7OoQsI0qjQo0EOrmISPMU,4799
|
|
@@ -179,7 +187,7 @@ kiln_ai/utils/config.py,sha256=rlY1TNawHUu_8yJSmYdjCjqOMJg-3e4ZXpdZPcttDUk,9666
|
|
|
179
187
|
kiln_ai/utils/dataset_import.py,sha256=EqBBBopCEUy1JH4-EAsBETwGp4MFjzZGfUUBZ6FLfGY,9011
|
|
180
188
|
kiln_ai/utils/env.py,sha256=3XN4Ek0PJ2Tl2w5zpSVWVQ0DJdmnuzAodpnvbDDSJ64,391
|
|
181
189
|
kiln_ai/utils/exhaustive_error.py,sha256=TkkRixIAR3CPEKHeAJzyv0mtxp6BxUBKMvobA3vzQug,262
|
|
182
|
-
kiln_ai/utils/filesystem.py,sha256=
|
|
190
|
+
kiln_ai/utils/filesystem.py,sha256=UxOz1wqoZWi9BvX2DPA2qATSsByLijG6Bb7Oi7eZyn4,394
|
|
183
191
|
kiln_ai/utils/filesystem_cache.py,sha256=mtpcVC3_5I2CHSjgDaZBTuXF5y1APz8oIyunchTHblI,1835
|
|
184
192
|
kiln_ai/utils/formatting.py,sha256=VtB9oag0lOGv17dwT7OPX_3HzBfaU9GsLH-iLete0yM,97
|
|
185
193
|
kiln_ai/utils/litellm.py,sha256=98Ys8I8LjSrNL-8YsPJJsELBB3ZnmtFceDh_ZX38ppY,3798
|
|
@@ -187,8 +195,8 @@ kiln_ai/utils/lock.py,sha256=YQA-prluDeqWKKSN_qsAWQRU4wSGWZsa0Sx-GeCe5ds,3591
|
|
|
187
195
|
kiln_ai/utils/logging.py,sha256=ixtv2Mm6-XWB2PVUPAWVRXnPJULvoTDrsp5NTAk3yp0,6815
|
|
188
196
|
kiln_ai/utils/mime_type.py,sha256=JxkbuSJ1wMjXY1REGUDXOtocS8wwjwakMRmtNIX_kg8,1116
|
|
189
197
|
kiln_ai/utils/name_generator.py,sha256=v26TgpCwQbhQFcZvzgjZvURinjrOyyFhxpsI6NQrHKc,1914
|
|
190
|
-
kiln_ai/utils/open_ai_types.py,sha256=
|
|
191
|
-
kiln_ai/utils/pdf_utils.py,sha256=
|
|
198
|
+
kiln_ai/utils/open_ai_types.py,sha256=Jxri5818Dpbs8ijCCz04TDpwqRgvO00sExWAQmRfVw8,3328
|
|
199
|
+
kiln_ai/utils/pdf_utils.py,sha256=oBjbJ0rlNKAUhjhp8SbSqDNhqaczsP8SC48WWnwOhbc,1994
|
|
192
200
|
kiln_ai/utils/project_utils.py,sha256=C_4VpyHSO4a9yX6SKcL00-l8y1afriXuqvsh54pk6eU,566
|
|
193
201
|
kiln_ai/utils/test_async_job_runner.py,sha256=qJC3C_Ol-nFF5L-kLJxFNFZepw6hAU99UUCMLw3gPKE,10363
|
|
194
202
|
kiln_ai/utils/test_config.py,sha256=buu7On18fBqnpkHtku_LZCVGrgrTs87IulL5eLTMRK8,14112
|
|
@@ -199,13 +207,13 @@ kiln_ai/utils/test_litellm.py,sha256=tgOSIr8YnJd7HVp7tQxrDNxVrkZukWqYxFKNQT_zqpc
|
|
|
199
207
|
kiln_ai/utils/test_lock.py,sha256=wn2BQsT-8FjixxHml8CoxFbvN1c5Xg3CmsDID9fNmJw,5623
|
|
200
208
|
kiln_ai/utils/test_mime_type.py,sha256=7X2GV-zyw7jBaCHCzXzhQptODSBJCcDrhOzv9HMrMEY,2237
|
|
201
209
|
kiln_ai/utils/test_name_geneator.py,sha256=9-hSTBshyakqlPbFnNcggwLrL7lcPTitauBYHg9jFWI,1513
|
|
202
|
-
kiln_ai/utils/test_open_ai_types.py,sha256=
|
|
203
|
-
kiln_ai/utils/test_pdf_utils.py,sha256=
|
|
210
|
+
kiln_ai/utils/test_open_ai_types.py,sha256=SQxAUjnjHpkPLAD16aNplQAVVv61n_eSET-A1gnhwAc,8133
|
|
211
|
+
kiln_ai/utils/test_pdf_utils.py,sha256=a2jXjehu9ulUMLQQyc413p1ZMScIcDzE_8wHhCyK69E,3566
|
|
204
212
|
kiln_ai/utils/test_uuid.py,sha256=g5CX_IAu5y-iNXQaFOoPrbr0hEmqmWPMSM_U4vw64Zc,4139
|
|
205
213
|
kiln_ai/utils/test_validation.py,sha256=FOCRj8OgePIi_YjkfbFC4wr_HeQAa1lK5e6uRoUWZgE,20275
|
|
206
214
|
kiln_ai/utils/uuid.py,sha256=v46fW_xjN7gEyRM5yNv68azp6_QnmcTe-fHpvecpNYQ,315
|
|
207
215
|
kiln_ai/utils/validation.py,sha256=s6_eRprkjZhA00M7UDfCkhIz2gk-DBroOpW0b6_Xolw,3005
|
|
208
|
-
kiln_ai-0.
|
|
209
|
-
kiln_ai-0.
|
|
210
|
-
kiln_ai-0.
|
|
211
|
-
kiln_ai-0.
|
|
216
|
+
kiln_ai-0.22.1.dist-info/METADATA,sha256=fHXPMoa6vpIJQezN8fycep3pyALcXUVPRRWsw3mO0S4,17295
|
|
217
|
+
kiln_ai-0.22.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
218
|
+
kiln_ai-0.22.1.dist-info/licenses/LICENSE.txt,sha256=_NA5pnTYgRRr4qH6lE3X-TuZJ8iRcMUi5ASoGr-lEx8,1209
|
|
219
|
+
kiln_ai-0.22.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|