综合介绍
Tangent是一个创新的AI对话画布工具,它将Excalidraw的可视化交互与ComfyUI的灵活性相结合,专注于为LLM(大语言模型)对话创造全新的探索体验。不同于传统的聊天界面,Tangent将AI对话转化为可视化实验,让用户能够自由地分支、合并和比较不同的对话路径。它支持离线优先的本地部署模式,完全依赖本地模型运行,目前主要通过Ollama实现,并计划扩展支持更多后端。该项目采用Apache 2.0许可证开源,鼓励社区贡献,为AI对话探索提供了一个全新的实验平台。
功能列表
- 对话复苏与延续:突破上下文限制,无缝恢复之前的对话
- 分支探索系统:在任意对话节点创建分支,测试多种对话方向
- 离线本地部署:完全基于本地模型运行,保护隐私数据安全
- 话题动态聚类:自动推断对话主题并组织分类,优化导航体验
- 导出数据兼容:支持Claude和ChatGPT的数据导出格式
- 可视化对话树:以树状结构展示对话分支和实验过程
- API接口支持:提供完整的REST API用于处理和管理对话数据
- 实时状态追踪:监控对话处理进度和任务状态
使用帮助
1. 环境准备
1.1 安装必要的依赖:
- Whisper.cpp:用于语音处理
git clone https://github.com/ggerganov/whisper.cpp cd whisper.cpp sh ./models/download-ggml-model.sh base.en make
- Ollama:本地模型运行环境
- 访问 https://ollama.com/ 下载适合你系统的版本
- 验证安装:
ollama --version
- 下载必要模型:
ollama pull all-minilm ollama pull qwen2.5-coder:7b
1.2 启动Ollama服务:
ollama serve
2. 后端设置
2.1 初始化Python环境:
cd tangent-api
source my_env/bin/activate
pip install -r requirements.txt
2.2 配置本地模型:
cd src
python3 app.py --embedding-model "custom-embedding-model" --generation-model "custom-generation-model"
后端服务将在 http://localhost:5001/api 启动
3. 前端设置
cd simplified-ui
npm i
npm start
访问 http://localhost:3000 使用界面
4. 主要功能使用说明
4.1 对话管理:
- 创建新对话:点击界面右上角"+"按钮
- 分支对话:在任意对话节点右键选择"创建分支"
- 合并对话:将不同分支的对话拖拽到目标节点进行合并
4.2 话题组织:
- 自动聚类:系统自动分析对话内容生成话题标签
- 话题筛选:通过左侧话题列表快速定位相关对话
- 手动标记:支持自定义话题标签和分类
4.3 数据导入导出:
- 支持导入Claude和ChatGPT的对话记录
- 可将对话记录导出为多种格式
- 提供API接口实现自动化处理
5. API使用指南
主要端点:
- POST
/api/process
:处理上传的对话数据 - GET
/api/process/status/<task_id>
:查询处理状态 - POST
/api/chats/save
:保存对话数据 - GET
/api/chats/load/<chat_id>
:加载特定对话 - GET
/api/topics
:获取生成的话题列表