57 lines
3.8 KiB
Markdown
57 lines
3.8 KiB
Markdown
# BrepFaultProbe
|
|
|
|
Formal entry point for B-rep based structural fault diagnosis experiments.
|
|
|
|
This tool collects the current B-rep fault-checking workflow behind one stable command surface:
|
|
|
|
- `model`: extract a true SolidWorks section B-rep and canonical 2D sketch graph.
|
|
- `bridge` / `interpret`: convert a SolidWorks model into a B-rep semantic bridge package, render SVG, patch map, local feature candidates, self-evolution audit, and optional AI interpretation.
|
|
- `diagnose-ch18`: run the formal Chapter 18 trial workflow for verified chunks 18.2.1 and 18.2.4. It first builds a semantic bridge, matches the mechanical semantic graph against the two chunks, and if a possible match is blocked by missing B-rep-extractable facts, it runs targeted deep extraction before writing the final match.
|
|
|
|
The formal model-side section extraction implementation is `tools\model-diagnostics\SectionBrepExtractor`. Old temporary wrappers that referenced `tmp` have been removed from this entry point.
|
|
|
|
Examples:
|
|
|
|
```powershell
|
|
dotnet run --project tools\model-diagnostics\BrepFaultProbe\BrepFaultProbe.csproj -c Release -- model "D:\path\model.SLDASM"
|
|
dotnet run --project tools\model-diagnostics\BrepFaultProbe\BrepFaultProbe.csproj -c Release -- bridge "D:\path\model.SLDASM" runtime\brep_semantic_bridge\trial1
|
|
dotnet run --project tools\model-diagnostics\BrepFaultProbe\BrepFaultProbe.csproj -c Release -- diagnose-ch18 "D:\path\model.SLDASM" runtime\knowledge_diagnosis_ch18\trial1
|
|
```
|
|
`bridge` writes these files:
|
|
|
|
- `structure_graph.json`: unified 2D B-rep, extracted relations, dimensions, 3D component/cylinder facts, and interpretation contract.
|
|
- `patch_map.json`: grid patches over the 2D B-rep render, with edge/owner/role references per patch.
|
|
- `render.svg`: a drawable 2D projection of the B-rep structure for visual grounding.
|
|
- `semantic_bridge_package.json`: model-ready payload combining the structure graph and render reference.
|
|
- `prompt.md`: the exact text prompt used for model interpretation.
|
|
- `ai_interpretation.md`: written only when `OPENAI_API_KEY` is set and the configured AI chat API call succeeds.
|
|
|
|
`diagnose-ch18` writes these files:
|
|
|
|
- `initial/`: first-pass bridge output.
|
|
- `knowledge_match.initial.json`: first-pass match against 18.2.1 and 18.2.4.
|
|
- `final/`: deep bridge output, written when a possible match needs more B-rep facts.
|
|
- `knowledge_match.final.json`: final match result.
|
|
- `diagnosis_manifest.json`: process manifest, including whether targeted re-extraction was performed.
|
|
|
|
Optional AI settings:
|
|
|
|
```powershell
|
|
$env:OPENAI_API_KEY = "..."
|
|
$env:OPENAI_MODEL = "qwen-vl-max"
|
|
$env:OPENAI_BASE_URL = "https://dashscope.aliyuncs.com/compatible-mode/v1"
|
|
$env:OPENAI_API_MODE = "chat_completions"
|
|
$env:OPENAI_MAX_IMAGES = "12"
|
|
dotnet run --project tools\model-diagnostics\BrepFaultProbe\BrepFaultProbe.csproj -c Release -- bridge "D:\path\model.SLDASM"
|
|
dotnet run --project tools\model-diagnostics\BrepFaultProbe\BrepFaultProbe.csproj -c Release -- bridge "D:\path\model.SLDASM" --model qwen-vl-max --max-iterations 2
|
|
dotnet run --project tools\model-diagnostics\BrepFaultProbe\BrepFaultProbe.csproj -c Release -- bridge "D:\path\model.SLDASM" --deep --no-ai
|
|
```
|
|
|
|
Self-evolution behavior:
|
|
|
|
- The bridge first audits local fact coverage: section count, contact relations, outside-adjacent edges, component facts, and cylindrical faces.
|
|
- If local coverage is weak, or `--deep` is passed, it automatically adds secondary section views with different guide axes.
|
|
- The structure package includes `SelfEvolutionAudit`, `SectionViews`, and `LocalFeatureCandidates`.
|
|
- When AI is enabled, the prompt requires a final JSON self-evolution request. If the model says more facts are needed, the tool performs one more interpretation pass using the enhanced package context and writes `ai_self_evolution.json`.
|
|
|