# personal-qa-agent **Repository Path**: chunfeng520/personal-qa-agent ## Basic Information - **Project Name**: personal-qa-agent - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-12 - **Last Updated**: 2026-08-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # personal-qa-agent 面向招聘方的个人问答 Agent:访客通过聊天了解项目作者;作者通过极简后台维护知识库并重新索引。 ## 技术栈 **Next.js + TypeScript + LangChain.js + PostgreSQL / pgvector** | 部分 | 位置 | | --- | --- | | 前台对话 | `app/page.tsx` + `components/chat/` | | 管理后台 | `app/admin/*` | | 后端 API | `app/api/auth/*`、`app/api/admin/*`、`app/api/chat` | | AI / RAG | `lib/rag/` | | 推荐问题 / 简介文案 | `content/` | ## 文档 | 文档 | 说明 | 状态 | | --- | --- | --- | | [docs/requirements.md](./docs/requirements.md) | 需求文档 | 已验收 | | [docs/technical-design.md](./docs/technical-design.md) | 技术文档 | 已验收 | | [docs/deploy-vercel-neon.md](./docs/deploy-vercel-neon.md) | 生产发布步骤(Vercel + Neon) | 可照做 | | [docs/resume-and-interview.md](./docs/resume-and-interview.md) | 简历包装与面试介绍 | 可参考 | ## 环境要求 - Node.js **20+**(见 `.nvmrc`) - pnpm - Docker Desktop(本地 Postgres + pgvector;compose 默认走 DaoCloud 镜像) ## 启动 ```bash # 1) 启动 Docker Desktop,确认 Engine running cd sources/personal-qa-agent nvm use pnpm install cp .env.example .env # 按需填写 LLM_API_KEY 等 # 2) 数据库 pnpm db:up pnpm db:deploy pnpm db:seed # 管理员默认 admin / admin123,并写入示例知识 # 3) 开发服务 pnpm dev ``` - 前台:http://localhost:3000 (若占用则可能是 3001) - 后台:http://localhost:3000/admin/login ## 让问答真正可用 1. 在 `.env` 配置 `LLM_API_KEY`(及可选 `LLM_BASE_URL` / `EMBEDDING_MODEL`) 2. 登录管理后台 → 检查/编辑知识库 3. 点击 **重新索引** 4. 回到前台提问或点推荐问题 没有索引或没有密钥时,页面仍可打开,但问答会失败或走拒答。 ## 常用命令 ```bash pnpm db:up pnpm db:down pnpm db:deploy pnpm db:seed pnpm db:studio pnpm smoke:auth BASE_URL=http://localhost:3001 pnpm smoke:chat ``` ## 管理 API(需登录 Cookie) - `POST /api/auth/login|logout` - `GET /api/auth/me` - `GET|POST /api/admin/knowledge` - `GET|PUT|DELETE /api/admin/knowledge/:id` - `POST /api/admin/reindex` - `POST /api/chat`(SSE:meta / token / done / error) ## V1 范围 - 前台:流式问答、推荐问题、未知拒答 - 后台:登录、知识库 CRUD、重新索引