🤖 CsTicket(使用代理和MCP(模型上下文协议))
这个项目是用……建造的 Python 3.13.9, Streamlit(注:这是一个专有名词,通常不翻译,直接保留原样,但在此按照要求给出中文表述,即“Streamlit(流式处理应用开发框架)”,不过实际使用中仍多直接使用“Streamlit”)和 MCP(模型上下文协议) 用于自动化客户服务。 系统可以 分析彩票(或票据), 对客户信息进行分类, 产生自动响应,和 直接将其发送到客户邮箱 使用Gmail API集成。
______________________________________________________________________
⚙️ 版本和环境
| 组件 | 版本 |
|---|---|
| 🐍 Python(蟒蛇) | 3.13.9 |
| 🧠 MCP CLI | 1.9.1+ |
| 🌐 Streamlit | 最新版本(从 requirements.txt) |
| 📬 SMTP(Gmail) | TLS/587 |
| 📄 文件格式 | .env, .yaml, .toml, .py |
______________________________________________________________________
📦 主要功能
- 📬 收到客户的留言或问题。
- 🤖 使用 人工智能代理 为了理解和对工单进行分类。
- 🧠 确定工单的紧急程度和类别。
- ✉️ 自动生成并向客户电子邮件发送自动回复。
- 📊 记录分类结果和历史记录 Google 电子表格。
- 提供界面 Streamlit(注:这是一个用于快速开发数据应用的Python库,直接翻译为“流利”并不准确,但在此保持原英文名以体现其专有名词性质) 用于输入和监控。
______________________________________________________________________
🏗️ 项目结构
CsTicket/
│
├── .devcontainer/
│ └── devcontainer.json # Konfigurasi VSCode Dev Container (Python 3.13.9)
│
├── tools/
│ ├── classify_ticket.py # Klasifikasi tiket berdasarkan isi pesan
│ ├── generate_reply.py # Membuat balasan otomatis dari hasil analisis AI
│ ├── gmail_sender.py # Mengirim email melalui SMTP Gmail
│ └── sheet_connector.py # Integrasi ke Google Sheets
│
├── main.py # Backend utama (AI Agents + Streamlit)
├── register_ticket.py # UI Form untuk registrasi tiket
├── mcp_server.py # Menjalankan Model Context Protocol server
│
├── reader.yaml # Pengaturan layanan deploy
├── pyproject.toml # Metadata proyek dan dependensi
├── requirements.txt # Pustaka Python
├── .env # Kredensial API dan variabel rahasia
└── uv.lock, runtime.txt, dll.______________________________________________________________________
🛠️ 安装与环境设置
1. 克隆仓库
git clone https://github.com/Y0xDft07/CsTicket.git
cd CsTicket2. 创建虚拟环境(Python 3.13.9)
python3.13 -m venv venv
source venv/bin/activate # (Linux/Mac)
venv\Scripts\activate # (Windows)3. 安装依赖项
pip install --upgrade pip
pip install -r requirements.txt______________________________________________________________________
🔐 凭证配置与API密钥
创建文件 .env 在主目录中,内容如下:
GROQ_API_KEY=your_groq_api_key
EMAIL_ADDRESS=your_email@gmail.com
EMAIL_APP_PASSWORD=your_gmail_app_password
GOOGLE_SHEET_CRED=google_cred.json______________________________________________________________________
🧾 前端界面 — 客户工单表单
文件: register_ticket.py 显示一个简单的表单用于创建客户支持工单。
streamlit run register_ticket.py浏览器访问: 🔗(这个符号在中文中通常没有直接对应的翻译,它在互联网语境中常表示链接或连接,所以可以翻译为“链接”或根据上下文意译为“点击这里”等,但在此单独出现时,保持原样或解释为“链接符号”较为合适。) http://localhost:8501 翻译为中文是:“本地主机上的8501端口”
功能:
- 输入客户的新工单。
- 自动保存到Google表格。
______________________________________________________________________
🤖 后端 — AI工单解决器
文件: main.py 处理整个自动化流程:
- 监控新票。
- 分析信息内容。
- 根据类别和紧急程度进行分类。
- 使用AI模型生成回复。
- 通过发送电子邮件
gmail_sender.py。 - 将结果保存到Google表格中。
运行:
streamlit run main.py______________________________________________________________________
🧠 MCP(上下文模型协议)集成
使用MCP来检查和控制AI代理:
pip install fastmcp
mcp install mcp_server:mcp
mcp dev mcp_server.py或者使用节点检查器:
npx @modelcontextprotocol/inspector python mcp_server.py______________________________________________________________________
🌐 部署到云端(可选)
该项目准备在以下地点实施:
- Streamlit Cloud(可译为“Streamlit 云服务”)
- 渲染
- Google Cloud(谷歌云)/ AWS(亚马逊网络服务)/ Heroku
确保文件 reader.yaml 已更新:
services:
- type: web
name: streamlit-app
runtime: python
buildCommand: pip install -r requirements.txt
startCommand: streamlit run main.py --server.port $PORT --server.headless true
envVars:
- key: PYTHON_VERSION
value: 3.13.9______________________________________________________________________
💡 系统流程图(文本流程图)
[Mulai]
↓
[Pelanggan mengirim tiket melalui Streamlit Form]
↓
[AI Agent memproses teks & klasifikasi masalah]
↓
[Generate balasan otomatis dengan LLM]
↓
[Gmail Sender mengirim email ke pelanggan]
↓
[Sheet Connector mencatat hasil ke Google Sheets]
↓
[Selesai - Sistem siap menerima tiket berikutnya]______________________________________________________________________
📊 流程图可视化(描述)
┌────────────────────┐
│ Pelanggan (UI) │
│ register_ticket.py │
└─────────┬──────────┘
│
▼
┌────────────────────────┐
│ AI Agent & Classifier │
│ classify_ticket.py │
└─────────┬──────────────┘
│
▼
┌────────────────────────┐
│ AI Response Generator │
│ generate_reply.py │
└─────────┬──────────────┘
│
▼
┌────────────────────────┐
│ Gmail Sender (SMTP) │
│ gmail_sender.py │
└─────────┬──────────────┘
│
▼
┌────────────────────────┐
│ Google Sheets Logger │
│ sheet_connector.py │
└────────────────────────┘______________________________________________________________________
🚀 终端活动日志(示例)
🔧 Menyiapkan lingkungan Python 3.13.9...
📦 Menginstal dependensi dari requirements.txt...
✅ Semua paket berhasil diinstal!
🤖 Menjalankan AI Ticket Resolver...
📨 Mengirim email ke: support@example.com
📊 Menyimpan log ke Google Sheets...
✅ Sistem berjalan normal (Streamlit aktif di http://localhost:8501)🤝 合作与贡献
对任何对此领域感兴趣的人开放贡献:
机器学习 • 自然语言处理 • AI自动化 • 客户支持系统
Buat 在印尼语中通常表示“做”或“制作”的意思。所以,这个单词的中文翻译是“做”或“制作”。 *拉取请求(或合并请求)* 或者 *问题;议题* 加入主仓库。
______________________________________________________________________
🧠 主要流程图(高级别)概述
[Input Pelanggan]
↓
[Analisis NLP → Klasifikasi → Respons Otomatis]
↓
[Email Dikirim + Log Disimpan]
↓
[Dashboard & Feedback Loop]