themblem/api/products/README_AI_CHAT.md
2025-10-29 21:27:29 +00:00

3.9 KiB
Raw Blame History

AI聊天功能使用说明

概述

AI聊天模块为徵象防伪验证平台提供智能客服功能基于Moonshot Kimi K2 API实现。

文件结构

api/products/
├── aichat.py                    # 核心AI聊天库
├── management/
│   └── commands/
│       └── chat.py             # Django管理命令
└── README_AI_CHAT.md           # 本文档

使用方法

1. 作为Django管理命令运行推荐

# 进入Django项目目录
cd api

# 启动AI聊天
python manage.py chat

# 使用自定义参数
python manage.py chat --api-key "your_key" --history-file "~/.custom_history"

可用参数:

  • --history-file: 指定历史文件路径 (默认: ~/.aichat_history)

注意: API密钥和URL现在从Django设置中自动获取无需命令行参数

2. 作为Python库导入

from products.aichat import AIChatService

# 创建服务实例
service = AIChatService()

# 发送消息
response = service.chat("你好,请介绍一下徵象平台")

# 查看对话历史
history = service.get_conversation_history()

# 清空历史
service.clear_history()

3. 直接运行库文件(测试模式)

python api/products/aichat.py

功能特性

核心功能

  • 智能对话: 基于Kimi K2的AI客服
  • 工具调用: 支持二维码扫描等工具
  • 多轮对话: 完整的对话历史管理
  • 品牌定制: 徵象平台专属系统提示词

控制台功能

  • Readline支持: 完整的命令行体验
  • 历史记录: 持久化的输入历史
  • 智能补全: Tab键命令补全
  • 快捷键: Emacs风格的编辑快捷键

可用命令

在聊天界面中,可以使用以下命令:

  • help - 显示帮助信息
  • history - 查看AI对话历史
  • clear - 清空对话历史
  • readline-help - 显示快捷键帮助
  • stats - 显示readline统计信息
  • quit/exit/q - 退出系统

快捷键

导航

  • ↑/↓ - 浏览历史记录
  • Ctrl+A - 跳转到行首
  • Ctrl+E - 跳转到行尾

编辑

  • Ctrl+U - 删除到行首
  • Ctrl+K - 删除到行尾
  • Ctrl+W - 删除单词

搜索

  • Ctrl+R - 反向搜索历史
  • Ctrl+S - 正向搜索历史

补全

  • Tab - 自动补全命令

配置说明

环境变量

  • KIMI_API_KEY: Moonshot API密钥在Django设置中配置
  • KIMI_API_URL: Moonshot API基础URL在Django设置中配置

Django设置配置

API凭证在 emblemapi/settings.py 中配置:

KIMI_API_KEY = "your_api_key_here"
KIMI_API_URL = "https://api.moonshot.cn/v1"

历史文件

  • 默认位置: ~/.aichat_history
  • 最大记录数: 1000条
  • 自动保存: 退出时自动保存

开发说明

扩展工具

AIChatService._define_tools()中添加新工具:

def _define_tools(self):
    return [
        {
            "type": "function",
            "function": {
                "name": "your_tool_name",
                "description": "工具描述",
                "parameters": {
                    "type": "object",
                    "properties": {},
                    "required": []
                }
            }
        }
    ]

自定义系统提示词

修改_add_system_message()方法中的system_prompt变量。

故障排除

常见问题

  1. API调用失败

    • 检查API密钥是否正确
    • 确认网络连接正常
    • 查看错误日志
  2. Readline功能异常

    • 确认终端支持readline
    • 检查历史文件权限
    • 尝试重新创建历史文件
  3. 导入错误

    • 确认Django环境已激活
    • 检查Python路径设置
    • 验证依赖包安装

调试模式

使用--verbosity=2参数获取详细日志:

python manage.py chat --verbosity=2

更新日志

  • v1.0: 初始版本支持基础AI聊天和工具调用
  • v1.1: 添加readline支持和Django管理命令
  • v1.2: 重构为库模块,分离界面和核心功能