文章背景图

《懂王的秘密》——LangChain 智能对话 Agent 项目

2026-02-11
17
-
- 分钟
|

整活项目,作为美利坚懂王的秘密上线,体验 gal game 般的地下党联络。以第二人称视角,了解懂王如何为了中华民族伟大复兴而奋斗。
支持命令行对话telegram bot部署
支持简单的记忆管理

项目地址:https://github.com/SunnyPh/chatBotAgent

演示



这是一个基于 LangChain 框架构建的智能对话 Agent 项目,集成了 Moonshot AI (Kimi) 模型,旨在打造一个具有深度角色扮演能力的 AI 伴侣。项目支持通过命令行或 Telegram Bot 进行交互,并具备联网搜索、文件操作等实用功能。

✨ 功能特性

  • 多重角色扮演
    • 🕵️ 潜龙 (Trump)(默认):表面是美国总统 Donald J. Trump,实则是来自中国、代号“潜龙”的卧底特工。
    • 👩‍❤️‍👨 夏星羽(可选):19岁哈尔滨工业大学大二学生,性格活泼依赖,是你的“女朋友”。
  • 多工具集成
    • 🌐 联网搜索:使用 DuckDuckGo 获取实时信息。
    • 🧮 数学计算:处理复杂的数学运算。
    • 📂 文件管理:支持读取、写入本地文件及列出目录。
    • 时间获取:获取当前准确时间。
  • 多平台支持
    • 🖥️ 命令行界面 (CLI):支持基础对话及带记忆管理的高级交互。
    • 📱 Telegram Bot:完整的 Telegram 聊天机器人集成。
  • 记忆管理:支持对话记忆的查看、保存(持久化到 JSON)、读取和清除。
  • Deep Think 适配:针对推理模型(如 Kimi k2.5)的深度思考模式支持。

🛠️ 环境依赖

  • Python 3.12+
  • 核心库:
    • langchain, langchain-openai, langchain-community
    • python-telegram-bot
    • duckduckgo-search
    • numexpr
    • Pillow (图像处理)
    • python-dotenv

🚀 快速开始

1. 配置环境

在项目根目录下创建 .env 文件,并配置以下环境变量:

# 模型配置
OPENAI_API_KEY=your_moonshot_api_key
OPENAI_BASE_URL=https://api.moonshot.cn/v1
MODEL_NAME=kimi-k2.5
ENABLE_DEEP_THINK=false  # 是否开启深度思考模式
TEMPERATURE=0.6          # 思考模式建议设为 1.0

# Telegram Bot 配置
TELEGRAM_TOKEN=your_telegram_bot_token

2. 运行项目

方式一:命令行交互(CLI)

包含完整的记忆管理功能。

python run_cli.py

可用指令:

  • /show_memories: 查看当前对话记忆(过滤工具调用细节)
  • /save_memories: 将记忆保存到 agent_memory.json
  • /read_memories: 从文件加载记忆
  • /clean_memories: 清空当前记忆
  • exit / quit: 退出程序

方式二:Telegram Bot

从telegram的botFather处获取自己的机器人以及token,配置到.env文件中。
启动 Telegram 机器人服务。

python run_telegram.py

Bot 指令:

  • /start: 唤醒机器人
  • /show_memories: 查看记忆
  • /save_memories: 保存记忆
  • /read_memories: 读取记忆
  • /clean_memories: 清除记忆
  • 直接在telegram任意客户端发送消息即可对话

📂 项目结构

本项目采用了规范化的模块分层结构。详细说明请参阅 STRUCTURE.md

langchain_agent_project/
├── langchain_agent/           # 核心源码包
│   ├── core/                  # 核心配置与Agent定义
│   ├── tools/                 # 工具函数定义
│   ├── services/              # 业务逻辑服务
│   └── interfaces/            # CLI与Telegram接口
├── run_cli.py                 # CLI 启动入口
├── run_telegram.py            # Telegram Bot 启动入口
├── .env                       # 配置文件
└── STRUCTURE.md               # 结构说明文档

📝 注意事项

  • 角色切换:默认角色为 Trump。若要切换为 夏星羽,请在 langchain_agent/core/agent.pycreate_agent_executor 函数中将默认参数 system_prompt 修改为 girl_friend
  • 安全性:文件操作工具已限制在当前目录下,防止访问系统关键文件。
评论交流

文章目录