Files
Memoh/guide/getting-started.html
T
2026-01-12 11:02:01 +00:00

40 lines
19 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="en-US" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>快速开始 | Memoh</title>
<meta name="description" content="长记忆、自托管、AI 驱动的个人生活助手">
<meta name="generator" content="VitePress v1.6.4">
<link rel="preload stylesheet" href="/Memoh/assets/style.DTfNcE-A.css" as="style">
<link rel="preload stylesheet" href="/Memoh/vp-icons.css" as="style">
<script type="module" src="/Memoh/assets/app.D_kyEgu7.js"></script>
<link rel="preload" href="/Memoh/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/Memoh/assets/chunks/theme.CMW3Dkw3.js">
<link rel="modulepreload" href="/Memoh/assets/chunks/framework.BNUstrn0.js">
<link rel="modulepreload" href="/Memoh/assets/guide_getting-started.md.C7AzM1gM.lean.js">
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-611f6a16><!--[--><!--]--><!--[--><span tabindex="-1" data-v-46b4c5ed></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-46b4c5ed>Skip to content</a><!--]--><!----><header class="VPNav" data-v-611f6a16 data-v-d2a3a618><div class="VPNavBar" data-v-d2a3a618 data-v-bf4a3cb6><div class="wrapper" data-v-bf4a3cb6><div class="container" data-v-bf4a3cb6><div class="title" data-v-bf4a3cb6><div class="VPNavBarTitle has-sidebar" data-v-bf4a3cb6 data-v-5dd3b3dd><a class="title" href="/Memoh/" data-v-5dd3b3dd><!--[--><!--]--><!----><span data-v-5dd3b3dd>Memoh</span><!--[--><!--]--></a></div></div><div class="content" data-v-bf4a3cb6><div class="content-body" data-v-bf4a3cb6><!--[--><!--]--><div class="VPNavBarSearch search" data-v-bf4a3cb6><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-bf4a3cb6 data-v-a3d5278a><span id="main-nav-aria-label" class="visually-hidden" data-v-a3d5278a> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/Memoh/guide/getting-started.html" tabindex="0" data-v-a3d5278a data-v-b7bc273a><!--[--><span data-v-b7bc273a>指南</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/Memoh/platforms/telegram.html" tabindex="0" data-v-a3d5278a data-v-b7bc273a><!--[--><span data-v-b7bc273a>Telegram Bot</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/Memoh/cli/" tabindex="0" data-v-a3d5278a data-v-b7bc273a><!--[--><span data-v-b7bc273a>CLI 工具</span><!--]--></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-bf4a3cb6 data-v-68febad1><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-68febad1 data-v-b9b20dff data-v-16fbb142><span class="check" data-v-16fbb142><span class="icon" data-v-16fbb142><!--[--><span class="vpi-sun sun" data-v-b9b20dff></span><span class="vpi-moon moon" data-v-b9b20dff></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-bf4a3cb6 data-v-c6d8e849 data-v-e3b84ebe><!--[--><a class="VPSocialLink no-icon" href="https://github.com/memohai/Memoh" aria-label="github" target="_blank" rel="noopener" data-v-e3b84ebe data-v-f968c506><span class="vpi-social-github"></span></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-bf4a3cb6 data-v-499e0d4e data-v-07eda076><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-07eda076><span class="vpi-more-horizontal icon" data-v-07eda076></span></button><div class="menu" data-v-07eda076><div class="VPMenu" data-v-07eda076 data-v-b8bde667><!----><!--[--><!--[--><!----><div class="group" data-v-499e0d4e><div class="item appearance" data-v-499e0d4e><p class="label" data-v-499e0d4e>Appearance</p><div class="appearance-action" data-v-499e0d4e><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-499e0d4e data-v-b9b20dff data-v-16fbb142><span class="check" data-v-16fbb142><span class="icon" data-v-16fbb142><!--[--><span class="vpi-sun sun" data-v-b9b20dff></span><span class="vpi-moon moon" data-v-b9b20dff></span><!--]--></span></span></button></div></div></div><div class="group" data-v-499e0d4e><div class="item social-links" data-v-499e0d4e><div class="VPSocialLinks social-links-list" data-v-499e0d4e data-v-e3b84ebe><!--[--><a class="VPSocialLink no-icon" href="https://github.com/memohai/Memoh" aria-label="github" target="_blank" rel="noopener" data-v-e3b84ebe data-v-f968c506><span class="vpi-social-github"></span></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-bf4a3cb6 data-v-a3e22bf5><span class="container" data-v-a3e22bf5><span class="top" data-v-a3e22bf5></span><span class="middle" data-v-a3e22bf5></span><span class="bottom" data-v-a3e22bf5></span></span></button></div></div></div></div><div class="divider" data-v-bf4a3cb6><div class="divider-line" data-v-bf4a3cb6></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-611f6a16 data-v-cc529aa1><div class="container" data-v-cc529aa1><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-cc529aa1><span class="vpi-align-left menu-icon" data-v-cc529aa1></span><span class="menu-text" data-v-cc529aa1>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-cc529aa1 data-v-de92a040><button data-v-de92a040>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-611f6a16 data-v-518f58a7><div class="curtain" data-v-518f58a7></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-518f58a7><span class="visually-hidden" id="sidebar-aria-label" data-v-518f58a7> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-1a7789c4><section class="VPSidebarItem level-0 has-active" data-v-1a7789c4 data-v-caf7ab77><div class="item" role="button" tabindex="0" data-v-caf7ab77><div class="indicator" data-v-caf7ab77></div><h2 class="text" data-v-caf7ab77>开始使用</h2><!----></div><div class="items" data-v-caf7ab77><!--[--><div class="VPSidebarItem level-1 is-link" data-v-caf7ab77 data-v-caf7ab77><div class="item" data-v-caf7ab77><div class="indicator" data-v-caf7ab77></div><a class="VPLink link link" href="/Memoh/guide/getting-started.html" data-v-caf7ab77><!--[--><p class="text" data-v-caf7ab77>快速开始</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-caf7ab77 data-v-caf7ab77><div class="item" data-v-caf7ab77><div class="indicator" data-v-caf7ab77></div><a class="VPLink link link" href="/Memoh/guide/installation.html" data-v-caf7ab77><!--[--><p class="text" data-v-caf7ab77>安装</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-caf7ab77 data-v-caf7ab77><div class="item" data-v-caf7ab77><div class="indicator" data-v-caf7ab77></div><a class="VPLink link link" href="/Memoh/guide/configuration.html" data-v-caf7ab77><!--[--><p class="text" data-v-caf7ab77>配置</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-611f6a16 data-v-1996ea58><div class="VPDoc has-sidebar has-aside" data-v-1996ea58 data-v-ad55bedf><!--[--><!--]--><div class="container" data-v-ad55bedf><div class="aside" data-v-ad55bedf><div class="aside-curtain" data-v-ad55bedf></div><div class="aside-container" data-v-ad55bedf><div class="aside-content" data-v-ad55bedf><div class="VPDocAside" data-v-ad55bedf data-v-b02e3944><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-b02e3944 data-v-54546523><div class="content" data-v-54546523><div class="outline-marker" data-v-54546523></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-54546523>On this page</div><ul class="VPDocOutlineItem root" data-v-54546523 data-v-250c569e><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-b02e3944></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-ad55bedf><div class="content-container" data-v-ad55bedf><!--[--><!--]--><main class="main" data-v-ad55bedf><div style="position:relative;" class="vp-doc _Memoh_guide_getting-started" data-v-ad55bedf><div><h1 id="快速开始" tabindex="-1">快速开始 <a class="header-anchor" href="#快速开始" aria-label="Permalink to &quot;快速开始&quot;"></a></h1><p>欢迎使用 Memoh!本指南将帮助你快速上手。</p><h2 id="什么是-memoh" tabindex="-1">什么是 Memoh <a class="header-anchor" href="#什么是-memoh" aria-label="Permalink to &quot;什么是 Memoh&quot;"></a></h2><p>Memoh 是一个专属于你的 AI 私人管家,你可以把它跑在你的 NAS,路由器等个人设备上,24 小时的为你提供服务。</p><h2 id="环境要求" tabindex="-1">环境要求 <a class="header-anchor" href="#环境要求" aria-label="Permalink to &quot;环境要求&quot;"></a></h2><p>在开始之前,请确保你的系统满足以下要求:</p><ul><li><strong>PostgreSQL 16+</strong> - 数据库</li><li><strong>Bun 1.2+</strong> - JavaScript 运行时</li><li><strong>PNPM</strong> - 包管理器</li><li><strong>Qdrant</strong> - 向量数据库</li><li><strong>Redis</strong> - 缓存和会话存储</li></ul><h2 id="安装步骤" tabindex="-1">安装步骤 <a class="header-anchor" href="#安装步骤" aria-label="Permalink to &quot;安装步骤&quot;"></a></h2><h3 id="_1-克隆项目" tabindex="-1">1. 克隆项目 <a class="header-anchor" href="#_1-克隆项目" aria-label="Permalink to &quot;1. 克隆项目&quot;"></a></h3><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">git</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> clone</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> https://github.com/memohai/Memoh.git</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> Memoh</span></span></code></pre></div><h3 id="_2-安装依赖" tabindex="-1">2. 安装依赖 <a class="header-anchor" href="#_2-安装依赖" aria-label="Permalink to &quot;2. 安装依赖&quot;"></a></h3><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">pnpm</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> install</span></span></code></pre></div><h3 id="_3-配置环境变量" tabindex="-1">3. 配置环境变量 <a class="header-anchor" href="#_3-配置环境变量" aria-label="Permalink to &quot;3. 配置环境变量&quot;"></a></h3><p>复制环境变量示例文件:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">cp</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .env.example</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .env</span></span></code></pre></div><p>编辑 <code>.env</code> 文件,配置以下变量:</p><div class="language-env vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">env</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span># 数据库配置</span></span>
<span class="line"><span>DATABASE_URL=postgresql://user:password@localhost:5432/memoh</span></span>
<span class="line"><span></span></span>
<span class="line"><span># 管理员账户</span></span>
<span class="line"><span>ROOT_USER=admin</span></span>
<span class="line"><span>ROOT_USER_PASSWORD=your_password</span></span>
<span class="line"><span></span></span>
<span class="line"><span># JWT 密钥</span></span>
<span class="line"><span>JWT_SECRET=your_jwt_secret_key</span></span>
<span class="line"><span></span></span>
<span class="line"><span># Qdrant 向量数据库</span></span>
<span class="line"><span>QDRANT_URL=http://localhost:6333</span></span>
<span class="line"><span></span></span>
<span class="line"><span># Redis 缓存</span></span>
<span class="line"><span>REDIS_URL=redis://localhost:6379</span></span></code></pre></div><h3 id="_4-初始化数据库" tabindex="-1">4. 初始化数据库 <a class="header-anchor" href="#_4-初始化数据库" aria-label="Permalink to &quot;4. 初始化数据库&quot;"></a></h3><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">pnpm</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> run</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> db:push</span></span></code></pre></div><h3 id="_5-启动-api-服务" tabindex="-1">5. 启动 API 服务 <a class="header-anchor" href="#_5-启动-api-服务" aria-label="Permalink to &quot;5. 启动 API 服务&quot;"></a></h3><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">pnpm</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> run</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> api:dev</span></span></code></pre></div><p>API 服务将在 <code>http://localhost:7002</code> 启动。</p><h2 id="下一步" tabindex="-1">下一步 <a class="header-anchor" href="#下一步" aria-label="Permalink to &quot;下一步&quot;"></a></h2><ul><li><a href="/Memoh/cli/">使用 CLI 工具</a> - 学习如何使用命令行工具</li><li><a href="/Memoh/platforms/telegram.html">配置 Telegram Bot</a> - 集成 Telegram 平台</li><li><a href="/Memoh/guide/configuration.html">配置指南</a> - 了解如何配置 Memoh</li></ul></div></div></main><footer class="VPDocFooter" data-v-ad55bedf data-v-02d4cf80><!--[--><!--]--><div class="edit-info" data-v-02d4cf80><div class="edit-link" data-v-02d4cf80><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/memohai/Memoh/edit/main/docs/docs/guide/getting-started.md" target="_blank" rel="noreferrer" data-v-02d4cf80><!--[--><span class="vpi-square-pen edit-link-icon" data-v-02d4cf80></span> 在 GitHub 上编辑此页<!--]--></a></div><div class="last-updated" data-v-02d4cf80><p class="VPLastUpdated" data-v-02d4cf80 data-v-481c5c1f>最后更新于: <time datetime="2026-01-12T10:58:42.000Z" data-v-481c5c1f></time></p></div></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-02d4cf80><span class="visually-hidden" id="doc-footer-aria-label" data-v-02d4cf80>Pager</span><div class="pager" data-v-02d4cf80><!----></div><div class="pager" data-v-02d4cf80><a class="VPLink link pager-link next" href="/Memoh/guide/installation.html" data-v-02d4cf80><!--[--><span class="desc" data-v-02d4cf80>Next page</span><span class="title" data-v-02d4cf80>安装</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-611f6a16 data-v-84f4dee0><div class="container" data-v-84f4dee0><p class="message" data-v-84f4dee0>基于 MIT 许可发布</p><p class="copyright" data-v-84f4dee0>Copyright © 2024 Memoh</p></div></footer><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"cli_index.md\":\"B_NxPQo9\",\"guide_configuration.md\":\"D94PMEO8\",\"guide_getting-started.md\":\"C7AzM1gM\",\"guide_installation.md\":\"Dpfh7SiW\",\"index.md\":\"C1JBQLP_\",\"platforms_telegram.md\":\"CQRp9-AA\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Memoh\",\"description\":\"长记忆、自托管、AI 驱动的个人生活助手\",\"base\":\"/Memoh/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"siteTitle\":\"Memoh\",\"nav\":[{\"text\":\"指南\",\"link\":\"/guide/getting-started\"},{\"text\":\"Telegram Bot\",\"link\":\"/platforms/telegram\"},{\"text\":\"CLI 工具\",\"link\":\"/cli/\"}],\"sidebar\":{\"/guide/\":[{\"text\":\"开始使用\",\"items\":[{\"text\":\"快速开始\",\"link\":\"/guide/getting-started\"},{\"text\":\"安装\",\"link\":\"/guide/installation\"},{\"text\":\"配置\",\"link\":\"/guide/configuration\"}]}],\"/platforms/\":[{\"text\":\"平台集成\",\"items\":[{\"text\":\"Telegram\",\"link\":\"/platforms/telegram\"}]}],\"/cli/\":[{\"text\":\"命令行工具\",\"items\":[{\"text\":\"介绍\",\"link\":\"/cli/\"}]}]},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/memohai/Memoh\"}],\"footer\":{\"message\":\"基于 MIT 许可发布\",\"copyright\":\"Copyright © 2024 Memoh\"},\"search\":{\"provider\":\"local\"},\"editLink\":{\"pattern\":\"https://github.com/memohai/Memoh/edit/main/docs/docs/:path\",\"text\":\"在 GitHub 上编辑此页\"},\"lastUpdated\":{\"text\":\"最后更新于\",\"formatOptions\":{\"dateStyle\":\"short\",\"timeStyle\":\"medium\"}}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
</body>
</html>