rosetta-cli 2.0.13b2__tar.gz → 2.0.13b3__tar.gz
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.
- {rosetta_cli-2.0.13b2/rosetta_cli.egg-info → rosetta_cli-2.0.13b3}/PKG-INFO +1 -1
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/pyproject.toml +1 -1
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/ragflow_client.py +29 -2
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3/rosetta_cli.egg-info}/PKG-INFO +1 -1
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/MANIFEST.in +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/README.md +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/env.template +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/__init__.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/__main__.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/cli.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/commands/__init__.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/commands/base_command.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/commands/cleanup_command.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/commands/list_command.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/commands/parse_command.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/commands/publish_command.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/commands/verify_command.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/ims_auth.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/ims_config.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/ims_publisher.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/ims_utils.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/services/__init__.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/services/auth_service.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/services/dataset_service.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/services/document_data.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/services/document_service.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli/typing_utils.py +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli.egg-info/SOURCES.txt +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli.egg-info/dependency_links.txt +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli.egg-info/entry_points.txt +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli.egg-info/requires.txt +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/rosetta_cli.egg-info/top_level.txt +0 -0
- {rosetta_cli-2.0.13b2 → rosetta_cli-2.0.13b3}/setup.cfg +0 -0
|
@@ -156,6 +156,23 @@ class RAGFlowClient:
|
|
|
156
156
|
# side, so we cannot rely on filtered list_documents to find an existing
|
|
157
157
|
# doc by ims_doc_id; we list once and index in memory instead.
|
|
158
158
|
self._doc_index_by_dataset: dict[str, dict[str, DocumentLike]] = {}
|
|
159
|
+
# Per-client dataset lookup cache. Publishing resolves the same release
|
|
160
|
+
# dataset for every file; keep those list_datasets calls in-process.
|
|
161
|
+
self._dataset_by_id: dict[str, DataSet] = {}
|
|
162
|
+
self._dataset_by_name: dict[str, DataSet] = {}
|
|
163
|
+
|
|
164
|
+
def _clear_dataset_cache(self) -> None:
|
|
165
|
+
self._dataset_by_id.clear()
|
|
166
|
+
self._dataset_by_name.clear()
|
|
167
|
+
|
|
168
|
+
def _remember_dataset(self, dataset: DataSet) -> DataSet:
|
|
169
|
+
dataset_id = getattr(dataset, "id", None)
|
|
170
|
+
dataset_name = getattr(dataset, "name", None)
|
|
171
|
+
if dataset_id:
|
|
172
|
+
self._dataset_by_id[str(dataset_id)] = dataset
|
|
173
|
+
if dataset_name:
|
|
174
|
+
self._dataset_by_name[str(dataset_name)] = dataset
|
|
175
|
+
return dataset
|
|
159
176
|
|
|
160
177
|
def _get_doc_index(self, dataset: DatasetLike) -> dict[str, DocumentLike]:
|
|
161
178
|
"""Return a {ims_doc_id: doc} index for the dataset, building it once.
|
|
@@ -309,7 +326,8 @@ class RAGFlowClient:
|
|
|
309
326
|
with _timed(f"create_dataset(name={name})"):
|
|
310
327
|
dataset = self._client.create_dataset(**kwargs)
|
|
311
328
|
|
|
312
|
-
|
|
329
|
+
self._clear_dataset_cache()
|
|
330
|
+
return self._remember_dataset(cast(DataSet, dataset))
|
|
313
331
|
|
|
314
332
|
except Exception as e:
|
|
315
333
|
raise RAGFlowClientError(f"Failed to create dataset '{name}': {str(e)}")
|
|
@@ -376,10 +394,18 @@ class RAGFlowClient:
|
|
|
376
394
|
"""
|
|
377
395
|
try:
|
|
378
396
|
if id:
|
|
397
|
+
cached = self._dataset_by_id.get(str(id))
|
|
398
|
+
if cached is not None:
|
|
399
|
+
return cached
|
|
400
|
+
|
|
379
401
|
# Filter by ID
|
|
380
402
|
with _timed(f"list_datasets(id={id})"):
|
|
381
403
|
datasets = self._client.list_datasets(id=id, page_size=1)
|
|
382
404
|
elif name:
|
|
405
|
+
cached = self._dataset_by_name.get(str(name))
|
|
406
|
+
if cached is not None:
|
|
407
|
+
return cached
|
|
408
|
+
|
|
383
409
|
# Filter by name (RAGFlow does substring, we verify exact match)
|
|
384
410
|
with _timed(f"list_datasets(name={name})"):
|
|
385
411
|
datasets = self._client.list_datasets(name=name, page_size=10)
|
|
@@ -389,7 +415,7 @@ class RAGFlowClient:
|
|
|
389
415
|
return None
|
|
390
416
|
|
|
391
417
|
if datasets and len(datasets) > 0:
|
|
392
|
-
return datasets[0]
|
|
418
|
+
return self._remember_dataset(cast(DataSet, datasets[0]))
|
|
393
419
|
return None
|
|
394
420
|
|
|
395
421
|
except Exception as e:
|
|
@@ -416,6 +442,7 @@ class RAGFlowClient:
|
|
|
416
442
|
return
|
|
417
443
|
with _timed(f"delete_datasets(n={len(ids)})"):
|
|
418
444
|
self._client.delete_datasets(ids=ids)
|
|
445
|
+
self._clear_dataset_cache()
|
|
419
446
|
|
|
420
447
|
except Exception as e:
|
|
421
448
|
raise RAGFlowClientError(f"Failed to delete datasets: {str(e)}")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|