Files
upage-git/upage/faq.html
2025-09-29 03:02:50 +00:00

144 lines
42 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="zh-Hans" dir="ltr" class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-faq" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.9.0">
<title data-rh="true">常见问题 | UPage 文档</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://halo-dev.github.io/upage/img/social-card.png"><meta data-rh="true" name="twitter:image" content="https://halo-dev.github.io/upage/img/social-card.png"><meta data-rh="true" property="og:url" content="https://halo-dev.github.io/upage/faq"><meta data-rh="true" property="og:locale" content="zh_Hans"><meta data-rh="true" name="docusaurus_locale" content="zh-Hans"><meta data-rh="true" name="docsearch:language" content="zh-Hans"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="常见问题 | UPage 文档"><meta data-rh="true" name="description" content="本文档整理了使用 UPage 时的常见问题和解答,帮助您快速解决可能遇到的问题。"><meta data-rh="true" property="og:description" content="本文档整理了使用 UPage 时的常见问题和解答,帮助您快速解决可能遇到的问题。"><link data-rh="true" rel="icon" href="/upage/../public/favicon.svg"><link data-rh="true" rel="canonical" href="https://halo-dev.github.io/upage/faq"><link data-rh="true" rel="alternate" href="https://halo-dev.github.io/upage/faq" hreflang="zh-Hans"><link data-rh="true" rel="alternate" href="https://halo-dev.github.io/upage/faq" hreflang="x-default"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"常见问题","item":"https://halo-dev.github.io/upage/faq"}]}</script><link rel="stylesheet" href="/upage/assets/css/styles.8ea0c4aa.css">
<script src="/upage/assets/js/runtime~main.8350f77c.js" defer="defer"></script>
<script src="/upage/assets/js/main.648541e0.js" defer="defer"></script>
</head>
<body class="navigation-with-keyboard">
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")),document.documentElement.setAttribute("data-theme-choice",t||"system")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="跳到主要内容"><a class="skipToContent_SnWU" href="#__docusaurus_skipToContent_fallback">跳到主要内容</a></div><nav aria-label="主导航" class="theme-layout-navbar navbar navbar--fixed-top"><div class="navbar__inner"><div class="theme-layout-navbar-left navbar__items"><button aria-label="切换导航栏" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/upage/"><div class="navbar__logo"><img src="/upage/img/logo.svg" alt="UPage Logo" class="themedComponent_PxYp themedComponent--light_BsnN"><img src="/upage/img/logo.svg" alt="UPage Logo" class="themedComponent_PxYp themedComponent--dark_P6BI"></div><b class="navbar__title text--truncate">UPage</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/upage/">使用文档</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><a href="https://github.com/halo-dev/upage" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">GitHub<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_xtnk"><use href="#theme-svg-external-link"></use></svg></a><div class="toggle_crTl colorModeToggle_eWi8"><button class="clean-btn toggleButton_BQDk toggleButtonDisabled_lECB" type="button" disabled="" title="system mode" aria-label="切换浅色/暗黑模式当前为system mode"><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_KZAc lightToggleIcon_LT1z"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_KZAc darkToggleIcon_fJCx"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_KZAc systemToggleIcon_m6ZP"><path fill="currentColor" d="m12 21c4.971 0 9-4.029 9-9s-4.029-9-9-9-9 4.029-9 9 4.029 9 9 9zm4.95-13.95c1.313 1.313 2.05 3.093 2.05 4.95s-0.738 3.637-2.05 4.95c-1.313 1.313-3.093 2.05-4.95 2.05v-14c1.857 0 3.637 0.737 4.95 2.05z"></path></svg></button></div><div class="navbarSearchContainer_GyVn"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="theme-layout-main main-wrapper mainWrapper_fO6_"><div class="docsWrapper_G3eT"><button aria-label="回到顶部" class="clean-btn theme-back-to-top-button backToTopButton_nMBz" type="button"></button><div class="docRoot_iPwj"><aside class="theme-doc-sidebar-container docSidebarContainer_Yovm"><div class="sidebarViewport_e1um"><div class="sidebar_xcav"><nav aria-label="文档侧边栏" class="menu thin-scrollbar menu_EjuG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/upage/"><span title="首页" class="linkLabel_fmgc">首页</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/upage/quick-start"><span title="快速开始" class="linkLabel_fmgc">快速开始</span></a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink__DnE menu__link menu__link--sublist" href="/upage/deployment-guide"><span title="部署指南" class="categoryLinkLabel_rUKM">部署指南</span></a><button aria-label="展开侧边栏分类 &#x27;部署指南&#x27;" aria-expanded="false" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/upage/configuration"><span title="配置参考" class="linkLabel_fmgc">配置参考</span></a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink__DnE menu__link menu__link--sublist" href="/upage/user-guide"><span title="用户指南" class="categoryLinkLabel_rUKM">用户指南</span></a><button aria-label="展开侧边栏分类 &#x27;用户指南&#x27;" aria-expanded="false" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink__DnE menu__link menu__link--sublist" href="/upage/contributing"><span title="贡献指南" class="categoryLinkLabel_rUKM">贡献指南</span></a><button aria-label="展开侧边栏分类 &#x27;贡献指南&#x27;" aria-expanded="false" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" href="/upage/faq"><span title="常见问题" class="linkLabel_fmgc">常见问题</span></a></li></ul></nav></div></div></aside><main class="docMainContainer_WqOS"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_s9lu"><div class="docItemContainer_Wij8"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_dPwh" aria-label="页面路径"><ul class="breadcrumbs"><li class="breadcrumbs__item"><a aria-label="主页面" class="breadcrumbs__link" href="/upage/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_xzA8"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link">常见问题</span></li></ul></nav><div class="tocCollapsible_S5VF theme-doc-toc-mobile tocMobile_gigA"><button type="button" class="clean-btn tocCollapsibleButton_wmrO">本页总览</button></div><div class="theme-doc-markdown markdown"><header><h1>常见问题</h1></header>
<p>本文档整理了使用 UPage 时的常见问题和解答,帮助您快速解决可能遇到的问题。</p>
<h2 class="anchor anchorWithStickyNavbar_hmm4" id="基本问题">基本问题<a href="#基本问题" class="hash-link" aria-label="基本问题的直接链接" title="基本问题的直接链接" translate="no"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-是什么">UPage 是什么?<a href="#upage-是什么" class="hash-link" aria-label="UPage 是什么?的直接链接" title="UPage 是什么?的直接链接" translate="no"></a></h3>
<p>UPage 是一款基于大模型的可视化网页构建平台,支持多种 AI 提供商集成,基于自然语言快速实现定制化网页。它允许用户通过简单的文字描述生成完整的网页,并提供可视化编辑工具进行进一步定制。</p>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-适合哪些用户">UPage 适合哪些用户?<a href="#upage-适合哪些用户" class="hash-link" aria-label="UPage 适合哪些用户?的直接链接" title="UPage 适合哪些用户?的直接链接" translate="no"></a></h3>
<p>UPage 适合各类需要快速创建网页的用户,包括但不限于:</p>
<ul>
<li>开发者:快速创建原型和演示页面</li>
<li>设计师:将设计理念转化为实际网页</li>
<li>内容创作者:创建展示内容的网页</li>
<li>营销人员:制作营销着陆页</li>
<li>小企业主:创建企业网站和产品展示页面</li>
<li>教育工作者:制作教学资源和课程页面</li>
</ul>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-是开源的吗">UPage 是开源的吗?<a href="#upage-是开源的吗" class="hash-link" aria-label="UPage 是开源的吗?的直接链接" title="UPage 是开源的吗?的直接链接" translate="no"></a></h3>
<p>是的UPage 是一个开源项目,采用 <a href="https://github.com/halo-dev/upage/blob/main/LICENSE.txt" target="_blank" rel="noopener noreferrer">基于 GPLv3 的补充协议许可证</a>。您可以在 <a href="https://github.com/halo-dev/upage" target="_blank" rel="noopener noreferrer">GitHub</a> 上查看源代码,也可以参与项目开发和改进。</p>
<h2 class="anchor anchorWithStickyNavbar_hmm4" id="安装和部署">安装和部署<a href="#安装和部署" class="hash-link" aria-label="安装和部署的直接链接" title="安装和部署的直接链接" translate="no"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何安装-upage">如何安装 UPage<a href="#如何安装-upage" class="hash-link" aria-label="如何安装 UPage的直接链接" title="如何安装 UPage的直接链接" translate="no"></a></h3>
<p>UPage 提供多种安装方式,最简单的方法是使用 Docker</p>
<div class="language-bash codeBlockContainer_tLQ_ theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_HMSW"><pre tabindex="0" class="prism-code language-bash codeBlock_HMKa thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_tPUF"><span class="token-line" style="color:#393A34"><span class="token plain">docker run -d \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --name upage \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --restart unless-stopped \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -p 3000:3000 \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -e LLM_PROVIDER=OpenAILike \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -e PROVIDER_BASE_URL=your-openai-like-api-base-url \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -e PROVIDER_API_KEY=your-openai-like-api-key \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -e LLM_DEFAULT_MODEL=your-default-model \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -e LLM_MINOR_MODEL=your-minor-model \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -v ./data:/app/data \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -v ./logs:/app/logs \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -v ./storage:/app/storage \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> halo-dev/upage:latest</span><br></span></code></pre></div></div>
<p>详细的安装说明请参考<a href="/upage/quick-start">快速开始</a>文档。</p>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-的系统要求是什么">UPage 的系统要求是什么?<a href="#upage-的系统要求是什么" class="hash-link" aria-label="UPage 的系统要求是什么?的直接链接" title="UPage 的系统要求是什么?的直接链接" translate="no"></a></h3>
<p>UPage 的最低系统要求:</p>
<ul>
<li>Docker 20.10.0 或更高版本(如果使用 Docker 部署)</li>
<li>Node.js 18.18.0 或更高版本(如果源码部署)</li>
<li>至少 2GB 可用内存</li>
<li>至少 2GB 可用磁盘空间</li>
<li>互联网连接(用于访问 AI API</li>
</ul>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何更新-upage">如何更新 UPage<a href="#如何更新-upage" class="hash-link" aria-label="如何更新 UPage的直接链接" title="如何更新 UPage的直接链接" translate="no"></a></h3>
<p>如果使用 Docker 部署,可以按照以下步骤更新 UPage</p>
<div class="language-bash codeBlockContainer_tLQ_ theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_HMSW"><pre tabindex="0" class="prism-code language-bash codeBlock_HMKa thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_tPUF"><span class="token-line" style="color:#393A34"><span class="token plain"># 拉取最新镜像</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">docker pull halo-dev/upage:latest</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"># 停止并删除旧容器</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">docker stop upage</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">docker rm upage</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"># 使用新镜像启动容器(使用与之前相同的环境变量和挂载)</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">docker run -d \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --name upage \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> --restart unless-stopped \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> -p 3000:3000 \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> ... # 其他环境变量和挂载</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"> halo-dev/upage:latest</span><br></span></code></pre></div></div>
<p>如果使用 Docker Compose则可以执行</p>
<div class="language-bash codeBlockContainer_tLQ_ theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_HMSW"><pre tabindex="0" class="prism-code language-bash codeBlock_HMKa thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_tPUF"><span class="token-line" style="color:#393A34"><span class="token plain">docker-compose pull</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">docker-compose down</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">docker-compose up -d</span><br></span></code></pre></div></div>
<h2 class="anchor anchorWithStickyNavbar_hmm4" id="ai-集成">AI 集成<a href="#ai-集成" class="hash-link" aria-label="AI 集成的直接链接" title="AI 集成的直接链接" translate="no"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-支持哪些-ai-提供商">UPage 支持哪些 AI 提供商?<a href="#upage-支持哪些-ai-提供商" class="hash-link" aria-label="UPage 支持哪些 AI 提供商?的直接链接" title="UPage 支持哪些 AI 提供商?的直接链接" translate="no"></a></h3>
<p>UPage 支持多种 AI 提供商,包括:</p>
<ul>
<li>DeepSeekDeepSeek-Chat、DeepSeek-Reasoner</li>
<li>OpenAIGPT-4o、GPT-5 等)</li>
<li>Anthropic Claude</li>
<li>Google Gemini</li>
<li>兼容 OpenAI 接口的服务(如 Azure OpenAI、智谱 AI 等)</li>
<li>Ollama本地部署的开源模型</li>
</ul>
<p>所有支持的 AI 提供商请参考<a href="/upage/configuration#ai-%E6%8F%90%E4%BE%9B%E5%95%86%E9%85%8D%E7%BD%AE">配置参考- AI 提供商配置</a>文档。</p>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何配置-ai-提供商">如何配置 AI 提供商?<a href="#如何配置-ai-提供商" class="hash-link" aria-label="如何配置 AI 提供商?的直接链接" title="如何配置 AI 提供商?的直接链接" translate="no"></a></h3>
<p>通过环境变量配置 AI 提供商,例如:</p>
<div class="language-bash codeBlockContainer_tLQ_ theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_HMSW"><pre tabindex="0" class="prism-code language-bash codeBlock_HMKa thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_tPUF"><span class="token-line" style="color:#393A34"><span class="token plain"># OpenAI</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">-e LLM_PROVIDER=OpenAI \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">-e PROVIDER_API_KEY=your-openai-api-key \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">-e LLM_DEFAULT_MODEL=gpt-4-turbo \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">-e LLM_MINOR_MODEL=gpt-3.5-turbo</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"># Anthropic Claude</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">-e LLM_PROVIDER=Anthropic \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">-e PROVIDER_API_KEY=your-anthropic-api-key \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">-e LLM_DEFAULT_MODEL=claude-3-opus-20240229 \</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">-e LLM_MINOR_MODEL=claude-3-haiku-20240307</span><br></span></code></pre></div></div>
<p>详细的配置选项请参考<a href="/upage/configuration#ai-%E6%8F%90%E4%BE%9B%E5%95%86%E9%85%8D%E7%BD%AE">配置参考 - AI 提供商配置</a>文档。</p>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="使用-ai-生成页面需要多少-token">使用 AI 生成页面需要多少 token<a href="#使用-ai-生成页面需要多少-token" class="hash-link" aria-label="使用 AI 生成页面需要多少 token的直接链接" title="使用 AI 生成页面需要多少 token的直接链接" translate="no"></a></h3>
<p>生成一个标准页面通常需要 2,000-10,000 个 token具体取决于页面的复杂度和内容量。复杂的页面可能需要更多 token。UPage 会尽可能优化 prompt尽量减少 token 消耗。</p>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何优化-ai-提示以获得更好的结果">如何优化 AI 提示以获得更好的结果?<a href="#如何优化-ai-提示以获得更好的结果" class="hash-link" aria-label="如何优化 AI 提示以获得更好的结果?的直接链接" title="如何优化 AI 提示以获得更好的结果?的直接链接" translate="no"></a></h3>
<p>有效的 AI 提示应该:</p>
<ul>
<li>明确指定页面类型和目的</li>
<li>列出所需的主要组件和内容</li>
<li>描述设计风格和布局偏好</li>
<li>提供具体的内容示例或要求</li>
<li>使用清晰、具体的语言</li>
</ul>
<p>例如:</p>
<div class="language-text codeBlockContainer_tLQ_ theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_HMSW"><pre tabindex="0" class="prism-code language-text codeBlock_HMKa thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_tPUF"><span class="token-line" style="color:#393A34"><span class="token plain">创建一个现代风格的产品登录页面,用于展示我们的智能手表产品。页面应包含:</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">1. 顶部导航栏,带有品牌标志和菜单</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">2. 醒目的标题和副标题,强调产品的主要卖点</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">3. 产品图片展示区包含至少3张不同角度的产品图</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">...</span><br></span></code></pre></div></div>
<p>你可以使用 UPage 的优化提示功能来优化您的提示。</p>
<h2 class="anchor anchorWithStickyNavbar_hmm4" id="使用问题">使用问题<a href="#使用问题" class="hash-link" aria-label="使用问题的直接链接" title="使用问题的直接链接" translate="no"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何编辑-ai-生成的页面">如何编辑 AI 生成的页面?<a href="#如何编辑-ai-生成的页面" class="hash-link" aria-label="如何编辑 AI 生成的页面?的直接链接" title="如何编辑 AI 生成的页面?的直接链接" translate="no"></a></h3>
<ol>
<li>在页面列表中选择要编辑的页面</li>
<li>使用可视化编辑器点击要修改的页面元素</li>
<li>对于文本组件,可以直接输入文本进行修改</li>
<li>对于图片组件,可以点击上传图片进行替换</li>
<li>使用弹出的属性面板修改组件属性和样式</li>
<li>也可以使用 AI 辅助功能进行局部或整体调整</li>
</ol>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-支持响应式设计吗">UPage 支持响应式设计吗?<a href="#upage-支持响应式设计吗" class="hash-link" aria-label="UPage 支持响应式设计吗?的直接链接" title="UPage 支持响应式设计吗?的直接链接" translate="no"></a></h3>
<p>是的UPage 生成的页面默认支持响应式设计,可以自动适应不同屏幕尺寸。您可以在编辑器中预览页面在不同设备上的显示效果,并进行针对性调整。如果生成的页面不符合您的预期,您可以尝试使用 AI 辅助调整。</p>
<h2 class="anchor anchorWithStickyNavbar_hmm4" id="数据和安全">数据和安全<a href="#数据和安全" class="hash-link" aria-label="数据和安全的直接链接" title="数据和安全的直接链接" translate="no"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-如何存储数据">UPage 如何存储数据?<a href="#upage-如何存储数据" class="hash-link" aria-label="UPage 如何存储数据?的直接链接" title="UPage 如何存储数据?的直接链接" translate="no"></a></h3>
<p>UPage 使用 SQLite 数据库存储页面数据和用户配置,存储在挂载的 <code>data</code> 目录中。上传的文件和资源存储在挂载的 <code>storage</code> 目录中。日志文件存储在挂载的 <code>logs</code> 目录中。</p>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何备份-upage-数据">如何备份 UPage 数据?<a href="#如何备份-upage-数据" class="hash-link" aria-label="如何备份 UPage 数据?的直接链接" title="如何备份 UPage 数据?的直接链接" translate="no"></a></h3>
<p>备份 UPage 数据的最简单方法是备份挂载的数据目录:</p>
<div class="language-bash codeBlockContainer_tLQ_ theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_HMSW"><pre tabindex="0" class="prism-code language-bash codeBlock_HMKa thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_tPUF"><span class="token-line" style="color:#393A34"><span class="token plain"># 备份数据目录</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">tar -czf upage-data-backup-$(date +%Y%m%d).tar.gz ./data</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"># 备份存储目录</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">tar -czf upage-storage-backup-$(date +%Y%m%d).tar.gz ./storage</span><br></span></code></pre></div></div>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-如何处理用户隐私">UPage 如何处理用户隐私?<a href="#upage-如何处理用户隐私" class="hash-link" aria-label="UPage 如何处理用户隐私?的直接链接" title="UPage 如何处理用户隐私?的直接链接" translate="no"></a></h3>
<p>UPage 本身不会收集或传输用户数据,除非明确配置。当使用 AI 功能时,页面内容会发送到配置的 AI 提供商进行处理。请确保您使用的 AI 提供商符合您的隐私要求。</p>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何配置-upage-的多用户">如何配置 UPage 的多用户?<a href="#如何配置-upage-的多用户" class="hash-link" aria-label="如何配置 UPage 的多用户?的直接链接" title="如何配置 UPage 的多用户?的直接链接" translate="no"></a></h3>
<p>UPage 支持通过 Logto 进行用户认证和访问控制。详细配置请参考<a href="/upage/deployment/logto">Logto 认证集成</a>文档。</p>
<h2 class="anchor anchorWithStickyNavbar_hmm4" id="故障排除">故障排除<a href="#故障排除" class="hash-link" aria-label="故障排除的直接链接" title="故障排除的直接链接" translate="no"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="页面生成失败怎么办">页面生成失败怎么办?<a href="#页面生成失败怎么办" class="hash-link" aria-label="页面生成失败怎么办?的直接链接" title="页面生成失败怎么办?的直接链接" translate="no"></a></h3>
<p>如果页面生成失败,可能的原因和解决方法:</p>
<ol>
<li><strong>AI API 连接问题</strong>:检查网络连接和 API 密钥是否正确</li>
<li><strong>提示过于复杂</strong>:尝试简化页面描述,分步骤生成</li>
<li><strong>token 限制</strong>:检查是否达到 AI 提供商的 token 限制</li>
<li><strong>模型不支持</strong>:尝试使用更强大的模型或不同的 AI 提供商</li>
<li><strong>生成内容超过限制</strong>UPage 默认限制单次回答不超过 3 次 Token 上限,您可以尝试分步骤生成</li>
</ol>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何查看系统日志">如何查看系统日志?<a href="#如何查看系统日志" class="hash-link" aria-label="如何查看系统日志?的直接链接" title="如何查看系统日志?的直接链接" translate="no"></a></h3>
<p>默认情况下UPage 会将日志保存在挂载的 <code>logs</code> 目录中,可以通过以下方式查看系统日志:</p>
<div class="language-bash codeBlockContainer_tLQ_ theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_HMSW"><pre tabindex="0" class="prism-code language-bash codeBlock_HMKa thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_tPUF"><span class="token-line" style="color:#393A34"><span class="token plain"># 查看容器日志</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">docker logs upage</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"># 查看错误日志文件</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">cat logs/error-*.log</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"># 查看所有日志文件</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">cat logs/combined-*.log</span><br></span></code></pre></div></div>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何解决数据库错误">如何解决数据库错误?<a href="#如何解决数据库错误" class="hash-link" aria-label="如何解决数据库错误?的直接链接" title="如何解决数据库错误?的直接链接" translate="no"></a></h3>
<p>如果遇到数据库相关错误,可以尝试:</p>
<ol>
<li>检查数据目录的权限:<code>chmod -R 755 ./data</code></li>
<li>备份并重新初始化数据库:<!-- -->
<div class="language-bash codeBlockContainer_tLQ_ theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_HMSW"><pre tabindex="0" class="prism-code language-bash codeBlock_HMKa thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_tPUF"><span class="token-line" style="color:#393A34"><span class="token plain"># 备份当前数据库</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">cp ./data/upage.db ./data/upage.db.bak</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"># 删除并重新初始化</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">rm ./data/upage.db</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">docker restart upage</span><br></span></code></pre></div></div>
</li>
</ol>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="容器无法启动怎么办">容器无法启动怎么办?<a href="#容器无法启动怎么办" class="hash-link" aria-label="容器无法启动怎么办?的直接链接" title="容器无法启动怎么办?的直接链接" translate="no"></a></h3>
<p>如果 Docker 容器无法启动,可以尝试:</p>
<ol>
<li>检查日志:<code>docker logs upage</code></li>
<li>验证环境变量:确保所有必需的环境变量都已正确设置</li>
<li>检查磁盘空间:确保有足够的磁盘空间</li>
<li>检查端口冲突:确保端口 3000 没有被其他服务占用</li>
<li>检查文件权限:确保挂载的目录具有正确的权限</li>
</ol>
<h2 class="anchor anchorWithStickyNavbar_hmm4" id="高级问题">高级问题<a href="#高级问题" class="hash-link" aria-label="高级问题的直接链接" title="高级问题的直接链接" translate="no"></a></h2>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="upage-支持插件系统吗">UPage 支持插件系统吗?<a href="#upage-支持插件系统吗" class="hash-link" aria-label="UPage 支持插件系统吗?的直接链接" title="UPage 支持插件系统吗?的直接链接" translate="no"></a></h3>
<p>UPage 不提供正式的插件系统,但作为开源项目,您可以通过 fork 代码库并进行修改来扩展功能。</p>
<h3 class="anchor anchorWithStickyNavbar_hmm4" id="如何与现有系统集成">如何与现有系统集成?<a href="#如何与现有系统集成" class="hash-link" aria-label="如何与现有系统集成?的直接链接" title="如何与现有系统集成?的直接链接" translate="no"></a></h3>
<p>UPage 提供多种集成方式:</p>
<ol>
<li><strong>API 集成</strong>:使用 UPage API 与其他系统交互</li>
<li><strong>导出集成</strong>下载页面源代码HTML/CSS/JS并集成到现有系统</li>
<li><strong>部署集成</strong>:使用 Vercel 或 Netlify 集成直接部署页面</li>
<li><strong>认证集成</strong>:通过 Logto 与现有认证系统集成</li>
</ol></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class="col"><a href="https://github.com/halo-dev/upage/edit/main/docs/content/content/faq.md" target="_blank" rel="noopener noreferrer" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit__ZHw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>编辑此页</a></div><div class="col lastUpdated_CpfT"></div></div></footer></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="文件选项卡"><a class="pagination-nav__link pagination-nav__link--prev" href="/upage/contributing/workflow"><div class="pagination-nav__sublabel">上一页</div><div class="pagination-nav__label">工作流程</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_dKl6 thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#基本问题" class="table-of-contents__link toc-highlight">基本问题</a><ul><li><a href="#upage-是什么" class="table-of-contents__link toc-highlight">UPage 是什么?</a></li><li><a href="#upage-适合哪些用户" class="table-of-contents__link toc-highlight">UPage 适合哪些用户?</a></li><li><a href="#upage-是开源的吗" class="table-of-contents__link toc-highlight">UPage 是开源的吗?</a></li></ul></li><li><a href="#安装和部署" class="table-of-contents__link toc-highlight">安装和部署</a><ul><li><a href="#如何安装-upage" class="table-of-contents__link toc-highlight">如何安装 UPage</a></li><li><a href="#upage-的系统要求是什么" class="table-of-contents__link toc-highlight">UPage 的系统要求是什么?</a></li><li><a href="#如何更新-upage" class="table-of-contents__link toc-highlight">如何更新 UPage</a></li></ul></li><li><a href="#ai-集成" class="table-of-contents__link toc-highlight">AI 集成</a><ul><li><a href="#upage-支持哪些-ai-提供商" class="table-of-contents__link toc-highlight">UPage 支持哪些 AI 提供商?</a></li><li><a href="#如何配置-ai-提供商" class="table-of-contents__link toc-highlight">如何配置 AI 提供商?</a></li><li><a href="#使用-ai-生成页面需要多少-token" class="table-of-contents__link toc-highlight">使用 AI 生成页面需要多少 token</a></li><li><a href="#如何优化-ai-提示以获得更好的结果" class="table-of-contents__link toc-highlight">如何优化 AI 提示以获得更好的结果?</a></li></ul></li><li><a href="#使用问题" class="table-of-contents__link toc-highlight">使用问题</a><ul><li><a href="#如何编辑-ai-生成的页面" class="table-of-contents__link toc-highlight">如何编辑 AI 生成的页面?</a></li><li><a href="#upage-支持响应式设计吗" class="table-of-contents__link toc-highlight">UPage 支持响应式设计吗?</a></li></ul></li><li><a href="#数据和安全" class="table-of-contents__link toc-highlight">数据和安全</a><ul><li><a href="#upage-如何存储数据" class="table-of-contents__link toc-highlight">UPage 如何存储数据?</a></li><li><a href="#如何备份-upage-数据" class="table-of-contents__link toc-highlight">如何备份 UPage 数据?</a></li><li><a href="#upage-如何处理用户隐私" class="table-of-contents__link toc-highlight">UPage 如何处理用户隐私?</a></li><li><a href="#如何配置-upage-的多用户" class="table-of-contents__link toc-highlight">如何配置 UPage 的多用户?</a></li></ul></li><li><a href="#故障排除" class="table-of-contents__link toc-highlight">故障排除</a><ul><li><a href="#页面生成失败怎么办" class="table-of-contents__link toc-highlight">页面生成失败怎么办?</a></li><li><a href="#如何查看系统日志" class="table-of-contents__link toc-highlight">如何查看系统日志?</a></li><li><a href="#如何解决数据库错误" class="table-of-contents__link toc-highlight">如何解决数据库错误?</a></li><li><a href="#容器无法启动怎么办" class="table-of-contents__link toc-highlight">容器无法启动怎么办?</a></li></ul></li><li><a href="#高级问题" class="table-of-contents__link toc-highlight">高级问题</a><ul><li><a href="#upage-支持插件系统吗" class="table-of-contents__link toc-highlight">UPage 支持插件系统吗?</a></li><li><a href="#如何与现有系统集成" class="table-of-contents__link toc-highlight">如何与现有系统集成?</a></li></ul></li></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class="footer__title">文档</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/upage/quick-start">快速开始</a></li><li class="footer__item"><a class="footer__link-item" href="/upage/category/deployment-guide">部署指南</a></li></ul></div><div class="theme-layout-footer-column col footer__col"><div class="footer__title">社区</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/halo-dev/upage/issues" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub Issues<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_xtnk"><use href="#theme-svg-external-link"></use></svg></a></li><li class="footer__item"><a href="https://github.com/halo-dev/upage/discussions" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub Discussions<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_xtnk"><use href="#theme-svg-external-link"></use></svg></a></li></ul></div><div class="theme-layout-footer-column col footer__col"><div class="footer__title">更多</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/halo-dev/upage" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_xtnk"><use href="#theme-svg-external-link"></use></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2025 凌霞软件. Built with Docusaurus.</div></div></div></footer></div>
</body>
</html>