1. 从零搭一个知识图谱网站,第一天到底要做什么
如果你也在做「段永平投资理财知识图谱」这类项目,第一天最该做的不是画图,而是把工程底座跑通。Vite + Vue 是目前前端起步最省心的组合之一:Vite 负责秒级启动和热更新,Vue 负责把页面拆成可维护的组件。今天的目标很明确——初始化项目、接上 TaoToken 的统一 Key/API 通道、让浏览器里出现一个能正常渲染的 Hello World 页面。
很多人卡在第一步不是因为不会写代码,而是环境、依赖、Key 管理三件事混在一起,报错后不知道从哪查。我试过把 Key 直接写死在组件里,结果换模型时改了七八个文件,非常痛苦。所以这篇会把 TaoToken 的接入配置单独抽出来,做成一个可复用的骨架,后面 Day 2 到 Day 7 做 graphData、D3 力导向图、ArticleReader 时都能直接调用。
适合谁看:非软件专业但想用 AI 做产品的人、刚接触 Vue 的前端新手、准备做知识图谱/数据可视化网站的同学。全程命令可复制,配置可照抄,最后用浏览器访问验证,确保你有一个稳定的开发底座再往下走。
2. TaoToken 前置准备:统一 Key 与 API 通道
TaoToken 在这里扮演的角色是「统一入口」:你不需要在项目里为每个模型单独维护一套地址和密钥,而是通过一个 Key 走同一个 API 通道。官网地址是 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 根地址是 https://taotoken.net/api 。
第一步,打开控制台创建 API Key。入口在 https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_content=console&utm_campaign=rewrite ,登录后新建一个 Key,复制保存。注意:Key 只显示一次,丢了就重新建。
第二步,如果你还不确定用哪个模型,可以先到模型对话页面试一下效果,地址是 https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_content=model_chat&utm_campaign=rewrite 。在对话里发一句「你好,帮我确认通道是否正常」,能返回内容就说明 Key 和通道都没问题。
第三步,把 Key 写进项目环境变量,而不是硬编码。Vite 默认只暴露以VITE_开头的变量,所以我们在项目根目录建一个.env.local:
VITE_TAOTOKEN_API_KEY=你的Key VITE_TAOTOKEN_BASE_URL=https://taotoken.net/api注意:
.env.local要加进.gitignore,别把 Key 提交到仓库。团队协作时每人本地一份,互不覆盖。
如果你后面要做长期编码或 Agent 类任务,可以了解 Coding Plan,入口是 https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding_plan&utm_campaign=rewrite 。接入文档在 https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite ,API Keys 管理页在 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite 。这几个地址建议先收藏,后面排障会反复用到。
3. 可复制配置:初始化 Vite + Vue 项目
先确认本机 Node 版本,Vite 5 要求 Node 18 以上:
node -v npm -v如果版本太低,去 Node 官网装 LTS 版本。然后创建项目,项目名用duan-yongping-kg:
npm create vite@latest duan-yongping-kg -- --template vue cd duan-yongping-kg npm install这三条命令做完,你会得到一个标准的 Vue 3 项目结构。核心文件是src/main.js、src/App.vue、index.html。接着安装我们后面要用的依赖,今天先装 axios 用于请求:
npm install axios然后在src下新建一个api目录,放统一请求封装src/api/client.js:
import axios from 'axios' const client = axios.create({ baseURL: import.meta.env.VITE_TAOTOKEN_BASE_URL, timeout: 30000, headers: { 'Content-Type': 'application/json', Authorization: `Bearer ${import.meta.env.VITE_TAOTOKEN_API_KEY}` } }) export default client再建一个src/api/chat.js,封装一个最小的对话调用,方便验证通道:
import client from './client' export async function chatOnce(prompt) { const res = await client.post('/v1/chat/completions', { model: 'gpt-4o-mini', messages: [{ role: 'user', content: prompt }] }) return res.data }提示:模型名按你实际可用的填写,不确定就先在模型对话页面确认。请求路径以接入文档为准,不同模型可能略有差异。
最后改src/App.vue,做一个 Hello World 加一个「测试通道」按钮:
<script setup> import { ref } from 'vue' import { chatOnce } from './api/chat' const msg = ref('Hello World,知识图谱第一天') const result = ref('') async function testApi() { try { const data = await chatOnce('用一句话介绍你自己') result.value = data.choices?.[0]?.message?.content || '返回结构异常' } catch (e) { result.value = '请求失败:' + (e.response?.status || e.message) } } </script> <template> <main> <h1>{{ msg }}</h1> <button @click="testApi">测试 TaoToken 通道</button> <p>{{ result }}</p> </main> </template>4. 启动与验证:浏览器里看到成功结果
配置写完,启动开发服务器:
npm run dev终端会输出类似Local: http://localhost:5173/的地址。打开浏览器访问,你应该看到页面标题「Hello World,知识图谱第一天」和一个按钮。点击按钮,如果下方出现模型返回的一句话,说明 Vite + Vue + TaoToken 三者已经打通。
这一步的成功标志有三个:页面正常渲染、控制台无红色报错、按钮点击后返回文本。如果只看到页面但按钮报错,先看浏览器 Network 面板里请求的 URL 和状态码,再对照接入文档检查路径和模型名。
实测下来,最容易出问题的是环境变量没生效。Vite 修改.env.local后必须重启npm run dev,否则读到的还是旧值。另外import.meta.env在浏览器里可以直接打印,临时加一行console.log(import.meta.env.VITE_TAOTOKEN_BASE_URL)就能确认。
5. 本篇常见错排查
报错一:Failed to resolve import "axios"说明依赖没装成功。删掉node_modules和package-lock.json,重新npm install。国内网络慢可以换镜像源,但不要用任何来路不明的代理工具。
报错二:请求返回 401Key 无效或没带上。检查.env.local里VITE_TAOTOKEN_API_KEY是否有多余空格,检查client.js里 Authorization 头拼写。改完重启服务。
报错三:请求返回 404路径或模型名不对。到接入文档确认/v1/chat/completions是否为你所用模型的正确路径,模型名是否在可用列表里。
报错四:页面白屏,控制台报process is not defined说明你在浏览器代码里用了 Node 的process.env。Vite 里必须用import.meta.env,全局替换即可。
报错五:端口被占用npm run dev报Port 5173 is in use。可以npm run dev -- --port 5174换端口,或关掉占用进程。
注意:排障时优先看浏览器控制台和 Network 面板,再看终端日志。90% 的问题在 Network 里能直接定位。
6. 下一步怎么走
第一天跑通 Hello World 后,你的项目已经具备:Vite 构建、Vue 组件、统一 API 封装、环境变量管理。Day 2 就可以开始设计graphData.js,用一小撮段永平相关的节点和关系数据,为后面的 D3 力导向图做准备。
如果你在接入阶段遇到 Key 或通道问题,直接去 API Keys 页面重新生成一个再试:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite 。需要确认模型返回是否正常,用模型对话页面最快:https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_content=model_chat&utm_campaign=rewrite 。后面要做长期编码任务,再考虑 Coding Plan:https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding_plan&utm_campaign=rewrite 。
把今天的命令和配置存成一个setup.md放进项目根目录,下次换电脑或重装环境,照着跑一遍就能恢复。这个习惯在 Day 4 攻克 D3 力导向图时会帮你省下大量时间。