首页/新闻资讯/正文详情

本地AI女友项目搭建教程:Live2D、语音聊天、AI绘图全离线运行,TaoToken统一Key接入配置

发布时间:2026/9/27 22:21:48 来源:云帆数科 栏目:资讯中心
本地AI女友项目搭建教程:Live2D、语音聊天、AI绘图全离线运行,TaoToken统一Key接入配置
1. 本地 AI 女友项目到底在解决什么问题如果你搜到这篇大概率是冲着「本地 AI 女友」这四个字来的想让桌面上有个能聊天、能出声、能画图、还不用把聊天记录传到别人服务器上的角色。这个项目把几块能力拼在一起——llama.cpp 跑本地大模型负责对话GPT-SoVITS 负责把文字变成带情绪的语音Live2D 负责表情和口型ComfyUI 负责出图Qdrant 加 BGE 小模型负责长期记忆。听起来很全但真正动手时卡人的往往不是模型本身而是多模块之间的配置对齐谁先启动、端口怎么串、显存怎么让、Key 怎么统一。我实测下来最容易翻车的三个点是一是 llama.cpp 和 ComfyUI 抢显存8GB 卡上如果两个都常驻出图直接爆二是语音链路里 GPT-SoVITS 的参考音频路径写错合成出来是杂音三是记忆模块的向量维度对不上导致角色「记不住」或者串记忆。这篇就按可复制的顺序把 config.toml 和 settings.json 的骨架给你再补上 TaoToken 统一 Key 的接入验证让你先把多模块协同跑通再慢慢换模型。适合谁看手里有 8GB 以上显存的笔记本或台式、愿意折腾本地开源工具、想给桌宠接上真实对话和绘图能力的人。如果你只想开箱即用、完全不想碰命令行这个项目可能不太适合你因为它本质是一套需要自己拼装的本地服务编排。2. TaoToken 统一 Key 的前置准备本地项目里对话模型、记忆摘要、绘图提示词润色这些环节其实都可以走同一个 OpenAI 兼容通道。TaoToken 在这里的角色就是提供统一的 Key 和 API 入口省得你每个模块单独配一套鉴权。官网是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 基址是 https://taotoken.net/api 注意这个地址后面不加 UTM 参数配置里直接写它。你需要先拿到 Key进控制台 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite 在 API Keys 页面创建一个复制出来。这个 Key 会同时用在对话和记忆摘要两个地方所以别只填一处。如果你后面要长期跑编码类 Agent 或者让桌宠自己调工具可以看下 Coding Plan https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 它更适合高频调用场景。注意本地离线运行指的是模型权重和推理在你机器上但如果你想让对话质量更稳、或者本地模型偶尔顶不住长上下文把部分请求走 TaoToken 的兼容通道是常见做法。两者不冲突配置里留好开关即可。接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 里面写了兼容 OpenAI 的请求格式。你只要记住base_url 填 https://taotoken.net/api model 名按文档里给的写别自己编。3. 可复制的 config.toml 与 settings.json 配置骨架下面这份配置是我按「先跑通、再调优」的思路整理的路径和端口你按自己机器改。先建目录结构mkdir -p ~/ai-girlfriend/{models,config,logs,voices,comfyui} cd ~/ai-girlfriend3.1 config.toml对话与记忆模块# ~/ai-girlfriend/config/config.toml [llm] backend llama.cpp model_path ./models/Qwen3.6-35B-A3B-Q4_K_M.gguf n_ctx 8192 n_gpu_layers 28 # 8GB 卡先给 28 层爆显存就往下调 temperature 0.7 top_p 0.9 [llm.remote_fallback] enabled true base_url https://taotoken.net/api api_key sk-你的TaoTokenKey model 按文档填对应模型名 timeout 60 [memory] vector_db qdrant qdrant_url http://127.0.0.1:6333 collection natsume_memory embedding_model ./models/bge-small-zh-v1.5 embedding_dim 512 short_term_limit 20 long_term_top_k 5 [tts] engine gpt-sovits api_url http://127.0.0.1:9880 ref_audio ./voices/natsume_ref.wav ref_text 参考音频对应的文本 ref_lang zh [draw] engine comfyui api_url http://127.0.0.1:8188 workflow ./config/sdxl_workflow.json release_llm_before_draw true # 8GB 卡必开这里release_llm_before_draw是关键。8GB 显存下llama.cpp 常驻会占掉一大块ComfyUI 出图时如果不清显存SDXL 直接 OOM。项目里的显存调度就是靠这个开关触发的出图前把 LLM 卸载出完再加载回来代价是出图后第一次对话会慢几秒。3.2 settings.jsonLive2D 与前端联动{ live2d: { model_dir: ./models/live2d/natsume, model_json: natsume.model3.json, scale: 1.0, position: { x: 0.75, y: 0.5 }, mouth_sync: true, expression_map: { happy: exp_01, sad: exp_02, angry: exp_03 } }, chat: { bubble_timeout: 8000, stream: true, max_history: 30 }, voice: { enabled: true, emotion_mode: daily, volume: 0.9 }, draw: { enabled: true, auto_prompt: true, negative_prompt: lowres, bad anatomy, extra fingers }, taotoken: { base_url: https://taotoken.net/api, api_key: sk-你的TaoTokenKey } }mouth_sync打开后Live2D 的口型会跟着 TTS 输出的音量包络动。如果你发现嘴型对不上多半是 TTS 返回的音频采样率和前端解析不一致后面排障会讲。4. 启动顺序与验证请求多模块协同最怕乱序启动。按这个顺序来Qdrant → llama.cpp → GPT-SoVITS → ComfyUI → 桌宠前端。# 1. 向量库 docker run -d -p 6333:6333 -v ~/ai-girlfriend/qdrant:/qdrant/storage qdrant/qdrant # 2. llama.cpp 服务 ./llama-server -m ./models/Qwen3.6-35B-A3B-Q4_K_M.gguf \ --host 127.0.0.1 --port 8080 -c 8192 -ngl 28 # 3. GPT-SoVITS API python api.py -p 9880 -a 127.0.0.1 # 4. ComfyUI python main.py --listen 127.0.0.1 --port 8188启动后先验证 TaoToken 通道是否通curl https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer sk-你的TaoTokenKey \ -H Content-Type: application/json \ -d { model: 按文档填对应模型名, messages: [{role: user, content: 用一句话确认通道正常}] }返回里有choices[0].message.content就说明 Key 和地址都对。接着验证本地对话curl http://127.0.0.1:8080/v1/chat/completions \ -H Content-Type: application/json \ -d {messages:[{role:user,content:你好}],stream:false}再验证 TTScurl http://127.0.0.1:9880/tts \ -H Content-Type: application/json \ -d {text:今天天气不错,ref_audio_path:./voices/natsume_ref.wav,text_lang:zh}如果返回音频流且能播放语音链路就通了。最后在桌宠前端发一句「帮我画一张海边白裙少女」观察日志里是否出现「释放 LLM 显存 → 调用 ComfyUI → 恢复 LLM」的调度记录。成功的话图片会落到comfyui/output/下同时角色会说出「画好了」之类的语音。5. 本篇常见错排查报错一CUDA out of memory出现在出图阶段。九成是release_llm_before_draw没开或者开了但 llama.cpp 没真正卸载。检查 config.toml 里这个开关再看日志有没有unload model字样。如果还爆把n_gpu_layers从 28 降到 20或者把 SDXL 的 batch size 设成 1。报错二TTS 合成出来是电流声或杂音。先确认ref_audio是 3–10 秒的干净人声采样率 32kHz 或 44.1kHz别用带背景音乐的片段。ref_text必须和音频内容逐字对应差一个字都可能让音色崩掉。如果还不行把ref_lang从zh改成auto试试。报错三角色记不住之前聊的内容。查 Qdrant 里 collection 的向量维度是否和embedding_dim一致。BGE-small-zh 是 512 维如果你之前用过别的模型建过 collection维度对不上会静默失败。删掉 collection 重建curl -X DELETE http://127.0.0.1:6333/collections/natsume_memory然后重启记忆模块让它按新维度重建。报错四Live2D 嘴型不动。检查mouth_sync是否为 true再看 TTS 返回的音频格式。有些前端只认 PCM如果 GPT-SoVITS 返回的是 MP3需要在前端加一层解码。另外model3.json里要有ParamMouthOpenY这个参数缺了就没法驱动口型。报错五TaoToken 请求返回 401。先确认 Key 没多复制空格再确认 base_url 是https://taotoken.net/api而不是带 UTM 的官网地址。如果用的是环境变量检查echo $TAOTOKEN_API_KEY有没有值。还不行就去 API Keys 页面重新生成一个旧的可能被删了。6. 接入文档与模型对话入口配置跑通之后你可能会想换模型、调记忆策略或者把对话质量再拉一档。这时候建议先翻接入文档 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 里面把兼容格式、参数含义、常见返回码都列了比在代码里猜要快。如果你只是想先试试模型对话效果不想动本地配置可以直接进模型对话 https://taotoken.net/model-chat?utm_sourcetaotoken_aicg_blog_endutm_contentmodel-chatutm_campaignrewrite 发几条消息感受一下不同模型的回复风格再决定本地加载哪个 GGUF。长期编码或者让桌宠自己调工具的场景Coding Plan https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 的额度模型更合适不用每次手动换 Key。API Keys 管理在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite 建议给本地项目和测试环境各建一个 Key方便排查问题时快速定位是哪边出的错。最后说个我踩过的坑别在 config.toml 里把本地 llama.cpp 和 TaoToken 的 model 名写成同一个。本地 GGUF 的模型名是你自己起的TaoToken 那边要按文档里的写混了会报model not found。改完配置记得重启对应服务llama.cpp 和桌宠前端都要重启只重启一个不生效。

