MCP 서버

DEEPBOM

io.github.JunHwan-Kwon/deepbom
개발자 도구 과학 및 엔지니어링 공개 · 연결 가능 MCP 2026-07-28

이 MCP로 할 수 있는 일

Statically analyzes supported deployed AI model artifacts, producing hash-bound format-neutral model information without executing model code.

deepbom_analyze_file
Analyze an AI model artifact
Use when the user asks to inspect, summarize, or visualize an attached TFLite, ONNX, GGUF, SafeTensors, Core ML, or ExecuTorch deployment artifact. Opens a browser-local analyzer, returns a hash-bound format-neutral Model IR table and static evidence summary, and provides deterministic document views without executing model code. Do not use for training checkpoints, measured latency, task accuracy, clinical validity, regulatory compliance, or actual runtime placement.
읽기 전용 멱등성
입력 스키마
{'type': 'object', '$defs': {'OpenAIFile': {'type': 'object', 'required': ['download_url', 'file_id'], 'properties': {'file_id': {'type': 'string'}, 'file_name': {'type': 'string'}, 'mime_type': {'type': 'string'}, 'download_url': {'type': 'string'}}, 'additionalProperties': False}}, 'required': ['file'], 'properties': {'file': {'$ref': '#/$defs/OpenAIFile'}, 'analysis_depth': {'enum': ['structure', 'payload_integrity'], 'type': 'string', 'default': 'structure', 'description': 'Use structure unless the user explicitly asks to inspect serialized tensor payload values. Payload integrity can require reading the complete attachment.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['status', 'analyzer_version', 'file', 'analysis_depth', 'privacy'], 'properties': {'file': {'type': 'object', 'required': ['file_id', 'file_name', 'mime_type'], 'properties': {'file_id': {'type': 'string'}, 'file_name': {'type': ['string', 'null']}, 'mime_type': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'status': {'type': 'string', 'const': 'browser_analysis_started'}, 'privacy': {'type': 'string'}, 'analysis_depth': {'type': 'string'}, 'analyzer_version': {'type': 'string'}}, 'additionalProperties': False}
deepbom_capabilities
Check DEEPBOM capabilities
Use before analysis when format support, privacy boundaries, or the difference between the ChatGPT and local DEEPBOM paths is unclear. Returns capability metadata only and does not inspect a file.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['schema', 'version', 'supported_formats', 'chatgpt_path', 'local_path', 'evidence_boundary'], 'properties': {'schema': {'type': 'string'}, 'version': {'type': 'string'}, 'local_path': {'type': 'object'}, 'chatgpt_path': {'type': 'object'}, 'evidence_boundary': {'type': 'string'}, 'supported_formats': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
deepbom_publish_analysis
Return a DEEPBOM analysis to chat
Receives one bounded browser-produced DEEPBOM result, validates its structure, and returns it to the conversation. This tool accepts analysis results, never model bytes.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'anyOf': [{'type': 'object', 'required': ['schema', 'analyzer_version', 'analysis_location', 'artifact', 'verdict', 'graph', 'storage', 'quantization', 'model_summary', 'findings', 'evidence_boundary', 'transfer_boundary', 'reproduction'], 'properties': {'graph': {'type': 'object', 'required': ['operator_count', 'tensor_count', 'total_macs', 'mac_confidence'], 'properties': {'total_macs': {'type': ['number', 'null'], 'minimum': 0}, 'tensor_count': {'type': ['integer', 'null'], 'minimum': 0}, 'mac_confidence': {'type': 'string'}, 'operator_count': {'type': ['integer', 'null'], 'minimum': 0}}, 'additionalProperties': False}, 'schema': {'type': 'string', 'const': 'deepbom.chatgpt_analysis_result.v1'}, 'storage': {'type': ['object', 'null']}, 'verdict': {'type': 'object', 'required': ['status', 'artifact_defect_count', 'caution_count', 'evidence_needed_count'], 'properties': {'status': {'type': 'string'}, 'caution_count': {'type': 'integer', 'minimum': 0}, 'artifact_defect_count': {'type': 'integer', 'minimum': 0}, 'evidence_needed_count': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}, 'artifact': {'type': 'object', 'required': ['filename', 'format', 'sha256', 'byte_length'], 'properties': {'format': {'type': 'string'}, 'sha256': {'type': 'string'}, 'filename': {'type': 'string'}, 'byte_length': {'type': 'integer', 'minimum': 0}, 'artifact_ir_sha256': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'findings': {'type': 'object'}, 'quantization': {'type': 'object'}, 'reproduction': {'type': ['object', 'null']}, 'model_summary': {'type': 'object'}, 'analyzer_version': {'type': 'string'}, 'analysis_location': {'type': 'string', 'const': 'chatgpt_browser_sandbox'}, 'evidence_boundary': {'type': 'string'}, 'transfer_boundary': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['schema', 'analyzer_version', 'analysis_location', 'artifact', 'verdict', 'graph', 'storage', 'quantization', 'model_summary', 'findings', 'evidence_boundary', 'transfer_boundary', 'reproduction'], 'properties': {'graph': {'type': 'object', 'required': ['operator_count', 'tensor_count', 'total_macs', 'mac_confidence'], 'properties': {'total_macs': {'type': ['number', 'null'], 'minimum': 0}, 'tensor_count': {'type': ['integer', 'null'], 'minimum': 0}, 'mac_confidence': {'type': 'string'}, 'operator_count': {'type': ['integer', 'null'], 'minimum': 0}}, 'additionalProperties': False}, 'schema': {'type': 'string', 'const': 'deepbom.chatgpt_analysis_result.v2'}, 'storage': {'type': ['object', 'null']}, 'verdict': {'type': 'object', 'required': ['status', 'artifact_defect_count', 'caution_count', 'evidence_needed_count'], 'properties': {'status': {'type': 'string'}, 'caution_count': {'type': 'integer', 'minimum': 0}, 'artifact_defect_count': {'type': 'integer', 'minimum': 0}, 'evidence_needed_count': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}, 'artifact': {'type': 'object', 'required': ['filename', 'format', 'sha256', 'byte_length'], 'properties': {'format': {'type': 'string'}, 'sha256': {'type': 'string'}, 'filename': {'type': 'string'}, 'byte_length': {'type': 'integer', 'minimum': 0}, 'artifact_ir_sha256': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'findings': {'type': 'object'}, 'quantization': {'type': 'object'}, 'reproduction': {'type': ['object', 'null']}, 'model_summary': {'type': 'object'}, 'analyzer_version': {'type': 'string'}, 'analysis_location': {'type': 'string', 'const': 'chatgpt_browser_sandbox'}, 'evidence_boundary': {'type': 'string'}, 'transfer_boundary': {'type': 'string'}, 'provenance_summary': {'type': 'object', 'required': ['schema', 'artifact_sha256', 'model_ir_sha256', 'provenance_ir_sha256', 'status', 'node_count', 'relationship_count', 'observed_file_count', 'check_count', 'field_count', 'mapped_declared_field_count', 'unsupported_field_count', 'attested_relationship_count', 'check_counts', 'metadata_truth_verified', 'publisher_authenticity'], 'properties': {'schema': {'type': 'string', 'const': 'deepbom.provenance_summary.v1'}, 'status': {'enum': ['contradiction_observed', 'incomplete', 'no_contradiction_observed'], 'type': 'string'}, 'node_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'check_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'field_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'check_counts': {'type': 'object', 'required': ['match', 'mismatch', 'not_assessed', 'unresolved', 'unsupported'], 'properties': {'match': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'mismatch': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'unresolved': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'unsupported': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'not_assessed': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}}, 'additionalProperties': False}, 'artifact_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'model_ir_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'relationship_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'observed_file_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'provenance_ir_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'publisher_authenticity': {'type': 'string', 'const': 'not_verified'}, 'metadata_truth_verified': {'type': 'boolean', 'const': False}, 'unsupported_field_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'attested_relationship_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'mapped_declared_field_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}}, 'additionalProperties': False}}, 'additionalProperties': False}]}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['schema', 'analyzer_version', 'analysis_location', 'artifact', 'verdict', 'graph', 'storage', 'quantization', 'model_summary', 'findings', 'evidence_boundary', 'transfer_boundary', 'reproduction'], 'properties': {'graph': {'type': 'object', 'required': ['operator_count', 'tensor_count', 'total_macs', 'mac_confidence'], 'properties': {'total_macs': {'type': ['number', 'null'], 'minimum': 0}, 'tensor_count': {'type': ['integer', 'null'], 'minimum': 0}, 'mac_confidence': {'type': 'string'}, 'operator_count': {'type': ['integer', 'null'], 'minimum': 0}}, 'additionalProperties': False}, 'schema': {'type': 'string', 'const': 'deepbom.chatgpt_analysis_result.v1'}, 'storage': {'type': ['object', 'null']}, 'verdict': {'type': 'object', 'required': ['status', 'artifact_defect_count', 'caution_count', 'evidence_needed_count'], 'properties': {'status': {'type': 'string'}, 'caution_count': {'type': 'integer', 'minimum': 0}, 'artifact_defect_count': {'type': 'integer', 'minimum': 0}, 'evidence_needed_count': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}, 'artifact': {'type': 'object', 'required': ['filename', 'format', 'sha256', 'byte_length'], 'properties': {'format': {'type': 'string'}, 'sha256': {'type': 'string'}, 'filename': {'type': 'string'}, 'byte_length': {'type': 'integer', 'minimum': 0}, 'artifact_ir_sha256': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'findings': {'type': 'object'}, 'quantization': {'type': 'object'}, 'reproduction': {'type': ['object', 'null']}, 'model_summary': {'type': 'object'}, 'analyzer_version': {'type': 'string'}, 'analysis_location': {'type': 'string', 'const': 'chatgpt_browser_sandbox'}, 'evidence_boundary': {'type': 'string'}, 'transfer_boundary': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['schema', 'analyzer_version', 'analysis_location', 'artifact', 'verdict', 'graph', 'storage', 'quantization', 'model_summary', 'findings', 'evidence_boundary', 'transfer_boundary', 'reproduction'], 'properties': {'graph': {'type': 'object', 'required': ['operator_count', 'tensor_count', 'total_macs', 'mac_confidence'], 'properties': {'total_macs': {'type': ['number', 'null'], 'minimum': 0}, 'tensor_count': {'type': ['integer', 'null'], 'minimum': 0}, 'mac_confidence': {'type': 'string'}, 'operator_count': {'type': ['integer', 'null'], 'minimum': 0}}, 'additionalProperties': False}, 'schema': {'type': 'string', 'const': 'deepbom.chatgpt_analysis_result.v2'}, 'storage': {'type': ['object', 'null']}, 'verdict': {'type': 'object', 'required': ['status', 'artifact_defect_count', 'caution_count', 'evidence_needed_count'], 'properties': {'status': {'type': 'string'}, 'caution_count': {'type': 'integer', 'minimum': 0}, 'artifact_defect_count': {'type': 'integer', 'minimum': 0}, 'evidence_needed_count': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}, 'artifact': {'type': 'object', 'required': ['filename', 'format', 'sha256', 'byte_length'], 'properties': {'format': {'type': 'string'}, 'sha256': {'type': 'string'}, 'filename': {'type': 'string'}, 'byte_length': {'type': 'integer', 'minimum': 0}, 'artifact_ir_sha256': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'findings': {'type': 'object'}, 'quantization': {'type': 'object'}, 'reproduction': {'type': ['object', 'null']}, 'model_summary': {'type': 'object'}, 'analyzer_version': {'type': 'string'}, 'analysis_location': {'type': 'string', 'const': 'chatgpt_browser_sandbox'}, 'evidence_boundary': {'type': 'string'}, 'transfer_boundary': {'type': 'string'}, 'provenance_summary': {'type': 'object', 'required': ['schema', 'artifact_sha256', 'model_ir_sha256', 'provenance_ir_sha256', 'status', 'node_count', 'relationship_count', 'observed_file_count', 'check_count', 'field_count', 'mapped_declared_field_count', 'unsupported_field_count', 'attested_relationship_count', 'check_counts', 'metadata_truth_verified', 'publisher_authenticity'], 'properties': {'schema': {'type': 'string', 'const': 'deepbom.provenance_summary.v1'}, 'status': {'enum': ['contradiction_observed', 'incomplete', 'no_contradiction_observed'], 'type': 'string'}, 'node_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'check_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'field_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'check_counts': {'type': 'object', 'required': ['match', 'mismatch', 'not_assessed', 'unresolved', 'unsupported'], 'properties': {'match': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'mismatch': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'unresolved': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'unsupported': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'not_assessed': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}}, 'additionalProperties': False}, 'artifact_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'model_ir_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'relationship_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'observed_file_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'provenance_ir_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'publisher_authenticity': {'type': 'string', 'const': 'not_verified'}, 'metadata_truth_verified': {'type': 'boolean', 'const': False}, 'unsupported_field_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'attested_relationship_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}, 'mapped_declared_field_count': {'type': 'integer', 'maximum': 1000000, 'minimum': 0}}, 'additionalProperties': False}}, 'additionalProperties': False}]}
deepbom_publish_error
Return a DEEPBOM analysis error to chat
Receives one bounded browser-produced DEEPBOM error and returns a recovery action to the conversation. This tool accepts diagnostic text, never model bytes.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'required': ['error'], 'properties': {'error': {'type': 'object', 'required': ['schema', 'analyzer_version', 'analysis_location', 'code', 'message', 'suggested_action', 'file_name', 'transfer_boundary'], 'properties': {'code': {'type': 'string'}, 'schema': {'type': 'string', 'const': 'deepbom.chatgpt_error.v1'}, 'message': {'type': 'string'}, 'file_name': {'type': ['string', 'null']}, 'analyzer_version': {'type': 'string'}, 'suggested_action': {'type': 'string'}, 'analysis_location': {'type': 'string', 'const': 'chatgpt_browser_sandbox'}, 'transfer_boundary': {'type': 'string', 'const': 'model_bytes_not_sent_to_deepbom_service'}}, 'additionalProperties': False}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['schema', 'analyzer_version', 'analysis_location', 'code', 'message', 'suggested_action', 'file_name', 'transfer_boundary'], 'properties': {'code': {'type': 'string'}, 'schema': {'type': 'string', 'const': 'deepbom.chatgpt_error.v1'}, 'message': {'type': 'string'}, 'file_name': {'type': ['string', 'null']}, 'analyzer_version': {'type': 'string'}, 'suggested_action': {'type': 'string'}, 'analysis_location': {'type': 'string', 'const': 'chatgpt_browser_sandbox'}, 'transfer_boundary': {'type': 'string', 'const': 'model_bytes_not_sent_to_deepbom_service'}}, 'additionalProperties': False}
deepbom_publish_query
Return requested model evidence to chat
Component-only: validates and returns a bounded Evidence IR query projection for the same attachment. No model bytes, state persistence, or runtime execution. Result digests establish consistency, not independent server attestation.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'object', 'required': ['schema', 'analyzer_version', 'analysis_location', 'artifact', 'model_ir_sha256', 'query', 'query_sha256', 'status', 'coverage', 'context', 'rows', 'evidence_boundary', 'transfer_boundary', 'result_sha256'], 'properties': {'rows': {'type': 'array', 'items': {'type': 'object', 'required': ['subject_ref', 'kind', 'title', 'details', 'detail_truncations'], 'properties': {'kind': {'type': 'string'}, 'title': {'type': 'string'}, 'details': {'type': 'object'}, 'subject_ref': {'type': 'string'}, 'detail_truncations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'maxItems': 40}, 'query': {'type': 'object', 'required': ['section'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 40, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0}, 'search': {'type': 'string', 'maxLength': 160, 'description': 'Literal case-insensitive filter over row names and references.'}, 'target': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Optional TFLite CPU planning profile ID from capabilities. Not detected hardware or a GPU delegate selector.'}, 'section': {'enum': ['operators', 'operator', 'findings', 'placement', 'fusion', 'improvements', 'profiles', 'weights'], 'type': 'string'}, 'profile_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 128, 'minLength': 1}, 'maxItems': 4, 'description': 'Exact static backend profile IDs returned by section=profiles. Independent eligibility profiles, not runtime assignments.', 'uniqueItems': True}, 'subject_ref': {'type': 'string', 'maxLength': 512, 'minLength': 1, 'description': 'Exact Model IR subject_ref from a previous result; preferred over an index.'}, 'weight_view': {'enum': ['distribution', 'channels', 'similarity', 'spectrum', 'sparsity', 'quantization'], 'type': 'string', 'description': 'Only for section=weights: explicitly opt into bounded payload analysis; use returned weight subject_ref to select a tensor. Default distribution.'}, 'source_index': {'type': 'integer', 'minimum': 0, 'description': 'Native serialized operator index, not display order. Ambiguous indices require subject_ref.'}}, 'additionalProperties': False}, 'schema': {'type': 'string', 'const': 'deepbom.evidence_query_result.v1'}, 'status': {'enum': ['complete', 'partial', 'not_assessable', 'no_matches'], 'type': 'string'}, 'context': {'type': 'object'}, 'artifact': {'type': 'object', 'required': ['filename', 'format', 'sha256'], 'properties': {'format': {'type': 'string'}, 'sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'filename': {'type': 'string'}}, 'additionalProperties': False}, 'coverage': {'type': 'object', 'required': ['total_rows', 'matched_rows', 'returned_rows', 'offset', 'next_offset', 'detail_truncated'], 'properties': {'offset': {'type': 'integer', 'minimum': 0}, 'total_rows': {'type': 'integer', 'minimum': 0}, 'next_offset': {'type': ['integer', 'null'], 'minimum': 0}, 'matched_rows': {'type': 'integer', 'minimum': 0}, 'returned_rows': {'type': 'integer', 'maximum': 40, 'minimum': 0}, 'detail_truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'query_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'result_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'model_ir_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'analyzer_version': {'type': 'string'}, 'analysis_location': {'type': 'string', 'const': 'chatgpt_browser_sandbox'}, 'evidence_boundary': {'type': 'string'}, 'transfer_boundary': {'type': 'string', 'const': 'model_bytes_not_sent_to_deepbom_service'}}, 'additionalProperties': False}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['schema', 'analyzer_version', 'analysis_location', 'artifact', 'model_ir_sha256', 'query', 'query_sha256', 'status', 'coverage', 'context', 'rows', 'evidence_boundary', 'transfer_boundary', 'result_sha256'], 'properties': {'rows': {'type': 'array', 'items': {'type': 'object', 'required': ['subject_ref', 'kind', 'title', 'details', 'detail_truncations'], 'properties': {'kind': {'type': 'string'}, 'title': {'type': 'string'}, 'details': {'type': 'object'}, 'subject_ref': {'type': 'string'}, 'detail_truncations': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'maxItems': 40}, 'query': {'type': 'object', 'required': ['section'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 40, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0}, 'search': {'type': 'string', 'maxLength': 160, 'description': 'Literal case-insensitive filter over row names and references.'}, 'target': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Optional TFLite CPU planning profile ID from capabilities. Not detected hardware or a GPU delegate selector.'}, 'section': {'enum': ['operators', 'operator', 'findings', 'placement', 'fusion', 'improvements', 'profiles', 'weights'], 'type': 'string'}, 'profile_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 128, 'minLength': 1}, 'maxItems': 4, 'description': 'Exact static backend profile IDs returned by section=profiles. Independent eligibility profiles, not runtime assignments.', 'uniqueItems': True}, 'subject_ref': {'type': 'string', 'maxLength': 512, 'minLength': 1, 'description': 'Exact Model IR subject_ref from a previous result; preferred over an index.'}, 'weight_view': {'enum': ['distribution', 'channels', 'similarity', 'spectrum', 'sparsity', 'quantization'], 'type': 'string', 'description': 'Only for section=weights: explicitly opt into bounded payload analysis; use returned weight subject_ref to select a tensor. Default distribution.'}, 'source_index': {'type': 'integer', 'minimum': 0, 'description': 'Native serialized operator index, not display order. Ambiguous indices require subject_ref.'}}, 'additionalProperties': False}, 'schema': {'type': 'string', 'const': 'deepbom.evidence_query_result.v1'}, 'status': {'enum': ['complete', 'partial', 'not_assessable', 'no_matches'], 'type': 'string'}, 'context': {'type': 'object'}, 'artifact': {'type': 'object', 'required': ['filename', 'format', 'sha256'], 'properties': {'format': {'type': 'string'}, 'sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'filename': {'type': 'string'}}, 'additionalProperties': False}, 'coverage': {'type': 'object', 'required': ['total_rows', 'matched_rows', 'returned_rows', 'offset', 'next_offset', 'detail_truncated'], 'properties': {'offset': {'type': 'integer', 'minimum': 0}, 'total_rows': {'type': 'integer', 'minimum': 0}, 'next_offset': {'type': ['integer', 'null'], 'minimum': 0}, 'matched_rows': {'type': 'integer', 'minimum': 0}, 'returned_rows': {'type': 'integer', 'maximum': 40, 'minimum': 0}, 'detail_truncated': {'type': 'boolean'}}, 'additionalProperties': False}, 'query_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'result_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'model_ir_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'analyzer_version': {'type': 'string'}, 'analysis_location': {'type': 'string', 'const': 'chatgpt_browser_sandbox'}, 'evidence_boundary': {'type': 'string'}, 'transfer_boundary': {'type': 'string', 'const': 'model_bytes_not_sent_to_deepbom_service'}}, 'additionalProperties': False}
deepbom_query_file
Inspect specific model evidence
Use for follow-up questions about an already identified attachment: inspect a layer by subject_ref, search or page through all operations, inspect findings, rank improvement investigations, inspect encoded activation fusion, compare source-pinned static delegate eligibility, or explicitly analyze weight distributions, channels, similarity, singular spectra, sparsity and quantization with section=weights and optional weight_view. Weight analysis reads payloads on demand with explicit decoder/budget coverage (128 MiB widget limit). Reuse the ChatGPT-authorized file and the exact SHA-256 from its previous DEEPBOM result. section=profiles lists available backend profiles; query.target selects only a TFLite CPU planning profile from capabilities. The browser computes the query from the shared Evidence IR and returns a bounded result; model bytes are not sent to DEEPBOM. Static candidate eligibility is not observed placement, speed, accuracy, or runtime fusion. Do not invent findings while browser_query_started is pending.
읽기 전용 멱등성
입력 스키마
{'type': 'object', '$defs': {'OpenAIFile': {'type': 'object', 'required': ['download_url', 'file_id'], 'properties': {'file_id': {'type': 'string'}, 'file_name': {'type': 'string'}, 'mime_type': {'type': 'string'}, 'download_url': {'type': 'string'}}, 'additionalProperties': False}}, 'required': ['file', 'expected_sha256', 'query'], 'properties': {'file': {'$ref': '#/$defs/OpenAIFile'}, 'query': {'type': 'object', 'required': ['section'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 40, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0}, 'search': {'type': 'string', 'maxLength': 160, 'description': 'Literal case-insensitive filter over row names and references.'}, 'target': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Optional TFLite CPU planning profile ID from capabilities. Not detected hardware or a GPU delegate selector.'}, 'section': {'enum': ['operators', 'operator', 'findings', 'placement', 'fusion', 'improvements', 'profiles', 'weights'], 'type': 'string'}, 'profile_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 128, 'minLength': 1}, 'maxItems': 4, 'description': 'Exact static backend profile IDs returned by section=profiles. Independent eligibility profiles, not runtime assignments.', 'uniqueItems': True}, 'subject_ref': {'type': 'string', 'maxLength': 512, 'minLength': 1, 'description': 'Exact Model IR subject_ref from a previous result; preferred over an index.'}, 'weight_view': {'enum': ['distribution', 'channels', 'similarity', 'spectrum', 'sparsity', 'quantization'], 'type': 'string', 'description': 'Only for section=weights: explicitly opt into bounded payload analysis; use returned weight subject_ref to select a tensor. Default distribution.'}, 'source_index': {'type': 'integer', 'minimum': 0, 'description': 'Native serialized operator index, not display order. Ambiguous indices require subject_ref.'}}, 'additionalProperties': False}, 'analysis_depth': {'enum': ['structure', 'payload_integrity'], 'type': 'string', 'default': 'structure', 'description': 'Use structure unless the user explicitly asks to inspect serialized tensor payload values. Payload integrity can require reading the complete attachment.'}, 'expected_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['status', 'analyzer_version', 'expected_sha256', 'analysis_depth', 'query'], 'properties': {'query': {'type': 'object', 'required': ['section'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 40, 'minimum': 1}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0}, 'search': {'type': 'string', 'maxLength': 160, 'description': 'Literal case-insensitive filter over row names and references.'}, 'target': {'type': 'string', 'maxLength': 128, 'minLength': 1, 'description': 'Optional TFLite CPU planning profile ID from capabilities. Not detected hardware or a GPU delegate selector.'}, 'section': {'enum': ['operators', 'operator', 'findings', 'placement', 'fusion', 'improvements', 'profiles', 'weights'], 'type': 'string'}, 'profile_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 128, 'minLength': 1}, 'maxItems': 4, 'description': 'Exact static backend profile IDs returned by section=profiles. Independent eligibility profiles, not runtime assignments.', 'uniqueItems': True}, 'subject_ref': {'type': 'string', 'maxLength': 512, 'minLength': 1, 'description': 'Exact Model IR subject_ref from a previous result; preferred over an index.'}, 'weight_view': {'enum': ['distribution', 'channels', 'similarity', 'spectrum', 'sparsity', 'quantization'], 'type': 'string', 'description': 'Only for section=weights: explicitly opt into bounded payload analysis; use returned weight subject_ref to select a tensor. Default distribution.'}, 'source_index': {'type': 'integer', 'minimum': 0, 'description': 'Native serialized operator index, not display order. Ambiguous indices require subject_ref.'}}, 'additionalProperties': False}, 'status': {'type': 'string', 'const': 'browser_query_started'}, 'analysis_depth': {'enum': ['structure', 'payload_integrity'], 'type': 'string', 'default': 'structure', 'description': 'Use structure unless the user explicitly asks to inspect serialized tensor payload values. Payload integrity can require reading the complete attachment.'}, 'expected_sha256': {'type': 'string'}, 'analyzer_version': {'type': 'string'}}, 'additionalProperties': False}
deepbom_workflow_guide
Choose a DEEPBOM analysis workflow
Use to discover how to answer a model-analysis question across ChatGPT, the interactive deepbom.org workspace and the local CLI. Returns real query sections, visualization/export actions, explicit web continuation links, required inputs, CLI argument templates and evidence limits for weights, pruning investigation, comparison, BOM verification, metadata/OMOP, activation evidence, runtime, batch/CI and integrations. No attachment is required. This is guidance, not a completed analysis or local command execution. Prefer answering from existing evidence; inspect supported follow-ups with deepbom_query_file before offering web continuation for richer interaction. Website links transfer only a workflow ID, never model data.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {'format': {'enum': ['tflite', 'onnx', 'gguf', 'safetensors', 'coreml', 'executorch'], 'type': 'string', 'description': 'Optional known artifact format; filters applicable workflows, not per-file analysis coverage.'}, 'workflow': {'enum': ['all', 'audit', 'layers', 'findings', 'quantization', 'placement', 'fusion', 'visualization', 'weights', 'pruning', 'compare', 'redesign', 'exports', 'verify', 'provenance', 'activation', 'runtime', 'batch', 'integrations'], 'type': 'string', 'default': 'all'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['schema', 'catalog_version', 'status', 'format', 'workflows', 'boundary'], 'properties': {'format': {'type': ['string', 'null']}, 'schema': {'type': 'string'}, 'status': {'type': 'string'}, 'boundary': {'type': 'string'}, 'workflows': {'type': 'array', 'items': {'type': 'object'}}, 'catalog_version': {'type': 'string'}}, 'additionalProperties': False}
추가됨
deepbom_workflow_guide
2026년 10월 1일 2:45 AM
추가됨
deepbom_publish_query
2026년 10월 1일 2:45 AM
추가됨
deepbom_query_file
2026년 10월 1일 2:45 AM
변경됨
deepbom_publish_analysis
2026년 10월 1일 2:45 AM
변경됨
deepbom_publish_analysis
2026년 9월 29일 2:52 AM
추가됨
deepbom_publish_error
2026년 9월 17일 12:42 PM
추가됨
deepbom_publish_analysis
2026년 9월 17일 12:42 PM
추가됨
deepbom_capabilities
2026년 9월 17일 12:42 PM
추가됨
deepbom_analyze_file
2026년 9월 17일 12:42 PM