fugui11's picture
Upload app.py
063d26c verified
raw
history blame
143 kB
<!DOCTYPE html>
<!-- saved from url=(0065)https://huggingface.co/spaces/llzzyy233/Defect_detection/new/main -->
<html class=""><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><style data-vc-order="prependQueue" data-css-hash="1byatnd" data-token-hash="mmblq1">:where(.css-1p3hq3p) a{color:#1677ff;text-decoration:none;background-color:transparent;outline:none;cursor:pointer;transition:color 0.3s;-webkit-text-decoration-skip:objects;}:where(.css-1p3hq3p) a:hover{color:#69b1ff;}:where(.css-1p3hq3p) a:active{color:#0958d9;}:where(.css-1p3hq3p) a:active,:where(.css-1p3hq3p) a:hover{text-decoration:none;outline:0;}:where(.css-1p3hq3p) a:focus{text-decoration:none;outline:0;}:where(.css-1p3hq3p) a[disabled]{color:rgba(0, 0, 0, 0.25);cursor:not-allowed;}</style><style data-vc-order="prependQueue" data-css-hash="1n2woiz" data-token-hash="mmblq1">:where(.css-1p3hq3p)[class^="ant-tooltip"],:where(.css-1p3hq3p)[class*=" ant-tooltip"]{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';font-size:14px;box-sizing:border-box;}:where(.css-1p3hq3p)[class^="ant-tooltip"]::before,:where(.css-1p3hq3p)[class*=" ant-tooltip"]::before,:where(.css-1p3hq3p)[class^="ant-tooltip"]::after,:where(.css-1p3hq3p)[class*=" ant-tooltip"]::after{box-sizing:border-box;}:where(.css-1p3hq3p)[class^="ant-tooltip"] [class^="ant-tooltip"],:where(.css-1p3hq3p)[class*=" ant-tooltip"] [class^="ant-tooltip"],:where(.css-1p3hq3p)[class^="ant-tooltip"] [class*=" ant-tooltip"],:where(.css-1p3hq3p)[class*=" ant-tooltip"] [class*=" ant-tooltip"]{box-sizing:border-box;}:where(.css-1p3hq3p)[class^="ant-tooltip"] [class^="ant-tooltip"]::before,:where(.css-1p3hq3p)[class*=" ant-tooltip"] [class^="ant-tooltip"]::before,:where(.css-1p3hq3p)[class^="ant-tooltip"] [class*=" ant-tooltip"]::before,:where(.css-1p3hq3p)[class*=" ant-tooltip"] [class*=" ant-tooltip"]::before,:where(.css-1p3hq3p)[class^="ant-tooltip"] [class^="ant-tooltip"]::after,:where(.css-1p3hq3p)[class*=" ant-tooltip"] [class^="ant-tooltip"]::after,:where(.css-1p3hq3p)[class^="ant-tooltip"] [class*=" ant-tooltip"]::after,:where(.css-1p3hq3p)[class*=" ant-tooltip"] [class*=" ant-tooltip"]::after{box-sizing:border-box;}:where(.css-1p3hq3p).ant-tooltip{box-sizing:border-box;margin:0;padding:0;color:rgba(0, 0, 0, 0.88);font-size:14px;line-height:1.5714285714285714;list-style:none;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';position:absolute;z-index:1070;display:block;max-width:250px;visibility:visible;--antd-arrow-background-color:rgba(0, 0, 0, 0.85);}:where(.css-1p3hq3p).ant-tooltip{width:max-content;width:intrinsic;}:where(.css-1p3hq3p).ant-tooltip-hidden{display:none;}:where(.css-1p3hq3p).ant-tooltip .ant-tooltip-inner{min-width:32px;min-height:32px;padding:6px 8px;color:#fff;text-align:start;text-decoration:none;word-wrap:break-word;background-color:rgba(0, 0, 0, 0.85);border-radius:6px;box-shadow:0 6px 16px 0 rgba(0, 0, 0, 0.08),0 3px 6px -4px rgba(0, 0, 0, 0.12),0 9px 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-1p3hq3p).ant-tooltip-placement-left .ant-tooltip-inner,:where(.css-1p3hq3p).ant-tooltip-placement-leftTop .ant-tooltip-inner,:where(.css-1p3hq3p).ant-tooltip-placement-leftBottom .ant-tooltip-inner,:where(.css-1p3hq3p).ant-tooltip-placement-right .ant-tooltip-inner,:where(.css-1p3hq3p).ant-tooltip-placement-rightTop .ant-tooltip-inner,:where(.css-1p3hq3p).ant-tooltip-placement-rightBottom .ant-tooltip-inner{border-radius:6px;}:where(.css-1p3hq3p).ant-tooltip .ant-tooltip-content{position:relative;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-blue .ant-tooltip-inner{background-color:#1677ff;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-blue .ant-tooltip-arrow{--antd-arrow-background-color:#1677ff;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-purple .ant-tooltip-inner{background-color:#722ed1;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-purple .ant-tooltip-arrow{--antd-arrow-background-color:#722ed1;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13c2c2;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-cyan .ant-tooltip-arrow{--antd-arrow-background-color:#13c2c2;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-green .ant-tooltip-inner{background-color:#52c41a;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-green .ant-tooltip-arrow{--antd-arrow-background-color:#52c41a;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-magenta .ant-tooltip-inner{background-color:#eb2f96;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-magenta .ant-tooltip-arrow{--antd-arrow-background-color:#eb2f96;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-pink .ant-tooltip-inner{background-color:#eb2f96;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-pink .ant-tooltip-arrow{--antd-arrow-background-color:#eb2f96;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-red .ant-tooltip-inner{background-color:#f5222d;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-red .ant-tooltip-arrow{--antd-arrow-background-color:#f5222d;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-orange .ant-tooltip-inner{background-color:#fa8c16;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-orange .ant-tooltip-arrow{--antd-arrow-background-color:#fa8c16;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-yellow .ant-tooltip-inner{background-color:#fadb14;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-yellow .ant-tooltip-arrow{--antd-arrow-background-color:#fadb14;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-volcano .ant-tooltip-inner{background-color:#fa541c;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-volcano .ant-tooltip-arrow{--antd-arrow-background-color:#fa541c;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2f54eb;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-geekblue .ant-tooltip-arrow{--antd-arrow-background-color:#2f54eb;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-lime .ant-tooltip-inner{background-color:#a0d911;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-lime .ant-tooltip-arrow{--antd-arrow-background-color:#a0d911;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-gold .ant-tooltip-inner{background-color:#faad14;}:where(.css-1p3hq3p).ant-tooltip.ant-tooltip-gold .ant-tooltip-arrow{--antd-arrow-background-color:#faad14;}:where(.css-1p3hq3p).ant-tooltip-rtl{direction:rtl;}:where(.css-1p3hq3p).ant-tooltip .ant-tooltip-arrow{position:absolute;z-index:1;display:block;pointer-events:none;width:16px;height:16px;overflow:hidden;}:where(.css-1p3hq3p).ant-tooltip .ant-tooltip-arrow::after{content:"";position:absolute;width:8.970562748477143px;height:8.970562748477143px;bottom:0;inset-inline:0;margin:auto;border-radius:0 0 2px 0;transform:translateY(50%) rotate(-135deg);box-shadow:3px 3px 7px rgba(0, 0, 0, 0.1);z-index:0;background:transparent;}:where(.css-1p3hq3p).ant-tooltip .ant-tooltip-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:16px;height:8px;background:var(--antd-arrow-background-color);clip-path:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);clip-path:path('M 0 8 A 4 4 0 0 0 2.82842712474619 6.82842712474619 L 6.585786437626905 3.0710678118654755 A 2 2 0 0 1 9.414213562373096 3.0710678118654755 L 13.17157287525381 6.82842712474619 A 4 4 0 0 0 16 8 Z');content:"";}:where(.css-1p3hq3p).ant-tooltip .ant-tooltip-arrow:before{background:var(--antd-arrow-background-color);}:where(.css-1p3hq3p).ant-tooltip-placement-top .ant-tooltip-arrow,:where(.css-1p3hq3p).ant-tooltip-placement-topLeft .ant-tooltip-arrow,:where(.css-1p3hq3p).ant-tooltip-placement-topRight .ant-tooltip-arrow{bottom:0;transform:translateY(100%) rotate(180deg);}:where(.css-1p3hq3p).ant-tooltip-placement-top .ant-tooltip-arrow{left:50%;transform:translateX(-50%) translateY(100%) rotate(180deg);}:where(.css-1p3hq3p).ant-tooltip-placement-topLeft .ant-tooltip-arrow{left:6px;}:where(.css-1p3hq3p).ant-tooltip-placement-topRight .ant-tooltip-arrow{right:6px;}:where(.css-1p3hq3p).ant-tooltip-placement-bottom .ant-tooltip-arrow,:where(.css-1p3hq3p).ant-tooltip-placement-bottomLeft .ant-tooltip-arrow,:where(.css-1p3hq3p).ant-tooltip-placement-bottomRight .ant-tooltip-arrow{top:0;transform:translateY(-100%);}:where(.css-1p3hq3p).ant-tooltip-placement-bottom .ant-tooltip-arrow{left:50%;transform:translateX(-50%) translateY(-100%);}:where(.css-1p3hq3p).ant-tooltip-placement-bottomLeft .ant-tooltip-arrow{left:6px;}:where(.css-1p3hq3p).ant-tooltip-placement-bottomRight .ant-tooltip-arrow{right:6px;}:where(.css-1p3hq3p).ant-tooltip-placement-left .ant-tooltip-arrow,:where(.css-1p3hq3p).ant-tooltip-placement-leftTop .ant-tooltip-arrow,:where(.css-1p3hq3p).ant-tooltip-placement-leftBottom .ant-tooltip-arrow{right:0;transform:translateX(100%) rotate(90deg);}:where(.css-1p3hq3p).ant-tooltip-placement-left .ant-tooltip-arrow{top:50%;transform:translateY(-50%) translateX(100%) rotate(90deg);}:where(.css-1p3hq3p).ant-tooltip-placement-leftTop .ant-tooltip-arrow{top:2px;}:where(.css-1p3hq3p).ant-tooltip-placement-leftBottom .ant-tooltip-arrow{bottom:2px;}:where(.css-1p3hq3p).ant-tooltip-placement-right .ant-tooltip-arrow,:where(.css-1p3hq3p).ant-tooltip-placement-rightTop .ant-tooltip-arrow,:where(.css-1p3hq3p).ant-tooltip-placement-rightBottom .ant-tooltip-arrow{left:0;transform:translateX(-100%) rotate(-90deg);}:where(.css-1p3hq3p).ant-tooltip-placement-right .ant-tooltip-arrow{top:50%;transform:translateY(-50%) translateX(-100%) rotate(-90deg);}:where(.css-1p3hq3p).ant-tooltip-placement-rightTop .ant-tooltip-arrow{top:2px;}:where(.css-1p3hq3p).ant-tooltip-placement-rightBottom .ant-tooltip-arrow{bottom:2px;}:where(.css-1p3hq3p).ant-tooltip-placement-topLeft:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden),:where(.css-1p3hq3p).ant-tooltip-placement-top:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden),:where(.css-1p3hq3p).ant-tooltip-placement-topRight:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden){padding-bottom:12px;}:where(.css-1p3hq3p).ant-tooltip-placement-bottomLeft:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden),:where(.css-1p3hq3p).ant-tooltip-placement-bottom:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden),:where(.css-1p3hq3p).ant-tooltip-placement-bottomRight:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden){padding-top:12px;}:where(.css-1p3hq3p).ant-tooltip-placement-leftTop:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden),:where(.css-1p3hq3p).ant-tooltip-placement-left:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden),:where(.css-1p3hq3p).ant-tooltip-placement-leftBottom:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden){padding-right:12px;}:where(.css-1p3hq3p).ant-tooltip-placement-rightTop:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden),:where(.css-1p3hq3p).ant-tooltip-placement-right:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden),:where(.css-1p3hq3p).ant-tooltip-placement-rightBottom:not(:where(.css-1p3hq3p).ant-tooltip-arrow-hidden){padding-left:12px;}:where(.css-1p3hq3p).ant-tooltip-pure{position:relative;max-width:none;}:where(.css-1p3hq3p).ant-zoom-big-fast-enter,:where(.css-1p3hq3p).ant-zoom-big-fast-appear{animation-duration:0.1s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-1p3hq3p).ant-zoom-big-fast-leave{animation-duration:0.1s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-1p3hq3p).ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active,:where(.css-1p3hq3p).ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active{animation-name:css-1p3hq3p-antZoomBigIn;animation-play-state:running;}:where(.css-1p3hq3p).ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:css-1p3hq3p-antZoomBigOut;animation-play-state:running;pointer-events:none;}:where(.css-1p3hq3p).ant-zoom-big-fast-enter,:where(.css-1p3hq3p).ant-zoom-big-fast-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(0.08, 0.82, 0.17, 1);}:where(.css-1p3hq3p).ant-zoom-big-fast-enter-prepare,:where(.css-1p3hq3p).ant-zoom-big-fast-appear-prepare{transform:none;}:where(.css-1p3hq3p).ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}</style><style data-vc-order="prependQueue" data-css-hash="_effect-css-1p3hq3p-antZoomBigIn">@keyframes css-1p3hq3p-antZoomBigIn{0%{transform:scale(0.8);opacity:0;}100%{transform:scale(1);opacity:1;}}</style><style data-vc-order="prependQueue" data-css-hash="_effect-css-1p3hq3p-antZoomBigOut">@keyframes css-1p3hq3p-antZoomBigOut{0%{transform:scale(1);}100%{transform:scale(0.8);opacity:0;}}</style><style>.ͼ1.cm-focused {outline: 1px dotted #212121;}
1 {position: relative !important; box-sizing: border-box; display: flex !important; flex-direction: column;}
1 .cm-scroller {display: flex !important; align-items: flex-start !important; font-family: monospace; line-height: 1.4; height: 100%; overflow-x: auto; position: relative; z-index: 0;}
1 .cm-content[contenteditable=true] {-webkit-user-modify: read-write-plaintext-only;}
1 .cm-content {margin: 0; flex-grow: 2; flex-shrink: 0; display: block; white-space: pre; word-wrap: normal; box-sizing: border-box; min-height: 100%; padding: 4px 0; outline: none;}
1 .cm-lineWrapping {white-space: pre-wrap; white-space: break-spaces; word-break: break-word; overflow-wrap: anywhere; flex-shrink: 1;}
2 .cm-content {caret-color: black;}
3 .cm-content {caret-color: white;}
1 .cm-line {display: block; padding: 0 2px 0 6px;}
1 .cm-layer > * {position: absolute;}
1 .cm-layer {position: absolute; left: 0; top: 0; contain: size style;}
2 .cm-selectionBackground {background: #d9d9d9;}
3 .cm-selectionBackground {background: #222;}
2.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground {background: #d7d4f0;}
3.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground {background: #233;}
1 .cm-cursorLayer {pointer-events: none;}
1.cm-focused > .cm-scroller > .cm-cursorLayer {animation: steps(1) cm-blink 1.2s infinite;}
@keyframes cm-blink {50% {opacity: 0;}}
@keyframes cm-blink2 {50% {opacity: 0;}}
1 .cm-cursor, .ͼ1 .cm-dropCursor {border-left: 1.2px solid black; margin-left: -0.6px; pointer-events: none;}
1 .cm-cursor {display: none;}
3 .cm-cursor {border-left-color: #444;}
1 .cm-dropCursor {position: absolute;}
1.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor {display: block;}
1 .cm-iso {unicode-bidi: isolate;}
1 .cm-announced {position: fixed; top: -10000px;}
@media print {.ͼ1 .cm-announced {display: none;}}
2 .cm-activeLine {background-color: #cceeff44;}
3 .cm-activeLine {background-color: #99eeff33;}
2 .cm-specialChar {color: red;}
3 .cm-specialChar {color: #f78;}
1 .cm-gutters {flex-shrink: 0; display: flex; height: 100%; box-sizing: border-box; inset-inline-start: 0; z-index: 200;}
2 .cm-gutters {background-color: #f5f5f5; color: #6c6c6c; border-right: 1px solid #ddd;}
3 .cm-gutters {background-color: #333338; color: #ccc;}
1 .cm-gutter {display: flex !important; flex-direction: column; flex-shrink: 0; box-sizing: border-box; min-height: 100%; overflow: hidden;}
1 .cm-gutterElement {box-sizing: border-box;}
1 .cm-lineNumbers .cm-gutterElement {padding: 0 3px 0 5px; min-width: 20px; text-align: right; white-space: nowrap;}
2 .cm-activeLineGutter {background-color: #e2f2ff;}
3 .cm-activeLineGutter {background-color: #222227;}
1 .cm-panels {box-sizing: border-box; position: sticky; left: 0; right: 0;}
2 .cm-panels {background-color: #f5f5f5; color: black;}
2 .cm-panels-top {border-bottom: 1px solid #ddd;}
2 .cm-panels-bottom {border-top: 1px solid #ddd;}
3 .cm-panels {background-color: #333338; color: white;}
1 .cm-tab {display: inline-block; overflow: hidden; vertical-align: bottom;}
1 .cm-widgetBuffer {vertical-align: text-top; height: 1em; width: 0; display: inline;}
1 .cm-placeholder {color: #888; display: inline-block; vertical-align: top;}
1 .cm-highlightSpace:before {content: attr(data-display); position: absolute; pointer-events: none; color: #888;}
1 .cm-highlightTab {background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>'); background-size: auto 100%; background-position: right 90%; background-repeat: no-repeat;}
1 .cm-trailingSpace {background-color: #ff332255;}
1 .cm-button {vertical-align: middle; color: inherit; font-size: 70%; padding: .2em 1em; border-radius: 1px;}
2 .cm-button:active {background-image: linear-gradient(#b4b4b4, #d0d3d6);}
2 .cm-button {background-image: linear-gradient(#eff1f5, #d9d9df); border: 1px solid #888;}
3 .cm-button:active {background-image: linear-gradient(#111, #333);}
3 .cm-button {background-image: linear-gradient(#393939, #111); border: 1px solid #888;}
1 .cm-textfield {vertical-align: middle; color: inherit; font-size: 70%; border: 1px solid silver; padding: .2em .5em;}
2 .cm-textfield {background-color: white;}
3 .cm-textfield {border: 1px solid #555; background-color: inherit;}
1 .cm-foldPlaceholder {background-color: #eee; border: 1px solid #ddd; color: #888; border-radius: .2em; margin: 0 1px; padding: 0 1px; cursor: pointer;}
1 .cm-foldGutter span {padding: 0 1px; cursor: pointer;}
2 {--indent-marker-bg-color: #F0F1F2; --indent-marker-active-bg-color: #E4E5E6;}
3 {--indent-marker-bg-color: #2B3245; --indent-marker-active-bg-color: #3C445C;}
1 .cm-line {position: relative;}
1 .cm-indent-markers::before {content: ""; position: absolute; top: 0; left: 2px; right: 0; bottom: 0; background: var(--indent-markers); pointer-events: none;}
1 .cm-tooltip.cm-tooltip-autocomplete > ul > li, .ͼ1 .cm-tooltip.cm-tooltip-autocomplete > ul > completion-section {padding: 1px 3px; line-height: 1.2;}
1 .cm-tooltip.cm-tooltip-autocomplete > ul > li {overflow-x: hidden; text-overflow: ellipsis; cursor: pointer;}
1 .cm-tooltip.cm-tooltip-autocomplete > ul > completion-section {display: list-item; border-bottom: 1px solid silver; padding-left: 0.5em; opacity: 0.7;}
1 .cm-tooltip.cm-tooltip-autocomplete > ul {font-family: monospace; white-space: nowrap; overflow: hidden auto; max-width: 700px; max-width: min(700px, 95vw); min-width: 250px; max-height: 10em; height: 100%; list-style: none; margin: 0; padding: 0;}
2 .cm-tooltip-autocomplete ul li[aria-selected] {background: #17c; color: white;}
2 .cm-tooltip-autocomplete-disabled ul li[aria-selected] {background: #777;}
3 .cm-tooltip-autocomplete ul li[aria-selected] {background: #347; color: white;}
3 .cm-tooltip-autocomplete-disabled ul li[aria-selected] {background: #444;}
1 .cm-completionListIncompleteTop:before, .ͼ1 .cm-completionListIncompleteBottom:after {content: "···"; opacity: 0.5; display: block; text-align: center;}
1 .cm-tooltip.cm-completionInfo {position: absolute; padding: 3px 9px; width: max-content; max-width: 400px; box-sizing: border-box;}
1 .cm-completionInfo.cm-completionInfo-left {right: 100%;}
1 .cm-completionInfo.cm-completionInfo-right {left: 100%;}
1 .cm-completionInfo.cm-completionInfo-left-narrow {right: 30px;}
1 .cm-completionInfo.cm-completionInfo-right-narrow {left: 30px;}
2 .cm-snippetField {background-color: #00000022;}
3 .cm-snippetField {background-color: #ffffff22;}
1 .cm-snippetFieldPosition {vertical-align: text-top; width: 0; height: 1.15em; display: inline-block; margin: 0 -0.7px -.7em; border-left: 1.4px dotted #888;}
1 .cm-completionMatchedText {text-decoration: underline;}
1 .cm-completionDetail {margin-left: 0.5em; font-style: italic;}
1 .cm-completionIcon {font-size: 90%; width: .8em; display: inline-block; text-align: center; padding-right: .6em; opacity: 0.6; box-sizing: content-box;}
1 .cm-completionIcon-function:after, .ͼ1 .cm-completionIcon-method:after {content: 'ƒ';}
1 .cm-completionIcon-class:after {content: '○';}
1 .cm-completionIcon-interface:after {content: '◌';}
1 .cm-completionIcon-variable:after {content: '𝑥';}
1 .cm-completionIcon-constant:after {content: '𝐶';}
1 .cm-completionIcon-type:after {content: '𝑡';}
1 .cm-completionIcon-enum:after {content: '∪';}
1 .cm-completionIcon-property:after {content: '□';}
1 .cm-completionIcon-keyword:after {content: '🔑︎';}
1 .cm-completionIcon-namespace:after {content: '▢';}
1 .cm-completionIcon-text:after {content: 'abc'; font-size: 50%; vertical-align: middle;}
1 .cm-tooltip {z-index: 100; box-sizing: border-box;}
2 .cm-tooltip {border: 1px solid #bbb; background-color: #f5f5f5;}
2 .cm-tooltip-section:not(:first-child) {border-top: 1px solid #bbb;}
3 .cm-tooltip {background-color: #333338; color: white;}
1 .cm-tooltip-arrow:before, .ͼ1 .cm-tooltip-arrow:after {content: ''; position: absolute; width: 0; height: 0; border-left: 7px solid transparent; border-right: 7px solid transparent;}
1 .cm-tooltip-above .cm-tooltip-arrow:before {border-top: 7px solid #bbb;}
1 .cm-tooltip-above .cm-tooltip-arrow:after {border-top: 7px solid #f5f5f5; bottom: 1px;}
1 .cm-tooltip-above .cm-tooltip-arrow {bottom: -7px;}
1 .cm-tooltip-below .cm-tooltip-arrow:before {border-bottom: 7px solid #bbb;}
1 .cm-tooltip-below .cm-tooltip-arrow:after {border-bottom: 7px solid #f5f5f5; top: 1px;}
1 .cm-tooltip-below .cm-tooltip-arrow {top: -7px;}
1 .cm-tooltip-arrow {height: 7px; width: 14px; position: absolute; z-index: -1; overflow: hidden;}
3 .cm-tooltip .cm-tooltip-arrow:before {border-top-color: #333338; border-bottom-color: #333338;}
3 .cm-tooltip .cm-tooltip-arrow:after {border-top-color: transparent; border-bottom-color: transparent;}
1.cm-focused .cm-matchingBracket {background-color: #328c8252;}
1.cm-focused .cm-nonmatchingBracket {background-color: #bb555544;}
5 {color: #404740;}
6 {text-decoration: underline;}
7 {text-decoration: underline; font-weight: bold;}
8 {font-style: italic;}
9 {font-weight: bold;}
.ͼa {text-decoration: line-through;}
.ͼb {color: #708;}
.ͼc {color: #219;}
.ͼd {color: #164;}
.ͼe {color: #a11;}
.ͼf {color: #e40;}
.ͼg {color: #00f;}
.ͼh {color: #30a;}
.ͼi {color: #085;}
.ͼj {color: #167;}
.ͼk {color: #256;}
.ͼl {color: #00c;}
.ͼm {color: #940;}
.ͼn {color: #f00;}
4 .cm-line ::selection {background-color: transparent !important;}
4 .cm-line::selection {background-color: transparent !important;}
4 .cm-line {caret-color: transparent !important;}
4 .cm-content {caret-color: transparent !important;}
</style>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<meta name="description" content="We’re on a journey to advance and democratize artificial intelligence through open source and open science.">
<meta property="fb:app_id" content="1321688464574422">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@huggingface">
<meta name="twitter:image" content="https://huggingface.co/front/thumbnails/v2-2.png">
<meta property="og:title" content="Hugging Face – The AI community building the future.">
<meta property="og:type" content="website">
<meta property="og:url" content="https://huggingface.co/spaces/llzzyy233/Defect_detection/new/main">
<meta property="og:image" content="https://huggingface.co/front/thumbnails/v2-2.png">
<link rel="stylesheet" href="./app_files/style.css">
<link rel="preconnect" href="https://fonts.gstatic.com/">
<link href="./app_files/css2" rel="stylesheet">
<link href="./app_files/css2(1)" rel="stylesheet">
<link rel="stylesheet" href="./app_files/katex.min.css" as="style" onload="this.onload=null;this.rel=&#39;stylesheet&#39;">
<noscript>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.12.0/katex.min.css" />
</noscript>
<script>const guestTheme = document.cookie.match(/theme=(\w+)/)?.[1]; document.documentElement.classList.toggle('dark', guestTheme === 'dark' || ( (!guestTheme || guestTheme === 'system') && window.matchMedia('(prefers-color-scheme: dark)').matches));</script>
<link rel="canonical" href="https://huggingface.co/spaces/llzzyy233/Defect_detection/new/main">
<title _msttexthash="61295364" _msthash="0">Hugging Face – 构建未来的 AI 社区。</title>
<script defer="" data-domain="huggingface.co" event-loggedin="true" src="./app_files/script.pageview-props.js.下载"></script>
<script>
window.plausible =
window.plausible ||
function () {
(window.plausible.q = window.plausible.q || []).push(arguments);
};
</script>
<script>
window.hubConfig = {"features":{"signupDisabled":false},"sshGitUrl":"git@hf.co","moonHttpUrl":"https:\/\/huggingface.co","captchaApiKey":"bd5f2066-93dc-4bdd-a64b-a24646ca3859","captchaDisabledOnSignup":true,"datasetViewerPublicUrl":"https:\/\/datasets-server.huggingface.co","stripePublicKey":"pk_live_x2tdjFXBCvXo2FFmMybezpeM00J6gPCAAc","environment":"production","userAgent":"HuggingFace (production)","spacesIframeDomain":"hf.space","spacesApiUrl":"https:\/\/api.hf.space","docSearchKey":"ece5e02e57300e17d152c08056145326e90c4bff3dd07d7d1ae40cf1c8d39cb6","logoDev":{"apiUrl":"https:\/\/img.logo.dev\/","apiKey":"pk_UHS2HZOeRnaSOdDp7jbd5w"}};
</script>
<script type="text/javascript" src="./app_files/challenge.js.下载" defer=""></script>
<script src="./app_files/saved_resource" async=""></script><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/SpaceHeader-CwBoj3_A.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconCogFlat-C4b_Dshk.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconMcp-CxXww-sa.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconList-m408jDqY.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconSpace-BZ7VUqD3.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconWarningFilled-DwgBpNdl.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/Popover-CJv_bOz4.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/index-B-y3H-FO.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/FileBlob-7MRLQ6TG-B3TCJVHX.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/outclick-iHM0AKcC.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/position-B6hrhisK.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/SpaceHardwareBadgeInner-Ba2IDgB7.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/Spaces-B2zfCn83.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconFan-BJ0dtgY7.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconSpinner-u2vc1NJe.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconSleeping-CPrUem1H.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconStop-BKAWBw7F.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/index-CfcEyKei.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconFlag-Bnv5lj-R.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/PrivateTag-DWCFEGIK.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/RepoTabs--rn0dB5q.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconHeart-DNM-Ac8b.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconHeartFilled-DBERotgl.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/UsersListModal-CLPi5Vvq.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/ModalBody-BRew-0N5.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/Overlay-BSZe6M76.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/FollowButton-OO7U4buw.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconBell-BnxJktzp.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconBellWatching-C5aPJHOA.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconMerge-kZu9O67g.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/UserPopover-Bogj-ucx.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconUpvoteFilled-CoszQ7JO.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/LabelPro-CnoHeJ5W.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/OrgPopover-BcJmCAJQ.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconPeopleFilled-ZCQ2ykJj.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/RepoTitle-DCAgvsO9.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/CopyButton-BGTCBK4V.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/tooltip-B8fYf4_o.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconDuplicate-Bppnhgvf.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/Tabs-DDaePRw-.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconXet-DfDYKn3C.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/XetWaitListPopover-DJwSOURJ.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconCheckmark-hA2Hag2v.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconBellWarning-CwPGkSpA.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconEmbed-gBw4g2Ic.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/ModelOverview-n0MyDWuD.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/gguf-CMcFb_vf.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/RepoOverview-DGVz6Ij2.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconDownload-CaVZlZTD.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/ResourceGroupTag--4ez8t4X.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/Image-BfZgKUr-.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconWarning-SO0UcAjU.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/PipelineIcon-DLLSouNR.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconVisualQuestionAnswering-CV_jss1M.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconConversational-Di3RWSic.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconTextGeneration-B5RoFWSJ.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconLightning-CI9-8pCX.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/DatasetOverview-CH3Ov2R8.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconEye-KOJUCmk8.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconRows-CSvoL9Xv.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconDataTable-c-wMdxJ0.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconKebabMenu-DtUHyjCO.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconRestart-z0yxUPta.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconLockOutline-DcaCzEl4.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconMute-Cu3_PlPB.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/CollectionOverview-CLiMzWj3.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconUpvote-D9zrsBIu.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconDevMode-BbZQDk6V.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/handlers-D696p0C6.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconLinkExternal-CqEEMoOY.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/MarkdownEditor-CGLsnw3s.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/CommitTabs-Dpgr2Gve.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/ThemeSwitcher-DTq3gaaG.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconSunFull-I_DkDHHW.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconImageFilled-JaJDlHre.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/UserAutocompleteMenu-DR_QJURp.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/MarkdownContent-D-1Hl_KB.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/interceptImages-nKuGr649.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/MediaViewer-DHzWQyXb.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconCaretDown-CXWYmr2_.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconCaretLeft-CVO7MraJ.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconCaretRight-D98DQSkJ.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/PDFViewer-BFVE4UVC.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconModalityDocument-gL8zdy6O.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/Media-DHp7jJPz.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/CloneInstructions-D4NM2EBj.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconInfo-o2frMdVt.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/RepoCloning-CkeL3IDR.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/Tags--siVhUV7.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconNotForAllEyes-CFVC1K7B.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/SpaceHardwareFlavor-BNxAauGU.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/ModalQuickLinks-C5ql_Az_.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconPaperClip-CbXjtF9I.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/Spinner-CoTrR9uz.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/SpaceSecretSelector-qj1enQtp.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconCreditCard-BZ9ofRP7.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/StripeCardUpdateForm-FNQllQUh.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/BillingProducts-DcYW-bT8.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/BillingPrepaidCreditsWaitlist-DkVHbxPQ.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconRocket--o2keQqY.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/DescriptionTooltip-Cozm3x2h.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconKey-Upk2eOaf.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconVariable-CgiAAK3W.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconCheckmarkFilled-C2gx0rUM.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/CollectionModal-fn0Pp194.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/SpaceDevModeControls-DIsQFAja.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconVscode-B9atbUKF.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/index.browser-vcSNLBTf.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconCaretV2-Bml8YZhe.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconHuggingFace-DcetrcSu.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/CommitFormEdit-D5P6bxye.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/index-Btc02qft.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconSpin-B82QJO5y.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconArrowLeft-CB8DJ81c.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconReplaceAll-CfyGyCRI.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/CommitFormWrapper-D3HI1bcs.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/MetadataIssue-DJN_WC9P.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconTimelineDot-CV_a0pdv.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/ViewMarkdown-Bfb04Jrr.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/MultiSelect-CpQoV4m5.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconMetric-UWYV_1SO.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconLicense-CqO6iAtV.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/FormFileUpload-DLBbCffP.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconUpload-CBY8zcFq.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/language-D2C60v1a.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/LineWrapButton-D_xnYFF_.js"><link rel="modulepreload" as="script" crossorigin="" href="https://huggingface.co/front/build/kube-e8ad96a/IconLineWrap-ftw1ekMs.js"></head>
<body class="flex flex-col min-h-dvh bg-white dark:bg-gray-950 text-black ViewerEditPage">
<div class="flex min-h-dvh flex-col"><div class="SVELTE_HYDRATER contents" data-target="SystemThemeMonitor" data-props="{&quot;isLoggedIn&quot;:true}"></div>
<div class="SVELTE_HYDRATER contents" data-target="MainHeader" data-props="{&quot;authLight&quot;:{&quot;csrfToken&quot;:&quot;eyJkYXRhIjp7ImV4cGlyYXRpb24iOjE3NTExMTM2MDE4NjgsInVzZXJJZCI6IjY4NWU4ZDA4ZGViZTY3YTdkNWRmM2EzYyJ9LCJzaWduYXR1cmUiOiI1MGNkYTRkZjAxMmEzMGE1ZjFjYTRiNjI2ZDhkNmVjYTdiOTk2NjZjODg4NzI2YzhmNmM1NGYwODZmMzU2YmM1In0=&quot;,&quot;hasHfLevelAccess&quot;:false,&quot;u&quot;:{&quot;avatarUrl&quot;:&quot;https://cdn-avatars.huggingface.co/v1/production/uploads/no-auth/g3tagzYkxuo017c8N_DEV.png&quot;,&quot;isPro&quot;:false,&quot;orgs&quot;:[],&quot;user&quot;:&quot;fugui11&quot;,&quot;canPost&quot;:false,&quot;canHaveBilling&quot;:true,&quot;canCreateOrg&quot;:true,&quot;theme&quot;:&quot;light&quot;,&quot;notifications&quot;:{},&quot;hardwareItems&quot;:[],&quot;hardwareItemsPrivate&quot;:false,&quot;usage&quot;:{&quot;storage&quot;:{&quot;used&quot;:0,&quot;usedPrivate&quot;:0,&quot;usedPublic&quot;:0,&quot;count&quot;:0,&quot;limit&quot;:100000000000},&quot;inference&quot;:{&quot;usedNanoUsd&quot;:0,&quot;numRequests&quot;:0,&quot;providerDetails&quot;:[],&quot;periodEnd&quot;:&quot;2025-06-30T23:59:59.999Z&quot;,&quot;periodStart&quot;:&quot;2025-06-01T00:00:00.000Z&quot;,&quot;includedNanoUsd&quot;:100000000,&quot;limitNanoUsd&quot;:100000000,&quot;lastUpdated&quot;:&quot;2025-06-27T12:26:38.142Z&quot;},&quot;zeroGpu&quot;:{&quot;base&quot;:300,&quot;current&quot;:300,&quot;lastUpdated&quot;:&quot;2025-06-27T12:26:38.142Z&quot;}},&quot;xetWaitlist&quot;:{&quot;status&quot;:&quot;in&quot;,&quot;acceptedAt&quot;:&quot;2025-06-27T12:22:32.035Z&quot;,&quot;joinedAt&quot;:&quot;2025-06-27T12:22:32.035Z&quot;},&quot;welcomeLinks&quot;:[]}},&quot;classNames&quot;:&quot;&quot;,&quot;avatarUrl&quot;:&quot;https://cdn-avatars.huggingface.co/v1/production/uploads/no-auth/g3tagzYkxuo017c8N_DEV.png&quot;,&quot;isWide&quot;:false,&quot;isZh&quot;:true,&quot;user&quot;:&quot;fugui11&quot;,&quot;unreadNotifications&quot;:0,&quot;unreadChangelogCount&quot;:0,&quot;csrf&quot;:&quot;eyJkYXRhIjp7ImV4cGlyYXRpb24iOjE3NTExMTM2MDE4NjgsInVzZXJJZCI6IjY4NWU4ZDA4ZGViZTY3YTdkNWRmM2EzYyJ9LCJzaWduYXR1cmUiOiI1MGNkYTRkZjAxMmEzMGE1ZjFjYTRiNjI2ZDhkNmVjYTdiOTk2NjZjODg4NzI2YzhmNmM1NGYwODZmMzU2YmM1In0=&quot;,&quot;canCreateOrg&quot;:true,&quot;isPro&quot;:false}"><header class="border-b border-gray-100 "><div class="w-full px-4 container flex h-16 items-center"><div class="flex flex-1 items-center"><a class="mr-5 flex flex-none items-center lg:mr-6" href="https://huggingface.co/"><img alt="Hugging Face 的标志" class="w-7 md:mr-2" src="./app_files/huggingface_logo-noborder.svg" _mstalt="326872" _msthash="1"> <span class="hidden whitespace-nowrap text-lg font-bold md:block" _msttexthash="8801767" _msthash="2">拥抱脸</span></a> <div class="relative flex-1 lg:max-w-sm mr-2 sm:mr-4 md:mr-3 xl:mr-6"><input autocomplete="off" class="w-full dark:bg-gray-950 pl-8 form-input-alt h-9 pr-3 focus:shadow-xl " name="" placeholder="搜索模型、数据集、用户..." spellcheck="false" type="text" _mstplaceholder="783549" _msthash="3"> <svg class="absolute left-2.5 text-gray-400 top-1/2 transform -translate-y-1/2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M30 28.59L22.45 21A11 11 0 1 0 21 22.45L28.59 30zM5 14a9 9 0 1 1 9 9a9 9 0 0 1-9-9z" fill="currentColor"></path></svg> </div> <div class="flex flex-none items-center justify-center p-0.5 place-self-stretch lg:hidden"><button class="relative z-40 flex h-6 w-8 items-center justify-center" type="button"><svg width="1em" height="1em" viewBox="0 0 10 10" class="text-xl" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" preserveAspectRatio="xMidYMid meet" fill="currentColor"><path fill-rule="evenodd" clip-rule="evenodd" d="M1.65039 2.9999C1.65039 2.8066 1.80709 2.6499 2.00039 2.6499H8.00039C8.19369 2.6499 8.35039 2.8066 8.35039 2.9999C8.35039 3.1932 8.19369 3.3499 8.00039 3.3499H2.00039C1.80709 3.3499 1.65039 3.1932 1.65039 2.9999ZM1.65039 4.9999C1.65039 4.8066 1.80709 4.6499 2.00039 4.6499H8.00039C8.19369 4.6499 8.35039 4.8066 8.35039 4.9999C8.35039 5.1932 8.19369 5.3499 8.00039 5.3499H2.00039C1.80709 5.3499 1.65039 5.1932 1.65039 4.9999ZM2.00039 6.6499C1.80709 6.6499 1.65039 6.8066 1.65039 6.9999C1.65039 7.1932 1.80709 7.3499 2.00039 7.3499H8.00039C8.19369 7.3499 8.35039 7.1932 8.35039 6.9999C8.35039 6.8066 8.19369 6.6499 8.00039 6.6499H2.00039Z"></path></svg> </button> </div></div> <nav aria-label="主要" class="ml-auto hidden lg:block" _mstaria-label="43680" _msthash="4"><ul class="flex items-center gap-x-1 2xl:gap-x-2"><li class="hover:text-indigo-700"><a class="group flex items-center px-2 py-0.5 dark:text-gray-300 dark:hover:text-gray-100" href="https://huggingface.co/models"><svg class="mr-1.5 text-gray-400 group-hover:text-indigo-500" style="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path class="uim-quaternary" d="M20.23 7.24L12 12L3.77 7.24a1.98 1.98 0 0 1 .7-.71L11 2.76c.62-.35 1.38-.35 2 0l6.53 3.77c.29.173.531.418.7.71z" opacity=".25" fill="currentColor"></path><path class="uim-tertiary" d="M12 12v9.5a2.09 2.09 0 0 1-.91-.21L4.5 17.48a2.003 2.003 0 0 1-1-1.73v-7.5a2.06 2.06 0 0 1 .27-1.01L12 12z" opacity=".5" fill="currentColor"></path><path class="uim-primary" d="M20.5 8.25v7.5a2.003 2.003 0 0 1-1 1.73l-6.62 3.82c-.275.13-.576.198-.88.2V12l8.23-4.76c.175.308.268.656.27 1.01z" fill="currentColor"></path></svg> <font _mstmutation="1" _msttexthash="4803123" _msthash="5">模型</font></a></li><li class="hover:text-red-700"><a class="group flex items-center px-2 py-0.5 dark:text-gray-300 dark:hover:text-gray-100" href="https://huggingface.co/datasets"><svg class="mr-1.5 text-gray-400 group-hover:text-red-500" style="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 25 25"><ellipse cx="12.5" cy="5" fill="currentColor" fill-opacity="0.25" rx="7.5" ry="2"></ellipse><path d="M12.5 15C16.6421 15 20 14.1046 20 13V20C20 21.1046 16.6421 22 12.5 22C8.35786 22 5 21.1046 5 20V13C5 14.1046 8.35786 15 12.5 15Z" fill="currentColor" opacity="0.5"></path><path d="M12.5 7C16.6421 7 20 6.10457 20 5V11.5C20 12.6046 16.6421 13.5 12.5 13.5C8.35786 13.5 5 12.6046 5 11.5V5C5 6.10457 8.35786 7 12.5 7Z" fill="currentColor" opacity="0.5"></path><path d="M5.23628 12C5.08204 12.1598 5 12.8273 5 13C5 14.1046 8.35786 15 12.5 15C16.6421 15 20 14.1046 20 13C20 12.8273 19.918 12.1598 19.7637 12C18.9311 12.8626 15.9947 13.5 12.5 13.5C9.0053 13.5 6.06886 12.8626 5.23628 12Z" fill="currentColor"></path></svg> <font _mstmutation="1" _msttexthash="5010304" _msthash="6">数据</font></a></li><li class="hover:text-blue-700"><a class="group flex items-center px-2 py-0.5 dark:text-gray-300 dark:hover:text-gray-100" href="https://huggingface.co/spaces"><svg class="mr-1.5 text-gray-400 group-hover:text-blue-500" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" viewBox="0 0 25 25"><path opacity=".5" d="M6.016 14.674v4.31h4.31v-4.31h-4.31ZM14.674 14.674v4.31h4.31v-4.31h-4.31ZM6.016 6.016v4.31h4.31v-4.31h-4.31Z" fill="currentColor"></path><path opacity=".75" fill-rule="evenodd" clip-rule="evenodd" d="M3 4.914C3 3.857 3.857 3 4.914 3h6.514c.884 0 1.628.6 1.848 1.414a5.171 5.171 0 0 1 7.31 7.31c.815.22 1.414.964 1.414 1.848v6.514A1.914 1.914 0 0 1 20.086 22H4.914A1.914 1.914 0 0 1 3 20.086V4.914Zm3.016 1.102v4.31h4.31v-4.31h-4.31Zm0 12.968v-4.31h4.31v4.31h-4.31Zm8.658 0v-4.31h4.31v4.31h-4.31Zm0-10.813a2.155 2.155 0 1 1 4.31 0 2.155 2.155 0 0 1-4.31 0Z" fill="currentColor"></path><path opacity=".25" d="M16.829 6.016a2.155 2.155 0 1 0 0 4.31 2.155 2.155 0 0 0 0-4.31Z" fill="currentColor"></path></svg> <font _mstmutation="1" _msttexthash="6845566" _msthash="7">空间</font></a></li><li class="max-xl:hidden relative"><div class="relative "><button class="group flex items-center px-2 py-0.5 dark:text-gray-300 hover:text-yellow-700 dark:hover:text-gray-100 " type="button"><svg class="mr-1.5 mr-1.5 text-gray-400 text-yellow-500! group-hover:text-yellow-500" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M20.6081 3C21.7684 3 22.8053 3.49196 23.5284 4.38415C23.9756 4.93678 24.4428 5.82749 24.4808 7.16133C24.9674 7.01707 25.4353 6.93643 25.8725 6.93643C26.9833 6.93643 27.9865 7.37587 28.696 8.17411C29.6075 9.19872 30.0124 10.4579 29.8361 11.7177C29.7523 12.3177 29.5581 12.8555 29.2678 13.3534C29.8798 13.8646 30.3306 14.5763 30.5485 15.4322C30.719 16.1032 30.8939 17.5006 29.9808 18.9403C30.0389 19.0342 30.0934 19.1319 30.1442 19.2318C30.6932 20.3074 30.7283 21.5229 30.2439 22.6548C29.5093 24.3704 27.6841 25.7219 24.1397 27.1727C21.9347 28.0753 19.9174 28.6523 19.8994 28.6575C16.9842 29.4379 14.3477 29.8345 12.0653 29.8345C7.87017 29.8345 4.8668 28.508 3.13831 25.8921C0.356375 21.6797 0.754104 17.8269 4.35369 14.1131C6.34591 12.058 7.67023 9.02782 7.94613 8.36275C8.50224 6.39343 9.97271 4.20438 12.4172 4.20438H12.4179C12.6236 4.20438 12.8314 4.2214 13.0364 4.25468C14.107 4.42854 15.0428 5.06476 15.7115 6.02205C16.4331 5.09583 17.134 4.359 17.7682 3.94323C18.7242 3.31737 19.6794 3 20.6081 3ZM20.6081 5.95917C20.2427 5.95917 19.7963 6.1197 19.3039 6.44225C17.7754 7.44319 14.8258 12.6772 13.7458 14.7131C13.3839 15.3952 12.7655 15.6837 12.2086 15.6837C11.1036 15.6837 10.2408 14.5497 12.1076 13.1085C14.9146 10.9402 13.9299 7.39584 12.5898 7.1776C12.5311 7.16799 12.4731 7.16355 12.4172 7.16355C11.1989 7.16355 10.6615 9.33114 10.6615 9.33114C10.6615 9.33114 9.0863 13.4148 6.38031 16.206C3.67434 18.998 3.5346 21.2388 5.50675 24.2246C6.85185 26.2606 9.42666 26.8753 12.0653 26.8753C14.8021 26.8753 17.6077 26.2139 19.1799 25.793C19.2574 25.7723 28.8193 22.984 27.6081 20.6107C27.4046 20.212 27.0693 20.0522 26.6471 20.0522C24.9416 20.0522 21.8393 22.6726 20.5057 22.6726C20.2076 22.6726 19.9976 22.5416 19.9116 22.222C19.3433 20.1173 28.552 19.2325 27.7758 16.1839C27.639 15.6445 27.2677 15.4256 26.746 15.4263C24.4923 15.4263 19.4358 19.5181 18.3759 19.5181C18.2949 19.5181 18.2368 19.4937 18.2053 19.4419C17.6743 18.557 17.9653 17.9394 21.7082 15.6009C25.4511 13.2617 28.0783 11.8545 26.5841 10.1752C26.4121 9.98141 26.1684 9.8956 25.8725 9.8956C23.6001 9.89634 18.2311 14.9403 18.2311 14.9403C18.2311 14.9403 16.7821 16.496 15.9057 16.496C15.7043 16.496 15.533 16.4139 15.4169 16.2112C14.7956 15.1296 21.1879 10.1286 21.5484 8.06535C21.7928 6.66715 21.3771 5.95917 20.6081 5.95917Z" fill="#FF9D00"></path><path d="M5.50686 24.2246C3.53472 21.2387 3.67446 18.9979 6.38043 16.206C9.08641 13.4147 10.6615 9.33111 10.6615 9.33111C10.6615 9.33111 11.2499 6.95933 12.59 7.17757C13.93 7.39581 14.9139 10.9401 12.1069 13.1084C9.29997 15.276 12.6659 16.7489 13.7459 14.713C14.8258 12.6772 17.7747 7.44316 19.304 6.44221C20.8326 5.44128 21.9089 6.00204 21.5484 8.06532C21.188 10.1286 14.795 15.1295 15.4171 16.2118C16.0391 17.2934 18.2312 14.9402 18.2312 14.9402C18.2312 14.9402 25.0907 8.49588 26.5842 10.1752C28.0776 11.8545 25.4512 13.2616 21.7082 15.6008C17.9646 17.9393 17.6744 18.557 18.2054 19.4418C18.7372 20.3266 26.9998 13.1351 27.7759 16.1838C28.5513 19.2324 19.3434 20.1173 19.9117 22.2219C20.48 24.3274 26.3979 18.2382 27.6082 20.6107C28.8193 22.9839 19.2574 25.7722 19.18 25.7929C16.0914 26.62 8.24723 28.3726 5.50686 24.2246Z" fill="#FFD21E"></path></svg> <font _mstmutation="1" _msttexthash="5040282" _msthash="8">社区</font> </button> </div></li><li class="hover:text-yellow-700"><a class="group flex items-center px-2 py-0.5 dark:text-gray-300 dark:hover:text-gray-100" href="https://huggingface.co/docs"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="mr-1.5 text-gray-400 group-hover:text-yellow-500" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 16 16"><path d="m2.28 3.7-.3.16a.67.67 0 0 0-.34.58v8.73l.01.04.02.07.01.04.03.06.02.04.02.03.04.06.05.05.04.04.06.04.06.04.08.04.08.02h.05l.07.02h.11l.04-.01.07-.02.03-.01.07-.03.22-.12a5.33 5.33 0 0 1 5.15.1.67.67 0 0 0 .66 0 5.33 5.33 0 0 1 5.33 0 .67.67 0 0 0 1-.58V4.36a.67.67 0 0 0-.34-.5l-.3-.17v7.78a.63.63 0 0 1-.87.59 4.9 4.9 0 0 0-4.35.35l-.65.39a.29.29 0 0 1-.15.04.29.29 0 0 1-.16-.04l-.65-.4a4.9 4.9 0 0 0-4.34-.34.63.63 0 0 1-.87-.59V3.7Z" fill="currentColor" class="dark:opacity-40"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M8 3.1a5.99 5.99 0 0 0-5.3-.43.66.66 0 0 0-.42.62v8.18c0 .45.46.76.87.59a4.9 4.9 0 0 1 4.34.35l.65.39c.05.03.1.04.16.04.05 0 .1-.01.15-.04l.65-.4a4.9 4.9 0 0 1 4.35-.34.63.63 0 0 0 .86-.59V3.3a.67.67 0 0 0-.41-.62 5.99 5.99 0 0 0-5.3.43l-.3.17L8 3.1Zm.73 1.87a.43.43 0 1 0-.86 0v5.48a.43.43 0 0 0 .86 0V4.97Z" fill="currentColor" class="opacity-40 dark:opacity-100"></path><path d="M8.73 4.97a.43.43 0 1 0-.86 0v5.48a.43.43 0 1 0 .86 0V4.96Z" fill="currentColor" class="dark:opacity-40"></path></svg> <font _mstmutation="1" _msttexthash="5144373" _msthash="9">文档</font></a></li><li class="hover:text-black dark:hover:text-white max-2xl:hidden" _msthidden="1"><a class="group flex items-center px-2 py-0.5 dark:text-gray-300 dark:hover:text-gray-100" href="https://huggingface.co/enterprise" _msthidden="1"><svg class="mr-1.5 text-gray-400 group-hover:text-black dark:group-hover:text-white" xmlns="http://www.w3.org/2000/svg" fill="none" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 12 12"><path fill-rule="evenodd" clip-rule="evenodd" d="M4.9 1.35a3.16 3.16 0 0 0-2.8 2.07L.37 8.58C0 9.71.7 10.65 1.86 10.65H7.3a3.2 3.2 0 0 0 2.84-2.07l1.67-5.16c.36-1.13-.3-2.07-1.46-2.07H4.91Zm.4 2.07L3.57 8.47h3.57l.36-1.12H5.4l.28-.91h1.75l.4-1.1H6.07l.3-.83h2l.36-1.1H5.27h.04Z" fill="currentColor"></path></svg> <font _mstmutation="1" _msttexthash="160004" _msthidden="1" _msthash="10">Enterprise</font></a></li> <li><a class="group flex items-center px-2 py-0.5 dark:text-gray-300 dark:hover:text-gray-100" href="https://huggingface.co/pricing" _msttexthash="4236310" _msthash="11">定价</a></li> <li><div class="relative group"><button class="px-2 py-0.5 hover:text-gray-500 dark:hover:text-gray-600 flex items-center " type="button"><svg class=" text-gray-500 w-5 group-hover:text-gray-400 dark:text-gray-300 dark:group-hover:text-gray-100" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" viewBox="0 0 32 18" preserveAspectRatio="xMidYMid meet"><path fill-rule="evenodd" clip-rule="evenodd" d="M14.4504 3.30221C14.4504 2.836 14.8284 2.45807 15.2946 2.45807H28.4933C28.9595 2.45807 29.3374 2.836 29.3374 3.30221C29.3374 3.76842 28.9595 4.14635 28.4933 4.14635H15.2946C14.8284 4.14635 14.4504 3.76842 14.4504 3.30221Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M14.4504 9.00002C14.4504 8.53382 14.8284 8.15588 15.2946 8.15588H28.4933C28.9595 8.15588 29.3374 8.53382 29.3374 9.00002C29.3374 9.46623 28.9595 9.84417 28.4933 9.84417H15.2946C14.8284 9.84417 14.4504 9.46623 14.4504 9.00002Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M14.4504 14.6978C14.4504 14.2316 14.8284 13.8537 15.2946 13.8537H28.4933C28.9595 13.8537 29.3374 14.2316 29.3374 14.6978C29.3374 15.164 28.9595 15.542 28.4933 15.542H15.2946C14.8284 15.542 14.4504 15.164 14.4504 14.6978Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M1.94549 6.87377C2.27514 6.54411 2.80962 6.54411 3.13928 6.87377L6.23458 9.96907L9.32988 6.87377C9.65954 6.54411 10.194 6.54411 10.5237 6.87377C10.8533 7.20343 10.8533 7.73791 10.5237 8.06756L6.23458 12.3567L1.94549 8.06756C1.61583 7.73791 1.61583 7.20343 1.94549 6.87377Z" fill="currentColor"></path></svg> </button> </div></li> <li><hr class="h-5 w-0.5 border-none bg-gray-100 dark:bg-gray-800"></li> <li><form action="https://huggingface.co/logout" method="POST" class="hidden"><input type="hidden" name="csrf" value="eyJkYXRhIjp7ImV4cGlyYXRpb24iOjE3NTExMTM2MDE4NjgsInVzZXJJZCI6IjY4NWU4ZDA4ZGViZTY3YTdkNWRmM2EzYyJ9LCJzaWduYXR1cmUiOiI1MGNkYTRkZjAxMmEzMGE1ZjFjYTRiNjI2ZDhkNmVjYTdiOTk2NjZjODg4NzI2YzhmNmM1NGYwODZmMzU2YmM1In0="></form> <div class="relative ml-2 w-[1.38rem] h-[1.38rem] "><button class="ml-auto rounded-full ring-2 group ring-indigo-400 focus:ring-blue-500 hover:ring-offset-1 focus:ring-offset-1 focus:outline-hidden outline-hidden dark:ring-offset-gray-950 " type="button"><div class="relative"><img alt="" class="h-[1.38rem] w-[1.38rem] overflow-hidden rounded-full" src="./app_files/g3tagzYkxuo017c8N_DEV.png" crossorigin="anonymous"> </div> </button> </div></li></ul></nav></div></header></div>
<div class="bg-linear-to-b py-3 text-sm md:text-base from-yellow-50 to-yellow-100 dark:from-yellow-500 dark:to-yellow-600 dark:text-gray-950 "><div class="container"><form class="flex flex-col justify-between md:flex-row md:items-center" action="https://huggingface.co/email_confirmation" method="post"><input type="hidden" name="csrf" value="eyJkYXRhIjp7ImV4cGlyYXRpb24iOjE3NTExMTM2MDE4NjgsInVzZXJJZCI6IjY4NWU4ZDA4ZGViZTY3YTdkNWRmM2EzYyJ9LCJzaWduYXR1cmUiOiI1MGNkYTRkZjAxMmEzMGE1ZjFjYTRiNjI2ZDhkNmVjYTdiOTk2NjZjODg4NzI2YzhmNmM1NGYwODZmMzU2YmM1In0=">
<div class="mb-2 md:mb-0" _msttexthash="102248055" _msthash="12">请检查您的电子邮件地址以获取确认链接</div>
<button class="btn text-sm" type="submit" _msttexthash="44144399" _msthash="13">重新发送确认电子邮件</button></form></div></div>
<div class="SVELTE_HYDRATER contents" data-target="SSOBanner" data-props="{&quot;organizations&quot;:[]}"></div>
<main class="flex flex-1 flex-col"><div class="SVELTE_HYDRATER contents" data-target="SpaceHeader" data-props="{&quot;activeTab&quot;:&quot;files&quot;,&quot;authLight&quot;:{&quot;csrfToken&quot;:&quot;eyJkYXRhIjp7ImV4cGlyYXRpb24iOjE3NTExMTM2MDE4NjgsInVzZXJJZCI6IjY4NWU4ZDA4ZGViZTY3YTdkNWRmM2EzYyJ9LCJzaWduYXR1cmUiOiI1MGNkYTRkZjAxMmEzMGE1ZjFjYTRiNjI2ZDhkNmVjYTdiOTk2NjZjODg4NzI2YzhmNmM1NGYwODZmMzU2YmM1In0=&quot;,&quot;hasHfLevelAccess&quot;:false,&quot;u&quot;:{&quot;avatarUrl&quot;:&quot;https://cdn-avatars.huggingface.co/v1/production/uploads/no-auth/g3tagzYkxuo017c8N_DEV.png&quot;,&quot;isPro&quot;:false,&quot;orgs&quot;:[],&quot;user&quot;:&quot;fugui11&quot;,&quot;canPost&quot;:false,&quot;canHaveBilling&quot;:true,&quot;canCreateOrg&quot;:true,&quot;theme&quot;:&quot;light&quot;,&quot;notifications&quot;:{},&quot;hardwareItems&quot;:[],&quot;hardwareItemsPrivate&quot;:false,&quot;usage&quot;:{&quot;storage&quot;:{&quot;used&quot;:0,&quot;usedPrivate&quot;:0,&quot;usedPublic&quot;:0,&quot;count&quot;:0,&quot;limit&quot;:100000000000},&quot;inference&quot;:{&quot;usedNanoUsd&quot;:0,&quot;numRequests&quot;:0,&quot;providerDetails&quot;:[],&quot;periodEnd&quot;:&quot;2025-06-30T23:59:59.999Z&quot;,&quot;periodStart&quot;:&quot;2025-06-01T00:00:00.000Z&quot;,&quot;includedNanoUsd&quot;:100000000,&quot;limitNanoUsd&quot;:100000000,&quot;lastUpdated&quot;:&quot;2025-06-27T12:26:38.142Z&quot;},&quot;zeroGpu&quot;:{&quot;base&quot;:300,&quot;current&quot;:300,&quot;lastUpdated&quot;:&quot;2025-06-27T12:26:38.142Z&quot;}},&quot;xetWaitlist&quot;:{&quot;status&quot;:&quot;in&quot;,&quot;acceptedAt&quot;:&quot;2025-06-27T12:22:32.035Z&quot;,&quot;joinedAt&quot;:&quot;2025-06-27T12:22:32.035Z&quot;},&quot;welcomeLinks&quot;:[]}},&quot;author&quot;:{&quot;_id&quot;:&quot;66546f0c7473f3c2570150aa&quot;,&quot;avatarUrl&quot;:&quot;/avatars/47c2e8ac534baac0840ae9409276453b.svg&quot;,&quot;fullname&quot;:&quot;llzzyy&quot;,&quot;name&quot;:&quot;llzzyy233&quot;,&quot;type&quot;:&quot;user&quot;,&quot;isPro&quot;:false,&quot;isHf&quot;:false,&quot;isHfAdmin&quot;:false,&quot;isMod&quot;:false,&quot;isUserFollowing&quot;:false},&quot;canDisable&quot;:false,&quot;canReadRepoSettings&quot;:false,&quot;canWriteRepoSettings&quot;:false,&quot;discussionsStats&quot;:{&quot;closed&quot;:0,&quot;open&quot;:0,&quot;total&quot;:0},&quot;query&quot;:{},&quot;space&quot;:{&quot;author&quot;:&quot;llzzyy233&quot;,&quot;colorFrom&quot;:&quot;indigo&quot;,&quot;colorTo&quot;:&quot;green&quot;,&quot;cardData&quot;:{&quot;title&quot;:&quot;Defect Detection&quot;,&quot;emoji&quot;:&quot;🏆&quot;,&quot;colorFrom&quot;:&quot;indigo&quot;,&quot;colorTo&quot;:&quot;green&quot;,&quot;sdk&quot;:&quot;gradio&quot;,&quot;sdk_version&quot;:&quot;4.38.1&quot;,&quot;app_file&quot;:&quot;app.py&quot;,&quot;pinned&quot;:false,&quot;license&quot;:&quot;mit&quot;},&quot;createdAt&quot;:&quot;2024-07-21T05:46:19.000Z&quot;,&quot;emoji&quot;:&quot;🏆&quot;,&quot;discussionsDisabled&quot;:false,&quot;duplicationDisabled&quot;:false,&quot;id&quot;:&quot;llzzyy233/Defect_detection&quot;,&quot;isLikedByUser&quot;:false,&quot;watched&quot;:{&quot;isWatching&quot;:false,&quot;isMuted&quot;:false,&quot;mode&quot;:&quot;none&quot;},&quot;lastModified&quot;:&quot;2024-11-07T11:24:05.000Z&quot;,&quot;likes&quot;:1,&quot;pinned&quot;:false,&quot;private&quot;:false,&quot;gated&quot;:false,&quot;repoType&quot;:&quot;space&quot;,&quot;subdomain&quot;:&quot;llzzyy233-defect-detection&quot;,&quot;sdk&quot;:&quot;gradio&quot;,&quot;sdkVersion&quot;:&quot;4.38.1&quot;,&quot;title&quot;:&quot;Defect Detection&quot;,&quot;runtime&quot;:{&quot;stage&quot;:&quot;RUNNING&quot;,&quot;hardware&quot;:{&quot;current&quot;:&quot;cpu-basic&quot;,&quot;requested&quot;:&quot;cpu-basic&quot;},&quot;storage&quot;:null,&quot;gcTimeout&quot;:172800,&quot;replicas&quot;:{&quot;current&quot;:1,&quot;requested&quot;:1},&quot;devMode&quot;:false,&quot;domains&quot;:[{&quot;domain&quot;:&quot;llzzyy233-defect-detection.hf.space&quot;,&quot;stage&quot;:&quot;READY&quot;}],&quot;sha&quot;:&quot;a80c25e35a7122d6c527944f6106e25987ceb351&quot;},&quot;iframe&quot;:{&quot;embedSrc&quot;:&quot;https://llzzyy233-defect-detection.hf.space&quot;,&quot;src&quot;:&quot;https://llzzyy233-defect-detection.hf.space&quot;},&quot;secrets&quot;:[],&quot;variables&quot;:[],&quot;sse&quot;:{&quot;status&quot;:{&quot;url&quot;:&quot;https://huggingface.co/api/spaces/llzzyy233/Defect_detection/events&quot;},&quot;liveMetrics&quot;:{&quot;url&quot;:&quot;https://huggingface.co/api/spaces/llzzyy233/Defect_detection/metrics&quot;}},&quot;linkedModels&quot;:[{&quot;author&quot;:&quot;Ultralytics&quot;,&quot;authorData&quot;:{&quot;avatarUrl&quot;:&quot;https://cdn-avatars.huggingface.co/v1/production/uploads/60ad037a306d6873ec42d537/iusy6Ia8JeCK-ui4z-kjE.png&quot;,&quot;fullname&quot;:&quot;Ultralytics&quot;,&quot;name&quot;:&quot;Ultralytics&quot;,&quot;type&quot;:&quot;org&quot;,&quot;isHf&quot;:false,&quot;isHfAdmin&quot;:false,&quot;isMod&quot;:false,&quot;isEnterprise&quot;:false,&quot;followerCount&quot;:241},&quot;downloads&quot;:912,&quot;gated&quot;:false,&quot;id&quot;:&quot;Ultralytics/YOLOv5&quot;,&quot;availableInferenceProviders&quot;:[],&quot;lastModified&quot;:&quot;2025-01-11T19:23:30.000Z&quot;,&quot;likes&quot;:2,&quot;pipeline_tag&quot;:&quot;object-detection&quot;,&quot;private&quot;:false,&quot;repoType&quot;:&quot;model&quot;,&quot;isLikedByUser&quot;:false}],&quot;linkedDatasets&quot;:[{&quot;author&quot;:&quot;ylecun&quot;,&quot;downloads&quot;:32728,&quot;gated&quot;:false,&quot;id&quot;:&quot;ylecun/mnist&quot;,&quot;lastModified&quot;:&quot;2024-08-08T06:07:00.000Z&quot;,&quot;datasetsServerInfo&quot;:{&quot;viewer&quot;:&quot;viewer&quot;,&quot;numRows&quot;:70000,&quot;libraries&quot;:[&quot;datasets&quot;,&quot;pandas&quot;,&quot;mlcroissant&quot;,&quot;polars&quot;],&quot;formats&quot;:[&quot;parquet&quot;],&quot;modalities&quot;:[&quot;image&quot;]},&quot;private&quot;:false,&quot;repoType&quot;:&quot;dataset&quot;,&quot;likes&quot;:178,&quot;isLikedByUser&quot;:false}],&quot;linkedCollections&quot;:[],&quot;sha&quot;:&quot;a80c25e35a7122d6c527944f6106e25987ceb351&quot;,&quot;hasBlockedOids&quot;:false,&quot;region&quot;:&quot;us&quot;,&quot;tags&quot;:[&quot;gradio&quot;,&quot;region:us&quot;],&quot;xetEnabled&quot;:false},&quot;u&quot;:{&quot;avatarUrl&quot;:&quot;https://cdn-avatars.huggingface.co/v1/production/uploads/no-auth/g3tagzYkxuo017c8N_DEV.png&quot;,&quot;isPro&quot;:false,&quot;fullname&quot;:&quot;fugui&quot;,&quot;user&quot;:&quot;fugui11&quot;,&quot;orgs&quot;:[],&quot;signup&quot;:{&quot;github&quot;:&quot;fugui&quot;,&quot;twitter&quot;:&quot;fugui&quot;,&quot;linkedin&quot;:&quot;fugui&quot;},&quot;isHf&quot;:false,&quot;isMod&quot;:false,&quot;type&quot;:&quot;user&quot;,&quot;theme&quot;:&quot;light&quot;,&quot;canPay&quot;:false,&quot;spacesAvailableFlavors&quot;:[&quot;cpu-basic&quot;,&quot;cpu-upgrade&quot;,&quot;zero-a10g&quot;,&quot;t4-small&quot;,&quot;t4-medium&quot;,&quot;l4x1&quot;,&quot;l4x4&quot;,&quot;l40sx1&quot;,&quot;l40sx4&quot;,&quot;l40sx8&quot;,&quot;a10g-small&quot;,&quot;a10g-large&quot;,&quot;a10g-largex2&quot;,&quot;a10g-largex4&quot;,&quot;a100-large&quot;],&quot;canPost&quot;:false},&quot;sessionUuid&quot;:&quot;8SFNB15uWuyD7HUTBWGeL&quot;}"><header class="bg-linear-to-t border-b border-gray-100 pt-4 xl:pt-0 from-gray-50-to-white via-white dark:via-gray-950"><div class="container relative flex flex-col xl:flex-row"><h1 class="flex flex-wrap items-center max-md:leading-tight gap-y-1 text-lg xl:flex-none"><a href="https://huggingface.co/spaces" class="group flex items-center"><svg class="sm:mr-1 false text-gray-400" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M7.80914 18.7462V24.1907H13.2536V18.7462H7.80914Z" fill="#FF3270"></path><path d="M18.7458 18.7462V24.1907H24.1903V18.7462H18.7458Z" fill="#861FFF"></path><path d="M7.80914 7.80982V13.2543H13.2536V7.80982H7.80914Z" fill="#097EFF"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M4 6.41775C4 5.08246 5.08246 4 6.41775 4H14.6457C15.7626 4 16.7026 4.75724 16.9802 5.78629C18.1505 4.67902 19.7302 4 21.4685 4C25.0758 4 28.0003 6.92436 28.0003 10.5317C28.0003 12.27 27.3212 13.8497 26.2139 15.02C27.243 15.2977 28.0003 16.2376 28.0003 17.3545V25.5824C28.0003 26.9177 26.9177 28.0003 25.5824 28.0003H17.0635H14.9367H6.41775C5.08246 28.0003 4 26.9177 4 25.5824V15.1587V14.9367V6.41775ZM7.80952 7.80952V13.254H13.254V7.80952H7.80952ZM7.80952 24.1907V18.7462H13.254V24.1907H7.80952ZM18.7462 24.1907V18.7462H24.1907V24.1907H18.7462ZM18.7462 10.5317C18.7462 9.0283 19.9651 7.80952 21.4685 7.80952C22.9719 7.80952 24.1907 9.0283 24.1907 10.5317C24.1907 12.0352 22.9719 13.254 21.4685 13.254C19.9651 13.254 18.7462 12.0352 18.7462 10.5317Z" fill="black"></path><path d="M21.4681 7.80982C19.9647 7.80982 18.7458 9.02861 18.7458 10.5321C18.7458 12.0355 19.9647 13.2543 21.4681 13.2543C22.9715 13.2543 24.1903 12.0355 24.1903 10.5321C24.1903 9.02861 22.9715 7.80982 21.4681 7.80982Z" fill="#FFD702"></path></svg> <span class="mr-2.5 font-semibold text-gray-400 group-hover:text-gray-500 max-sm:hidden" _msttexthash="14486368" _msthash="14">空间:</span></a> <hr class="mx-1.5 h-2 translate-y-px rounded-sm border-r dark:border-gray-600 sm:hidden"> <div class="group flex flex-none items-center"><div class="relative mr-1 flex items-center"> <span class="inline-block "><span class="contents"><a href="https://huggingface.co/llzzyy233" class="text-gray-400 hover:text-blue-600"><img alt="" class="size-3.5 rounded-full flex-none" src="./app_files/47c2e8ac534baac0840ae9409276453b.svg" crossorigin="anonymous"></a></span> </span></div> <span class="inline-block "><span class="contents"><a href="https://huggingface.co/llzzyy233" class="text-gray-400 hover:text-blue-600" _msttexthash="115050" _msthash="15">llzzyy233</a></span> </span> <div class="mx-0.5 text-gray-300">/</div></div> <div class="max-w-full xl:flex xl:min-w-0 xl:flex-nowrap xl:items-center xl:gap-x-1"><a class="break-words font-mono font-semibold hover:text-blue-600 text-[1.07rem] xl:truncate" href="https://huggingface.co/spaces/llzzyy233/Defect_detection" _msttexthash="315289" _msthash="16">Defect_detection</a> <button class="text-xs mr-3 focus:outline-hidden inline-flex cursor-pointer items-center text-sm mx-0.5 text-gray-600 " title="Copy space name to clipboard" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> </button></div> <div class="inline-flex items-center overflow-hidden whitespace-nowrap rounded-md border bg-white text-sm leading-none text-gray-500 mr-2"><button class="relative flex items-center overflow-hidden from-red-50 to-transparent dark:from-red-900 px-1.5 py-1 hover:bg-linear-to-t focus:outline-hidden" title="Like"><svg class="left-1.5 absolute" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32" fill="currentColor"><path d="M22.45,6a5.47,5.47,0,0,1,3.91,1.64,5.7,5.7,0,0,1,0,8L16,26.13,5.64,15.64a5.7,5.7,0,0,1,0-8,5.48,5.48,0,0,1,7.82,0L16,10.24l2.53-2.58A5.44,5.44,0,0,1,22.45,6m0-2a7.47,7.47,0,0,0-5.34,2.24L16,7.36,14.89,6.24a7.49,7.49,0,0,0-10.68,0,7.72,7.72,0,0,0,0,10.82L16,29,27.79,17.06a7.72,7.72,0,0,0,0-10.82A7.49,7.49,0,0,0,22.45,4Z"></path></svg> <svg class="absolute text-red-500 origin-center transform transition-transform ease-in
translate-y-10 scale-0
left-1.5 " xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32" fill="currentColor"><path d="M22.5,4c-2,0-3.9,0.8-5.3,2.2L16,7.4l-1.1-1.1C12,3.3,7.2,3.3,4.3,6.2c0,0-0.1,0.1-0.1,0.1c-3,3-3,7.8,0,10.8L16,29l11.8-11.9c3-3,3-7.8,0-10.8C26.4,4.8,24.5,4,22.5,4z"></path></svg> <span class="ml-4 pl-0.5 " _msttexthash="4846660" _msthash="17">喜欢</span></button> <button class="focus:outline-hidden flex items-center border-l px-1.5 py-1 text-gray-400 hover:bg-gray-50 focus:bg-gray-100 dark:hover:bg-gray-900 dark:focus:bg-gray-800" title="See users who liked this repository" _msttexthash="4459" _msthash="18">1</button></div> <span class="inline-block "><span class="contents"><div class="cursor-pointer select-none overflow-hidden font-mono text-xs shrink-0 mr-2 flex items-center rounded-lg border leading-none dark:bg-gray-900
border-green-100
text-green-700 dark:text-green-500"><div class="inline-flex items-center px-2 py-[0.32rem] dark:bg-gray-900 border-green-100 bg-green-50 hover:bg-green-100/70 hover:text-green-800 dark:hover:text-green-400"><div class="ml-0.5 mr-1.5 inline-block h-1.5 w-1.5 animate-pulse rounded-full bg-green-500"></div> <font _mstmutation="1" _msttexthash="6979024" _msthash="19">运行</font> </div> </div></span> </span> <div class="sm:hidden"><div class="relative "><button class="btn px-1 py-1 text-sm translate-y-0 " type="button"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="p-px" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><circle cx="16" cy="7" r="3" fill="currentColor"></circle><circle cx="16" cy="16" r="3" fill="currentColor"></circle><circle cx="16" cy="25" r="3" fill="currentColor"></circle></svg> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" class="absolute right-[-0.25rem] bottom-[-0.25rem] rounded-xs bg-gray-50 p-px text-[0.85rem] text-gray-500 dark:bg-gray-925" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 12 12"><path fill="currentColor" d="M7.975 3.489a.438.438 0 0 1 0 .618L4.262 7.82a.416.416 0 0 1-.307.126.427.427 0 0 1-.311-.126.438.438 0 0 1 0-.618L7.357 3.49a.438.438 0 0 1 .618 0ZM6.427 8.132 4.88 9.675a2.17 2.17 0 0 1-3.09 0 2.188 2.188 0 0 1 0-3.09l1.542-1.548a.437.437 0 0 0-.618-.619L1.166 5.966a3.063 3.063 0 0 0 4.332 4.332L7.046 8.75a.438.438 0 0 0-.619-.618Zm4.026-7.121a3.063 3.063 0 0 0-4.332 0L4.573 2.559a.438.438 0 0 0 .618.618L6.74 1.635a2.171 2.171 0 0 1 3.09 0 2.188 2.188 0 0 1 0 3.09L8.287 6.273a.432.432 0 0 0 0 .618.421.421 0 0 0 .475.097.438.438 0 0 0 .143-.097l1.548-1.548a3.068 3.068 0 0 0 0-4.332Z"></path></svg> </button> </div></div> </h1> <div class="flex flex-col-reverse gap-x-2 sm:flex-row sm:items-center sm:justify-between xl:ml-auto"><div class="-mb-px flex h-12 items-center overflow-x-auto overflow-y-hidden sm:h-[3.25rem]"> <a class="tab-alternate" href="https://huggingface.co/spaces/llzzyy233/Defect_detection"><svg class="mr-1.5 text-gray-400 flex-none" style="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path class="uim-quaternary" d="M20.23 7.24L12 12L3.77 7.24a1.98 1.98 0 0 1 .7-.71L11 2.76c.62-.35 1.38-.35 2 0l6.53 3.77c.29.173.531.418.7.71z" opacity=".25" fill="currentColor"></path><path class="uim-tertiary" d="M12 12v9.5a2.09 2.09 0 0 1-.91-.21L4.5 17.48a2.003 2.003 0 0 1-1-1.73v-7.5a2.06 2.06 0 0 1 .27-1.01L12 12z" opacity=".5" fill="currentColor"></path><path class="uim-primary" d="M20.5 8.25v7.5a2.003 2.003 0 0 1-1 1.73l-6.62 3.82c-.275.13-.576.198-.88.2V12l8.23-4.76c.175.308.268.656.27 1.01z" fill="currentColor"></path></svg> <font _mstmutation="1" _msttexthash="12124801" _msthash="20">应用程序</font> </a><a class="tab-alternate active" href="https://huggingface.co/spaces/llzzyy233/Defect_detection/tree/main"><svg class="mr-1.5 text-gray-400 flex-none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path class="uim-tertiary" d="M21 19h-8a1 1 0 0 1 0-2h8a1 1 0 0 1 0 2zm0-4h-8a1 1 0 0 1 0-2h8a1 1 0 0 1 0 2zm0-8h-8a1 1 0 0 1 0-2h8a1 1 0 0 1 0 2zm0 4h-8a1 1 0 0 1 0-2h8a1 1 0 0 1 0 2z" opacity=".5" fill="currentColor"></path><path class="uim-primary" d="M9 19a1 1 0 0 1-1-1V6a1 1 0 0 1 2 0v12a1 1 0 0 1-1 1zm-6-4.333a1 1 0 0 1-.64-1.769L3.438 12l-1.078-.898a1 1 0 0 1 1.28-1.538l2 1.667a1 1 0 0 1 0 1.538l-2 1.667a.999.999 0 0 1-.64.231z" fill="currentColor"></path></svg> <span class="xl:hidden" _msttexthash="59501" _msthidden="1" _msthash="21">Files</span> <span class="hidden xl:inline" _msttexthash="4467437" _msthash="22">文件</span> </a><a class="tab-alternate" href="https://huggingface.co/spaces/llzzyy233/Defect_detection/discussions"><svg class="mr-1.5 text-gray-400 flex-none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M20.6081 3C21.7684 3 22.8053 3.49196 23.5284 4.38415C23.9756 4.93678 24.4428 5.82749 24.4808 7.16133C24.9674 7.01707 25.4353 6.93643 25.8725 6.93643C26.9833 6.93643 27.9865 7.37587 28.696 8.17411C29.6075 9.19872 30.0124 10.4579 29.8361 11.7177C29.7523 12.3177 29.5581 12.8555 29.2678 13.3534C29.8798 13.8646 30.3306 14.5763 30.5485 15.4322C30.719 16.1032 30.8939 17.5006 29.9808 18.9403C30.0389 19.0342 30.0934 19.1319 30.1442 19.2318C30.6932 20.3074 30.7283 21.5229 30.2439 22.6548C29.5093 24.3704 27.6841 25.7219 24.1397 27.1727C21.9347 28.0753 19.9174 28.6523 19.8994 28.6575C16.9842 29.4379 14.3477 29.8345 12.0653 29.8345C7.87017 29.8345 4.8668 28.508 3.13831 25.8921C0.356375 21.6797 0.754104 17.8269 4.35369 14.1131C6.34591 12.058 7.67023 9.02782 7.94613 8.36275C8.50224 6.39343 9.97271 4.20438 12.4172 4.20438H12.4179C12.6236 4.20438 12.8314 4.2214 13.0364 4.25468C14.107 4.42854 15.0428 5.06476 15.7115 6.02205C16.4331 5.09583 17.134 4.359 17.7682 3.94323C18.7242 3.31737 19.6794 3 20.6081 3ZM20.6081 5.95917C20.2427 5.95917 19.7963 6.1197 19.3039 6.44225C17.7754 7.44319 14.8258 12.6772 13.7458 14.7131C13.3839 15.3952 12.7655 15.6837 12.2086 15.6837C11.1036 15.6837 10.2408 14.5497 12.1076 13.1085C14.9146 10.9402 13.9299 7.39584 12.5898 7.1776C12.5311 7.16799 12.4731 7.16355 12.4172 7.16355C11.1989 7.16355 10.6615 9.33114 10.6615 9.33114C10.6615 9.33114 9.0863 13.4148 6.38031 16.206C3.67434 18.998 3.5346 21.2388 5.50675 24.2246C6.85185 26.2606 9.42666 26.8753 12.0653 26.8753C14.8021 26.8753 17.6077 26.2139 19.1799 25.793C19.2574 25.7723 28.8193 22.984 27.6081 20.6107C27.4046 20.212 27.0693 20.0522 26.6471 20.0522C24.9416 20.0522 21.8393 22.6726 20.5057 22.6726C20.2076 22.6726 19.9976 22.5416 19.9116 22.222C19.3433 20.1173 28.552 19.2325 27.7758 16.1839C27.639 15.6445 27.2677 15.4256 26.746 15.4263C24.4923 15.4263 19.4358 19.5181 18.3759 19.5181C18.2949 19.5181 18.2368 19.4937 18.2053 19.4419C17.6743 18.557 17.9653 17.9394 21.7082 15.6009C25.4511 13.2617 28.0783 11.8545 26.5841 10.1752C26.4121 9.98141 26.1684 9.8956 25.8725 9.8956C23.6001 9.89634 18.2311 14.9403 18.2311 14.9403C18.2311 14.9403 16.7821 16.496 15.9057 16.496C15.7043 16.496 15.533 16.4139 15.4169 16.2112C14.7956 15.1296 21.1879 10.1286 21.5484 8.06535C21.7928 6.66715 21.3771 5.95917 20.6081 5.95917Z" fill="#FF9D00"></path><path d="M5.50686 24.2246C3.53472 21.2387 3.67446 18.9979 6.38043 16.206C9.08641 13.4147 10.6615 9.33111 10.6615 9.33111C10.6615 9.33111 11.2499 6.95933 12.59 7.17757C13.93 7.39581 14.9139 10.9401 12.1069 13.1084C9.29997 15.276 12.6659 16.7489 13.7459 14.713C14.8258 12.6772 17.7747 7.44316 19.304 6.44221C20.8326 5.44128 21.9089 6.00204 21.5484 8.06532C21.188 10.1286 14.795 15.1295 15.4171 16.2118C16.0391 17.2934 18.2312 14.9402 18.2312 14.9402C18.2312 14.9402 25.0907 8.49588 26.5842 10.1752C28.0776 11.8545 25.4512 13.2616 21.7082 15.6008C17.9646 17.9393 17.6744 18.557 18.2054 19.4418C18.7372 20.3266 26.9998 13.1351 27.7759 16.1838C28.5513 19.2324 19.3434 20.1173 19.9117 22.2219C20.48 24.3274 26.3979 18.2382 27.6082 20.6107C28.8193 22.9839 19.2574 25.7722 19.18 25.7929C16.0914 26.62 8.24723 28.3726 5.50686 24.2246Z" fill="#FFD21E"></path></svg> <font _mstmutation="1" _msttexthash="5040282" _msthash="23">社区</font> </a></div> <div class="hidden sm:block mt-2 lg:mt-0"><div class="relative "><button class="btn px-1 py-1 text-base translate-y-px " type="button"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="p-0.5" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><circle cx="16" cy="7" r="3" fill="currentColor"></circle><circle cx="16" cy="16" r="3" fill="currentColor"></circle><circle cx="16" cy="25" r="3" fill="currentColor"></circle></svg> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" focusable="false" role="img" class="absolute right-[-0.18rem] bottom-[-0.18rem] rounded-xs bg-gray-50 p-px text-[0.85rem] text-gray-500 dark:bg-gray-925" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 12 12"><path fill="currentColor" d="M7.975 3.489a.438.438 0 0 1 0 .618L4.262 7.82a.416.416 0 0 1-.307.126.427.427 0 0 1-.311-.126.438.438 0 0 1 0-.618L7.357 3.49a.438.438 0 0 1 .618 0ZM6.427 8.132 4.88 9.675a2.17 2.17 0 0 1-3.09 0 2.188 2.188 0 0 1 0-3.09l1.542-1.548a.437.437 0 0 0-.618-.619L1.166 5.966a3.063 3.063 0 0 0 4.332 4.332L7.046 8.75a.438.438 0 0 0-.619-.618Zm4.026-7.121a3.063 3.063 0 0 0-4.332 0L4.573 2.559a.438.438 0 0 0 .618.618L6.74 1.635a2.171 2.171 0 0 1 3.09 0 2.188 2.188 0 0 1 0 3.09L8.287 6.273a.432.432 0 0 0 0 .618.421.421 0 0 0 .475.097.438.438 0 0 0 .143-.097l1.548-1.548a3.068 3.068 0 0 0 0-4.332Z"></path></svg> </button> </div></div> </div></div></header> <div class="spinner-overlay fixed inset-0 z-50 flex h-full w-full items-center justify-center overflow-y-auto bg-gray-500 text-white opacity-80 hidden" _msthidden="1"><svg class="animate-spin -ml-1 mr-3 h-5 w-5 text-white" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" fill="none" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg> <span _msttexthash="1601912" _msthidden="1" _msthash="24">Fetching metadata from the HF Docker repository...</span></div> </div>
<div class="container relative flex flex-col md:grid md:space-y-0 w-full md:grid-cols-12 space-y-4 md:gap-6 mb-16"><section class="pt-8 border-gray-100 col-span-full"><div class="SVELTE_HYDRATER contents" data-target="CommitFormEdit" data-props="{&quot;canWrite&quot;:false,&quot;filename&quot;:&quot;&quot;,&quot;devModeEnabled&quot;:false,&quot;isNew&quot;:true,&quot;path&quot;:&quot;&quot;,&quot;repoName&quot;:&quot;llzzyy233/Defect_detection&quot;,&quot;repoType&quot;:&quot;space&quot;,&quot;rev&quot;:&quot;main&quot;,&quot;refs&quot;:{&quot;branches&quot;:[{&quot;name&quot;:&quot;main&quot;,&quot;ref&quot;:&quot;refs/heads/main&quot;,&quot;targetCommit&quot;:&quot;a80c25e35a7122d6c527944f6106e25987ceb351&quot;}],&quot;tags&quot;:[],&quot;converts&quot;:[]},&quot;latestCommit&quot;:&quot;a80c25e35a7122d6c527944f6106e25987ceb351&quot;,&quot;query&quot;:{},&quot;adminWrite&quot;:false}"><form><div class="flex items-center"><label for="rfilename" class="mr-2 flex-none"><font _mstmutation="1" _msttexthash="315289" _msthash="25">Defect_detection</font>/</label> <input autocomplete="off" class="form-input mt-0! py-1.5" name="filename" placeholder="为文件命名" type="text" required="" _mstplaceholder="207441" _msthash="26"></div> <div class="mt-6 overflow-hidden rounded-lg border border-gray-200"><div class="from-gray-100-to-white bg-linear-to-t flex items-center"><div class="flex h-9 items-center justify-between border-b border-gray-200 from-gray-100-to-white bg-linear-to-t"><div class="flex h-full items-stretch"><button class="tab active" type="button" _msttexthash="6782906" _msthash="27">编辑</button><button class="tab " type="button" _msttexthash="7221292" _msthash="28">预览</button></div> <div></div></div> <button class="ml-auto pr-3 text-xs focus:outline-hidden inline-flex cursor-pointer items-center justify-center text-sm mx-0.5 " type="button"><svg class="opacity-40" width="1em" height="1em" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.75 1.25H11.25M0.75 5H9C9.75 5 11.25 5.375 11.25 6.875C11.25 8.375 9.99975 8.75 9.375 8.75H6M6 8.75L7.5 7.25M6 8.75L7.5 10.25M0.75 8.75H3.75" stroke="currentColor" stroke-width="1.125" stroke-linecap="round" stroke-linejoin="round"></path></svg></button></div> <div class="py-2"> <div class="codemirror-wrapper -my-2"><div class="cm-editor ͼ1 ͼ2 ͼ4"><div class="cm-announced" aria-live="polite"></div><div tabindex="-1" class="cm-scroller"><div class="cm-gutters" aria-hidden="true" style="min-height: 1380px; position: sticky;"><div class="cm-gutter cm-lineNumbers"><div class="cm-gutterElement" _msttexthash="11115" _msthidden="1" _msthash="29" style="height: 0px; visibility: hidden; pointer-events: none;">99</div><div class="cm-gutterElement" _msttexthash="4459" _msthash="30" style="height: 19.6px; margin-top: 4px;">1</div><div class="cm-gutterElement" _msttexthash="4550" _msthash="43" style="height: 19.6px;">2</div><div class="cm-gutterElement" _msttexthash="4641" _msthash="44" style="height: 19.6px;">3</div><div class="cm-gutterElement" _msttexthash="4732" _msthash="45" style="height: 19.6px;">4</div><div class="cm-gutterElement" _msttexthash="4823" _msthash="46" style="height: 19.6px;">5</div><div class="cm-gutterElement" _msttexthash="4914" _msthash="47" style="height: 19.6px;">6</div><div class="cm-gutterElement" _msttexthash="5005" _msthash="48" style="height: 19.6px;">7</div><div class="cm-gutterElement" _msttexthash="5096" _msthash="49" style="height: 19.6px;">8</div><div class="cm-gutterElement" _msttexthash="5187" _msthash="50" style="height: 19.6px;">9</div><div class="cm-gutterElement" _msttexthash="9451" _msthash="51" style="height: 19.6px;">10</div><div class="cm-gutterElement" _msttexthash="9555" _msthash="52" style="height: 19.6px;">11</div><div class="cm-gutterElement" _msttexthash="9659" _msthash="53" style="height: 19.6px;">12</div><div class="cm-gutterElement" _msttexthash="9763" _msthash="54" style="height: 19.6px;">13</div><div class="cm-gutterElement" _msttexthash="9867" _msthash="55" style="height: 19.6px;">14</div><div class="cm-gutterElement" _msttexthash="9971" _msthash="56" style="height: 19.6px;">15</div><div class="cm-gutterElement" _msttexthash="10075" _msthash="57" style="height: 19.6px;">16</div><div class="cm-gutterElement" _msttexthash="10179" _msthash="58" style="height: 19.6px;">17</div><div class="cm-gutterElement" _msttexthash="10283" _msthash="59" style="height: 19.6px;">18</div><div class="cm-gutterElement" _msttexthash="10387" _msthash="60" style="height: 19.6px;">19</div><div class="cm-gutterElement" _msttexthash="9542" _msthash="61" style="height: 19.6px;">20</div><div class="cm-gutterElement" _msttexthash="9646" _msthash="62" style="height: 19.6px;">21</div><div class="cm-gutterElement" _msttexthash="9750" _msthash="63" style="height: 19.6px;">22</div><div class="cm-gutterElement" _msttexthash="9854" _msthash="64" style="height: 19.6px;">23</div><div class="cm-gutterElement" _msttexthash="9958" _msthash="65" style="height: 19.6px;">24</div><div class="cm-gutterElement" _msttexthash="10062" _msthash="66" style="height: 19.6px;">25</div><div class="cm-gutterElement" _msttexthash="10166" _msthash="67" style="height: 19.6px;">26</div><div class="cm-gutterElement" _msttexthash="10270" _msthash="68" style="height: 19.6px;">27</div><div class="cm-gutterElement" _msttexthash="10374" _msthash="69" style="height: 19.6px;">28</div><div class="cm-gutterElement" _msttexthash="10478" _msthash="70" style="height: 19.6px;">29</div><div class="cm-gutterElement" _msttexthash="9633" _msthash="71" style="height: 19.6px;">30</div><div class="cm-gutterElement" _msttexthash="9737" _msthash="72" style="height: 19.6px;">31</div><div class="cm-gutterElement" _msttexthash="9841" _msthash="73" style="height: 19.6px;">32</div><div class="cm-gutterElement" _msttexthash="9945" _msthash="74" style="height: 19.6px;">33</div><div class="cm-gutterElement" _msttexthash="10049" _msthash="75" style="height: 19.6px;">34</div><div class="cm-gutterElement" _msttexthash="10153" _msthash="76" style="height: 19.6px;">35</div><div class="cm-gutterElement" _msttexthash="10257" _msthash="77" style="height: 19.6px;">36</div><div class="cm-gutterElement cm-activeLineGutter" _msttexthash="10361" _msthash="78" style="height: 19.6px;">37</div><div class="cm-gutterElement" _msttexthash="10465" _msthash="79" style="height: 19.6px;">38</div><div class="cm-gutterElement" _msttexthash="10569" _msthash="80" style="height: 19.6px;">39</div><div class="cm-gutterElement" _msttexthash="9724" _msthash="81" style="height: 19.6px;">40</div><div class="cm-gutterElement" _msttexthash="9828" _msthash="82" style="height: 19.6px;">41</div><div class="cm-gutterElement" _msttexthash="9932" _msthash="83" style="height: 19.6px;">42</div><div class="cm-gutterElement" _msttexthash="10036" _msthash="84" style="height: 19.6px;">43</div><div class="cm-gutterElement" _msttexthash="10140" _msthash="85" style="height: 19.6px;">44</div><div class="cm-gutterElement" _msttexthash="10244" _msthash="86" style="height: 19.6px;">45</div><div class="cm-gutterElement" _msttexthash="10348" _msthash="87" style="height: 19.6px;">46</div><div class="cm-gutterElement" _msttexthash="10452" _msthash="88" style="height: 19.6px;">47</div><div class="cm-gutterElement" _msttexthash="10556" _msthash="89" style="height: 19.6px;">48</div><div class="cm-gutterElement" _msttexthash="10660" _msthash="90" style="height: 19.6px;">49</div><div class="cm-gutterElement" _msttexthash="9815" _msthash="91" style="height: 19.6px;">50</div><div class="cm-gutterElement" _msttexthash="9919" _msthash="92" style="height: 19.6px;">51</div><div class="cm-gutterElement" _msttexthash="10023" _msthash="93" style="height: 19.6px;">52</div><div class="cm-gutterElement" _msttexthash="10127" _msthash="94" style="height: 19.6px;">53</div><div class="cm-gutterElement" _msttexthash="10231" _msthash="95" style="height: 19.6px;">54</div><div class="cm-gutterElement" _msttexthash="10335" _msthash="96" style="height: 19.6px;">55</div><div class="cm-gutterElement" _msttexthash="10439" _msthash="97" style="height: 19.6px;">56</div><div class="cm-gutterElement" _msttexthash="10543" _msthash="98" style="height: 19.6px;">57</div><div class="cm-gutterElement" _msttexthash="10647" _msthash="99" style="height: 19.6px;">58</div><div class="cm-gutterElement" _msttexthash="10751" _msthash="100" style="height: 19.6px;">59</div><div class="cm-gutterElement" _msttexthash="9906" _msthash="101" style="height: 19.6px;">60</div><div class="cm-gutterElement" _msttexthash="10010" _msthash="102" style="height: 19.6px;">61</div><div class="cm-gutterElement" _msttexthash="10114" _msthash="103" style="height: 19.6px;">62</div><div class="cm-gutterElement" _msttexthash="10218" _msthash="104" style="height: 19.6px;">63</div><div class="cm-gutterElement" _msttexthash="10322" _msthash="105" style="height: 19.6px;">64</div><div class="cm-gutterElement" _msttexthash="10426" _msthash="106" style="height: 19.6px;">65</div><div class="cm-gutterElement" _msttexthash="10530" _msthash="107" style="height: 19.6px;">66</div><div class="cm-gutterElement" _msttexthash="10634" _msthash="108" style="height: 19.6px;">67</div><div class="cm-gutterElement" _msttexthash="10738" _msthash="109" style="height: 19.6px;">68</div><div class="cm-gutterElement" _msttexthash="10842" _msthash="110" style="height: 19.6px;">69</div><div class="cm-gutterElement" _msttexthash="9997" _msthash="111" style="height: 19.6px;">70</div></div><div class="cm-gutter cm-foldGutter"><div class="cm-gutterElement" style="height: 0px; visibility: hidden; pointer-events: none;"><span title="Unfold line" _msttexthash="750750" _msthash="31">›</span></div><div class="cm-gutterElement cm-activeLineGutter" style="height: 19.6px; margin-top: 709.6px;"></div></div></div><div spellcheck="false" autocorrect="off" autocapitalize="off" translate="no" contenteditable="true" style="tab-size: 4;" class="cm-content" role="textbox" aria-multiline="true" aria-autocomplete="list"><div class="cm-line">import gradio as gr</div><div class="cm-line">import torch</div><div class="cm-line">from PIL import Image</div><div class="cm-line">from ultralytics import YOLO</div><div class="cm-line">import matplotlib.pyplot as plt</div><div class="cm-line">import io</div><div class="cm-line">from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas</div><div class="cm-line">model = YOLO('detect-best.pt')</div><div class="cm-line"><br></div><div class="cm-line">def predict(img, conf, iou):</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> results = model.predict(img, conf=conf, iou=iou)</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> name = results[0].names</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> cls = results[0].boxes.cls</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> crazing = 0</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> inclusion = 0</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> patches = 0</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> pitted_surface = 0</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> rolled_inscale = 0</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> scratches = 0</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> for i in cls:</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> if i == 0:</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(12ch - 1px) no-repeat;"> crazing += 1</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> elif i == 1:</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(12ch - 1px) no-repeat;"> inclusion += 1</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> elif i == 2:</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(12ch - 1px) no-repeat;"> patches += 1</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> elif i == 3:</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(12ch - 1px) no-repeat;"> pitted_surface += 1</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> elif i == 4:</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(12ch - 1px) no-repeat;"> rolled_inscale += 1</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> elif i == 5:</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(12ch - 1px) no-repeat;"> scratches += 1</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> # 绘制柱状图</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> fig, ax = plt.subplots()</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> categories = ['1','2', '3' ,'4', '5' ,'6']</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> counts = [1,2,3,4,5,6]</div><div class="cm-activeLine cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> ax.bar<span class="cm-matchingBracket">(</span>categories, counts<span class="cm-matchingBracket">)</span></div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> ax.set_title('Category-Count')</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> plt.ylim(0,5)</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> plt.xticks(rotation=45, ha="right")</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> ax.set_xlabel('Category')</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> ax.set_ylabel('Count')</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> # 将图表保存为字节流</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> buf = io.BytesIO()</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> canvas = FigureCanvas(fig)</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> canvas.print_png(buf)</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> plt.close(fig) # 关闭图形,释放资源</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"><br></div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> # 将字节流转换为PIL Image</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> image_png = Image.open(buf)</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> # 绘制并返回结果图片和类别计数图表</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"><br></div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> for i, r in enumerate(results):</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> # Plot results image</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> im_bgr = r.plot() # BGR-order numpy array</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> im_rgb = Image.fromarray(im_bgr[..., ::-1]) # RGB-order PIL image</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"><br></div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(8ch - 1px) no-repeat;"> # Show results to screen (in supported environments)</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> return im_rgb</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"><br></div><div class="cm-line">base_conf, base_iou = 0.25, 0.45</div><div class="cm-line">title = "基于改进YOLOv8算法的工业瑕疵辅助检测系统"</div><div class="cm-line">des = "鼠标点击上传图片即可检测缺陷,可通过鼠标调整预测置信度,还可点击网页最下方示例图片进行预测"</div><div class="cm-line">interface = gr.Interface(</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> inputs=['image', gr.Slider(maximum=1, minimum=0, value=base_conf), gr.Slider(maximum=1, minimum=0, value=base_iou)],</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> outputs=["image"], fn=predict, title=title, description=des,</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(4ch - 1px) no-repeat;"> examples=[["example1.jpg", base_conf, base_iou],</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(14ch - 1px) no-repeat;"> ["example2.jpg", base_conf, base_iou],</div><div class="cm-indent-markers cm-line" style="--indent-markers: repeating-linear-gradient(to right, var(--indent-marker-bg-color) 0 1px, transparent 1px 2ch) 0.5ch/calc(14ch - 1px) no-repeat;"> ["example3.jpg", base_conf, base_iou]])</div><div class="cm-line">interface.launch()</div></div><div class="cm-layer cm-layer-above cm-cursorLayer" aria-hidden="true" style="z-index: 150; animation-duration: 1200ms; animation-name: cm-blink2;"><div class="cm-cursor cm-cursor-primary" style="left: 292.4px; top: 709.6px; height: 18.4px;"></div></div><div class="cm-layer cm-selectionLayer" aria-hidden="true" style="z-index: -2;"></div></div></div></div> <input class="hidden" name="content" type="hidden" required="" value="import gradio as gr
import torch
from PIL import Image
from ultralytics import YOLO
import matplotlib.pyplot as plt
import io
from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
model = YOLO(&#39;detect-best.pt&#39;)
def predict(img, conf, iou):
results = model.predict(img, conf=conf, iou=iou)
name = results[0].names
cls = results[0].boxes.cls
crazing = 0
inclusion = 0
patches = 0
pitted_surface = 0
rolled_inscale = 0
scratches = 0
for i in cls:
if i == 0:
crazing += 1
elif i == 1:
inclusion += 1
elif i == 2:
patches += 1
elif i == 3:
pitted_surface += 1
elif i == 4:
rolled_inscale += 1
elif i == 5:
scratches += 1
# 绘制柱状图
fig, ax = plt.subplots()
categories = [&#39;1&#39;,&#39;2&#39;, &#39;3&#39; ,&#39;4&#39;, &#39;5&#39; ,&#39;6&#39;]
counts = [1,2,3,4,5,6]
ax.bar(categories, counts)
ax.set_title(&#39;Category-Count&#39;)
plt.ylim(0,5)
plt.xticks(rotation=45, ha=&quot;right&quot;)
ax.set_xlabel(&#39;Category&#39;)
ax.set_ylabel(&#39;Count&#39;)
# 将图表保存为字节流
buf = io.BytesIO()
canvas = FigureCanvas(fig)
canvas.print_png(buf)
plt.close(fig) # 关闭图形,释放资源
# 将字节流转换为PIL Image
image_png = Image.open(buf)
# 绘制并返回结果图片和类别计数图表
for i, r in enumerate(results):
# Plot results image
im_bgr = r.plot() # BGR-order numpy array
im_rgb = Image.fromarray(im_bgr[..., ::-1]) # RGB-order PIL image
# Show results to screen (in supported environments)
return im_rgb
base_conf, base_iou = 0.25, 0.45
title = &quot;基于改进YOLOv8算法的工业瑕疵辅助检测系统&quot;
des = &quot;鼠标点击上传图片即可检测缺陷,可通过鼠标调整预测置信度,还可点击网页最下方示例图片进行预测&quot;
interface = gr.Interface(
inputs=[&#39;image&#39;, gr.Slider(maximum=1, minimum=0, value=base_conf), gr.Slider(maximum=1, minimum=0, value=base_iou)],
outputs=[&quot;image&quot;], fn=predict, title=title, description=des,
examples=[[&quot;example1.jpg&quot;, base_conf, base_iou],
[&quot;example2.jpg&quot;, base_conf, base_iou],
[&quot;example3.jpg&quot;, base_conf, base_iou]])
interface.launch()"> </div> <div class="space-y-4 border-t border-gray-200 p-4"><h2 class="font-semibold" _msttexthash="10960118" _msthash="32">提出更改</h2> <input autocomplete="off" class="form-input" name="summary" placeholder="创建新文件" type="text" disabled="" _mstplaceholder="229541" _msthash="33"> <div class="overflow-hidden rounded-lg border border-gray-200 bg-white "><div class="flex h-9 items-center justify-between border-b border-gray-200 from-gray-100-to-white bg-linear-to-t"><div class="flex h-full items-stretch"><button class="tab active" type="button" _msttexthash="6782906" _msthash="34">编辑</button><button class="tab " type="button" _msttexthash="7221292" _msthash="35">预览</button></div> <div></div></div> <div class="p-4"> <div class="contents"><textarea class="form-input peer relative !mt-0 min-h-[140px] w-full resize-none overflow-y-hidden !rounded-b-none !border-b-0 px-3 pb-3 pt-2 " placeholder="添加扩展描述..." rows="3" disabled="" _mstplaceholder="671216" _msthash="36" style="height: 138px;"></textarea> </div> <label class="border-t-1 flex cursor-default items-center rounded-b-lg border-b-2 border-l-2 border-r-2 border-gray-200 px-2.5 py-1.5 text-sm text-gray-400 shadow-sm cursor-not-allowed opacity-70"><svg class="flex-none text-sm mr-1.5 text-gray-300 dark:text-gray-500" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path fill="currentColor" d="M19 2H5a3.009 3.009 0 0 0-3 3v8.86l3.88-3.88a3.075 3.075 0 0 1 4.24 0l2.871 2.887l.888-.888a3.008 3.008 0 0 1 4.242 0L22 15.86V5a3.009 3.009 0 0 0-3-3z" opacity=".5"></path><path fill="currentColor" d="M10.12 9.98a3.075 3.075 0 0 0-4.24 0L2 13.86V19a3.009 3.009 0 0 0 3 3h14a3 3 0 0 0 2.16-.92L10.12 9.98z"></path><path fill="currentColor" d="m22 15.858l-3.879-3.879a3.008 3.008 0 0 0-4.242 0l-.888.888l8.165 8.209c.542-.555.845-1.3.844-2.076v-3.142z" opacity=".25"></path></svg> <div class="hidden md:block" _msttexthash="193852490" _msthash="37">通过拖动文本输入、粘贴或<span class="cursor-pointer underline" _istranslated="1">单击此处</span>来上传图像、音频和视频。</div> <div class="md:hidden" _msttexthash="795626" _msthidden="1" _msthash="38">Tap or paste here to upload images</div> <input accept="image/png, image/jpeg, image/gif, image/webp, video/mp4, video/quicktime, video/webm, audio/mpeg, audio/wav" class="hidden" type="file" disabled="" multiple=""></label></div> </div> <div class="flex space-x-2"><button class="btn" type="submit" disabled="" _msttexthash="4632316" _msthash="39">提交 Pull Request</button> <a class="btn" href="https://huggingface.co/spaces/llzzyy233/Defect_detection/tree/main" _msttexthash="4869202" _msthash="40">取消</a></div></div></div></form></div></section></div></main>
</div>
<script>
import("\/front\/build\/kube-e8ad96a\/index.js");
window.moonSha = "kube-e8ad96a\/";
window.__hf_deferred = {};
</script>
<!-- Stripe -->
<script>
if (["hf.co", "huggingface.co"].includes(window.location.hostname)) {
const script = document.createElement("script");
script.src = "https://js.stripe.com/v3/";
script.async = true;
document.head.appendChild(script);
}
</script>
<div class="tooltip-mask hidden" _msthidden="1"><div class="tooltip" role="tooltip" _msthidden="1"><div class="tooltip-arrow"></div><font _mstmutation="1" _msttexthash="136903" _msthidden="1" _msthash="41">Wrap lines</font></div></div><div id="wetab-content-root"><wetab-chat-screenshot style="position: relative; z-index: 2147483647;"><template shadowrootmode="open"><link rel="stylesheet" href="chrome-extension://bpelnogcookhocnaokfpoeinibimbeff/content.css"><style id="theme_style">
:host {
--color-black:0 0 0;--color-white:255 255 255;--color-blue:74 122 255;--color-green:52 199 89;--color-yellow:255 149 0;--color-orange:255 155 48;--color-red:255 77 79;--color-t1:28 28 30;--color-t2:58 58 60;--color-t3:142 142 148;--color-t4:199 199 204;--color-t5:255 255 255;--color-b1:209 209 214;--color-b2:229 229 234;--color-b3:248 248 248;--color-b4:255 255 255;--color-b5:255 255 255;--color-m1:255 255 255;--color-m2:0 0 0;--color-todo-t1:47 87 255;--color-todo-t2:83 147 255;--color-note-t1:192 131 93;--color-note-t2:198 174 159;--color-calc-t1:255 255 255;--color-calc-t2:200 200 204;--color-calc-t3:142 142 148;--color-calc-t4:94 94 98;--color-calc-b1:75 78 84;--color-calc-b2:50 52 57;--color-calc-b3:34 36 39;--color-calc-l1:254 189 95;--color-calc-l2:251 132 54;--color-calc-l3:96 99 107;--color-calc-l4:58 60 66;--color-calc-l6:32 33 38;--color-calc-l7:81 84 90;--color-calc-l5:63 65 72;--color-calc-l8:72 74 79;--color-calc-l0:40 41 45;--color-calc-l9:252 163 36;--color-calc-yellow:240 168 16;--color-calendar-red:255 77 79;--color-calendar-b1:255 101 101;--color-calendar-b2:255 246 241;--color-worldcup-t1:168 238 65;--color-rate-t1:28 28 30;--color-rate-t2:58 58 60;--color-rate-t3:141 142 148;--color-rate-t4:109 147 229;--color-rate-b1:255 255 255;--color-rate-b2:248 248 248;--color-rate-b3:34 36 39;--color-rate-b4:55 69 157;--color-rate-b5:238 240 239;--color-rate-l1:70 154 255;--color-rate-l2:72 90 188;--color-game-b1:38 42 53;--color-game-b2:70 74 88;--color-game-b3:23 26 34;--color-game-b4:44 47 59;--color-game-b5:20 174 60;--color-game-t1:200 200 204;--color-game-t2:142 142 148;--color-movie-b1:94 104 71;--color-clock-b1:22 21 28;--color-wclock-b1:19 20 21;--color-wclock-t1:37 216 27;--color-wclock-t2:47 142 42;--color-wclock-t3:30 82 27;--color-bookmark-t1:98 173 91;--color-bookmark-b1:248 248 248;--color-bookmark-b2:255 255 255;--color-record-t1:255 115 48;--color-image-t1:68 10 214;--color-image-b1:0 0 0;--color-image-b2:255 255 255;--color-image-b4:17 17 17;--color-translate-green:36 161 81;--color-tomato-work:244 78 33;--color-tomato-rest:54 168 106;--color-write-t1:69 116 246;--color-write-blue:48 101 246;--color-settings-blue:0 122 255
}
</style><div class="module-app" data-v-app="" _msthidden="1"><div class="z-[2147483647]"><div class="handle fixed bottom-[24px] hidden w-fit items-end gap-y-[8px] flex-col z-[2147483647]"><div class="action-list mr-[4px] flex flex-col-reverse rounded-full bg-color-b1 p-[4px] z-[2147483644]"><span class="action s-trans inline-flex cursor-pointer items-center justify-center rounded-full p-[6px] transition-colors hover:bg-[#EFF2FA]" style="box-shadow: rgba(99, 99, 99, 0.1) 0px 2px 8px 0px;"><i class="iconfont !text-[20px] !leading-[1] i:screenshot-20-outline-bold"></i></span></div><div class="relative hidden w-[48px] cursor-pointer items-center justify-center whitespace-nowrap break-keep rounded-l-full bg-color-b1 px-[14px] py-[10px] ring-0 transition-all" style="box-shadow: rgba(99, 99, 99, 0.1) 0px 2px 8px 0px; user-select: none;"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAAEgBckRAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAAIOklEQVRoBe1ZW2xcRxn+z+76hu21HTcXN03jkEBQaCoFiRhQHRCloY1SVEW9PERJHQcqQuK6UQNRaGgCRlWr9IE08EAlJG4PSBTxACjioUgJLzUvFSSqkjT1NbGdjS+76/Wuvbfh+/5zZn12s3YBqSKCHWnOzPz3+ef2zxyR/yg922MMGYeG3bLreWMCBGSzItfeNyaXQ3ndmExGRBErwlEhy8aPO444IhkQfhTp1i3z6h1y9x4y5n1Yw8w6CWCDyJVrxsAeCcDGPMCbN7H1kaeJ2+bX5ZQUdO87ArtA8csfO871IdRhG83eBO/tO+x24Fc/cRx1LSVl4efjh41cuWpMHq418H8e+SrG4r7VMR0X0hU0jI2Zr3NkKHjtGudnREYi5qFMXjaDyIlG8/VbPhU8S/j/RHrup6bqX+2IujX9nlzr6TFhyzQ4YgyzbXf1mIu2rgz0e9RIjEwfDLjjQBhcffLZI+ZCLi+dliHECgCaVm+cj+VytToLKX42KX0zMylpDNe5BPi6GoBNL2TkycdrdTEpP2Ac1dderpO8J5BcLgMAfSeqhLOaublRngImq51A+7u9ixxq0v6nkr8IN37sBgiUZtUq5y0Ie+vmhDlIqY4EqKyS7koPdPWawZ7Ti1O21MiRMRMZvmFMImG2luJs+8Dzi9OaMJ0WFslJEZ+SGPZ/wcJoOnfOiRM3N2faJiIyll1AAzMvMiX/GBo1N9vXOfdZXvBcxOrp5D7rT0UKclgvdpOawVra05WT118OXB6fkAe49LhR696GeYuZuJZnzQ/P5t/N5wPb7HKSxTmtenQlWI1ZIEnIHJ2JySsnAjyLHmCbhuX4QeYs1+WEyku9gW0HnslKNp3XTdW/zCi3SAGt5M775O6UnPl+E/GLicKRqqvlvO7vblO/97aF5NS3A5JKJgobg0UXLbmnv2EG+45LO9ezgdVE2oOgqlr64fPPkdEYE7o+IBndsUhre4Xy75cS8syexiK5VlmlrHig4oG7wQMTEaNx2XK2nD5tqv34or2o+wXzjh/pr8fj5pMLC9I9Mmpm/HB//dgxUz8clVE/rEgBwvwOHBhllUxF5So3Quw7zRMT5kd+IaxT+GRaEro/+ZBFCgjHgdGBC0aRkuFRM8DNz8NLcl56Z2bMehfiCr+94Aq3dBZXpICnES3Ant6x/4irZHzcHEtnZAPAFqe3g6lpGaIQWn4rJQmeA8zL98AVroTsyd5D6cuJhJyhVXqSeXi7lX8waK4MTOYSVjmFL98DzwISxqPzcupo6NNkZgIK3J6FKNlbjNnm7duyekipcOJJ50tFLiKSjFmckUcOBlHHueE7OgrMqFAhhT7xWI0kZ2Nat0p88kuOTK8H69bEZd1aROk+4WSiAMK09Nqsv/K9sKTTaYXTQH8q7gGQqdScdO9tdmk8YstTUyN/UYRfMeoOQoz9T+PQB6FVbpUUKSBB3/E6DU9oqcoBTOPugOTXr3MeDoflccUBGQi6OArbvKlW2u65cw0WKfjaI7OIGgIqMAiM4xOwqV3qKWjNSueP6MlFMtIAKme8xHSou2X5qOK9K6a3OSxzHBn21mVDqFIj11e2OBdsm6W9DAhWNwyhLk2XLiXbv/pI/UnbrpQVD1Q8UPFAxQP/1x7ARTSMvOK/4oSDL5jfLPck8mFGTc6YfcM3TR7Z3J42z30Y/VJ4xozdR81vl8IXDtFSAr7p4Djmdb+/oUV2njvtPrmU0pW2ef0fG5e30znZwbCMTwRUUhWS/rY18iXHceZLecq1afhUGu8VgtdLRyI/P+usLkfnBRplUF4sgQCqg29HB3rNO/531TIcMj1tHhsekSSi8B2MMjQkce8SgvfPjqERSdyaNHvK8VoYDecbLa8BiM86GcCVBtKWlmXRO5QfweBuMSDSALojJhLDdaG/ycGIeI9glufmmPk9XpaeIJsdVsZiTGqE65DgXEJ+d2PMnF/bJrsxGgydNdFwGH0+Mr/4Xmxxy5VW1x00+GMwCGA7EdYo1wZC1Ct/w2veo32vyieiU/I2iBo0xqdEEHJold52gvE6pxNNJj4oqdp6efTk6/Luwqz5UyDgdFr5noiCI8ARwZ+Lf38KcRTsSNiSyjN4lIvHFrbveDg7PR2Rfgxxg17KaCSnDhLpref5Z0r5ifesxF+rurm4XNj1UC4ej6U705CpPaZOr5P2sud6wpVb+l1yDfB1sSCQSikYOTWfkYa6pPzgeJVs2xoqGEl3KRnpwKsGW1eCnYvZzmWvj0rz4JYg3vurpakhKclk2uUDvfKjZPLXXcjid8kO0BgyMtNrLBOzc7Lzi1k5drhB6mp9rDQeeNqrH1aQrScVhk4RbEdAG167ptqRo99skN1fyUkinnCdAnrS2gzSsmnJRQxeWODxQHMgPyUnepukKexjAbxgOEjJQyPLJeKU1kdQ2v7C9jp5cEtOzr45jWfYFSqPsuxmUE6uz40laPYeoBzc+NmtUTn1nVZpbgq5/2NghO7vnsVa+AxjL7Dvj6+6Rza2tMj9uEGOEqaGsIRc5YF2C2ObuaExKC+9uEI+/5k4ng5y7ghYRwJfmpbsAIc/5CzIt7oysmtnc8Eb1M6fSvzHaY2iEK+p8utr5Y0N6517m5udgdZWZ3TjBuf+ulo5o52m9UhaUA4y5QV9V2Tid345LD0HsxIKpNxXfgLLJJVTBi6vvTE7uWdXfSt/zdI4KuGQa0JdGT1urg/eveHpmZWtsqOx0bnsURYVt/EKNzstf8VD2SorigR0MEVRvnWGf3r94c9zsy8ebij8nCRPJVU8UPFAxQN3hwf+CagI4zojNrTOAAAAAElFTkSuQmCC" alt="" width="20" height="20" class="rounded-full"><!----><!----></div></div></div><div class="tool p-screenshot __cg_ss_action_wrapper__ fixed flex flex-col items-start gap-y-[8px] rounded-[4px] p-[4px] z-[2147483647]" _msthidden="1" style="display: none;"><div class="flex items-center rounded-[6px] bg-color-b5 px-[12px] py-[8px]" _msthidden="1"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify handle cursor-move text-[16px] text-color-t3 handle cursor-move text-[16px] text-color-t3 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><path fill="currentColor" d="M7 3q0 .074-.007.147t-.022.146-.036.142-.05.139q-.027.068-.062.133t-.076.126-.087.119-.1.109-.108.099q-.057.046-.119.087-.06.041-.126.076-.065.035-.133.063t-.139.05q-.07.02-.142.035-.073.015-.146.022T5.5 4.5t-.147-.007-.146-.022q-.072-.014-.142-.036t-.139-.05-.133-.062-.126-.076q-.062-.04-.119-.087t-.109-.1-.099-.108-.087-.119-.076-.126-.063-.133-.05-.139q-.02-.07-.035-.142-.015-.073-.022-.146T4 3t.007-.147.022-.146.036-.142q.021-.07.05-.139.027-.068.062-.133t.076-.126.087-.119.1-.109.108-.099q.057-.046.119-.087.06-.041.126-.076.065-.035.133-.063t.139-.05q.07-.02.142-.035.073-.015.146-.022T5.5 1.5t.147.007.146.022q.072.014.142.036t.139.05.133.062.126.076q.062.04.119.087t.109.1.099.108.087.119.076.126.063.133.05.139q.02.07.035.142.015.073.022.146T7 3m0 5q0 .074-.007.147t-.022.146-.036.142-.05.139q-.027.068-.062.133t-.076.126-.087.119-.1.109-.108.099q-.057.046-.119.087-.06.041-.126.076-.065.035-.133.063t-.139.05q-.07.02-.142.035-.073.015-.146.022T5.5 9.5t-.147-.007-.146-.022q-.072-.014-.142-.036t-.139-.05-.133-.062-.126-.076q-.062-.04-.119-.087t-.109-.1-.099-.108-.087-.119-.076-.126-.063-.133-.05-.139q-.02-.07-.035-.142-.015-.073-.022-.146T4 8t.007-.147.022-.146q.014-.072.036-.142t.05-.139.062-.133.076-.126q.04-.062.087-.119t.1-.109.108-.099.119-.087.126-.076.133-.063.139-.05q.07-.02.142-.035.073-.015.146-.022T5.5 6.5t.147.007.146.022q.072.014.142.036t.139.05.133.062.126.076q.062.04.119.087t.109.1.099.108.087.119.076.126.063.133.05.139q.02.07.035.142.015.073.022.146T7 8m0 5q0 .074-.007.147t-.022.146-.036.142-.05.139q-.027.068-.062.133t-.076.126-.087.119-.1.109-.108.098q-.057.047-.119.088-.06.041-.126.076-.065.035-.133.063t-.139.05q-.07.02-.142.035-.073.015-.146.022T5.5 14.5t-.147-.007-.146-.022q-.072-.014-.142-.036t-.139-.05-.133-.062-.126-.076q-.062-.04-.119-.088-.057-.046-.109-.098t-.099-.11-.087-.118q-.041-.06-.076-.126-.035-.065-.063-.133t-.05-.139q-.02-.07-.035-.142-.015-.073-.022-.146T4 13t.007-.147.022-.146q.014-.072.036-.142t.05-.139.062-.133.076-.126q.04-.062.087-.119t.1-.109.108-.098q.057-.047.119-.088.06-.041.126-.076.065-.035.133-.063t.139-.05q.07-.02.142-.035.073-.015.146-.022T5.5 11.5t.147.007.146.022q.072.014.142.036t.139.05.133.062.126.076q.062.04.119.088.057.046.109.098t.099.11.087.118q.041.06.076.126.035.065.063.133t.05.139q.02.07.035.142.015.073.022.146T7 13m5-10q0 .074-.007.147t-.022.146-.036.142-.05.139q-.027.068-.062.133t-.076.126-.087.119-.1.109-.108.099q-.057.046-.119.087-.06.041-.126.076-.065.035-.133.063t-.139.05q-.07.02-.142.035-.073.015-.146.022T10.5 4.5t-.147-.007-.146-.022q-.072-.014-.142-.036t-.139-.05-.133-.062-.126-.076q-.062-.04-.119-.087t-.109-.1-.099-.108-.087-.119-.076-.126-.063-.133-.05-.139q-.02-.07-.035-.142-.015-.073-.022-.146T9 3t.007-.147.022-.146.036-.142q.021-.07.05-.139.027-.068.062-.133t.076-.126.087-.119.1-.109.108-.099q.057-.046.119-.087.06-.041.126-.076.065-.035.133-.063t.139-.05q.07-.02.142-.035.073-.015.146-.022T10.5 1.5t.147.007.146.022.142.036q.07.021.139.05.068.027.133.062t.126.076.119.087.109.1.099.108q.046.057.087.119.041.06.076.126.035.065.063.133t.05.139q.02.07.035.142.015.073.022.146T12 3m0 5q0 .074-.007.147t-.022.146-.036.142-.05.139q-.027.068-.062.133t-.076.126-.087.119-.1.109-.108.099q-.057.046-.119.087-.06.041-.126.076-.065.035-.133.063t-.139.05q-.07.02-.142.035-.073.015-.146.022T10.5 9.5t-.147-.007-.146-.022q-.072-.014-.142-.036t-.139-.05-.133-.062-.126-.076q-.062-.04-.119-.087t-.109-.1-.099-.108-.087-.119-.076-.126-.063-.133-.05-.139q-.02-.07-.035-.142-.015-.073-.022-.146T9 8t.007-.147.022-.146q.014-.072.036-.142t.05-.139.062-.133.076-.126q.04-.062.087-.119t.1-.109.108-.099.119-.087.126-.076.133-.063.139-.05q.07-.02.142-.035.073-.015.146-.022T10.5 6.5t.147.007.146.022.142.036q.07.021.139.05.068.027.133.062t.126.076.119.087.109.1.099.108q.046.057.087.119.041.06.076.126.035.065.063.133t.05.139q.02.07.035.142.015.073.022.146T12 8m0 5q0 .074-.007.147t-.022.146-.036.142-.05.139q-.027.068-.062.133t-.076.126-.087.119-.1.109-.108.098q-.057.047-.119.088-.06.041-.126.076-.065.035-.133.063t-.139.05q-.07.02-.142.035-.073.015-.146.022t-.147.007-.147-.007-.146-.022q-.072-.014-.142-.036t-.139-.05-.133-.062-.126-.076q-.062-.04-.119-.088-.057-.046-.109-.098t-.099-.11-.087-.118q-.041-.06-.076-.126-.035-.065-.063-.133t-.05-.139q-.02-.07-.035-.142-.015-.073-.022-.146T9 13t.007-.147.022-.146q.014-.072.036-.142t.05-.139.062-.133.076-.126q.04-.062.087-.119t.1-.109.108-.098q.057-.047.119-.088.06-.041.126-.076.065-.035.133-.063t.139-.05q.07-.02.142-.035.073-.015.146-.022t.147-.007.147.007.146.022.142.036.139.05.133.062.126.076.119.088q.057.046.109.098t.099.11.087.118q.041.06.076.126.035.065.063.133t.05.139q.02.07.035.142.015.073.022.146T12 13"></path></svg><span class="ml-[4px] flex items-center gap-x-[8px]"><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.08]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><path fill="currentColor" fill-rule="evenodd" d="M13.465 1.4c-.489-.26-.973-.4-2.31-.4h-6.31c-1.336 0-1.821.14-2.31.4A2.73 2.73 0 001.4 2.536c-.261.488-.4.973-.4 2.309v6.31c0 1.337.14 1.821.4 2.31.262.49.646.873 1.135 1.134.489.262.974.401 2.31.401h6.31c1.337 0 1.821-.14 2.31-.4a2.73 2.73 0 001.134-1.135c.262-.489.401-.973.401-2.31v-6.31c0-1.336-.14-1.821-.4-2.31A2.73 2.73 0 0013.464 1.4M4.643 2.5h6.714l.182.004c.694.015.954.078 1.219.22.227.121.397.29.519.518.165.309.223.611.223 1.604v6.308c0 .993-.058 1.295-.223 1.604a1.23 1.23 0 01-.52.519c-.308.165-.61.223-1.603.223H4.846c-.993 0-1.295-.058-1.604-.223a1.23 1.23 0 01-.519-.52c-.153-.286-.214-.567-.222-1.4V4.643c.008-.833.07-1.114.222-1.4a1.23 1.23 0 01.52-.52c.286-.153.567-.214 1.4-.222"></path></svg></div><!----><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.08]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><path fill="currentColor" fill-rule="evenodd" d="M8 15q.172 0 .343-.008t.343-.026.341-.042.339-.058.335-.076.331-.091.326-.108.32-.124q.16-.066.315-.14.155-.072.307-.154.151-.08.299-.169.147-.088.29-.184.143-.095.28-.197.139-.103.272-.212t.26-.224.249-.237q.121-.122.237-.25.115-.126.224-.26.11-.132.212-.27t.197-.281.184-.29.17-.3q.08-.15.154-.306.073-.155.14-.314.065-.159.123-.32.058-.163.108-.327t.091-.331.076-.335q.033-.169.058-.339t.042-.34.026-.344T15 8t-.008-.343q-.009-.172-.026-.343t-.042-.341-.058-.339q-.034-.168-.076-.335t-.091-.331-.108-.326-.124-.32q-.066-.16-.14-.315-.072-.155-.154-.307-.08-.151-.169-.299-.088-.147-.184-.29-.095-.143-.197-.28-.103-.139-.212-.272t-.224-.26-.237-.249q-.122-.121-.25-.237-.126-.115-.26-.224-.132-.11-.27-.211-.138-.103-.281-.198t-.29-.184-.3-.17q-.15-.08-.306-.154-.155-.073-.314-.14-.159-.065-.32-.123-.163-.058-.327-.108t-.331-.091-.335-.075-.339-.06q-.17-.024-.34-.041-.172-.017-.344-.026T8 1t-.343.008q-.172.009-.343.026t-.341.042-.339.059-.335.075-.331.091-.326.108-.32.124-.315.14q-.155.073-.307.154-.151.08-.299.169-.147.088-.29.184-.143.095-.28.198-.139.102-.272.21-.133.11-.26.225-.127.116-.249.237-.121.122-.237.25-.115.126-.224.26-.11.132-.211.27-.103.138-.198.281t-.184.29-.17.3q-.08.15-.154.306-.073.155-.14.314-.065.159-.123.32-.058.163-.108.327t-.091.331-.075.335q-.034.169-.06.339-.024.17-.041.34-.017.172-.026.344T1 8t.008.343q.009.172.026.343t.042.341.059.339.075.335.091.331.108.326.124.32q.066.16.14.315.073.155.154.307.08.151.169.299.088.147.184.29.095.143.198.28.102.139.21.272.11.133.225.26.116.127.237.249.122.121.25.237.126.115.26.224.132.11.27.212t.281.197.29.184.3.17q.15.08.306.154.155.073.314.14.159.065.32.123.163.058.327.108t.331.091.335.076q.169.033.339.058t.34.042.344.026T8 15m0-1.5q.135 0 .27-.007.135-.006.27-.02.133-.013.267-.033t.266-.046.263-.059.26-.072q.13-.039.257-.085.127-.045.252-.097.124-.051.247-.11.122-.057.24-.12.12-.064.236-.134.115-.069.228-.144.112-.075.22-.155.109-.08.213-.166t.205-.177.195-.186q.096-.095.186-.195t.177-.205q.085-.104.166-.213.08-.108.155-.22.075-.113.144-.228.07-.116.134-.235.063-.12.12-.241.059-.123.11-.247.052-.125.098-.252.045-.127.084-.256.04-.13.072-.26.033-.132.06-.264t.046-.266.032-.268.02-.27Q13.5 8.135 13.5 8t-.007-.27-.02-.27q-.013-.133-.033-.267t-.046-.266-.059-.263-.072-.26q-.039-.13-.085-.257-.045-.127-.097-.252-.051-.124-.11-.247-.057-.122-.12-.24-.064-.12-.134-.236-.069-.115-.144-.228-.075-.112-.155-.22-.08-.109-.166-.213-.086-.105-.177-.205-.09-.1-.186-.195-.095-.096-.195-.186t-.205-.177q-.104-.085-.213-.166-.108-.08-.22-.155-.113-.075-.228-.145-.116-.069-.235-.133-.12-.063-.241-.12-.123-.059-.247-.11-.125-.052-.252-.097t-.256-.085-.26-.072-.264-.06-.266-.045-.268-.034-.27-.02Q8.136 2.5 8 2.5t-.27.007q-.135.006-.27.02-.133.013-.267.033t-.266.046-.263.059-.26.072q-.13.039-.257.085-.127.045-.252.097-.124.051-.247.11-.122.057-.24.12-.12.064-.236.133-.115.07-.228.145-.112.075-.22.155-.109.08-.213.166-.105.086-.205.177-.1.09-.195.186-.096.095-.186.195t-.177.205q-.085.104-.166.213-.08.108-.155.22-.075.113-.145.228-.069.116-.133.235-.063.12-.12.241-.059.123-.11.247-.052.125-.097.252t-.085.256-.072.26q-.033.132-.06.264t-.045.266-.034.268-.02.27Q2.5 7.864 2.5 8t.007.27q.006.135.02.27.013.133.033.267t.046.266.059.263.072.26q.039.13.085.257.045.127.097.252.051.124.11.247.057.122.12.24.064.12.133.236.07.115.145.228.075.112.155.22.08.109.166.213t.177.205.186.195q.095.096.195.186t.205.177q.104.085.213.166.108.08.22.155.113.075.228.144.116.07.235.134.12.063.241.12.123.059.247.11.125.052.252.098.127.045.256.084.13.04.26.072.132.033.264.06t.266.046.268.032.27.02q.134.007.269.007"></path></svg></div><!----><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.08]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><path fill="currentColor" d="M9.22 3.22a.75.75 0 011.06 0l4.25 4.25a1 1 0 01.064.072l.004.006.021.032.029.041.004.01.009.014.013.03.017.033.008.022.006.013.005.018.013.04.006.027.005.016.002.019.007.035.002.027.003.023v.023L14.75 8l-.002.029v.023l-.003.021-.002.029-.007.034-.002.02-.005.015-.006.028-.013.039-.005.02-.006.011-.008.023-.017.032-.013.03-.009.014-.004.01-.029.041-.016.027-.073.084-4.25 4.25a.75.75 0 01-1.06-1.06l2.968-2.97H2a.75.75 0 01-.743-.648L1.25 8A.75.75 0 012 7.25h10.189l-2.97-2.97a.75.75 0 01-.072-.976z"></path></svg></div><!----><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.08]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><g fill="currentColor"><defs><clippath id="iconifyVue1"><rect width="16" height="16" rx="0"></rect></clippath></defs><g clip-path="url(#iconifyVue1)"><path d="M14.096 1.904a3.087 3.087 0 010 4.366l-8.09 8.09c-.41.41-.965.64-1.544.64H2.746A1.746 1.746 0 011 13.254v-1.716c0-.579.23-1.134.64-1.543l8.09-8.09a3.087 3.087 0 014.366 0M8.536 5l-5.785 5.785a.86.86 0 00-.251.605v1.682c0 .236.192.428.428.428H4.61c.227 0 .445-.09.605-.25L11 7.463zm2.139-2.015L9.5 4.159 11.84 6.5l1.175-1.174a1.656 1.656 0 00-2.34-2.341"></path></g></g></svg></div><!----><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.08]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><g fill="currentColor"><path fill-rule="evenodd" d="M13.465 1.4c-.489-.26-.973-.4-2.31-.4h-6.31c-1.336 0-1.821.14-2.31.4A2.73 2.73 0 001.4 2.536c-.261.488-.4.973-.4 2.309v6.31c0 1.337.14 1.821.4 2.31.262.49.646.873 1.135 1.134.489.262.974.401 2.31.401h6.31c1.337 0 1.821-.14 2.31-.4a2.73 2.73 0 001.134-1.135c.262-.489.401-.973.401-2.31v-6.31c0-1.336-.14-1.821-.4-2.31A2.73 2.73 0 0013.464 1.4M4.643 2.5h6.714l.183.004c.694.015.953.078 1.218.22.227.121.397.29.519.518.165.309.223.611.223 1.604v6.308c0 .993-.058 1.295-.223 1.604a1.23 1.23 0 01-.52.519c-.308.165-.61.223-1.603.223H4.846c-.993 0-1.295-.058-1.604-.223a1.23 1.23 0 01-.519-.52c-.153-.286-.214-.567-.222-1.4V4.643c.008-.833.07-1.114.222-1.4a1.23 1.23 0 01.52-.52c.286-.153.567-.214 1.4-.222"></path><path d="M3 8h5v5H4a1 1 0 01-1-1Zm5-5h4a1 1 0 011 1v4H8Z"></path></g></svg></div><!----><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.08]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><path fill="currentColor" d="M13.25 2a.75.75 0 010 1.5h-4.5v9.75a.75.75 0 01-.648.743L8 14a.75.75 0 01-.75-.75V3.5h-4.5a.75.75 0 01-.743-.648L2 2.75A.75.75 0 012.75 2z"></path></svg></div><!----></span><i class="mx-[4px] inline-block h-[12px] w-0" style="border: 1.2px solid rgb(238, 238, 238);"></i><span class="hover:border-transparent mx-[8px] inline-flex h-[24px] cursor-pointer items-center justify-center whitespace-nowrap rounded-[6px] border border-color-m2/[0.06] px-[8px] text-[12px] font-medium leading-[16px] text-color-blue transition-colors hover:bg-color-blue/[0.06]" _msttexthash="5866315" _msthidden="1" _msthash="42"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify mr-[4px] text-[16px] leading-[16px] mr-[4px] text-[16px] leading-[16px] iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><g fill="currentColor"><path fill-rule="evenodd" d="M15 8A7 7 0 101 8v3.154c0 1.338.14 1.822.4 2.311.262.49.646.873 1.135 1.134.489.262.974.401 2.31.401H8a7 7 0 007-7M2.5 8A5.5 5.5 0 118 13.5H4.846c-.993 0-1.295-.058-1.604-.223a1.23 1.23 0 01-.519-.52c-.153-.286-.214-.567-.222-1.4z"></path><path d="M10.25 7.25a.75.75 0 010 1.5h-4.5a.75.75 0 010-1.5z"></path><path d="M8.75 10.25a.75.75 0 01-1.5 0v-4.5a.75.75 0 011.5 0z"></path></g></svg> 对话 </span><!----><i class="mx-[4px] inline-block h-[12px] w-0" style="border: 1.2px solid rgb(238, 238, 238);"></i><span class="ml-[4px] flex items-center gap-x-[8px]"><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.06]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><g fill="currentColor"><path d="M9.125 4.25a4.875 4.875 0 110 9.75H3.75a.75.75 0 010-1.5h5.375a3.375 3.375 0 000-6.75H3.75a.75.75 0 010-1.5z"></path><path d="M4.47 2.22a.75.75 0 111.06 1.06L3.783 5.027l1.774 1.971a.75.75 0 01.022.98l-.077.08a.75.75 0 01-1.06-.056l-2.25-2.5A.75.75 0 012.22 4.47z"></path></g></svg></div><!----><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.06]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><g fill="currentColor"><path d="M15 9.75v.936c0 .926-.092 1.4-.356 1.895a2.57 2.57 0 01-1.063 1.063c-.494.264-.969.356-1.895.356H4.314c-.926 0-1.4-.092-1.895-.356a2.57 2.57 0 01-1.063-1.063c-.242-.453-.34-.89-.354-1.673L1.001 9.75a.75.75 0 111.499 0v.936c0 .636.038.893.145 1.12l.033.067q.157.292.449.449c.247.132.487.178 1.187.178h7.372l.339-.005c.448-.015.646-.065.848-.173q.292-.157.449-.449c.132-.247.178-.487.178-1.187V9.75a.75.75 0 011.5 0"></path><path d="M8 1a.75.75 0 01.75.75v7a.75.75 0 01-1.5 0v-7A.75.75 0 018 1"></path><path d="M10.741 5.199A.75.75 0 0111.76 6.3l-3.25 3a.75.75 0 01-1.018 0l-3.25-3A.75.75 0 015.26 5.2L8 7.729z"></path></g></svg></div><!----><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.06]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><path fill="currentColor" d="M4.28 3.22 8 6.939l3.72-3.72a.75.75 0 01.976-.072l.084.073a.75.75 0 010 1.06L9.061 8l3.72 3.72a.75.75 0 01-1.061 1.06L8 9.061l-3.72 3.72a.75.75 0 01-.976.072l-.084-.073a.75.75 0 010-1.06L6.939 8l-3.72-3.72A.75.75 0 114.28 3.22"></path></svg></div><!----><div class="s-trans cursor-pointer rounded-[6px] p-[4px] leading-[0] transition-colors hover:bg-color-m2/[0.06]"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="hi-iconify text-[16px] leading-[16px] text-color-t2 text-[16px] leading-[16px] text-color-t2 iconify iconify--i" width="1em" height="1em" viewBox="0 0 16 16"><path fill="currentColor" d="M13.712 3.228a.75.75 0 011.076 1.044l-7.25 7.5a.75.75 0 01-1.083-.007l-4.25-4.5a.75.75 0 011.09-1.03l3.712 3.93z"></path></svg></div><!----></span></div><!----></div></div></template></wetab-chat-screenshot><wetab-chat-contextmenu class="wetab-root" style="position: relative; z-index: 2147483647;"><template shadowrootmode="open"><link rel="stylesheet" href="chrome-extension://bpelnogcookhocnaokfpoeinibimbeff/content.css"><style id="theme_style">
:host {
--color-black:0 0 0;--color-white:255 255 255;--color-blue:74 122 255;--color-green:52 199 89;--color-yellow:255 149 0;--color-orange:255 155 48;--color-red:255 77 79;--color-t1:28 28 30;--color-t2:58 58 60;--color-t3:142 142 148;--color-t4:199 199 204;--color-t5:255 255 255;--color-b1:209 209 214;--color-b2:229 229 234;--color-b3:248 248 248;--color-b4:255 255 255;--color-b5:255 255 255;--color-m1:255 255 255;--color-m2:0 0 0;--color-todo-t1:47 87 255;--color-todo-t2:83 147 255;--color-note-t1:192 131 93;--color-note-t2:198 174 159;--color-calc-t1:255 255 255;--color-calc-t2:200 200 204;--color-calc-t3:142 142 148;--color-calc-t4:94 94 98;--color-calc-b1:75 78 84;--color-calc-b2:50 52 57;--color-calc-b3:34 36 39;--color-calc-l1:254 189 95;--color-calc-l2:251 132 54;--color-calc-l3:96 99 107;--color-calc-l4:58 60 66;--color-calc-l6:32 33 38;--color-calc-l7:81 84 90;--color-calc-l5:63 65 72;--color-calc-l8:72 74 79;--color-calc-l0:40 41 45;--color-calc-l9:252 163 36;--color-calc-yellow:240 168 16;--color-calendar-red:255 77 79;--color-calendar-b1:255 101 101;--color-calendar-b2:255 246 241;--color-worldcup-t1:168 238 65;--color-rate-t1:28 28 30;--color-rate-t2:58 58 60;--color-rate-t3:141 142 148;--color-rate-t4:109 147 229;--color-rate-b1:255 255 255;--color-rate-b2:248 248 248;--color-rate-b3:34 36 39;--color-rate-b4:55 69 157;--color-rate-b5:238 240 239;--color-rate-l1:70 154 255;--color-rate-l2:72 90 188;--color-game-b1:38 42 53;--color-game-b2:70 74 88;--color-game-b3:23 26 34;--color-game-b4:44 47 59;--color-game-b5:20 174 60;--color-game-t1:200 200 204;--color-game-t2:142 142 148;--color-movie-b1:94 104 71;--color-clock-b1:22 21 28;--color-wclock-b1:19 20 21;--color-wclock-t1:37 216 27;--color-wclock-t2:47 142 42;--color-wclock-t3:30 82 27;--color-bookmark-t1:98 173 91;--color-bookmark-b1:248 248 248;--color-bookmark-b2:255 255 255;--color-record-t1:255 115 48;--color-image-t1:68 10 214;--color-image-b1:0 0 0;--color-image-b2:255 255 255;--color-image-b4:17 17 17;--color-translate-green:36 161 81;--color-tomato-work:244 78 33;--color-tomato-rest:54 168 106;--color-write-t1:69 116 246;--color-write-blue:48 101 246;--color-settings-blue:0 122 255
}
</style><div class="module-app" data-v-app=""><!----></div></template></wetab-chat-contextmenu></div><iframe name="__privateStripeMetricsController3860" frameborder="0" allowtransparency="true" scrolling="no" role="presentation" allow="payment *" src="./app_files/m-outer-3437aaddcdf6922d623e172c2d6f9278.html" aria-hidden="true" tabindex="-1" style="border: none !important; margin: 0px !important; padding: 0px !important; width: 1px !important; min-width: 100% !important; overflow: hidden !important; display: block !important; visibility: hidden !important; position: fixed !important; height: 1px !important; pointer-events: none !important; user-select: none !important;"></iframe></body></html>