相关推荐

Agent Token 成本治理:预算收紧时的估算与优化路径(TaoToken 配置实战)
Agent Token 成本治理:预算收紧时的估算与优化路径(TaoToken 配置实战)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:21:48

串流是什么意思 串流软件哪个好用
串流是什么意思 串流软件哪个好用

很多人想知道串流是什么意思,简单来说就是设备之间实时同步画面,可以异地调取另一台设备的画面,还能获取操作权限。还不明白串流是什么意思?通俗来讲就是打通不同设备,实现电脑、手机、平板的画面互通和远程操控。无界… · 2026/9/27 22:21:41

Manus AI 多语言手写识别落地:TaoToken 统一 Key 配置与 settings.json 骨架
Manus AI 多语言手写识别落地:TaoToken 统一 Key 配置与 settings.json 骨架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:21:35

Docker 网络深入:五种通信模式全解析
Docker 网络深入:五种通信模式全解析

1. 引言 容器化技术已经成为现代应用交付的核心,而网络则是容器化架构中最容易让人困惑的部分之一。很多开发者能熟练地编写 Dockerfile、编排 docker-compose,但一旦遇到容器间通信失败、端口映射异常、跨主机互联等问题,往往只能靠重启和试… · 2026/9/27 23:00:37

ASP手机网站自动跳转性能优化实战指南
ASP手机网站自动跳转性能优化实战指南

