Repository navigation
Conversation
usersim.extension exports to_model_configs, to_data_designer_kwargs and require_aliases, which turn the models an asset domain's generate and evaluate receive into Data Designer model configs and provider arguments, and check that the models declare the aliases the domain needs. The reference lists them, importing them leaves Data Designer and the conversation loop unloaded, and the financial_services generator imports them from usersim.extension. Signed-off-by: Yev Meyer <ymeyer@nvidia.com>
The probe module is probes/financial_services/probe.py, beside its bank loader bank.py, its task builder tasks.py, its query embedder embeddings.py, its scorer scorer.py and its banks in assets/financial_services/, the folder the class names as its assets_root. Its tests are in tests/probes/financial_services/. The label, the scorer name, the banks, the stored columns and the caches are unchanged. gen-assets, validate-assets and evaluate-assets default to the shipped bank of the domain's probe, so they write and read the probe's own folder, and the package-data exclusions and ignore rules for generated embeddings and scorecards follow the banks. DEFAULT_SCORER_MODULES, the capability source references, the docs and the asset notebook name the new modules and paths, the authoring guide lists the probe among those kept in one folder, the architecture overview describes the engine folders as they are, and the shared-code label allowances list neither the bank loader nor the scorer. Signed-off-by: Yev Meyer <ymeyer@nvidia.com>
The financial_services generator, its region specs and its asset notebook are in probes/financial_services/asset_gen/, and asset_domain.py beside them builds the domain the asset commands dispatch to without importing the generator. usersim.asset_gen keeps the generic part: AssetDomain and the registry, whose BUILTIN_DOMAINS names each built-in domain's factory. The region specs ship through the engine package's YAML rule, the generator's tests are in tests/probes/financial_services/, and the shared-code label allowances drop the registry, which names no probe. The domain's name, flags and region specs, and what the asset commands write, are unchanged. The pipeline logs under usersim.engine.probes.financial_services.asset_gen.pipeline. Signed-off-by: Yev Meyer <ymeyer@nvidia.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed and why
financial_serviceslives in one folder: the probe moduleprobe.py, its bank loaderbank.py, its task buildertasks.py, its query embedderembeddings.py, its scorerscorer.py, its banks inassets/financial_services/, the folder the class names as itsassets_root, and its asset generator inasset_gen/. Its tests are intests/probes/financial_services/. The label, the scorer name, the banks, the stored columns, the caches and the asset domain are unchanged.Builds on #124.
usersim.extensionexportsto_model_configs,to_data_designer_kwargsandrequire_aliases, which an asset domain'sgenerateandevaluateuse to turn the models they receive into Data Designer model configs and provider arguments, and to check the aliases they need.docs/extension_api.mdlists them, and importing them leaves Data Designer and the conversation loop unloaded. The finance generator imports them fromusersim.extension.core/finance_bank.py,core/finance_tasks.pyandcore/embeddings.pybecomebank.py,tasks.pyandembeddings.py, the scorer becomesscorer.py, the banks move intoassets/financial_services/, and the tests becometest_probe.pyandtest_e2e.py.gen-assets,validate-assetsandevaluate-assetsdefault to the domain's shipped bank, the probe's own folder.BUILTIN_PROBE_MODULES,DEFAULT_SCORER_MODULES, the capability source references, the docs and the asset notebook name the new modules and paths, and the shared-code label allowances drop the moved files.asset_gen/financial_services/becomesprobes/financial_services/asset_gen/, with its region specs and its asset notebook.probes/financial_services/asset_domain.pybuilds the domain without importing the generator, andusersim.asset_gen.registrynames it inBUILTIN_DOMAINS;usersim.asset_genkeepsAssetDomainand the registry. The fourtest_asset_gen_*files move totests/probes/financial_services/and read the region specs through the domain. The pipeline logs underusersim.engine.probes.financial_services.asset_gen.pipeline.How it was verified
At each commit, on that commit's tree:
That is the first commit's tree; the second and third pass with 4656 tests as well.
At the head:
make health-checkran against a custom provider config forfinancial_servicesinen_GB. It ended with✓ simulate, eval and report all completed, and every model's requests showfailed=0.usersim simulate, thenusersim evalnaming the probe's scorer, ran against the same config inde_DE:The asset commands find the banks and region specs in their new folders, offline:
Results impact
Conversations, prompts, scores and the banks the asset commands write are unchanged. The setup fingerprint of a
simulate --inputsrun hashes the contents of every asset root, so it changes, as after any bank edit, and such a run gives its rows new trajectory ids rather than skipping rows it wrote before this change.