综合介绍
OneLine 是一个开源的热点事件时间轴生成工具,托管在 GitHub,由用户 chengtx809 开发。它通过用户输入的关键词,快速生成事件的时间轴,展示事件的时间、标题、描述和相关人物。AI分析功能为事件提供背景、过程和影响的深入解读。项目使用 Next.js 和 React 构建,支持 Docker 部署,适合对新闻、历史或热点事件感兴趣的用户。
功能列表
- 关键词生成:根据用户输入的关键词,生成相关事件的时间轴。
- 事件详情:显示事件的时间、标题、描述和相关人物。
- 时间筛选:支持按时间范围筛选事件,方便聚焦特定时期。
- AI分析:提供事件的背景、过程和影响的深入分析。
- 来源标记:标注事件信息来源,确保内容可信。
- 前端配置:支持用户设置 AI API 端点、模型和密钥。
- 密码保护:可选设置访问密码,防止 API 配置被滥用。
使用帮助
OneLine 是一个基于 Web 的工具,通过 GitHub 仓库提供源码和部署方法。以下是详细的使用和部署指南,帮助用户快速上手。
访问 Demo 站点
OneLine 提供了一个在线 Demo 站点,方便用户体验功能:
- 打开浏览器,访问
https://oneline.chengtx.me/
。 - 在页面输入框中输入关键词(如“疫情”或“科技突破”)。
- 点击生成按钮,查看生成的时间轴,包含事件的时间、标题和描述。
- 使用时间筛选功能,选择特定年份或月份,缩小事件范围。
- 点击 AI 分析按钮,获取事件的背景、过程和影响解读。
- 检查事件来源,确认信息可信度。
本地部署 OneLine
如果想在本地或服务器运行 OneLine,可以通过 GitHub 仓库获取源码并部署。以下是详细步骤:
1. 获取源码
- 访问
https://github.com/chengtx809/OneLine
。 - 点击绿色的
Code
按钮,选择Download ZIP
下载源码,或复制仓库地址:git clone https://github.com/chengtx809/OneLine.git
- 解压文件或进入克隆的文件夹,准备配置环境。
2. 配置环境
OneLine 需要外部 AI API(如 Google Gemini 或 OpenAI)支持。配置方式分为前端配置和环境变量配置。
前端配置:
- 启动 OneLine 后,打开网页,点击右上角的“API设置”按钮。
- 输入以下信息:
- API 端点:如
https://api.example.com/v1/chat/completions
。 - 模型名称:如
gemini-2.0-pro-exp-search
。 - API 密钥:从你的 API 提供商获取。
- API 端点:如
- 如果设置了访问密码,输入正确的密码才能修改配置。
- 保存设置,测试功能是否正常。
环境变量配置(推荐用于部署):
- 在项目根目录找到
.env.example
文件,复制并重命名为.env.local
。 - 编辑
.env.local
,填入以下内容:NEXT_PUBLIC_API_ENDPOINT=https://api.example.com/v1/chat/completions NEXT_PUBLIC_API_MODEL=gemini-2.0-pro-exp-search NEXT_PUBLIC_API_KEY=your_api_key_here NEXT_PUBLIC_ALLOW_USER_CONFIG=true NEXT_PUBLIC_ACCESS_PASSWORD=your_access_password_here
- 配置说明:
NEXT_PUBLIC_API_ENDPOINT
:AI API 的地址。NEXT_PUBLIC_API_MODEL
:使用的 AI 模型名称。NEXT_PUBLIC_API_KEY
:你的 API 密钥。NEXT_PUBLIC_ALLOW_USER_CONFIG
:设为false
可禁止前端修改配置。NEXT_PUBLIC_ACCESS_PASSWORD
:可选密码,保护 API 设置。
- 保存文件,确保敏感信息不泄露。
3. 使用 Docker 部署
OneLine 支持 Docker 部署,感谢贡献者 justincnn 提供的镜像。操作步骤:
- 确保安装了 Docker(参考
https://docs.docker.com/get-docker/
)。 - 运行以下命令拉取镜像:
docker pull justincnn/oneline
- 运行容器,映射端口(默认 3000):
docker run -p 3000:3000 justincnn/oneline
- 打开浏览器,访问
http://localhost:3000
,进入 OneLine 页面。 - 如果需要持久化配置,将
.env.local
文件挂载到容器:docker run -p 3000:3000 -v /path/to/.env.local:/app/.env.local justincnn/oneline
4. 手动部署(非 Docker)
- 确保安装了 Node.js(建议 v16 或以上)。
- 进入项目目录,安装依赖:
npm install
- 启动开发服务器:
npm run dev
- 访问
http://localhost:3000
,配置 API 并使用。
使用主要功能
以下是如何操作 OneLine 的核心功能:
生成时间轴
- 在首页输入关键词,如“人工智能发展”。
- 点击“生成”按钮,等待几秒,页面显示时间轴。
- 时间轴按时间排序,展示事件标题、日期、描述和相关人物。
- 鼠标悬停事件,可查看详细信息。
时间筛选
- 在时间轴顶部找到筛选栏,选择年份(如 2020-2025)或月份。
- 点击“应用”按钮,时间轴更新为筛选范围内的事件。
- 如果需要重置,点击“清除筛选”。
AI 分析
- 在时间轴中选择一个事件,点击“AI 分析”按钮。
- 系统调用配置的 AI API,生成事件的背景、过程和影响分析。
- 分析结果显示在事件下方,包含文本说明,可能涉及原因、影响和趋势。
检查来源
- 每个事件旁有来源标记,点击可查看原始链接或出处。
- 如果来源不可信,可在 GitHub 提交 Issue,建议改进。
参与社区贡献
OneLine 是开源项目,欢迎用户贡献:
- 访问 GitHub 仓库,点击
Issues
查看问题或提交新问题。 - Fork 仓库,修改代码,提交 Pull Request。例如,优化时间轴 UI 或增加新语言支持。
- 提交前运行测试:
npm run test
- 在 Pull Request 中说明改动内容,等待审核。
常见问题解决
- API 配置失败:确认 API 端点、模型和密钥正确,或检查网络连接。
- 时间轴不显示:确保关键词具体(如“2023 科技事件”),避免过于宽泛。
- Docker 启动报错:检查 Docker 是否运行,端口是否被占用。
- AI 分析内容不准确:更换更强大的 AI 模型,或在 GitHub 反馈问题。
通过以上步骤,用户可以轻松部署和使用 OneLine,快速生成热点事件时间轴并获取 AI 分析。
应用场景
- 新闻报道整理
记者使用 OneLine 输入事件关键词,生成时间轴,快速梳理新闻脉络,辅助报道撰写。 - 历史研究
学生或研究者输入历史事件,获取时间轴和 AI 分析,了解事件背景和影响。 - 热点追踪
公众输入当前热点话题,查看事件发展,筛选关键时间点,掌握最新动态。 - 教育教学
教师用 OneLine 生成事件时间轴,作为课堂材料,帮助学生理解复杂事件。
QA
- OneLine 支持哪些 AI API?
支持 Google Gemini、OpenAI 等,具体取决于用户配置的端点和模型。 - 需要编程经验吗?
不需要,使用 Demo 站点只需输入关键词;部署需要基础命令行知识。 - 时间轴数据从哪来?
数据由 AI 根据关键词从公开信息生成,来源标注在事件旁。 - 可以离线使用吗?
需联网调用 AI API,本地部署后部分功能可离线,但 AI 分析依赖网络。 - 如何保护 API 密钥安全?
使用环境变量配置,避免前端暴露密钥,设置访问密码增加保护。