ASP手机网站自动跳转性能优化实战指南 自己不会代码想做网站,却卡在手机访问体验上?别急,ASP手机网站自动跳转的性能优化,其实没那么玄乎。很多新手一上来就堆代码,结果页面加载慢得让人想关掉。记住,跳转不是目的,流畅才是核心。今天我就把这套… · 2026/9/27 23:00:37

惠州公司网站建设多少钱?揭秘3个让排名起飞的SEO实战细节
惠州公司网站建设多少钱?揭秘3个让排名起飞的SEO实战细节

惠州公司网站建设多少钱?揭秘3个让排名起飞的SEO实战细节 很多老板找我们做 惠州公司网站建设 ,问得最多的不是“能不能做”,而是“ 多少钱… · 2026/9/27 23:00:36

Hydrogen 1.2.6 Windows 64位下载:鼓机安装包与两种播放模式
Hydrogen 1.2.6 Windows 64位下载:鼓机安装包与两种播放模式

Hydrogen 1.2.6 Windows 64位下载 官方发行页 本文整理 Hydrogen 1.2.6 的 Windows 安装包,供需要这一固定版本的鼓点编排环境使用。备用入口经草料提示页进入夸克,点击“继续访问”后查看文件;登录和下载要求以实际页面为准。 文件信息 … · 2026/9/27 23:00:30

江苏靠谱的冷缩电缆终端供应服务商选购参考汇总
江苏靠谱的冷缩电缆终端供应服务商选购参考汇总

冷缩电缆终端行业基础科普 什么是冷缩电缆终端,核心属性与应用范围是什么?冷缩电缆终端是一类轻量化的电缆配套终端设备,主要用于电缆线路末端的绝缘密封与防护处理,保障电缆线路与其他电气设备连接后的稳定安全运行。不同于传统热缩型电缆终… · 2026/9/27 23:00:30

【日本 6G 三线并进·第 3 篇】光通信 IOWN(下):光网络可视化 DSP 与光电融合
【日本 6G 三线并进·第 3 篇】光通信 IOWN(下):光网络可视化 DSP 与光电融合

【日本 6G 三线并进第 3 篇】光通信 IOWN(下):光网络可视化 DSP 与光电融合摘要:这是系列第 3 篇,继续光通信线。上一篇拆解了物理层的“跑多快”,这一篇转向系统层的“看得见、管得住、省得下”。核心内容… · 2026/9/27 23:00:30

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码