# ikingtec-rag **Repository Path**: simplifer/ikingtec-rag ## Basic Information - **Project Name**: ikingtec-rag - **Description**: 企业rag项目demo - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-29 - **Last Updated**: 2026-07-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # IkingtecRAG 企业级 RAG 系统。 ## 文档索引 | 文档 | 用途 | |---|---| | [`ARCHITECTURE.md`](./ARCHITECTURE.md) | 总体架构、模块设计、NFR、风险(**架构变更先改这里**) | | [`plan.md`](./plan.md) | 24 周开发计划、角色分工、sprint 拆解、风险登记 | | [`docs/decisions/`](./docs/decisions/) | 架构决策记录(ADR) | | `docs/api-reference.md` | API 参考(Phase 2 起补) | | `docs/runbook.md` | 运维手册(Phase 4 起补) | ## 快速开始 需求:Python 3.12(用 conda 管理)、Docker(推荐 Docker Desktop 或 Rancher Desktop)。 ```bash # 1. 创建本地 conda 环境(用本机已有的 python 3.12) conda create -n ikingtec-rag python=3.12 -y conda activate ikingtec-rag # 2. 装 workspace 成员(全部 -e 可编辑模式) pip install -e packages/llm -e packages/auth -e packages/keycloak \ -e packages/crypto -e packages/observability -e packages/vector \ -e packages/acl -e packages/chunking \ -e apps/api -e apps/admin # 3. 启动开发依赖栈(Postgres/Redis/Qdrant/Keycloak) cd deploy/docker-compose && docker compose up -d && cd - # 4. 跑业务 API(hello world 阶段) ikingtec-api # 等价于 uvicorn ikingtec_api.main:app --reload --port 8000 # 5. 跑 LLM 网关(需要 DEEPSEEK_API_KEY 环境变量;不设也能起但服务无 provider) ikingtec-gateway # 6. 验证 curl http://localhost:8000/healthz # → {"status":"ok"} curl http://localhost:8001/v1/health # → {"status":"ok"} ``` > **关于包管理**:conda 只管解释器和开发工具(ruff/mypy/pytest),各 app/package 的运行时依赖走 `pip install -e`。Docker 镜像继续用 `python:3.12-slim`,容器内仍是 pip——容器是 hermetic 的,conda 在容器里只增体积不增能力。 > > **关于首接入 LLM**:Sprint 1 首接入 **DeepSeek**(API OpenAI 兼容),由用户 2026-07-28 修订。Qwen/Doubao/GLM 在后续 Sprint 接入(详见 plan.md §7 W1 W4)。 > > **关于 smoke 验证**:`scripts/smoke_test.py` 是手写 runner,绕过 pytest 在 Windows 上的 pyreadline 冲突。本地直接跑 `python scripts/smoke_test.py`,全 PASS 即视为 W1 阶段代码到位。 ## 项目结构 ``` ikingtec-rag/ ├── apps/ # 有 I/O 的可执行服务(FastAPI、Celery worker 等) ├── packages/ # 无 I/O 的纯逻辑库(可独立单测、可被任意 app 复用) ├── deploy/ # 部署配置(docker-compose,K8s 后续按需) ├── docs/ # 架构、ADR、API 参考、runbook └── tests/ # 单测、集测、E2E、评估集 ``` ## 关键约束(用户 2026-07-28 确认) 1. **私有化 + 公有云**双轨,同一套代码靠适配层切换 2. **国内大模型**,自由切换 + 多模型并用 3. **10 万在册 / 1.5 万 DAU**——容量按单集群 + 读写分离 4. **自研内核 + 复用开源**——业务代码自研,重组件复用成熟开源件 任何架构层面的取舍都要先在 `ARCHITECTURE.md` 更新、再回到 `plan.md` 同步受影响 sprint,最后用 ADR 记录决策。 ## 许可证 内部专有(Proprietary)。