{"id":7,"date":"2026-02-25T16:37:05","date_gmt":"2026-02-25T16:37:05","guid":{"rendered":"https:\/\/boyatriz.ai\/?page_id=7"},"modified":"2026-02-25T16:37:05","modified_gmt":"2026-02-25T16:37:05","slug":"%e5%8d%9a%e9%9b%85%e5%88%9b%e6%99%ba-%e5%8d%9a%e6%83%a0%e7%99%be%e4%b8%9a-%e6%99%ba%e8%be%be%e5%8d%83%e8%a1%8c","status":"publish","type":"page","link":"https:\/\/boyatriz.ai\/","title":{"rendered":"\u535a\u96c5\u521b\u667a \u2014 \u535a\u60e0\u767e\u4e1a \u667a\u8fbe\u5343\u884c"},"content":{"rendered":"<p><!DOCTYPE html><br \/>\n<html lang=\"zh-CN\"><\/p>\n<p><head><br \/>\n  <meta charset=\"UTF-8\"><br \/>\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><br \/>\n  <title>\u535a\u96c5\u521b\u667a \u2014 \u535a\u60e0\u767e\u4e1a \u667a\u8fbe\u5343\u884c<\/title><\/p>\n<style>\n    \/* ==================== Reset & Base ==================== *\/\n    *,\n    *::before,\n    *::after {\n      margin: 0;\n      padding: 0;\n      box-sizing: border-box;\n    }<\/p>\n<p>    :root {\n      --bg: #0a0a0f;\n      --text: #e8e8f0;\n      --text-dim: #7a7a9a;\n      --accent-1: #6c5ce7;\n      --accent-2: #00cec9;\n      --accent-3: #fd79a8;\n      --glow-1: rgba(108, 92, 231, .35);\n      --glow-2: rgba(0, 206, 201, .35);\n    }<\/p>\n<p>    html {\n      scroll-behavior: smooth;\n      scrollbar-width: thin;\n      scrollbar-color: var(--accent-1) var(--bg);\n    }<\/p>\n<p>    body {\n      font-family: \"SF Pro Display\", \"PingFang SC\", \"Noto Sans SC\", system-ui, -apple-system, sans-serif;\n      background: var(--bg);\n      color: var(--text);\n      overflow-x: hidden;\n      line-height: 1.6;\n      cursor: default;\n    }<\/p>\n<p>    \/* ==================== Starfield Canvas ==================== *\/\n    #starfield {\n      position: fixed;\n      inset: 0;\n      z-index: 0;\n      pointer-events: none;\n    }<\/p>\n<p>    \/* ==================== Cursor Glow ==================== *\/\n    .cursor-glow {\n      position: fixed;\n      width: 600px;\n      height: 600px;\n      border-radius: 50%;\n      pointer-events: none;\n      z-index: 1;\n      background: radial-gradient(circle, var(--glow-1) 0%, transparent 70%);\n      transform: translate(-50%, -50%);\n      opacity: 0.4;\n      transition: opacity 0.3s;\n      mix-blend-mode: screen;\n    }<\/p>\n<p>    \/* ==================== Navigation ==================== *\/\n    nav {\n      position: fixed;\n      top: 0;\n      left: 0;\n      right: 0;\n      z-index: 100;\n      padding: 1.5rem 3rem;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      backdrop-filter: blur(20px);\n      background: rgba(10, 10, 15, .6);\n      border-bottom: 1px solid rgba(108, 92, 231, .1);\n      transition: transform 0.4s cubic-bezier(.4, 0, .2, 1);\n    }<\/p>\n<p>    nav.hidden {\n      transform: translateY(-100%);\n    }<\/p>\n<p>    .logo {\n      font-size: 1.4rem;\n      font-weight: 700;\n      letter-spacing: 0.04em;\n      background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\n      -webkit-background-clip: text;\n      -webkit-text-fill-color: transparent;\n      background-clip: text;\n    }<\/p>\n<p>    .nav-links {\n      display: flex;\n      gap: 2.5rem;\n      list-style: none;\n    }<\/p>\n<p>    .nav-links a {\n      color: var(--text-dim);\n      text-decoration: none;\n      font-size: 0.9rem;\n      letter-spacing: 0.06em;\n      text-transform: uppercase;\n      position: relative;\n      transition: color 0.3s;\n    }<\/p>\n<p>    .nav-links a::after {\n      content: \"\";\n      position: absolute;\n      bottom: -4px;\n      left: 0;\n      width: 0;\n      height: 2px;\n      background: linear-gradient(90deg, var(--accent-1), var(--accent-2));\n      transition: width 0.3s cubic-bezier(.4, 0, .2, 1);\n    }<\/p>\n<p>    .nav-links a:hover {\n      color: var(--text);\n    }<\/p>\n<p>    .nav-links a:hover::after {\n      width: 100%;\n    }<\/p>\n<p>    \/* ==================== Sections ==================== *\/\n    section {\n      position: relative;\n      z-index: 2;\n      min-height: 100vh;\n      display: flex;\n      flex-direction: column;\n      justify-content: center;\n      align-items: center;\n      padding: 6rem 2rem;\n    }<\/p>\n<p>    \/* ==================== Hero ==================== *\/\n    .hero {\n      text-align: center;\n      overflow: hidden;\n    }<\/p>\n<p>    .hero-badge {\n      display: inline-block;\n      padding: 0.4rem 1.2rem;\n      border: 1px solid rgba(108, 92, 231, .3);\n      border-radius: 100px;\n      font-size: 0.8rem;\n      letter-spacing: 0.12em;\n      text-transform: uppercase;\n      color: var(--accent-2);\n      margin-bottom: 2rem;\n      opacity: 0;\n      transform: translateY(30px);\n      animation: fadeInUp 0.8s 0.3s forwards;\n    }<\/p>\n<p>    .hero h1 {\n      font-size: clamp(3rem, 10vw, 8rem);\n      font-weight: 800;\n      line-height: 1.05;\n      letter-spacing: -0.03em;\n      margin-bottom: 1.5rem;\n    }<\/p>\n<p>    .hero h1 .line {\n      display: block;\n      opacity: 0;\n      transform: translateY(80px) rotateX(15deg);\n      animation: heroTextIn 1s forwards;\n      transform-origin: bottom center;\n    }<\/p>\n<p>    .hero h1 .line:nth-child(1) {\n      animation-delay: 0.5s;\n    }<\/p>\n<p>    .hero h1 .line:nth-child(2) {\n      animation-delay: 0.7s;\n    }<\/p>\n<p>    .hero h1 .gradient-text {\n      background: linear-gradient(135deg, var(--accent-1) 0%, var(--accent-2) 50%, var(--accent-3) 100%);\n      -webkit-background-clip: text;\n      -webkit-text-fill-color: transparent;\n      background-clip: text;\n      background-size: 200% 200%;\n      animation: gradientShift 4s ease infinite;\n    }<\/p>\n<p>    .hero-sub {\n      font-size: clamp(1rem, 2.5vw, 1.4rem);\n      color: var(--text-dim);\n      max-width: 600px;\n      margin: 0 auto 3rem;\n      opacity: 0;\n      transform: translateY(30px);\n      animation: fadeInUp 0.8s 1s forwards;\n    }<\/p>\n<p>    .hero-cta {\n      display: flex;\n      gap: 1rem;\n      justify-content: center;\n      opacity: 0;\n      transform: translateY(30px);\n      animation: fadeInUp 0.8s 1.2s forwards;\n    }<\/p>\n<p>    .btn {\n      padding: 0.9rem 2.4rem;\n      border-radius: 100px;\n      font-size: 0.95rem;\n      font-weight: 600;\n      text-decoration: none;\n      letter-spacing: 0.02em;\n      transition: all 0.3s cubic-bezier(.4, 0, .2, 1);\n      position: relative;\n      overflow: hidden;\n    }<\/p>\n<p>    .btn-primary {\n      background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\n      color: #fff;\n      border: none;\n    }<\/p>\n<p>    .btn-primary:hover {\n      transform: translateY(-2px);\n      box-shadow: 0 10px 40px var(--glow-1), 0 5px 20px var(--glow-2);\n    }<\/p>\n<p>    .btn-ghost {\n      border: 1px solid rgba(255, 255, 255, .15);\n      color: var(--text);\n      background: transparent;\n    }<\/p>\n<p>    .btn-ghost:hover {\n      border-color: var(--accent-2);\n      color: var(--accent-2);\n      transform: translateY(-2px);\n    }<\/p>\n<p>    \/* Scroll indicator *\/\n    .scroll-indicator {\n      position: absolute;\n      bottom: 3rem;\n      left: 50%;\n      transform: translateX(-50%);\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      gap: 0.5rem;\n      opacity: 0;\n      animation: fadeInUp 0.8s 1.6s forwards;\n    }<\/p>\n<p>    .scroll-indicator span {\n      font-size: 0.7rem;\n      letter-spacing: 0.2em;\n      text-transform: uppercase;\n      color: var(--text-dim);\n    }<\/p>\n<p>    .scroll-line {\n      width: 1px;\n      height: 40px;\n      background: linear-gradient(to bottom, var(--accent-1), transparent);\n      animation: scrollPulse 2s ease-in-out infinite;\n    }<\/p>\n<p>    \/* ==================== About \/ Mission ==================== *\/\n    .about {\n      background: radial-gradient(ellipse 80% 50% at 50% 50%, rgba(108, 92, 231, .08), transparent);\n    }<\/p>\n<p>    .section-label {\n      font-size: 0.75rem;\n      letter-spacing: 0.3em;\n      text-transform: uppercase;\n      color: var(--accent-2);\n      margin-bottom: 1.5rem;\n    }<\/p>\n<p>    .about h2 {\n      font-size: clamp(2rem, 5vw, 4rem);\n      font-weight: 700;\n      text-align: center;\n      max-width: 900px;\n      line-height: 1.2;\n      letter-spacing: -0.02em;\n    }<\/p>\n<p>    .about h2 .highlight {\n      background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\n      -webkit-background-clip: text;\n      -webkit-text-fill-color: transparent;\n      background-clip: text;\n    }<\/p>\n<p>    .about-desc {\n      text-align: center;\n      max-width: 650px;\n      color: var(--text-dim);\n      font-size: 1.1rem;\n      margin-top: 2rem;\n      line-height: 1.8;\n    }<\/p>\n<p>    \/* ==================== Products ==================== *\/\n    .products {\n      padding: 8rem 2rem;\n    }<\/p>\n<p>    .products-header {\n      text-align: center;\n      margin-bottom: 6rem;\n    }<\/p>\n<p>    .products-header h2 {\n      font-size: clamp(2rem, 5vw, 3.5rem);\n      font-weight: 700;\n      letter-spacing: -0.02em;\n    }<\/p>\n<p>    .product-grid {\n      display: grid;\n      grid-template-columns: repeat(auto-fit, minmax(min(100%, 480px), 1fr));\n      gap: 3rem;\n      max-width: 1100px;\n      width: 100%;\n    }<\/p>\n<p>    .product-card {\n      position: relative;\n      border-radius: 24px;\n      padding: 3rem;\n      overflow: hidden;\n      transition: transform 0.5s cubic-bezier(.4, 0, .2, 1);\n      cursor: default;\n    }<\/p>\n<p>    .product-card::before {\n      content: \"\";\n      position: absolute;\n      inset: 0;\n      border-radius: 24px;\n      border: 1px solid rgba(255, 255, 255, .06);\n      pointer-events: none;\n    }<\/p>\n<p>    .product-card:hover {\n      transform: translateY(-8px) scale(1.01);\n    }<\/p>\n<p>    .product-card-bg {\n      position: absolute;\n      inset: 0;\n      z-index: 0;\n      transition: opacity 0.5s;\n    }<\/p>\n<p>    .card-bowen .product-card-bg {\n      background: linear-gradient(160deg, rgba(108, 92, 231, .12) 0%, rgba(10, 10, 15, .9) 60%);\n    }<\/p>\n<p>    .card-zhian .product-card-bg {\n      background: linear-gradient(160deg, rgba(0, 206, 201, .12) 0%, rgba(10, 10, 15, .9) 60%);\n    }<\/p>\n<p>    .product-card:hover .product-card-bg {\n      opacity: 1.5;\n    }<\/p>\n<p>    .product-card-content {\n      position: relative;\n      z-index: 1;\n    }<\/p>\n<p>    .product-icon {\n      width: 72px;\n      height: 72px;\n      border-radius: 20px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      font-size: 2rem;\n      margin-bottom: 2rem;\n      position: relative;\n    }<\/p>\n<p>    .card-bowen .product-icon {\n      background: linear-gradient(135deg, rgba(108, 92, 231, .2), rgba(108, 92, 231, .05));\n      box-shadow: 0 0 40px var(--glow-1);\n    }<\/p>\n<p>    .card-zhian .product-icon {\n      background: linear-gradient(135deg, rgba(0, 206, 201, .2), rgba(0, 206, 201, .05));\n      box-shadow: 0 0 40px var(--glow-2);\n    }<\/p>\n<p>    .product-icon svg {\n      width: 36px;\n      height: 36px;\n    }<\/p>\n<p>    .product-card h3 {\n      font-size: 2rem;\n      font-weight: 700;\n      margin-bottom: 0.5rem;\n      letter-spacing: -0.01em;\n    }<\/p>\n<p>    .card-bowen h3 {\n      color: #a29bfe;\n    }<\/p>\n<p>    .card-zhian h3 {\n      color: #81ecec;\n    }<\/p>\n<p>    .product-card .product-en {\n      font-size: 0.8rem;\n      letter-spacing: 0.15em;\n      text-transform: uppercase;\n      color: var(--text-dim);\n      margin-bottom: 1.5rem;\n    }<\/p>\n<p>    .product-card p {\n      color: var(--text-dim);\n      font-size: 1rem;\n      line-height: 1.8;\n      margin-bottom: 2rem;\n    }<\/p>\n<p>    .product-tags {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 0.5rem;\n    }<\/p>\n<p>    .product-tags span {\n      padding: 0.3rem 0.8rem;\n      border-radius: 100px;\n      font-size: 0.75rem;\n      letter-spacing: 0.05em;\n    }<\/p>\n<p>    .card-bowen .product-tags span {\n      background: rgba(108, 92, 231, .12);\n      color: #a29bfe;\n      border: 1px solid rgba(108, 92, 231, .2);\n    }<\/p>\n<p>    .card-zhian .product-tags span {\n      background: rgba(0, 206, 201, .12);\n      color: #81ecec;\n      border: 1px solid rgba(0, 206, 201, .2);\n    }<\/p>\n<p>    \/* Floating orbs in cards *\/\n    .orb {\n      position: absolute;\n      border-radius: 50%;\n      filter: blur(60px);\n      pointer-events: none;\n      opacity: 0.3;\n      animation: orbFloat 8s ease-in-out infinite;\n    }<\/p>\n<p>    .card-bowen .orb {\n      width: 200px;\n      height: 200px;\n      background: var(--accent-1);\n      right: -40px;\n      top: -40px;\n    }<\/p>\n<p>    .card-zhian .orb {\n      width: 200px;\n      height: 200px;\n      background: var(--accent-2);\n      right: -40px;\n      top: -40px;\n      animation-delay: -4s;\n    }<\/p>\n<p>    \/* ==================== Metrics ==================== *\/\n    .metrics {\n      min-height: auto;\n      padding: 6rem 2rem;\n      background: radial-gradient(ellipse 80% 50% at 50% 50%, rgba(0, 206, 201, .05), transparent);\n    }<\/p>\n<p>    .metrics-grid {\n      display: grid;\n      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n      gap: 3rem;\n      max-width: 900px;\n      width: 100%;\n      text-align: center;\n    }<\/p>\n<p>    .metric-item {\n      padding: 2rem;\n    }<\/p>\n<p>    .metric-number {\n      font-size: clamp(2.5rem, 5vw, 3.5rem);\n      font-weight: 800;\n      letter-spacing: -0.03em;\n      background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\n      -webkit-background-clip: text;\n      -webkit-text-fill-color: transparent;\n      background-clip: text;\n      margin-bottom: 0.5rem;\n    }<\/p>\n<p>    .metric-label {\n      font-size: 0.85rem;\n      letter-spacing: 0.12em;\n      text-transform: uppercase;\n      color: var(--text-dim);\n    }<\/p>\n<p>    \/* ==================== Footer ==================== *\/\n    footer {\n      position: relative;\n      z-index: 2;\n      padding: 4rem 3rem 2rem;\n      border-top: 1px solid rgba(255, 255, 255, .05);\n      text-align: center;\n    }<\/p>\n<p>    .footer-brand {\n      font-size: 1.2rem;\n      font-weight: 700;\n      background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\n      -webkit-background-clip: text;\n      -webkit-text-fill-color: transparent;\n      background-clip: text;\n      margin-bottom: 1rem;\n    }<\/p>\n<p>    .footer-copy {\n      font-size: 0.8rem;\n      color: var(--text-dim);\n      letter-spacing: 0.05em;\n    }<\/p>\n<p>    \/* ==================== Reveal Animations ==================== *\/\n    .reveal {\n      opacity: 0;\n      transform: translateY(60px);\n      transition: opacity 0.8s cubic-bezier(.4, 0, .2, 1),\n        transform 0.8s cubic-bezier(.4, 0, .2, 1);\n    }<\/p>\n<p>    .reveal.visible {\n      opacity: 1;\n      transform: translateY(0);\n    }<\/p>\n<p>    .reveal-delay-1 {\n      transition-delay: 0.1s;\n    }<\/p>\n<p>    .reveal-delay-2 {\n      transition-delay: 0.2s;\n    }<\/p>\n<p>    .reveal-delay-3 {\n      transition-delay: 0.3s;\n    }<\/p>\n<p>    .reveal-delay-4 {\n      transition-delay: 0.4s;\n    }<\/p>\n<p>    \/* ==================== Keyframes ==================== *\/\n    @keyframes fadeInUp {\n      to {\n        opacity: 1;\n        transform: translateY(0);\n      }\n    }<\/p>\n<p>    @keyframes heroTextIn {\n      to {\n        opacity: 1;\n        transform: translateY(0) rotateX(0);\n      }\n    }<\/p>\n<p>    @keyframes gradientShift {<\/p>\n<p>      0%,\n      100% {\n        background-position: 0% 50%;\n      }<\/p>\n<p>      50% {\n        background-position: 100% 50%;\n      }\n    }<\/p>\n<p>    @keyframes scrollPulse {<\/p>\n<p>      0%,\n      100% {\n        opacity: 0.3;\n        transform: scaleY(1);\n      }<\/p>\n<p>      50% {\n        opacity: 1;\n        transform: scaleY(1.3);\n      }\n    }<\/p>\n<p>    @keyframes orbFloat {<\/p>\n<p>      0%,\n      100% {\n        transform: translate(0, 0) scale(1);\n      }<\/p>\n<p>      33% {\n        transform: translate(20px, -20px) scale(1.1);\n      }<\/p>\n<p>      66% {\n        transform: translate(-10px, 15px) scale(0.95);\n      }\n    }<\/p>\n<p>    \/* ==================== Responsive ==================== *\/\n    @media (max-width: 768px) {\n      nav {\n        padding: 1rem 1.5rem;\n      }<\/p>\n<p>      .nav-links {\n        gap: 1.5rem;\n      }<\/p>\n<p>      .nav-links a {\n        font-size: 0.8rem;\n      }<\/p>\n<p>      section {\n        padding: 4rem 1.5rem;\n      }<\/p>\n<p>      .product-card {\n        padding: 2rem;\n      }<\/p>\n<p>      .hero-cta {\n        flex-direction: column;\n        align-items: center;\n      }\n    }<\/p>\n<p>    @media (max-width: 480px) {\n      .nav-links {\n        display: none;\n      }\n    }\n  <\/style>\n<p><\/head><\/p>\n<p><body><\/p>\n<p>  <!-- Starfield Background --><br \/>\n  <canvas id=\"starfield\"><\/canvas><\/p>\n<p>  <!-- Cursor Glow --><\/p>\n<div class=\"cursor-glow\" id=\"cursorGlow\"><\/div>\n<p>  <!-- Navigation --><\/p>\n<nav id=\"mainNav\">\n<div class=\"logo\">\u535a\u96c5\u521b\u667a<\/div>\n<ul class=\"nav-links\">\n<li><a href=\"#about\">\u5173\u4e8e<\/a><\/li>\n<li><a href=\"#products\">\u4ea7\u54c1<\/a><\/li>\n<li><a href=\"#metrics\">\u6570\u636e<\/a><\/li>\n<\/ul>\n<\/nav>\n<p>  <!-- Hero Section --><\/p>\n<section class=\"hero\" id=\"hero\">\n<div class=\"hero-badge\">AI \u00b7 \u91cd\u65b0\u5b9a\u4e49\u672a\u6765<\/div>\n<h1>\n      <span class=\"line\">\u535a\u96c5\u521b\u667a<\/span><br \/>\n      <span class=\"line\"><span class=\"gradient-text\">\u535a\u60e0\u767e\u4e1a \u667a\u8fbe\u5343\u884c<\/span><\/span><br \/>\n    <\/h1>\n<p class=\"hero-sub\">\u8ba9\u53ef\u9760\u7684AI\u6210\u4e3a\u884c\u4e1a\u53d1\u5c55\u7684\u65b0\u52a8\u80fd<\/p>\n<div class=\"hero-cta\">\n      <a href=\"#products\" class=\"btn btn-primary\">\u63a2\u7d22\u4ea7\u54c1<\/a><br \/>\n      <a href=\"#about\" class=\"btn btn-ghost\">\u4e86\u89e3\u66f4\u591a<\/a>\n    <\/div>\n<div class=\"scroll-indicator\">\n      <span>\u5411\u4e0b\u6eda\u52a8<\/span><\/p>\n<div class=\"scroll-line\"><\/div>\n<\/p><\/div>\n<\/section>\n<p>  <!-- About Section --><\/p>\n<section class=\"about\" id=\"about\">\n<div class=\"section-label reveal\">\u5173\u4e8e\u6211\u4eec<\/div>\n<h2 class=\"reveal reveal-delay-1\">\n      \u535a\u96c5\u521b\u667a\u662f\u4e00\u5bb6<span class=\"highlight\">\u4eba\u5de5\u667a\u80fd<\/span>\u516c\u53f8<br \/>\n      \u81f4\u529b\u4e8e\u7528 AI \u6280\u672f<span class=\"highlight\">\u91cd\u5851\u4e16\u754c<\/span><br \/>\n    <\/h2>\n<p class=\"about-desc reveal reveal-delay-2\">\n      \u6211\u4eec\u76f8\u4fe1\u4eba\u5de5\u667a\u80fd\u5c06\u6210\u4e3a\u63a8\u52a8\u4eba\u7c7b\u6587\u660e\u8fdb\u6b65\u7684\u5173\u952e\u529b\u91cf\u3002\u535a\u96c5\u521b\u667a\u4ee5\u524d\u6cbf\u6280\u672f\u4e3a\u57fa\u77f3\uff0c\u4ee5\u4ea7\u54c1\u521b\u65b0\u4e3a\u9a71\u52a8\uff0c\u6784\u5efa\u9762\u5411\u672a\u6765\u7684\u667a\u80fd\u89e3\u51b3\u65b9\u6848\u3002\n    <\/p>\n<\/section>\n<p>  <!-- Products Section --><\/p>\n<section class=\"products\" id=\"products\">\n<div class=\"products-header\">\n<div class=\"section-label reveal\">\u6838\u5fc3\u4ea7\u54c1<\/div>\n<h2 class=\"reveal reveal-delay-1\">\u4e24\u5927\u4ea7\u54c1\uff0c\u9a71\u52a8\u667a\u80fd\u53d8\u9769<\/h2>\n<\/p><\/div>\n<div class=\"product-grid\">\n      <!-- \u535a\u6587 --><\/p>\n<div class=\"product-card card-bowen reveal reveal-delay-2\">\n<div class=\"product-card-bg\"><\/div>\n<div class=\"orb\"><\/div>\n<div class=\"product-card-content\">\n<div class=\"product-icon\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#a29bfe\" stroke-width=\"1.5\" stroke-linecap=\"round\"\n              stroke-linejoin=\"round\">\n              <path d=\"M12 2L2 7l10 5 10-5-10-5z\" \/>\n              <path d=\"M2 17l10 5 10-5\" \/>\n              <path d=\"M2 12l10 5 10-5\" \/>\n            <\/svg>\n          <\/div>\n<h3>\u535a\u6587<\/h3>\n<div class=\"product-en\">BoWen<\/div>\n<p>\u5927\u6a21\u578b\u5de5\u7a0b\u5316\u5e73\u53f0\uff0c\u663e\u8457\u63d0\u5347\u4f01\u4e1aAI\u5e94\u7528\u6548\u80fd\uff0c\u667a\u80fd\u4f53\u7814\u53d1\u5468\u671f\u964d\u4f4e75%\u4ee5\u4e0a<\/p>\n<div class=\"product-tags\">\n            <span>\u63d0\u793a\u8bcd\u5de5\u7a0b<\/span><br \/>\n            <span>RAG\u77e5\u8bc6\u5e93<\/span><br \/>\n            <span>\u62a5\u544a\u5e73\u53f0<\/span>\n          <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>      <!-- \u667a\u5b89 --><\/p>\n<div class=\"product-card card-zhian reveal reveal-delay-3\">\n<div class=\"product-card-bg\"><\/div>\n<div class=\"orb\"><\/div>\n<div class=\"product-card-content\">\n<div class=\"product-icon\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#81ecec\" stroke-width=\"1.5\" stroke-linecap=\"round\"\n              stroke-linejoin=\"round\">\n              <path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\" \/>\n              <path d=\"M9 12l2 2 4-4\" \/>\n            <\/svg>\n          <\/div>\n<h3>\u667a\u5b89<\/h3>\n<div class=\"product-en\">ZhiAn<\/div>\n<p>\u5b89\u5168\u751f\u4ea7\u667a\u7b97\u4e00\u4f53\u5316\u96c6\u6210\u8231\u201d\u5df2\u5e7f\u6cdb\u5e94\u7528\u4e8e\u80fd\u6e90\u5316\u5de5\u3001\u77ff\u5c71\u51b6\u91d1\u3001\u5efa\u7b51\u65bd\u5de5\u7b49\u9ad8\u5371\u884c\u4e1a\uff0c\u63d0\u5347\u5b89\u5168\u751f\u4ea7\u7ba1\u7406\u7684\u53ca\u65f6\u6027\u4e0e\u53ef\u9760\u6027\u3002<\/p>\n<div class=\"product-tags\">\n            <span>\u667a\u80fd\u5b89\u5168<\/span><br \/>\n            <span>\u98ce\u9669\u9884\u8b66<\/span><br \/>\n            <span>\u5b9e\u65f6\u5206\u6790<\/span>\n          <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section>\n<p>  <!-- Metrics Section --><\/p>\n<section class=\"metrics\" id=\"metrics\">\n<div class=\"metrics-grid\">\n<div class=\"metric-item reveal\">\n<div class=\"metric-number\" data-target=\"10\" data-suffix=\"+\">0<\/div>\n<div class=\"metric-label\">\u592e\u56fd\u4f01\u5ba2\u6237<\/div>\n<\/p><\/div>\n<div class=\"metric-item reveal reveal-delay-1\">\n<div class=\"metric-number\" data-target=\"50\" data-suffix=\"+\">0<\/div>\n<div class=\"metric-label\">\u843d\u5730AI\u9879\u76ee<\/div>\n<\/p><\/div>\n<div class=\"metric-item reveal reveal-delay-2\">\n<div class=\"metric-number\" data-target=\"99.9\" data-suffix=\"%\">0<\/div>\n<div class=\"metric-label\">\u5ba2\u6237\u6ee1\u610f\u5ea6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section>\n<p>  <!-- Footer --><\/p>\n<footer>\n<div class=\"footer-brand\">\u535a\u96c5\u521b\u667a<\/div>\n<div class=\"footer-copy\">&copy; 2026 \u535a\u96c5\u521b\u667a\uff08Boyatriz AI\uff09\u00b7 \u535a\u60e0\u767e\u4e1a \u667a\u8fbe\u5343\u884c<\/div>\n<\/footer>\n<p>  <script>\n    \/* ==================== Starfield ==================== *\/\n    (function initStarfield() {\n      const canvas = document.getElementById('starfield');\n      const ctx = canvas.getContext('2d');\n      let stars = [];\n      let shootingStars = [];\n      const STAR_COUNT = 300;<\/p>\n<p>      function resize() {\n        canvas.width = window.innerWidth;\n        canvas.height = window.innerHeight;\n      }<\/p>\n<p>      function createStars() {\n        stars = [];\n        for (let i = 0; i < STAR_COUNT; i++) {\n          stars.push({\n            x: Math.random() * canvas.width,\n            y: Math.random() * canvas.height,\n            r: Math.random() * 1.5 + 0.3,\n            alpha: Math.random(),\n            speed: Math.random() * 0.0008 + 0.0002,\n            phase: Math.random() * Math.PI * 2\n          });\n        }\n      }\n\n      function maybeSpawnShootingStar() {\n        if (Math.random() < 0.003 &#038;&#038; shootingStars.length < 2) {\n          shootingStars.push({\n            x: Math.random() * canvas.width,\n            y: Math.random() * canvas.height * 0.4,\n            len: Math.random() * 80 + 40,\n            speed: Math.random() * 6 + 4,\n            angle: Math.PI \/ 4 + Math.random() * 0.3,\n            alpha: 1,\n            decay: Math.random() * 0.015 + 0.01\n          });\n        }\n      }\n\n      function draw(time) {\n        ctx.clearRect(0, 0, canvas.width, canvas.height);\n\n        \/\/ Stars\n        for (const s of stars) {\n          const twinkle = Math.sin(time * s.speed + s.phase) * 0.5 + 0.5;\n          ctx.beginPath();\n          ctx.arc(s.x, s.y, s.r, 0, Math.PI * 2);\n          ctx.fillStyle = `rgba(200, 200, 240, ${s.alpha * twinkle * 0.8})`;\n          ctx.fill();\n        }\n\n        \/\/ Shooting stars\n        maybeSpawnShootingStar();\n        for (let i = shootingStars.length - 1; i >= 0; i--) {\n          const ss = shootingStars[i];\n          const endX = ss.x - Math.cos(ss.angle) * ss.len;\n          const endY = ss.y - Math.sin(ss.angle) * ss.len;<\/p>\n<p>          const gradient = ctx.createLinearGradient(ss.x, ss.y, endX, endY);\n          gradient.addColorStop(0, `rgba(200, 200, 255, ${ss.alpha})`);\n          gradient.addColorStop(1, `rgba(200, 200, 255, 0)`);<\/p>\n<p>          ctx.beginPath();\n          ctx.moveTo(ss.x, ss.y);\n          ctx.lineTo(endX, endY);\n          ctx.strokeStyle = gradient;\n          ctx.lineWidth = 1.5;\n          ctx.stroke();<\/p>\n<p>          ss.x += Math.cos(ss.angle) * ss.speed;\n          ss.y += Math.sin(ss.angle) * ss.speed;\n          ss.alpha -= ss.decay;<\/p>\n<p>          if (ss.alpha <= 0) shootingStars.splice(i, 1);\n        }\n\n        requestAnimationFrame(draw);\n      }\n\n      resize();\n      createStars();\n      requestAnimationFrame(draw);\n      window.addEventListener('resize', () => { resize(); createStars(); });\n    })();<\/p>\n<p>    \/* ==================== Cursor Glow ==================== *\/\n    (function initCursorGlow() {\n      const glow = document.getElementById('cursorGlow');\n      let mx = -300, my = -300;\n      let cx = -300, cy = -300;<\/p>\n<p>      document.addEventListener('mousemove', e => {\n        mx = e.clientX;\n        my = e.clientY;\n      });<\/p>\n<p>      function animate() {\n        cx += (mx - cx) * 0.08;\n        cy += (my - cy) * 0.08;\n        glow.style.left = cx + 'px';\n        glow.style.top = cy + 'px';\n        requestAnimationFrame(animate);\n      }\n      animate();\n    })();<\/p>\n<p>    \/* ==================== Scroll Reveal ==================== *\/\n    (function initReveal() {\n      const observer = new IntersectionObserver(entries => {\n        entries.forEach(entry => {\n          if (entry.isIntersecting) {\n            entry.target.classList.add('visible');\n          }\n        });\n      }, { threshold: 0.15, rootMargin: '0px 0px -50px 0px' });<\/p>\n<p>      document.querySelectorAll('.reveal').forEach(el => observer.observe(el));\n    })();<\/p>\n<p>    \/* ==================== Nav Hide on Scroll ==================== *\/\n    (function initNav() {\n      const nav = document.getElementById('mainNav');\n      let lastScroll = 0;<\/p>\n<p>      window.addEventListener('scroll', () => {\n        const current = window.scrollY;\n        if (current > lastScroll && current > 100) {\n          nav.classList.add('hidden');\n        } else {\n          nav.classList.remove('hidden');\n        }\n        lastScroll = current;\n      });\n    })();<\/p>\n<p>    \/* ==================== Counter Animation ==================== *\/\n    (function initCounters() {\n      const counters = document.querySelectorAll('.metric-number');<\/p>\n<p>      const observer = new IntersectionObserver(entries => {\n        entries.forEach(entry => {\n          if (!entry.isIntersecting) return;\n          const el = entry.target;\n          if (el.dataset.counted) return;\n          el.dataset.counted = 'true';<\/p>\n<p>          const target = parseFloat(el.dataset.target);\n          const suffix = el.dataset.suffix || '';\n          const isDecimal = target % 1 !== 0;\n          const duration = 2000;\n          const start = performance.now();<\/p>\n<p>          function update(now) {\n            const elapsed = now - start;\n            const progress = Math.min(elapsed \/ duration, 1);\n            const eased = 1 - Math.pow(1 - progress, 3);\n            const current = target * eased;<\/p>\n<p>            el.textContent = (isDecimal ? current.toFixed(1) : Math.floor(current)) + suffix;<\/p>\n<p>            if (progress < 1) requestAnimationFrame(update);\n          }\n\n          requestAnimationFrame(update);\n        });\n      }, { threshold: 0.5 });\n\n      counters.forEach(c => observer.observe(c));\n    })();<\/p>\n<p>    \/* ==================== Parallax on Scroll ==================== *\/\n    (function initParallax() {\n      const hero = document.querySelector('.hero h1');\n      const heroSub = document.querySelector('.hero-sub');<\/p>\n<p>      window.addEventListener('scroll', () => {\n        const y = window.scrollY;\n        if (y < window.innerHeight) {\n          const factor = y * 0.3;\n          hero.style.transform = `translateY(${factor}px)`;\n          heroSub.style.transform = `translateY(${factor * 0.6}px)`;\n          heroSub.style.opacity = Math.max(0, 1 - y \/ (window.innerHeight * 0.5));\n        }\n      });\n    })();\n\n    \/* ==================== Card Tilt Effect ==================== *\/\n    (function initTilt() {\n      document.querySelectorAll('.product-card').forEach(card => {\n        card.addEventListener('mousemove', e => {\n          const rect = card.getBoundingClientRect();\n          const x = (e.clientX - rect.left) \/ rect.width - 0.5;\n          const y = (e.clientY - rect.top) \/ rect.height - 0.5;\n          card.style.transform = `translateY(-8px) perspective(800px) rotateX(${-y * 6}deg) rotateY(${x * 6}deg)`;\n        });<\/p>\n<p>        card.addEventListener('mouseleave', () => {\n          card.style.transform = '';\n        });\n      });\n    })();\n  <\/script><br \/>\n<\/body><\/p>\n<p><\/html><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u535a\u96c5\u521b\u667a \u2014 \u535a\u60e0\u767e\u4e1a \u667a\u8fbe\u5343\u884c \u535a\u96c5\u521b\u667a \u5173\u4e8e \u4ea7\u54c1 \u6570\u636e AI \u00b7 \u91cd\u65b0\u5b9a\u4e49\u672a\u6765 \u535a\u96c5\u521b\u667a \u535a\u60e0\u767e\u4e1a \u667a\u8fbe\u5343\u884c \u8ba9\u53ef\u9760\u7684AI\u6210\u4e3a\u884c\u4e1a\u53d1\u5c55\u7684\u65b0\u52a8\u80fd \u63a2\u7d22\u4ea7\u54c1 \u4e86\u89e3\u66f4\u591a \u5411\u4e0b\u6eda\u52a8 \u5173\u4e8e\u6211\u4eec \u535a\u96c5\u521b\u667a\u662f\u4e00\u5bb6\u4eba\u5de5\u667a\u80fd\u516c\u53f8 \u81f4\u529b\u4e8e\u7528 AI \u6280\u672f\u91cd\u5851\u4e16\u754c \u6211\u4eec\u76f8\u4fe1\u4eba\u5de5\u667a\u80fd\u5c06\u6210\u4e3a\u63a8\u52a8\u4eba\u7c7b\u6587\u660e\u8fdb\u6b65\u7684\u5173\u952e\u529b\u91cf\u3002\u535a\u96c5\u521b\u667a\u4ee5\u524d\u6cbf\u6280\u672f\u4e3a\u57fa\u77f3\uff0c\u4ee5\u4ea7\u54c1\u521b\u65b0\u4e3a\u9a71\u52a8\uff0c\u6784\u5efa\u9762\u5411\u672a\u6765\u7684\u667a\u80fd\u89e3\u51b3\u65b9\u6848\u3002 \u6838\u5fc3\u4ea7\u54c1 \u4e24\u5927\u4ea7\u54c1\uff0c\u9a71\u52a8\u667a\u80fd\u53d8\u9769 \u535a\u6587 BoWen \u5927\u6a21\u578b\u5de5\u7a0b\u5316\u5e73\u53f0\uff0c\u663e\u8457\u63d0\u5347\u4f01\u4e1aAI\u5e94\u7528\u6548\u80fd\uff0c\u667a\u80fd\u4f53\u7814\u53d1\u5468\u671f\u964d\u4f4e75%\u4ee5\u4e0a \u63d0\u793a\u8bcd\u5de5\u7a0b RAG\u77e5\u8bc6\u5e93 \u62a5\u544a\u5e73\u53f0 \u667a\u5b89 ZhiAn \u5b89\u5168\u751f\u4ea7\u667a\u7b97\u4e00\u4f53\u5316\u96c6\u6210\u8231\u201d\u5df2\u5e7f\u6cdb\u5e94\u7528\u4e8e\u80fd\u6e90\u5316\u5de5\u3001\u77ff\u5c71\u51b6\u91d1\u3001\u5efa\u7b51\u65bd\u5de5\u7b49\u9ad8\u5371\u884c\u4e1a\uff0c\u63d0\u5347\u5b89\u5168\u751f\u4ea7\u7ba1\u7406\u7684\u53ca\u65f6\u6027\u4e0e\u53ef\u9760\u6027\u3002 \u667a\u80fd\u5b89\u5168 \u98ce\u9669\u9884\u8b66 \u5b9e\u65f6\u5206\u6790 0 \u592e\u56fd\u4f01\u5ba2\u6237 0 \u843d\u5730AI\u9879\u76ee 0 \u5ba2\u6237\u6ee1\u610f\u5ea6 \u535a\u96c5\u521b\u667a &copy; 2026 \u535a\u96c5\u521b\u667a\uff08Boyatriz AI\uff09\u00b7 \u535a\u60e0\u767e\u4e1a \u667a\u8fbe\u5343\u884c<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-7","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/boyatriz.ai\/index.php?rest_route=\/wp\/v2\/pages\/7","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/boyatriz.ai\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/boyatriz.ai\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/boyatriz.ai\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/boyatriz.ai\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=7"}],"version-history":[{"count":1,"href":"https:\/\/boyatriz.ai\/index.php?rest_route=\/wp\/v2\/pages\/7\/revisions"}],"predecessor-version":[{"id":8,"href":"https:\/\/boyatriz.ai\/index.php?rest_route=\/wp\/v2\/pages\/7\/revisions\/8"}],"wp:attachment":[{"href":"https:\/\/boyatriz.ai\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}