dasein-core 0.2.7__py3-none-any.whl → 0.2.10__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.
- dasein/api.py +1144 -133
- dasein/capture.py +2325 -1803
- dasein/microturn.py +475 -0
- dasein/models/en_core_web_sm/en_core_web_sm/__init__.py +10 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/LICENSE +19 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/LICENSES_SOURCES +66 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/README.md +47 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/accuracy.json +330 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/attribute_ruler/patterns +0 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/config.cfg +269 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/lemmatizer/lookups/lookups.bin +1 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/meta.json +521 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/ner/cfg +13 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/ner/model +0 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/ner/moves +1 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/parser/cfg +13 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/parser/model +0 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/parser/moves +1 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/senter/cfg +3 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/senter/model +0 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tagger/cfg +57 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tagger/model +0 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tok2vec/cfg +3 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tok2vec/model +0 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tokenizer +3 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/key2row +1 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/lookups.bin +0 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/strings.json +84782 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/vectors +0 -0
- dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/vectors.cfg +3 -0
- dasein/models/en_core_web_sm/en_core_web_sm/meta.json +521 -0
- dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/LICENSE +19 -0
- dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/LICENSES_SOURCES +66 -0
- dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/METADATA +59 -0
- dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/RECORD +35 -0
- dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/WHEEL +5 -0
- dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/entry_points.txt +2 -0
- dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/top_level.txt +1 -0
- dasein/pipecleaner.py +1917 -0
- dasein/wrappers.py +315 -0
- {dasein_core-0.2.7.dist-info → dasein_core-0.2.10.dist-info}/METADATA +4 -1
- dasein_core-0.2.10.dist-info/RECORD +59 -0
- dasein_core-0.2.7.dist-info/RECORD +0 -21
- {dasein_core-0.2.7.dist-info → dasein_core-0.2.10.dist-info}/WHEEL +0 -0
- {dasein_core-0.2.7.dist-info → dasein_core-0.2.10.dist-info}/licenses/LICENSE +0 -0
- {dasein_core-0.2.7.dist-info → dasein_core-0.2.10.dist-info}/top_level.txt +0 -0
dasein/wrappers.py
ADDED
@@ -0,0 +1,315 @@
|
|
1
|
+
"""
|
2
|
+
Monkey-patching wrappers for LLMs and Tools.
|
3
|
+
|
4
|
+
This module contains the monkey-patch logic for intercepting:
|
5
|
+
1. LLM calls (for microturn enforcement)
|
6
|
+
2. Tool calls (for pipecleaner deduplication)
|
7
|
+
"""
|
8
|
+
|
9
|
+
import threading
|
10
|
+
import time
|
11
|
+
from typing import Any, Optional
|
12
|
+
|
13
|
+
# Thread-local storage for callback handler (injected at runtime)
|
14
|
+
_tool_context = threading.local()
|
15
|
+
|
16
|
+
|
17
|
+
def set_pipecleaner_context(callback_handler: Any):
|
18
|
+
"""
|
19
|
+
Inject callback handler into thread-local storage.
|
20
|
+
Called from CognateProxy.__init__ after handler is created.
|
21
|
+
"""
|
22
|
+
_tool_context.callback_handler = callback_handler
|
23
|
+
|
24
|
+
|
25
|
+
def get_pipecleaner_context():
|
26
|
+
"""Get callback handler from thread-local storage."""
|
27
|
+
return getattr(_tool_context, 'callback_handler', None)
|
28
|
+
|
29
|
+
|
30
|
+
def wrap_tools_for_pipecleaner(agent: Any, callback_handler: Any, verbose: bool = False) -> bool:
|
31
|
+
"""
|
32
|
+
DISABLED: This function has been disabled to avoid interfering with tool execution.
|
33
|
+
"""
|
34
|
+
print(f"[WRAPPERS DISABLED] wrap_tools_for_pipecleaner called but DISABLED - no patching will occur")
|
35
|
+
return False # Return False to indicate nothing was done
|
36
|
+
|
37
|
+
# ORIGINAL CODE BELOW - COMPLETELY DISABLED
|
38
|
+
if False:
|
39
|
+
pass
|
40
|
+
try:
|
41
|
+
import importlib
|
42
|
+
|
43
|
+
if verbose:
|
44
|
+
print(f"[DASEIN][TOOL_WRAPPER] 🔍 Instrumenting tool wrappers...")
|
45
|
+
|
46
|
+
patched_count = 0
|
47
|
+
|
48
|
+
# ===== [HP2] ToolNode._run_one/_arun_one =====
|
49
|
+
try:
|
50
|
+
from langgraph.prebuilt.tool_node import ToolNode
|
51
|
+
|
52
|
+
if hasattr(ToolNode, '_arun_one'):
|
53
|
+
original_arun_one = ToolNode._arun_one
|
54
|
+
|
55
|
+
async def patched_arun_one(self, call, config):
|
56
|
+
tool_name = call.get('name', 'unknown') if isinstance(call, dict) else getattr(call, 'name', 'unknown')
|
57
|
+
result = await original_arun_one(self, call, config)
|
58
|
+
# Apply pipecleaner
|
59
|
+
result = _apply_pipecleaner_to_result(tool_name, result, callback_handler)
|
60
|
+
return result
|
61
|
+
|
62
|
+
ToolNode._arun_one = patched_arun_one
|
63
|
+
if verbose:
|
64
|
+
print(f"[DASEIN][TOOL_WRAPPER] ✅ Patched ToolNode._arun_one")
|
65
|
+
patched_count += 1
|
66
|
+
|
67
|
+
if hasattr(ToolNode, '_run_one'):
|
68
|
+
original_run_one = ToolNode._run_one
|
69
|
+
|
70
|
+
def patched_run_one(self, call, config):
|
71
|
+
tool_name = call.get('name', 'unknown') if isinstance(call, dict) else getattr(call, 'name', 'unknown')
|
72
|
+
result = original_run_one(self, call, config)
|
73
|
+
result = _apply_pipecleaner_to_result(tool_name, result, callback_handler)
|
74
|
+
return result
|
75
|
+
|
76
|
+
ToolNode._run_one = patched_run_one
|
77
|
+
if verbose:
|
78
|
+
print(f"[DASEIN][TOOL_WRAPPER] ✅ Patched ToolNode._run_one")
|
79
|
+
patched_count += 1
|
80
|
+
except ImportError:
|
81
|
+
if verbose:
|
82
|
+
print(f"[DASEIN][TOOL_WRAPPER] ⚠️ ToolNode not available")
|
83
|
+
|
84
|
+
# ===== BaseTool._run/_arun (ACTUAL EXECUTION, not wrapper) =====
|
85
|
+
try:
|
86
|
+
from langchain_core.tools.base import BaseTool
|
87
|
+
|
88
|
+
# Patch _arun (the actual async execution method)
|
89
|
+
if hasattr(BaseTool, '_arun'):
|
90
|
+
original_arun = BaseTool._arun
|
91
|
+
|
92
|
+
async def patched_arun(self, *args, **kwargs):
|
93
|
+
tool_name = getattr(self, 'name', 'unknown')
|
94
|
+
result = await original_arun(self, *args, **kwargs)
|
95
|
+
handler = get_pipecleaner_context()
|
96
|
+
cleaned_result = _apply_pipecleaner_to_result(tool_name, result, handler)
|
97
|
+
return cleaned_result
|
98
|
+
|
99
|
+
BaseTool._arun = patched_arun
|
100
|
+
if verbose:
|
101
|
+
print(f"[DASEIN][TOOL_WRAPPER] ✅ Patched BaseTool._arun")
|
102
|
+
patched_count += 1
|
103
|
+
|
104
|
+
# Patch _run (sync version)
|
105
|
+
if hasattr(BaseTool, '_run'):
|
106
|
+
original_run = BaseTool._run
|
107
|
+
|
108
|
+
def patched_run(self, *args, **kwargs):
|
109
|
+
tool_name = getattr(self, 'name', 'unknown')
|
110
|
+
result = original_run(self, *args, **kwargs)
|
111
|
+
handler = get_pipecleaner_context()
|
112
|
+
cleaned_result = _apply_pipecleaner_to_result(tool_name, result, handler)
|
113
|
+
return cleaned_result
|
114
|
+
|
115
|
+
BaseTool._run = patched_run
|
116
|
+
if verbose:
|
117
|
+
print(f"[DASEIN][TOOL_WRAPPER] ✅ Patched BaseTool._run")
|
118
|
+
patched_count += 1
|
119
|
+
|
120
|
+
# ALSO patch ainvoke/invoke as backup
|
121
|
+
if hasattr(BaseTool, 'ainvoke'):
|
122
|
+
original_ainvoke = BaseTool.ainvoke
|
123
|
+
|
124
|
+
async def patched_ainvoke(self, *args, **kwargs):
|
125
|
+
tool_name = getattr(self, 'name', 'unknown')
|
126
|
+
result = await original_ainvoke(self, *args, **kwargs)
|
127
|
+
handler = get_pipecleaner_context()
|
128
|
+
cleaned_result = _apply_pipecleaner_to_result(tool_name, result, handler)
|
129
|
+
|
130
|
+
if cleaned_result != result:
|
131
|
+
print(f"[🧹 CLEANED] Tool '{tool_name}' | {len(str(result))} → {len(str(cleaned_result))} chars")
|
132
|
+
|
133
|
+
return cleaned_result
|
134
|
+
|
135
|
+
BaseTool.ainvoke = patched_ainvoke
|
136
|
+
if verbose:
|
137
|
+
print(f"[DASEIN][TOOL_WRAPPER] ✅ Patched BaseTool.ainvoke")
|
138
|
+
patched_count += 1
|
139
|
+
|
140
|
+
if hasattr(BaseTool, 'invoke'):
|
141
|
+
original_invoke = BaseTool.invoke
|
142
|
+
|
143
|
+
def patched_invoke(self, *args, **kwargs):
|
144
|
+
tool_name = getattr(self, 'name', 'unknown')
|
145
|
+
result = original_invoke(self, *args, **kwargs)
|
146
|
+
handler = get_pipecleaner_context()
|
147
|
+
cleaned_result = _apply_pipecleaner_to_result(tool_name, result, handler)
|
148
|
+
|
149
|
+
if cleaned_result != result:
|
150
|
+
print(f"[🧹 CLEANED] Tool '{tool_name}' | {len(str(result))} → {len(str(cleaned_result))} chars")
|
151
|
+
|
152
|
+
return cleaned_result
|
153
|
+
|
154
|
+
BaseTool.invoke = patched_invoke
|
155
|
+
if verbose:
|
156
|
+
print(f"[DASEIN][TOOL_WRAPPER] ✅ Patched BaseTool.invoke")
|
157
|
+
patched_count += 1
|
158
|
+
except ImportError:
|
159
|
+
if verbose:
|
160
|
+
print(f"[DASEIN][TOOL_WRAPPER] ⚠️ BaseTool not available")
|
161
|
+
|
162
|
+
# ===== ToolMessage creation (catches streaming results) =====
|
163
|
+
try:
|
164
|
+
from langchain_core.messages import ToolMessage
|
165
|
+
|
166
|
+
if hasattr(ToolMessage, '__init__'):
|
167
|
+
original_init = ToolMessage.__init__
|
168
|
+
|
169
|
+
def patched_init(self, content, **kwargs):
|
170
|
+
# Get tool name from kwargs if available
|
171
|
+
name = kwargs.get('name', 'unknown')
|
172
|
+
|
173
|
+
# Apply pipecleaner to content before message is created
|
174
|
+
handler = get_pipecleaner_context()
|
175
|
+
if handler and isinstance(content, str):
|
176
|
+
cleaned_content = _apply_pipecleaner_to_result(name, content, handler)
|
177
|
+
if cleaned_content != content:
|
178
|
+
print(f"[🧹 CLEANED] ToolMessage '{name}' | {len(str(content))} → {len(str(cleaned_content))} chars")
|
179
|
+
content = cleaned_content
|
180
|
+
|
181
|
+
# Call original with potentially cleaned content
|
182
|
+
original_init(self, content, **kwargs)
|
183
|
+
|
184
|
+
ToolMessage.__init__ = patched_init
|
185
|
+
if verbose:
|
186
|
+
print(f"[DASEIN][TOOL_WRAPPER] ✅ Patched ToolMessage.__init__")
|
187
|
+
patched_count += 1
|
188
|
+
except ImportError:
|
189
|
+
if verbose:
|
190
|
+
print(f"[DASEIN][TOOL_WRAPPER] ⚠️ ToolMessage not available")
|
191
|
+
|
192
|
+
if verbose:
|
193
|
+
print(f"[DASEIN][TOOL_WRAPPER] ✅ Instrumentation complete: {patched_count} seams wrapped")
|
194
|
+
return patched_count > 0
|
195
|
+
|
196
|
+
except Exception as e:
|
197
|
+
print(f"[DASEIN][TOOL_WRAPPER] Error patching: {e}")
|
198
|
+
import traceback
|
199
|
+
traceback.print_exc()
|
200
|
+
return False
|
201
|
+
|
202
|
+
|
203
|
+
def _extract_text_from_search_result(result: Any, tool_name: str) -> str:
|
204
|
+
"""
|
205
|
+
Extract full text content from structured search results.
|
206
|
+
|
207
|
+
Handles multiple search tool formats:
|
208
|
+
- Tavily: list of dicts with 'content', 'url', 'title'
|
209
|
+
- Serper: dict with 'organic' results
|
210
|
+
- DuckDuckGo: list of dicts with 'body', 'title'
|
211
|
+
- Raw strings: pass through
|
212
|
+
"""
|
213
|
+
# If already a string, return as-is
|
214
|
+
if isinstance(result, str):
|
215
|
+
return result
|
216
|
+
|
217
|
+
extracted_parts = []
|
218
|
+
|
219
|
+
# Tavily format: list of result dicts
|
220
|
+
if isinstance(result, list):
|
221
|
+
print(f"[PIPECLEANER] Extracting from list of {len(result)} search results")
|
222
|
+
for i, item in enumerate(result, 1):
|
223
|
+
if isinstance(item, dict):
|
224
|
+
# Extract all text fields
|
225
|
+
title = item.get('title', '')
|
226
|
+
url = item.get('url', '')
|
227
|
+
content = item.get('content', '') or item.get('body', '') or item.get('snippet', '')
|
228
|
+
|
229
|
+
if title or content:
|
230
|
+
extracted_parts.append(f"--- SOURCE {i}: {title} ---")
|
231
|
+
if url:
|
232
|
+
extracted_parts.append(f"URL: {url}")
|
233
|
+
if content:
|
234
|
+
extracted_parts.append(content)
|
235
|
+
extracted_parts.append("") # Blank line separator
|
236
|
+
|
237
|
+
# Serper/dict format with 'organic' or 'results'
|
238
|
+
elif isinstance(result, dict):
|
239
|
+
organic = result.get('organic', []) or result.get('results', [])
|
240
|
+
if organic:
|
241
|
+
print(f"[PIPECLEANER] Extracting from dict with {len(organic)} organic results")
|
242
|
+
for i, item in enumerate(organic, 1):
|
243
|
+
title = item.get('title', '')
|
244
|
+
url = item.get('link', '') or item.get('url', '')
|
245
|
+
snippet = item.get('snippet', '') or item.get('content', '')
|
246
|
+
|
247
|
+
if title or snippet:
|
248
|
+
extracted_parts.append(f"--- SOURCE {i}: {title} ---")
|
249
|
+
if url:
|
250
|
+
extracted_parts.append(f"URL: {url}")
|
251
|
+
if snippet:
|
252
|
+
extracted_parts.append(snippet)
|
253
|
+
extracted_parts.append("")
|
254
|
+
else:
|
255
|
+
# Dict without known structure, try to extract any text
|
256
|
+
for key, value in result.items():
|
257
|
+
if isinstance(value, str) and len(value) > 20:
|
258
|
+
extracted_parts.append(f"{key}: {value}")
|
259
|
+
|
260
|
+
# Fallback: convert to string (but log warning)
|
261
|
+
if not extracted_parts:
|
262
|
+
result_str = str(result)
|
263
|
+
print(f"[PIPECLEANER] ⚠️ Unknown result format, using str() - may be truncated")
|
264
|
+
print(f"[PIPECLEANER] Result type: {type(result).__name__}")
|
265
|
+
return result_str
|
266
|
+
|
267
|
+
full_text = "\n".join(extracted_parts)
|
268
|
+
print(f"[PIPECLEANER] ✅ Extracted {len(full_text)} chars from {len(extracted_parts)} parts")
|
269
|
+
return full_text
|
270
|
+
|
271
|
+
|
272
|
+
def _apply_pipecleaner_to_result(tool_name: str, result: Any, callback_handler: Any) -> Any:
|
273
|
+
"""
|
274
|
+
Apply pipecleaner deduplication to a tool result.
|
275
|
+
|
276
|
+
Called from patched tool execution methods.
|
277
|
+
"""
|
278
|
+
try:
|
279
|
+
# Check if we have filter rules
|
280
|
+
if not callback_handler or not hasattr(callback_handler, '_selected_rules'):
|
281
|
+
return result
|
282
|
+
|
283
|
+
# Extract text from structured result (handles Tavily, Serper, etc.)
|
284
|
+
result_str = _extract_text_from_search_result(result, tool_name)
|
285
|
+
|
286
|
+
# Apply pipecleaner
|
287
|
+
from .pipecleaner import apply_pipecleaner_if_applicable
|
288
|
+
|
289
|
+
# Get cached model
|
290
|
+
cached_model = getattr(callback_handler, '_pipecleaner_embedding_model', None)
|
291
|
+
|
292
|
+
# Apply deduplication
|
293
|
+
deduplicated_str, model = apply_pipecleaner_if_applicable(
|
294
|
+
tool_name=tool_name,
|
295
|
+
output_str=result_str,
|
296
|
+
selected_rules=callback_handler._selected_rules,
|
297
|
+
cached_model=cached_model
|
298
|
+
)
|
299
|
+
|
300
|
+
# Cache model
|
301
|
+
if model is not None:
|
302
|
+
callback_handler._pipecleaner_embedding_model = model
|
303
|
+
|
304
|
+
# Return deduplicated result (as same type as original if possible)
|
305
|
+
if deduplicated_str != result_str:
|
306
|
+
print(f"[PIPECLEANER] ✅ Deduplicated: {len(result_str)} → {len(deduplicated_str)} chars")
|
307
|
+
return deduplicated_str
|
308
|
+
|
309
|
+
return result
|
310
|
+
|
311
|
+
except Exception as e:
|
312
|
+
print(f"[PIPECLEANER] Error applying pipecleaner: {e}")
|
313
|
+
import traceback
|
314
|
+
traceback.print_exc()
|
315
|
+
return result
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: dasein-core
|
3
|
-
Version: 0.2.
|
3
|
+
Version: 0.2.10
|
4
4
|
Summary: Universal memory for agentic AI. Attach a brain to any LangChain/LangGraph agent in a single line.
|
5
5
|
Author-email: Dasein Team <support@dasein.ai>
|
6
6
|
License: MIT
|
@@ -30,6 +30,9 @@ Requires-Dist: sqlalchemy>=2.0
|
|
30
30
|
Requires-Dist: tabulate>=0.9.0
|
31
31
|
Requires-Dist: python-dotenv>=1.0
|
32
32
|
Requires-Dist: requests<2.35.0,>=2.31.0
|
33
|
+
Requires-Dist: numpy>=1.24.0
|
34
|
+
Requires-Dist: sentence-transformers>=2.2.0
|
35
|
+
Requires-Dist: spacy>=3.5.0
|
33
36
|
Provides-Extra: dev
|
34
37
|
Requires-Dist: pytest>=7.0; extra == "dev"
|
35
38
|
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
|
@@ -0,0 +1,59 @@
|
|
1
|
+
dasein/__init__.py,sha256=RY0lhaaWB6yJ_5YMRmaHDvQ0eFbc0BGbYNe5OVyxzYE,2316
|
2
|
+
dasein/advice_format.py,sha256=5-h4J24L_B2Y9dlmyDuIYtmPCWOGAYoinBEXqpcNg2s,5386
|
3
|
+
dasein/api.py,sha256=tQ4OtvWRG6rzYuXPKRj6DkcgIOM0kg3L1xNjOTYBf1Q,247127
|
4
|
+
dasein/capture.py,sha256=D4DvknI2wbmVup5WqvNcgw-zW5riEstYG81Rl98uz6o,110942
|
5
|
+
dasein/config.py,sha256=lXO8JG4RXbodn3gT5yEnuB0VRwWdrRVwhX3Rm06IZmU,1957
|
6
|
+
dasein/events.py,sha256=mG-lnOvQoZUhXbrPSjrG4RME6ywUcbSZ04PscoJ15GI,12896
|
7
|
+
dasein/extractors.py,sha256=fUFBVH9u2x4cJaM-8Zw4qiIpBF2LvjcdYkMvoXQUpL8,3986
|
8
|
+
dasein/injection_strategies.py,sha256=JBAvLnJK4xKqK4D1ZQnklIy-yIKSvWuvm2x0YGDMZVU,6507
|
9
|
+
dasein/injector.py,sha256=EItWhlG6oMAf_D7YJnRNyDwAQIK5MsaATu1ig3OENqM,7256
|
10
|
+
dasein/microturn.py,sha256=raFDQquEPFu5wxYPv9od0Nli9tdV55kXRn7Mvk1pyso,19081
|
11
|
+
dasein/pipecleaner.py,sha256=Rgw-gJ6NP2k4K7hNt_Lg0Bvs1BOdr4Cf6wFCXdtM0DU,78872
|
12
|
+
dasein/trace_buffer.py,sha256=bIyTpU8ZrNFR_TCwS43HvzUrDHpZ2F8pLVDeUE9jpwM,4117
|
13
|
+
dasein/types.py,sha256=FjGXZowiRYZzWj5GzSnAnA_-xwYqqE7WmXFCosVyGI8,2974
|
14
|
+
dasein/wrappers.py,sha256=YY7Iht-0xhuMKH3bPnUerlaIyCXhHN0dgXKkEyj9OsA,13389
|
15
|
+
dasein/models/en_core_web_sm/en_core_web_sm/__init__.py,sha256=yOtXB5wD_EFXwif2QXgfvLPp0RQ5q-G_C3LkwPp4o40,237
|
16
|
+
dasein/models/en_core_web_sm/en_core_web_sm/meta.json,sha256=X8R1--W7Axckn9flHCLVMFI0W7I_E-rxSf9ZAiOWTRw,10085
|
17
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/LICENSE,sha256=OTPBdpebaLxtC8yQLH1sEw8dEn9Hbxe6XNuo2Zz9ABI,1056
|
18
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/LICENSES_SOURCES,sha256=INnfrNIVESJR8VNB7dGkex-Yvzk6IS8Q8ZT_3H7pipA,2347
|
19
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/README.md,sha256=GiKC2MD8N5ujf8bnNJLGBW8xoNCoZndnru2HdorqDd8,2587
|
20
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/accuracy.json,sha256=bO55Bo7GZVz5xo4s2KodP1ZI04LRaqQ_aym1-CumEsQ,6320
|
21
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/config.cfg,sha256=ZcVFyi2lvUuHsi1JFzGGBTYLN97m7WsYUWoDb4cxn3k,5527
|
22
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/meta.json,sha256=X8R1--W7Axckn9flHCLVMFI0W7I_E-rxSf9ZAiOWTRw,10085
|
23
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tokenizer,sha256=sBTou6SVixIK8tDBxj6rt8ADefK6yvEN98UyXv0upGc,77066
|
24
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/attribute_ruler/patterns,sha256=-Ll_fr75uFNrul8Pwec69hg1Y-luIyW8uwIbjG28ZoM,14735
|
25
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/lemmatizer/lookups/lookups.bin,sha256=62T0DA-DltF2JzDA3fTa0qUtE49aOJ9xoaHQiBc7dzc,972893
|
26
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/ner/cfg,sha256=pxcu2tr7qfRy6awPJmDuwEtkBeRxvp4gJnt5xnKI0i0,221
|
27
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/ner/model,sha256=b0fKBi60Gcj_t9MCPm-8Sy6yHasUxdSapeVYYii4dAU,6154601
|
28
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/ner/moves,sha256=2CsTRz69M-A5YATdIvAMcf48ElF0K_H3xFVPI_07CvQ,1064
|
29
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/parser/cfg,sha256=4qJA7wH5Xlj13UydbpDWH1l7jZmJZlcNMAndgeiHl4A,222
|
30
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/parser/model,sha256=oYNvvAKzkksv1fZTJcWK6FL_ES2xCQynJOWoAeaLhf0,319909
|
31
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/parser/moves,sha256=7EExjDLrf55NjwULLoRm7meVTS00VcGuxzq_Rsgt1n8,1571
|
32
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/senter/cfg,sha256=Kk20pym2Rp2h-H1xzHzT7SpzNgzIUyaCHoUINsRnEQM,23
|
33
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/senter/model,sha256=5iwlBNzcZhRLMMBIEArwXxIgf5M_bWaZgrlHrnH_3u8,197089
|
34
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tagger/cfg,sha256=1ITD2TkfN7-ccnqi60xHeiTLEDAg-V5S3DeEKBi1ARg,615
|
35
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tagger/model,sha256=-wDvWSoqRk2V3Yic5CSVKuf9ZOCVFTBUwxA0UZjMD8Q,19829
|
36
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tok2vec/cfg,sha256=-KWibjBW62-wbe6z28z9iK50kAIAyYxwtZZru37J1N4,4
|
37
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/tok2vec/model,sha256=QthBRSHq91-Be9GzUbJgOaIqkSuyYX-V6tMFQg8uv_0,6269370
|
38
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/key2row,sha256=dr6LUo0Adfeq6Y1vpXptPIOuSAqEaeZo17CvlomVrHE,1
|
39
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/lookups.bin,sha256=_OnIg8VhZfKVc8yTjCocnUF6xhvY9WtnHdX3mW3nBoI,70040
|
40
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/strings.json,sha256=sZZtHwegW2hXbfB_Q_QCA7ThESStgsyDnoMSrY1_2uc,1103983
|
41
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/vectors,sha256=FHcraD5yZDbVlIrT__K0PQNu8uu-NFiq_tYATgWkBwY,128
|
42
|
+
dasein/models/en_core_web_sm/en_core_web_sm/en_core_web_sm-3.7.1/vocab/vectors.cfg,sha256=_0NZCRlSyM0W8fBIL1dw-4LRcHNo1cyjxGqlAfVS48U,22
|
43
|
+
dasein/services/__init__.py,sha256=0o6vKEVSYgGo-u-xDFf7Z4cQr8gIht2YovD6eEXUquE,356
|
44
|
+
dasein/services/post_run_client.py,sha256=UjK3eqf7oWGSuWkKe0vQmeMS0yUUOhYFD4-SZ7uj8WY,4768
|
45
|
+
dasein/services/pre_run_client.py,sha256=tXmz_PQaSfq0xwypiWUAqNkXOmREZ6EwXLC4OM89J-A,4317
|
46
|
+
dasein/services/service_adapter.py,sha256=YHk41lR3PXh8WTmxOzzwKf6hwPYGqIdApI92vQKlkAY,7350
|
47
|
+
dasein/services/service_config.py,sha256=8_4tpV4mZvfaOc5_yyHbOyL4rYsPHzkLTEY1rtYgLs8,1629
|
48
|
+
dasein_core-0.2.10.dist-info/licenses/LICENSE,sha256=7FHjIFEKl_3hSc3tGUVEWmufC_3oi8rh_2zVuL7jMKs,1091
|
49
|
+
dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/LICENSE,sha256=OTPBdpebaLxtC8yQLH1sEw8dEn9Hbxe6XNuo2Zz9ABI,1056
|
50
|
+
dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/LICENSES_SOURCES,sha256=INnfrNIVESJR8VNB7dGkex-Yvzk6IS8Q8ZT_3H7pipA,2347
|
51
|
+
dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/METADATA,sha256=-vGqRxa_M2RwKtLjBhc4JlBQdJ3k7CwOnseT_ReYcic,2958
|
52
|
+
dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/RECORD,sha256=dDb6U7A5lfo6wu0J5z2vXZQnv4IckBO-X9UDR79rdHg,3547
|
53
|
+
dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
|
54
|
+
dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/entry_points.txt,sha256=OkWs-KxPJtDdpvIFCVXzDC9ECtejhPxv7pP3Tgk2cNg,47
|
55
|
+
dasein/models/en_core_web_sm/en_core_web_sm-3.7.1.dist-info/top_level.txt,sha256=56OIuRbEuhr12HsM9XpCMnTtHRMgNC5Hje4Xeo8wF2c,15
|
56
|
+
dasein_core-0.2.10.dist-info/METADATA,sha256=BotwsA09ka3tRHCKiI0Ms8Jb8Zss87Q5zBG0OL_3VuA,10297
|
57
|
+
dasein_core-0.2.10.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
58
|
+
dasein_core-0.2.10.dist-info/top_level.txt,sha256=6yYY9kltjvvPsg9K6KyMKRtzEr5qM7sHXN7VzmrDtp0,7
|
59
|
+
dasein_core-0.2.10.dist-info/RECORD,,
|
@@ -1,21 +0,0 @@
|
|
1
|
-
dasein/__init__.py,sha256=RY0lhaaWB6yJ_5YMRmaHDvQ0eFbc0BGbYNe5OVyxzYE,2316
|
2
|
-
dasein/advice_format.py,sha256=5-h4J24L_B2Y9dlmyDuIYtmPCWOGAYoinBEXqpcNg2s,5386
|
3
|
-
dasein/api.py,sha256=KIWZ5I_8in2xas50IAfUOCmZgjaaXYxPcM0BgMx7Bs0,177347
|
4
|
-
dasein/capture.py,sha256=XrEPsteG5__csqcqXzOmBSzPYgeI-OFzu3IRVMPYj3w,83814
|
5
|
-
dasein/config.py,sha256=lXO8JG4RXbodn3gT5yEnuB0VRwWdrRVwhX3Rm06IZmU,1957
|
6
|
-
dasein/events.py,sha256=mG-lnOvQoZUhXbrPSjrG4RME6ywUcbSZ04PscoJ15GI,12896
|
7
|
-
dasein/extractors.py,sha256=fUFBVH9u2x4cJaM-8Zw4qiIpBF2LvjcdYkMvoXQUpL8,3986
|
8
|
-
dasein/injection_strategies.py,sha256=JBAvLnJK4xKqK4D1ZQnklIy-yIKSvWuvm2x0YGDMZVU,6507
|
9
|
-
dasein/injector.py,sha256=EItWhlG6oMAf_D7YJnRNyDwAQIK5MsaATu1ig3OENqM,7256
|
10
|
-
dasein/trace_buffer.py,sha256=bIyTpU8ZrNFR_TCwS43HvzUrDHpZ2F8pLVDeUE9jpwM,4117
|
11
|
-
dasein/types.py,sha256=FjGXZowiRYZzWj5GzSnAnA_-xwYqqE7WmXFCosVyGI8,2974
|
12
|
-
dasein/services/__init__.py,sha256=0o6vKEVSYgGo-u-xDFf7Z4cQr8gIht2YovD6eEXUquE,356
|
13
|
-
dasein/services/post_run_client.py,sha256=UjK3eqf7oWGSuWkKe0vQmeMS0yUUOhYFD4-SZ7uj8WY,4768
|
14
|
-
dasein/services/pre_run_client.py,sha256=tXmz_PQaSfq0xwypiWUAqNkXOmREZ6EwXLC4OM89J-A,4317
|
15
|
-
dasein/services/service_adapter.py,sha256=YHk41lR3PXh8WTmxOzzwKf6hwPYGqIdApI92vQKlkAY,7350
|
16
|
-
dasein/services/service_config.py,sha256=8_4tpV4mZvfaOc5_yyHbOyL4rYsPHzkLTEY1rtYgLs8,1629
|
17
|
-
dasein_core-0.2.7.dist-info/licenses/LICENSE,sha256=7FHjIFEKl_3hSc3tGUVEWmufC_3oi8rh_2zVuL7jMKs,1091
|
18
|
-
dasein_core-0.2.7.dist-info/METADATA,sha256=M7zLIt6gXOfna7oFIMtqECJMqSU4WufP8g2IoeMJqKk,10192
|
19
|
-
dasein_core-0.2.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
20
|
-
dasein_core-0.2.7.dist-info/top_level.txt,sha256=6yYY9kltjvvPsg9K6KyMKRtzEr5qM7sHXN7VzmrDtp0,7
|
21
|
-
dasein_core-0.2.7.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|