update doc/ai-chat.md

This commit is contained in:
Fam Zheng 2025-08-22 23:10:03 +01:00
parent b3fcf3d4e0
commit f21da37f51

View File

@ -48,44 +48,43 @@
### 4.1 AI模型集成 ### 4.1 AI模型集成
#### 4.1.1 模型选择 #### 4.1.1 模型选择
- **主要模型**: Kimi K2 API - **主要模型**: Kimi K2 API ✅ **已实现**
- **备选模型**: 智谱AI (ChatGLM)、百度文心一言 - **备选模型**: 智谱AI (ChatGLM)、百度文心一言
- **理由**: Kimi K2在中文理解、多模态处理和联网搜索方面表现优秀API稳定可靠特别适合品牌客服场景 - **理由**: Kimi K2在中文理解、多模态处理和联网搜索方面表现优秀API稳定可靠特别适合品牌客服场景
#### 4.1.2 API集成架构 #### 4.1.2 API集成架构 ✅ **已实现**
```python ```python
# api/products/ai_service.py # api/products/aichat.py
class AIService: class AIChatService:
def __init__(self, tenant_id, model_config): def __init__(self, api_key: str = None, base_url: str = None):
self.tenant_id = tenant_id self.api_key = api_key or getattr(settings, 'KIMI_API_KEY', None)
self.model_config = model_config self.base_url = base_url or getattr(settings, 'KIMI_API_URL', None)
self.client = self._init_client() self.client = OpenAI(api_key=self.api_key, base_url=self.base_url)
def chat(self, message, context, tenant_context): def chat(self, user_message: str) -> str:
# 构建prompt # 调用Moonshot API支持工具调用
prompt = self._build_prompt(message, context, tenant_context) response = self.client.chat.completions.create(
# 调用Kimi K2 API model=self.model,
response = self._call_kimi_api(prompt) messages=self.conversation_history,
# 后处理 tools=self.tools,
return self._post_process(response) tool_choice="auto"
)
def _call_kimi_api(self, prompt): return self._process_response(response)
# 调用Kimi K2 API支持联网搜索和多模态处理
pass
def _build_prompt(self, message, context, tenant_context):
# 包含品牌信息、产品知识、用户上下文
pass
``` ```
#### 4.1.3 智能能力调度系统(简化版) #### 4.1.3 工具调用系统 ✅ **已实现**
- **工具定义**: `start_qr_scan` 二维码扫描工具
- **工具执行**: 模拟5秒扫描过程返回验证结果
- **工具集成**: 完整的工具调用流程,支持多轮对话
#### 4.1.4 智能能力调度系统(简化版)
- **能力分类**: RAG知识检索、平台服务、一般问答 - **能力分类**: RAG知识检索、平台服务、一般问答
- **优先级策略**: 平台服务 > RAG知识 > 一般问答 - **优先级策略**: 平台服务 > RAG知识 > 一般问答
- **智能路由**: 基于规则的快速路由策略 - **智能路由**: 基于规则的快速路由策略
- **降级机制**: 简单的能力降级和回退 - **降级机制**: 简单的能力降级和回退
- **后续扩展**: 工具执行、网络搜索等高级功能 - **后续扩展**: 工具执行、网络搜索等高级功能
#### 4.1.4 RAG框架集成简化版 #### 4.1.5 RAG框架集成简化版
- **框架选择**: LangChain基础功能 - **框架选择**: LangChain基础功能
- **文档处理**: 基础分块、简单向量化、相似度检索 - **文档处理**: 基础分块、简单向量化、相似度检索
- **上下文优化**: 基础分层策略(摘要、完整) - **上下文优化**: 基础分层策略(摘要、完整)
@ -430,27 +429,30 @@ Page({
### 5.1 AI Prompt工程 ### 5.1 AI Prompt工程
#### 5.1.1 系统Prompt模板 #### 5.1.1 系统Prompt模板 ✅ **已实现**
``` ```
你是一个专业的品牌客服助手,专门为{品牌名称}提供产品咨询和服务 你是一个专业的徵象防伪验证平台AI客服助手
品牌信息 平台介绍
{品牌背景介绍} 徵象是由广州市诚投科技有限公司开发的AI驱动的智能防伪平台通过多模态特征识别构建新一代防伪验证体系实现从物理防伪到数字认证的全链路保护。系统采用ISO 12931国际防伪标准已获取国家发明专利(证书编号:CN 115222000 B)。
产品知识: 服务范围:
{产品相关信息} 1. 商品防伪验证
2. 证件安全验证
3. 工业品防伪
4. 品牌数字化服务
服务原则: 服务原则:
1. 只回答与{品牌名称}相关的问题 1. 专业、友好、准确回答用户问题
2. 不评价竞品,不与竞品对比 2. 优先使用官方信息回答
3. 优先使用官方信息回答 3. 对于不确定的信息,明确告知用户
4. 对于不确定的信息,明确告知用户 4. 引导用户使用相关功能和服务
5. 保持专业、友好的服务态度 5. 当用户需要验证产品真伪时,主动提供二维码扫描功能
用户上下文 可用工具
{用户验证的产品信息、历史对话等} - start_qr_scan: 启动二维码扫描功能,用于产品防伪验证
请根据以上信息,为用户提供准确、有用的回答。 请根据用户问题提供准确、有用的回答。如果用户需要验证产品,请使用二维码扫描工具。
``` ```
#### 5.1.2 平台客服Prompt模板 #### 5.1.2 平台客服Prompt模板
@ -566,23 +568,15 @@ function renderContent(content, type) {
## 6. 部署和运维 ## 6. 部署和运维
### 6.1 环境配置 ### 6.1 环境配置 ✅ **已实现**
```bash ```bash
# 环境变量配置 # Django设置配置 (emblemapi/settings.py)
AI_MODEL_PROVIDER=kimi KIMI_API_KEY = "sk-IKA7ZnDrv44mfaorjF5UZjSsml66yaBNdcrASJsV90hCSdgn"
AI_API_KEY=your_api_key KIMI_API_URL = "https://api.moonshot.cn/v1"
AI_MODEL_NAME=kimi-k2
AI_MAX_TOKENS=2000
AI_TEMPERATURE=0.7
# LangChain配置 # 环境变量支持
LANGCHAIN_TRACING_V2=true KIMI_API_KEY = os.environ.get("KIMI_API_KEY", "default_key")
LANGCHAIN_ENDPOINT=https://api.smith.langchain.com KIMI_API_URL = os.environ.get("KIMI_API_URL", "https://api.moonshot.cn/v1")
LANGCHAIN_API_KEY=your_langchain_key
# 向量数据库配置
VECTOR_DB_TYPE=chroma
VECTOR_DB_PATH=./vector_store
``` ```
### 6.2 监控和日志 ### 6.2 监控和日志
@ -633,10 +627,12 @@ VECTOR_DB_PATH=./vector_store
## 9. 项目计划 ## 9. 项目计划
### 9.1 开发阶段 ### 9.1 开发阶段
1. **第一阶段 (1周)**: 核心架构和基础功能 1. **第一阶段 (1周)**: 核心架构和基础功能 ✅ **已完成**
- 数据模型扩展(最小化) - 数据模型扩展(最小化)
- Kimi K2 API基础集成 - Kimi K2 API基础集成 ✅
- 基础AI聊天功能 - 基础AI聊天功能 ✅
- 工具调用系统 ✅
- Django管理命令 ✅
2. **第二阶段 (1周)**: AI能力扩展 2. **第二阶段 (1周)**: AI能力扩展
- LangChain RAG基础集成 - LangChain RAG基础集成
- 平台知识库(简化版) - 平台知识库(简化版)
@ -651,7 +647,7 @@ VECTOR_DB_PATH=./vector_store
- 生产环境部署 - 生产环境部署
### 9.2 里程碑 ### 9.2 里程碑
- Week 1: 完成核心架构和基础AI聊天功能 - Week 1: 完成核心架构和基础AI聊天功能 ✅ **已完成**
- Week 2: 完成RAG系统和智能路由基础功能 - Week 2: 完成RAG系统和智能路由基础功能
- Week 3: 完成前端界面和内容管理 - Week 3: 完成前端界面和内容管理
- Week 4: 完成测试、优化和上线 - Week 4: 完成测试、优化和上线
@ -696,4 +692,34 @@ VECTOR_DB_PATH=./vector_store
- **技术栈**: Django + Kimi K2 + LangChain简化版+ 基础向量存储 - **技术栈**: Django + Kimi K2 + LangChain简化版+ 基础向量存储
- **开发策略**: MVP优先核心功能先行后续迭代优化 - **开发策略**: MVP优先核心功能先行后续迭代优化
通过分阶段开发和迭代优化,可以确保系统稳定性和用户满意度,同时为后续功能扩展奠定良好基础。 ### 11.3 当前实现状态 ✅ **已完成功能**
#### **核心AI聊天系统**
- ✅ AIChatService 类实现
- ✅ Kimi K2 API 集成
- ✅ 工具调用系统start_qr_scan
- ✅ 对话历史管理
- ✅ 系统提示词配置
#### **Django管理命令**
- ✅ `python manage.py chat` 命令
- ✅ 完整的readline支持
- ✅ 历史记录持久化
- ✅ 快捷键和补全功能
#### **文件结构**
```
api/products/
├── aichat.py # 核心AI聊天库 ✅
├── management/
│ └── commands/
│ └── chat.py # Django管理命令 ✅
└── README_AI_CHAT.md # 使用文档 ✅
```
#### **配置管理**
- ✅ Django settings.py 集成
- ✅ 环境变量支持
- ✅ 默认配置值
通过分阶段开发和迭代优化,可以确保系统稳定性和用户满意度,同时为后续功能扩展奠定良好基础。第一阶段的核心功能已经完成,为后续开发提供了坚实的基础。