Files
agent-chain/README.md
T

205 lines
4.6 KiB
Markdown
Raw Normal View History

2026-03-20 14:26:24 +08:00
# 学习助手 (Learning Assistant)
2026-03-20 13:38:42 +08:00
2026-03-20 14:26:24 +08:00
一个基于AI知识的交互式学习工具,通过生成多种形式的内容帮助你快速掌握知识点。
## 功能特性
- 🎓 **多形式学习内容**:为知识点生成5种不同形式的学习内容
- 📊 **Mermaid图表**:知识结构可视化,自动复制到剪切板
- 🎭 **郭德纲式讲解**:幽默风趣的知识讲解
- ✍️ **十道考核题**:带解析的选择题,检验学习效果
- 📝 **记忆卡片**:结构化的关键知识点总结
- 🏗️ **工程场景**:实际应用案例和代码示例
- 🖥️ **交互式TUI界面**:使用Bubble Tea构建的终端用户界面
- Tab切换查看不同内容
- 键盘导航(←/→翻页,↑/↓滚动)
- 流畅的用户体验
- 🤖 **AI驱动**:基于硅基流动AI服务,使用DeepSeek模型
## 安装
### 前置要求
- Go 1.25.6 或更高版本
- 硅基流动API密钥
### 安装步骤
1. 克隆仓库
```bash
git clone https://github.com/yourusername/learning-assistant.git
cd learning-assistant
```
2. 安装依赖
```bash
go mod tidy
```
3. 构建程序
```bash
go build -o learning.exe cmd/main.go
```
4. 设置API密钥
```bash
export SILICON_API_KEY=your_api_key_here
```
## 使用方法
### 基本使用
```bash
./learning.exe
```
### 操作流程
1. 程序启动后,输入你想学习的知识点
2. 按 Enter 键开始生成
3. 等待AI生成完成(后台并发生成5种内容)
4. 使用 ←/→ 键切换不同的Tab查看内容
5. 使用 ↑/↓ 键滚动长内容
6. 按 q 或 Ctrl+C 退出程序
### 键盘快捷键
| 按键 | 功能 |
|------|------|
| Enter | 确认输入/开始生成 |
| ← | 切换到上一个Tab |
| → | 切换到下一个Tab |
| ↑ | 向上滚动内容 |
| ↓ | 向下滚动内容 |
| q | 退出程序 |
| Ctrl+C | 退出程序 |
## 配置文件
配置文件位于 `config/config.yaml`:
```yaml
api:
endpoint: "https://api.siliconflow.cn/v1"
model: "deepseek-ai/DeepSeek-V3"
timeout: 120
max_retries: 3
ui:
width: 100
height: 30
colors:
primary: "#7D56F4"
secondary: "#04B575"
text: "#FAFAFA"
background: "#232323"
border: "#586069"
```
## 项目结构
```
learning-assistant/
├── cmd/
│ └── main.go # 程序入口
├── internal/
│ ├── ai/ # AI集成层
│ │ ├── client.go # 硅基流动API客户端
│ │ ├── prompt.go # 提示词管理
│ │ ├── prompts/ # 提示词模板
│ │ └── generators/ # 内容生成器
│ ├── clipboard/ # 剪切板操作
│ └── tui/ # TUI界面层
│ ├── model.go # TUI模型
│ ├── view.go # 视图渲染
│ └── update.go # 事件处理
├── config/
│ └── config.yaml # 配置文件
├── go.mod
├── go.sum
└── README.md
```
## 技术栈
- **语言**:Go 1.25.6
- **TUI框架**:[Bubble Tea](https://github.com/charmbracelet/bubbletea)
- **样式库**:[Lip Gloss](https://github.com/charmbracelet/lipgloss)
- **剪切板**:[clipboard](https://github.com/atotto/clipboard)
- **AI服务**:硅基流动(DeepSeek模型)
## 示例
### 输入示例
```
🎓 学习助手
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
请输入您想学习的知识点: Redis缓存策略
```
### 输出示例
程序会生成以下内容:
1. Mermaid图表 - 显示Redis缓存策略的思维导图
2. 郭德纲式讲解 - 用幽默的方式讲解缓存策略
3. 十道考核题 - 测试对Redis缓存的理解
4. 记忆卡片 - 总结核心知识点
5. 工程场景 - 展示实际应用案例
## 常见问题
### Q: 如何获取硅基流动API密钥?
A: 访问 [硅基流动官网](https://cloud.siliconflow.cn) 注册并获取API密钥。
### Q: 生成失败怎么办?
A: 检查以下几点:
1. API密钥是否正确设置
2. 网络连接是否正常
3. API额度是否充足
### Q: 如何更改UI主题颜色?
A: 编辑 `config/config.yaml` 文件中的 `ui.colors` 配置项。
## 开发
### 运行开发版本
```bash
go run cmd/main.go
```
### 构建
```bash
go build -o learning.exe cmd/main.go
```
### 依赖管理
```bash
go mod tidy
go mod verify
```
## 许可证
MIT License
## 贡献
欢迎提交Issue和Pull Request!
## 致谢
- [Bubble Tea](https://github.com/charmbracelet/bubbletea) - 强大的TUI框架
- [硅基流动](https://cloud.siliconflow.cn) - AI服务提供商