背景
给宝宝取名是每个家庭的大事,但市面上的取名工具大多基于五行八字或随机组合,缺乏文化内涵。希望借助 AI 和古诗词数据库,让每个名字都有真实的诗词出处——从诗经、楚辞、唐诗、宋词中检索灵感,结合八字五行约束,自动生成兼顾文化底蕴和数理吉凶的候选名。
方案
构建了一套基于向量语义检索的古诗词取名系统,核心取名流水线分为四个阶段:
- 命理分析:根据出生日期计算八字四柱,分析五行旺衰,确定喜用神,支持农历/公历双模式
- 向量检索:用户偏好经 Zhipu Embedding-3 编码后,在 FAISS 索引(38 万句古诗词)中检索候选诗句,采用分层配额采样确保诗经、楚辞、唐诗、宋词各有代表
- LLM 生成:将候选诗句、五行约束、生肖宜忌、音律约束组装为 Prompt,由 DeepSeek 生成名字
- 质量过滤:五道关卡(五格吉凶 → 禁用字/谐音 → 生僻字 → 音律评分 → 五行加分),综合排序公式为音律×0.4 + 五格×0.3 + 出处×0.2 + 五行×0.1
交互体验方面,支持对话式和表单式两种输入模式,"换一批"排除已展示名字生成新候选,收藏夹支持一键复制。安全层面实现了多层防御:反爬虫(UA 黑名单 + HMAC 签名)、IP 限流(滑动窗口 + 每日配额)、邀请码验证。
技术架构
| 模块 | 技术选型 |
|---|---|
| 后端 | Python + FastAPI + SQLite |
| 前端 | Vue3 + Naive UI |
| AI | Zhipu Embedding-3(向量检索)+ DeepSeek(LLM 生成) |
| 向量索引 | FAISS(IndexScalarQuantizer + 8-bit 量化,MMAP 按需加载) |
| 数据 | 诗经、楚辞、全唐诗、宋词等古籍语料(约 38 万句) |
| 部署 | Docker + Nginx 反向代理 |
系统采用 7 层分层架构:客户端层 → Nginx 反向代理 → FastAPI 应用层 → 中间件层(限流/反爬/邀请码)→ 核心服务层(八字计算/向量检索/LLM 生成/过滤排序)→ 数据存储层(SQLite + FAISS)→ 外部 AI 服务(Zhipu Embedding + DeepSeek LLM)。
多端支持 H5 网页(响应式)和微信小程序(原生),已落地为微信小程序和公众号「文间拾字」。
成果
实现了"对话式取名"体验,用户描述偏好后系统自动匹配诗词意境,生成的名字 100% 有真实出处。智能过滤机制避免了生僻字和流行俗名,让每个名字既有文化底蕴又好听好写。SSE 流式输出配合分隔符协议(<<NAME>>)实现名字逐个呈现,会话缓存支持"换一批"快速获得备选。
体验
扫码体验小程序,或关注公众号获取更多取名灵感。

扫码体验小程序

关注公众号